{"version":3,"sources":["webpack:///./src/modules/main/pages/home/components/products.vue","webpack:///./src/modules/main/pages/home/components/DashAreaComponent.vue","webpack:///./node_modules/quasar/src/components/table/table-column-selection.js","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue?2381","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerSubscribe.vue?94e3","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue?eceb","webpack:///./src/modules/main/pages/home/components/invite.vue?8a7c","webpack:///./src/modules/main/components/checklists.vue?66fc","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue?6cb4","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue?ce5f","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue?9cf7","webpack:///./src/modules/main/pages/home/components/drive.vue?2845","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue?06e6","webpack:///./src/modules/main/pages/home/dashboardTypes/NewDashboard.vue?9d9b","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClustersAndShareComponent.vue?741c","webpack:///./src/modules/main/pages/home/components/products.vue?1e01","webpack:///./src/modules/main/pages/home/components/DashAreaComponent.vue?d560","webpack:///./node_modules/quasar/src/components/table/table-row-expand.js","webpack:///./src/modules/main/pages/home/components/invite.vue?5759","webpack:///./src/modules/main/pages/home/components/voucher.vue","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue","webpack:///./src/modules/main/pages/home/components/widget.vue?43dd","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerSubscribe.vue","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue?d99b","webpack:///./src/modules/main/components/checklists.vue?d39f","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue","webpack:///./src/modules/main/components/checklists.vue?0ecd","webpack:///./src/modules/main/pages/home/components/showUp.vue?06fe","webpack:///./src/modules/main/pages/simplified-sharing-products/components/CardPresentationSharingProducts.vue","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue?dd0b","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue?ecd6","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue?6641","webpack:///./src/modules/main/pages/home/components/shareNow.vue?a9a8","webpack:///./src/modules/main/pages/home/components/graph.vue?83f1","webpack:///./src/modules/main/components/checklist.vue?628b","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue?80a1","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue?f825","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue?9540","webpack:///./src/modules/main/pages/home/components/pending-docs.vue","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerSubscribe.vue?1b44","webpack:///./src/modules/main/pages/home/components/invite.vue","webpack:///./src/modules/main/components/voucherIcon.vue?68d1","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue","webpack:///./src/modules/main/pages/home/components/myStore.vue?ceee","webpack:///./node_modules/quasar/src/components/markup-table/QMarkupTable.js","webpack:///./src/modules/main/pages/home/components/carouselComponent.vue?d155","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue","webpack:///./public/dash-icons/available.png","webpack:///./src/modules/main/components/productItemStore.vue?b131","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue","webpack:///./node_modules/quasar/src/components/table/table-row-selection.js","webpack:///./src/modules/main/pages/simplified-sharing-products/components/CardPresentationSharingProducts.vue?f20a","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue?e8cd","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/CopyActions.vue?7756","webpack:///./public/dash-icons/expired.png","webpack:///./node_modules/quasar/src/components/table/QTh.js","webpack:///./public/dash-icons/visitors-icon.png","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?6fdf","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerActive.vue?b6e9","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterPartnerInfoDialog.vue?b6e3","webpack:///./src/modules/main/pages/home/components/calendar.vue?6bb8","webpack:///./src/modules/main/pages/home/components/pending-docs.vue?adfd","webpack:///./src/modules/main/pages/home/components/AvaibleCompaniesComponent.vue?9b3a","webpack:///./src/modules/main/components/SideTitleComponent.vue?5091","webpack:///./src/modules/main/components/checklists.vue?8502","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue?00b9","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/CopyActions.vue?b925","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue?1c11","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue?592a","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue?0cd4","webpack:///./src/modules/main/pages/home/components/ShareFlipnetComponent.vue?1480","webpack:///./src/modules/main/pages/home/components/widget.vue?5d30","webpack:///./src/modules/main/pages/home/components/drive.vue","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerMission.vue","webpack:///./node_modules/vue3-highcharts/dist/vue3-highcharts.common.js","webpack:///./src/modules/main/components/checklist.vue?44dc","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?f992","webpack:///./src/modules/main/pages/home/components/drive.vue?df99","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue?c499","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?5f2f","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerMission.vue?791d","webpack:///./src/modules/main/pages/home/components/carouselComponent.vue?f593","webpack:///./src/modules/main/pages/home/components/carouselFlipComponent.vue?8a68","webpack:///./src/modules/main/pages/home/components/myStore.vue?752d","webpack:///./src/modules/main/pages/home/components/myStore.vue","webpack:///./src/modules/main/pages/home/components/carouselFlipComponent.vue","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterItemComponent.vue?346d","webpack:///./src/modules/main/pages/home/components/DashAreaComponent.vue?e679","webpack:///./src/modules/main/components/voucherIcon.vue?566b","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue","webpack:///./src/modules/main/pages/home/components/showUp.vue?bf8b","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerActive.vue","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue?b07a","webpack:///./src/modules/main/pages/home/components/drive.vue?a985","webpack:///./node_modules/quasar/src/components/table/table-filter.js","webpack:///./src/modules/main/pages/home/Home.vue?4fa6","webpack:///./src/modules/main/pages/home/components/CantSubsOnMission.vue?85f0","webpack:///./node_modules/quasar/src/components/table/table-pagination.js","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterItemComponent.vue?5148","webpack:///./src/modules/main/pages/home/components/shareNow.vue?26f1","webpack:///./src/modules/main/pages/home/dashboardTypes/DefaultDashboard.vue?c0b9","webpack:///./src/modules/main/pages/home/dashboardTypes/NewDashboard.vue","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/CopyActions.vue","webpack:///./node_modules/quasar/src/components/date/QDate.js","webpack:///./src/modules/main/pages/home/components/carouselFlipComponent.vue?1811","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue?958a","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue","webpack:///./src/modules/main/components/checklist.vue","webpack:///./src/modules/main/pages/home/components/graph.vue?26d3","webpack:///./src/modules/main/pages/home/components/DashAreaComponent.vue?58a7","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue?5d71","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue?35be","webpack:///./src/modules/main/components/SideTitleComponent.vue","webpack:///./src/modules/main/pages/home/components/showUp.vue?c5e2","webpack:///./src/modules/main/pages/home/components/pending-docs.vue?7090","webpack:///./src/modules/main/pages/home/components/AvaibleCompaniesComponent.vue","webpack:///./src/modules/main/pages/home/components/myStore.vue?0cbd","webpack:///./src/modules/main/pages/home/components/shareNow.vue?c187","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?9548","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue","webpack:///./src/modules/main/pages/home/components/showUp.vue","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?ec9f","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue?128d","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue","webpack:///./src/modules/main/pages/home/components/calendar.vue?c382","webpack:///./src/modules/main/pages/home/components/invite.vue?db67","webpack:///./src/modules/main/pages/home/components/pending-docs.vue?5f5f","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClustersAndShareComponent.vue","webpack:///./src/modules/main/pages/home/components/products.vue?730a","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue?3de4","webpack:///./src/modules/main/components/productItemStore.vue?5f58","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClustersAndShareComponent.vue?a8e9","webpack:///./src/modules/main/pages/home/components/graph.vue?e63a","webpack:///./src/modules/main/pages/home/dashboardTypes/DefaultDashboard.vue?c118","webpack:///./src/modules/main/pages/home/components/calendar.vue","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue?b7cf","webpack:///./src/modules/main/pages/home/components/CantSubsOnMission.vue?37e2","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue?7b12","webpack:///./node_modules/d3/d3.js","webpack:///./node_modules/quasar/src/components/date/use-datetime.js","webpack:///./public/dash-icons/total.png","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/CopyActions.vue?6ddc","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerSubscribe.vue?0f12","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue?7b7e","webpack:///./src/modules/main/pages/home/components/carouselComponent.vue?b30a","webpack:///./src/modules/main/pages/home/components/CantSubsOnMission.vue?5d6e","webpack:///./src/modules/main/pages/home/components/CantSubsOnMission.vue","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue?6d8b","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterItemComponent.vue?e707","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerSubscribe.vue?3977","webpack:///./src/shared/helpers/navigatorHelpers.js","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue?c862","webpack:///./src/modules/main/components/SideTitleComponent.vue?3ea2","webpack:///./src/modules/main/pages/home/components/CantSubsOnMission.vue?2991","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?79f7","webpack:///./src/modules/main/pages/home/components/drive.vue?5088","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue?8c62","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue?4025","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterPartnerInfoDialog.vue?044a","webpack:///./src/modules/main/pages/home/components/calendar.vue?9f33","webpack:///./src/modules/main/components/voucherIcon.vue?3a4e","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue?a959","webpack:///./node_modules/quasar/src/components/table/get-table-middle.js","webpack:///./src/modules/main/pages/home/components/pending-docs.vue?207b","webpack:///./src/modules/main/pages/home/components/ShareFlipnetComponent.vue?603c","webpack:///./src/modules/main/pages/simplified-sharing-products/components/CardPresentationSharingProducts.vue?e020","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterItemComponent.vue?e37b","webpack:///./src/modules/main/pages/home/components/showUp.vue?5914","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue?0e32","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue?d790","webpack:///./src/modules/main/pages/home/components/widget.vue?d4d0","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue","webpack:///./node_modules/quasar/src/utils/private/sort.js","webpack:///./src/modules/main/pages/home/components/shareNow.vue?a13f","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue?1094","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue?d2cd","webpack:///./src/modules/main/pages/home/components/AvaibleCompaniesComponent.vue?cd59","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue?29f6","webpack:///./node_modules/quasar/src/components/virtual-scroll/QVirtualScroll.js","webpack:///./src/modules/main/components/voucherIcon.vue?1c6d","webpack:///./src/modules/main/components/voucherIcon.vue?d7e5","webpack:///./src/modules/main/pages/home/Home.vue","webpack:///./src/modules/main/pages/home/components/invite.vue?af37","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/CopyActions.vue?08c2","webpack:///./src/modules/main/pages/home/components/widget.vue","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue?19df","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?98c3","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerMission.vue?9ace","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue?4d81","webpack:///./src/modules/main/pages/home/dashboardTypes/DefaultDashboard.vue?ab66","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue?6989","webpack:///./src/modules/main/pages/home/components/voucher.vue?5a3c","webpack:///./src/modules/main/pages/home/components/products.vue?322e","webpack:///./src/modules/main/pages/home/components/shareNow.vue","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue?d993","webpack:///./public/dash-icons/total_sales.png","webpack:///./src/modules/main/components/SideTitleComponent.vue?32ef","webpack:///./src/modules/main/pages/home/components/pending-docs.vue?607c","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue?3d69","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterPartnerInfoDialog.vue?c8bb","webpack:///./src/modules/main/components/SideTitleComponent.vue?1b11","webpack:///./src/modules/main/pages/home/components/ShareComponent.vue?530d","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue?6f83","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterPartnerInfoDialog.vue?e719","webpack:///./src/modules/main/components/checklist.vue?e5f4","webpack:///./src/modules/main/pages/home/components/showUp.vue?4dbe","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClustersAndShareComponent.vue?996e","webpack:///./src/modules/main/pages/home/components/graph.vue","webpack:///./src/modules/main/components/productItemStore.vue","webpack:///./src/modules/main/pages/home/Home.vue?fa2a","webpack:///./src/modules/main/pages/home/components/widgetsContainer.vue?5913","webpack:///./src/modules/main/pages/home/components/voucher.vue?76ed","webpack:///./src/modules/main/pages/home/components/carouselFlipComponent.vue?1b4c","webpack:///./src/modules/main/components/voucherIcon.vue","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue?aa13","webpack:///./node_modules/quasar/src/utils/date.js","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerActive.vue?81fa","webpack:///./src/modules/main/components/checklist.vue?7279","webpack:///./public/dash-icons/rescued.png","webpack:///./src/modules/main/components/checklists.vue","webpack:///./src/modules/main/pages/home/components/ShareFlipnetComponent.vue","webpack:///./src/modules/main/pages/home/Home.vue?caa1","webpack:///./src/modules/main/pages/home/components/voucher.vue?4cc9","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue?5161","webpack:///./src/modules/main/pages/home/components/graph.vue?c03d","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue?b4ed","webpack:///./src/modules/main/pages/home/components/invite.vue?8e11","webpack:///./src/modules/main/pages/home/components/shareNow.vue?3e45","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue?6dbe","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue?b25b","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerSubscribeSkeleton.vue?3c1b","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue?e95d","webpack:///./src/modules/main/pages/simplified-sharing-products/components/CardPresentationSharingProducts.vue?8d36","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue?8e7b","webpack:///./src/modules/main/pages/home/Home.vue?f266","webpack:///./src/modules/main/components/checklist.vue?ff78","webpack:///./src/modules/main/pages/home/dashboardTypes/DefaultDashboard.vue?2733","webpack:///./src/modules/main/pages/home/components/lastPointsReleased.vue?c66c","webpack:///./src/modules/main/pages/home/components/carouselFlipComponent.vue?75ef","webpack:///./src/modules/main/pages/simplified-sharing-products/components/CardPresentationSharingProducts.vue?fa04","webpack:///./src/modules/main/pages/home/dashboardTypes/NewDashboard.vue?f1a3","webpack:///./src/modules/main/pages/home/dashboardTypes/DefaultDashboard.vue","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue?7397","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue?f407","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerMission.vue?7007","webpack:///./src/modules/main/pages/home/components/CreditDataComponent.vue?c4a3","webpack:///./src/modules/main/pages/home/components/CarouselMultiItensComponent.vue?a231","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue?d0bd","webpack:///./src/modules/main/pages/home/components/carouselComponent.vue?4cb7","webpack:///./node_modules/quasar/src/components/table/table-sort.js","webpack:///./src/modules/main/pages/home/components/widget.vue?bea1","webpack:///./node_modules/quasar/src/utils/private/date-persian.js","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue?3ddb","webpack:///./src/modules/main/pages/home/components/carouselComponent.vue","webpack:///./src/modules/main/pages/home/skeleton/myStoreSkeleton.vue?f266","webpack:///./src/modules/main/pages/home/components/CardFlipPartnerMission.vue?596a","webpack:///./node_modules/rickshaw/rickshaw.js","webpack:///./src/modules/main/pages/home/components/voucher.vue?fd16","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue?9df2","webpack:///./src/modules/main/pages/home/components/AvaibleMissionsComponent.vue?1d27","webpack:///./public/dash-icons sync ^\\.\\/.*$","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClusterPartnerInfoDialog.vue","webpack:///./src/modules/main/pages/home/components/DashAreaComponent.vue?4d59","webpack:///./node_modules/highcharts/highcharts.js","webpack:///./node_modules/quasar/src/components/table/QTable.js","webpack:///./src/modules/main/pages/home/components/MyLinksComponent.vue?6451","webpack:///./src/modules/main/pages/home/components/rickshawChart.vue?2306","webpack:///./src/modules/main/pages/home/components/myStore.vue?de24","webpack:///./src/modules/main/pages/home/components/ShareFlipnetComponent.vue?71bd","webpack:///./src/modules/main/pages/home/components/ClusterAndShare/ClustersAndShareComponent.vue?4228","webpack:///./src/modules/main/components/productItemStore.vue?db25","webpack:///./src/modules/main/pages/home/components/calendar.vue?4b80","webpack:///./src/modules/main/pages/home/components/skeletons/CardFlipPartnerMissionSkeleton.vue?1a1c","webpack:///./src/modules/main/pages/home/components/visitorsBoxComponent.vue?3815","webpack:///./src/modules/main/pages/home/components/products.vue?44a4","webpack:///./src/modules/main/pages/home/components/ShareFlipnetComponent.vue?a553","webpack:///./src/modules/main/components/checklists.vue?7b71","webpack:///./src/modules/main/pages/home/components/graph.vue?04a9","webpack:///./src/modules/main/components/SideTitleComponent.vue?3c46","webpack:///./src/modules/main/pages/home/components/MyVouchersComponent.vue?3114","webpack:///./public/dash-icons/analyze.png","webpack:///./src/modules/main/pages/home/components/firstAcessTutorial.vue?db98","webpack:///./src/modules/main/pages/home/components/TotalSalesComponent.vue?f470","webpack:///./src/modules/main/pages/home/components/products.vue?dc72"],"names":["class","_createElementBlock","_normalizeClass","$setup","in_request","_createVNode","_component_page_title","title","_ctx","$t","tooltip","paramsProductHelp","floating","_hoisted_1","_Fragment","_renderList","n","_createElementVNode","key","_component_product_item_store","skeleton","_hoisted_2","products","product","_component_q_item","to","name","_component_q_item_section","partnerNamespace","createNamespacedHelpers","isFlipnetCompany","useGetters","useTableColumnSelectionProps","visibleColumns","Array","useTableColumnSelection","props","computedPagination","hasSelectionMode","colList","computed","columns","row","rows","Object","keys","map","label","toUpperCase","field","align","isNumber","sortable","computedCols","sortBy","descending","value","cols","filter","col","required","includes","alignClass","__iconClass","__thClass","headerClasses","__tdStyle","style","__tdClass","classes","computedColsMap","names","forEach","computedColspan","tableColspan","length","getVal","val","isArray","slice","useTableRowExpandProps","expanded","useTableRowExpandEmits","useTableRowExpand","emit","innerExpanded","ref","watch","isRowExpanded","setExpanded","updateExpanded","add","target","index","indexOf","push","splice","namespacedPartner","partnerStore","voucher","link_store","partnerVoucherHelp","hiddenVoucherDescription","_voucher$value","description","getLink","link","content","color","type","String","default","series","setup","rickshawRef","graph","name_gradient","uniqueId","onMounted","Graph","element","stack","width","height","renderer","interpolation","strokeWidth","data","stroke","render","s","querySelector","insertAdjacentHTML","__props","modal","$q","useQuasar","isMobile","screen","hasLinkStore","parameters","find","p","varp","redirectToStore","param","split","window","open","verifyIfHasParameterizedDocUpload","JSON","parse","common_steps","document_step","$props","shareType","_createBlock","_component_q_icon","onClick","_cache","$event","_component_q_btn","icon","_component_q_dialog","_component_q_card","_component_q_card_section","_component_q_card_title","shareOptions","option","action","bordered","flat","clickable","amount","format","moment","created_at","useActions","components","PageTitle","fetchPoints","whatsappIcon","defineAsyncComponent","twitterIcon","instagramIcon","router","useRouter","partner","isDashboardCentralized","_partner$value","slug","docsPendComponent","showComponent","showModal","pending_docs","fetchDocsPendingDash","then","openModal","namespacedHelpers","BarShare","DashAreaComponent","signUpRouteOptional","valueBase","maxValue","message","percent","invites","partner_slug","user_slug","bonusInviteHelp","fetchParam","axios","get","baseURL","fetchInvites","signUpRoute","resolve","params","query","indicated_by","url","location","origin","href","invitesAccepted","total","toFixed","finally","res","defineComponent","separatorValues","createComponent","useDarkProps","dense","Boolean","square","wrapCells","separator","validator","v","slots","vm","getCurrentInstance","isDark","useDark","proxy","h","hSlot","t","i18n","global","Vue3autocounter","VueHighcharts","model","old","getToday","getPeriodDate","num","d","Date","setDate","getDate","options","reactive","fetchVisitors","visitors","range","begin","end","chartData","chart","backgroundColor","text","yAxis","labels","enabled","gridLineColor","xAxis","visible","plotOptions","marker","symbol","radius","spline","up_down_color","dataLabels","formatter","y","parseInt","enableMouseTracking","areaspline","fillOpacity","responsive","rules","condition","maxWidth","maxHeight","credits","currentValue","todayOrYesterday","useTableRowSelectionProps","selection","selected","useTableRowSelectionEmits","useTableRowSelection","computedRows","getRowKey","selectedKeys","singleSelection","multipleSelection","allRowsSelected","every","someRowsSelected","some","rowsSelectedNumber","isRowSelected","clearSelection","updateSelection","added","evt","payload","concat","autoWidth","emits","child","vnode","colsMap","hUniqueSlot","QIcon","iconSet","table","arrowUp","headerStyle","sort","totalOrders","Number","redirect","endpoint","creditData","visibility","changeVisibility","src","_hoisted_3","_component_q_select","horizontal","_hoisted_4","_component_vue3_autocounter","startAmount","endAmount","duration","autoinit","up_down_value","_toDisplayString","parseFloat","_component_vue3_highcharts","onUpdate","onRendered","onRender","onDestroy","redrawOnUpdate","oneToOneUpdate","animateOnUpdate","_component_q_circular_progress","size","thickness","_hoisted_5","_hoisted_6","innerHTML","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_component_docs_pend_component","docs_pend","docs","driveList","undefined","fetchDrives","dashLastRow","elements","from","document","querySelectorAll","el","classList","contains","remove","output","entries","arrDrives","drive","linksWithValue","catch","err","console","error","_component_DashAreaComponent","titleBorder","_component_q_scroll_area","allCupons","_component_q_list","cupon","i","avatar","_component_q_item_label","lines","side","copyLink","number","_component_ShareComponent","valueToShare","_component_voucher_icon","slide","getDashImage","getPartnerSlug","getUser","storeNotFound","storeNotFoundMobile","fetchDashImage","isAffiliatedMAC","_getUser$value","isMac","isAffiliated","partner_type_id","windowOpen","item","link_to_open_target","link_to_open","prevSlide","nextSlide","platform","is","mobile","missionsNamespaced","getPublicHeader","fetchPublicHeader","_component_q_skeleton","caption","_component_q_space","useTableFilterProps","filterMethod","Function","useTableFilter","setPagination","computedFilterMethod","terms","cellValue","lowerTerms","toLowerCase","haystack","nextTick","page","deep","samePagination","oldPag","newPag","prop","fixPagination","rowsPerPage","useTablePaginationProps","pagination","rowsPerPageOptions","useTablePaginationState","getCellValue","innerPagination","assign","pag","isServerSide","rowsNumber","sendServerRequest","requestServerInteraction","forceServerRequest","newPagination","useTablePagination","filteredSortedRowsNumber","computedRowsNumber","firstRowIndex","lastRowIndex","isFirstPage","pagesNumber","Math","max","ceil","isLastPage","computedRowsPerPageOptions","opts","count","lang","allRows","lastPage","oldLastPage","currentPage","firstPage","prevPage","nextPage","homeNamespace","missionNamespace","viewsNamespace","selectedCompany","in_request_groups","getAllLinks","getAllVouchers","getPointsSummary","getTotalOrderDash","getInRequestsDash","getCompaniesRegisteredSelect","fetchAvaibleMissions","fetchParametersByKeys","handleDashboardServices","fetchPointsSummary","getFilter","id","fetchDashboardData","loading","show","onLoad","setTimeout","hide","changeDataVisibility","e","newVal","Promise","all","getVoucher","parent","copy","notifySuccess","copyToClipboard","yearsInterval","views","viewIsValid","yearMonthValidator","test","lineStr","getMonthHash","date","year","pad","month","useDatetimeProps","useFormProps","multiple","subtitle","mask","defaultYearMonth","yearsInMonthView","events","eventColor","emitImmediately","navigationMinYearMonth","navigationMaxYearMonth","noUnset","firstDayOfWeek","todayBtn","minimal","defaultView","useDatetimeEmits","getCache","useRenderCache","tabindex","headerClass","getLocale","getCurrentDate","useDatetime","lastEmitValue","formAttrs","useFormAttrs","injectFormInput","useFormInject","blurTargetRef","innerMask","getMask","innerLocale","locale","today","viewModel","getViewModel","view","direction","rtl","monthDirection","yearDirection","startYear","editRange","landscape","disable","readonly","computedColor","computedTextColor","textColor","isImmediate","normalizedModel","modelValue","daysModel","decodeString","dateHash","day","rangeModel","fn","isObject","getNativeDateFn","calendar","gDate","toGregorian","gy","gm","gd","encodeObjectFn","getDayHash","formatDate","hour","minute","second","millisecond","timezoneOffset","daysInModel","reduce","acc","getDateDiff","headerTitle","init","daysShort","getDay","monthsShort","pluralDay","isNaN","valueOf","minSelectedModel","a","b","maxSelectedModel","headerSubtitle","dateArrow","datetime","arrowLeft","arrowRight","reverse","computedFirstDayOfWeek","daysOfWeek","days","first","daysInMonth","jalaaliMonthLength","evtColor","minNav","maxNav","navBoundaries","prev","next","daysMap","entry","hash","rangeMap","hashFrom","hashTo","cur","rangeView","initHash","final","finalHash","fromHash","toHash","viewMonthHash","includeFrom","includeTo","selectionDaysMap","dayHash","eventDaysMap","viewDays","endDay","prevJM","prevJY","len","fill","event","in","unelevated","rangeFrom","rangeTo","editRangeFrom","editRangeTo","left","afterDays","cls","attributes","updateViewModel","$el","activeElement","focus","updateValue","setToday","monthMap","addToModel","setCalendarTo","setView","viewMode","offsetCalendar","goToMonth","goToYear","setEditingRange","__splitDate","getDefaultViewModel","decoded","offset","setYear","setMonth","toggleDate","monthHash","removeFromModel","getShortDate","time","timeHash","newHash","emitValue","reason","details","getEmitParams","maxDay","min","encodeEntry","ranges","getHeader","Transition","onKeyup","keyCode","QBtn","round","getNavigation","dir","goTo","boundaries","noCaps","renderViews","Calendar","months","onDayClick","onMouseover","onDayMouseover","Months","currentYear","isDisabled","active","unshift","Years","start","stop","years","dayIndex","dayProps","def","CarouselMultiItensComponent","getAvaibleMissions","done","isDone","checklist","sequence","_component_q_checkbox","checkedOnClick","listClick","video_url","openVideo","help_description","_component_q_tooltip","banner","seamless","position","_normalizeStyle","desktop","_component_q_img","fit","VoucherIcon","ShareComponent","notifyError","navigator","clipboard","writeText","titleClass","ripple","onTooltipClick","_component_show_up_video","clicked_count","_component_tooltip","tooltip_message","_renderSlot","$slots","getCompaniesList","CardFlipPartnerActive","CardFlipPartnerSubscribe","CardFlipPartnerMission","CardFlipPartnerSubscribeSkeleton","CardFlipPartnerMissionSkeleton","itemName","groupSize","groupGrid","isFullHeight","formatData","items","groupedItems","currentGroup","fetchShowUp","showUpWatched","show_up","is_watched","watched","notifyInfo","widgets","getPartner","fetchWidgetsServices","useI18n","periodData","modelPeriod","previousDate","progress","clickSelectOption","optionSelected","dialog","component","componentProps","listeningCustomDate","newPeriod","getPeriods","getLabel","period","hoje","ano","getFullYear","toString","mes","getMonth","padStart","dia","dataFormatada","equalDates","created_at_end","created_at_begin","formattedPeriod","getServices","start_date","end_date","postServices","begin_at","end_at","newValue","oldValue","formatPeriodByMonths","formatPeriod","getCluster","getClusterAndShareData","fetchClusterAndShare","fetchClusterPartnerInfo","openDialog","openedOrClosed","displaysClusteredParts","clusterLevel","_getCluster$value","isExclusiveClusterAndCouponEnabled","cluster","show_bar","show_cupom","show_store","show_level_detail","show_level","hasOnlyCoupon","_getVoucher$value","nextLevelText","_getPartner$value","textMessagePeriod","_getPartner$value2","message_1","replace","isCopyActionsEnabled","_displaysClusteredPar","_displaysClusteredPar2","canShowLevelDetails","_displaysClusteredPar3","_displaysClusteredPar4","cluster_update_automatic","_newValue$show_dash_b","show_dash_bar","immediate","toggleOpen","formatarPorcentagem","valor","Error","hideDateHeader","titleDateHeader","calculateDaysBetweenDates","currentDate","thirtyDaysAgo","subtract","dialogRef","onDialogHide","onDialogOK","useDialogPluginComponent","onOKClick","_model$value","_model$value2","dialogDateInvalid","americanFormat","checkDateIsValid","dialogHide","calendarOptions","isDateValid","calendars","editable","join","dateOnly","timeFill","jDate","toJalaali","jy","jm","jd","authNamespace","getCompaniesRegisteredList","signInByDashboard","login","missionSlug","path","verifyIfIsSubscribed","subs","pop","partners","approved","nativeShare","share","log","alert","shareToSocialMedia","encodeURIComponent","userAgent","animation","tooltipText","_component_q_knob","_component_bar_share","_component_q_carousel","arrows","padding","animated","swipeable","group","_component_q_carousel_slide","_resolveDynamicComponent","prefix","decimalSeparator","decimals","allLinks","accessLink","parent_name","sortDate","sortBoolean","ShowUpVideo","comps","list","QList","QMarkupTable","typeOptions","useVirtualScrollProps","itemsFn","itemsSize","scrollTarget","attrs","localScrollTarget","rootRef","virtualScrollLength","virtualScrollSliceRange","localResetVirtualScroll","padVirtualScroll","onVirtualScrollEvt","useVirtualScroll","getVirtualScrollTarget","getVirtualScrollEl","virtualScrollScope","mapFn","virtualScrollHorizontal","unconfigureScrollTarget","configureScrollTarget","getScrollTarget","addEventListener","listenOpts","passive","removeEventListener","__getVirtualChildren","before","hMergeSlot","after","onBeforeMount","onActivated","onDeactivated","onBeforeUnmount","getTableMiddle","_component_carousel_multi_itens_component","store","useStore","fetchCompanyScripts","commit","__default__","toPercent","showRescueButton","buttonTitle","colorFeeling","P","N","Z","points_received","points_rescued","points_expire_soon","_hoisted_7","balance","_component_q_bar","_component_q_card_actions","spread","fetchSpread","whatsapp_drive_share_link","instagram_drive_share_link","drive_share_link","hasLink","openLink","onRequest","checked","checkUpChecklistAction","undoChecklistAction","newChecklist","Platform","mobile_banner_url","desktop_banner_url","url_target","fetchGraphVisitor","fakeChart","floor","random","fake","stringify","prodImage","onError","onErrorImage","toMoneyLabel","price","shared_link","MILLISECONDS_IN_DAY","MILLISECONDS_IN_HOUR","MILLISECONDS_IN_MINUTE","defaultMask","token","reverseToken","regexStore","getRegexData","dateLocale","regexText","match","YY","YYYY","M","MMM","MMMM","D","H","m","S","A","aa","ZZ","X","x","substring","regex","RegExp","getDateLocale","paramDateLocale","langProps","defaultLang","formatTimezone","delimeter","sign","absOffset","abs","hours","minutes","applyYearMonthDayChange","mod","setFullYear","applyYearMonthDay","middle","getChange","rawMod","normalizeMod","op","capitalize","seconds","milliseconds","adjustDate","utc","charAt","extractDate","str","tzOffset","getTimezoneOffset","defaultModel","langOpts","tzString","stamp","getHours","getMinutes","getSeconds","getMilliseconds","isValid","buildDate","getDayOfWeek","dow","getWeekOfYear","thursday","firstThursday","ds","setHours","weekDiff","getDayIdentifier","getDateIdentifier","onlyDate","getTime","isBetweenDates","d1","d2","inclusiveFrom","inclusiveTo","addToDate","subtractFromDate","startOfDate","unit","endOfDate","getMaxDate","prototype","call","arguments","getMinDate","getDiff","sub","interval","getDayOfYear","inferDateFormat","isDate","getDateBetween","low","high","isSameDate","date2","getOrdinal","forcedYear","_dateLocale","MM","Q","Qo","Do","DD","DDD","DDDD","dd","dddd","ddd","E","w","ww","HH","hh","mm","ss","SS","SSS","_forcedYear","forcedTimezoneOffset","__forcedYear","__forcedTimezoneOffset","Infinity","clone","Checklist","checklists","links","selectedGroup","messageDialog","formatGroup","groups","formatedNetworks","result","handleAction","ProductItemStore","store_products","favorite_products","take","fetchFavoriteProductsAction","fetchStoreProductsAction","_component_checklist","initialized","showCluster","oneOrMoreEnabledPartiesCluster","hasSpread","dashboard_mode","fetchRewardLayout","componentsNamespace","currentItem","carousel","fetchChecklistsAction","ck","verifyChecklist","persistent","text_html","useTableSortProps","sortMethod","binaryStateSort","columnSortOrder","useTableSort","columnToSort","computedSortMethod","B","rawSort","toLocaleString","sortOrder","breaks","d2j","g2d","d2g","j2d","isLeapJalaaliYear","jalCalLeap","bl","jp","jump","leap","div","jalCal","withoutLeap","leapJ","leapG","march","r","jdn","k","jdn1f","j","homeNamespaced","authNamespaced","userSlug","fetchBanner","getBanner","_component_q_table","_component_router_link","getClusterPartnerInfo","formatToRealBR","currency","formatRange","UseAssents","imageSt","ImgNotFound","origin_link","bottomClass","commonVirtPropsObj","commonVirtPropsList","rowKey","iconFirstPage","iconPrevPage","iconNextPage","iconLastPage","hideHeader","grid","gridHeader","virtualScroll","virtualScrollTarget","noDataLabel","noResultsLabel","loadingLabel","selectedRowsLabel","rowsPerPageLabel","paginationLabel","tableStyle","tableClass","tableHeaderStyle","tableHeaderClass","cardContainerClass","cardContainerStyle","cardStyle","cardClass","hideBottom","hideSelectedBanner","hideNoData","hidePagination","onRowClick","onRowDblclick","onRowContextmenu","useFullscreenProps","useFullscreenEmits","inFullscreen","toggleFullscreen","useFullscreen","virtScrollRef","hasVirtScroll","cardDefaultClass","__containerClass","containerClass","reset","filteredSortedRows","nothingToDisplay","virtProps","virtualScrollItemSize","resetVirtualScroll","getBody","getGridBody","header","getTHead","topRow","bottomRow","virtSlots","getTBodyTR","body","topContent","QVirtualScroll","onVirtualScroll","onVScroll","getTBody","scrollTo","toIndex","edge","rowEl","offsetTop","virtualScrollStickySizeStart","scrollTop","info","getProgress","QLinearProgress","dark","indeterminate","trackColor","bodySlot","pageIndex","getBodyScope","__trClass","bodyCell","bodyCellCol","slot","getBodyCellScope","getBodySelectionScope","QCheckbox","onUpdate:modelValue","adding","onDblclick","onContextmenu","injectBodyCommonScope","injectProp","rowIndex","marginalsScope","getTopDiv","top","topLeft","topRight","topSelection","hasSelection","topClass","headerSelectedValue","getTHeadTR","colspan","headerCell","getHeaderScope","headerCellCol","QTh","onMultipleSelectionSet","navIcon","ico","getBottomDiv","noResults","noData","children","warning","bottom","selectedRecords","getPaginationDiv","onPagSelection","control","paginationSlot","hasOpts","recordsPerPage","QSelect","displayValue","borderless","optionsDense","optionsCover","btnProps","getGridHeader","scope","QSeparator","injectMultipleProps"],"mappings":"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ACA;AACA;AACA;AACA;AACA,8DAA8D,+DAA+D;AAC7H;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;;AAEA;AACA;;AAEA,iBAAiB,mBAAO,CAAC,wBAAY;;AAErC,OAAO;;AAEP;AACA;;AAEA,gGAAgG;AAChG;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,MAAM,EAAE;AACX,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D;;AAE1D;AACA;AACA,+DAA+D,qBAAqB;AACpF;AACA;;AAEA,qBAAqB,oBAAoB;AACzC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,CAAC;;;AAGD,OAAO;;AAEP;AACA;;AAEA,iBAAiB,mBAAO,CAAC,iBAAK;;AAE9B,OAAO;;AAEP;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,wDAAwD,wBAAwB;AAChF;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,8BAA8B;AAC9B;;AAEA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA,KAAK;AACL,GAAG;;AAEH,gBAAgB,OAAO;AACvB;AACA;;AAEA,WAAW,UAAU;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,GAAG,aAAa;;AAEvB;AACA;AACA;AACA,SAAS;AACT,OAAO;;AAEP;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA,KAAK;AACL,sBAAsB,WAAW;AACjC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,KAAK;AACL,GAAG;AACH,CAAC;;AAED;;AAEA;;;AAGA;AACA;AACA;;AAEA;;AAEA;;AAEA;;;AAGA;;;;AAIA,OAAO;;AAEP,UAAU;AACV,kD;;;;;;;;;;;;AC1UA;AAAA;AAAA;AAAA;AAAA,wCAA0hB,C;;;;;;;;;;;;ACA1hB;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA8E;AACL;;AAEG;AACY;AACb;;AAE2D;AACtI,iCAAiC,+IAAe,CAAC,gGAAM;;AAExC,0EAAW;AACoC;AACN;AACG;AAC4B;AAC5B;AAC4C;AACvG,sGAAQ,CAAC,gGAAM,iBAAiB,wFAAO,CAAC,kFAAK,CAAC,qFAAM,CAAC,iHAAe,CAAC,qFAAM,CAAC;;;;;;;;;;;;;ACjB5E;AAAA;AAAA;AAAA;AAAA,wCAA4lB,C;;;;;;;;;;;;ACA5lB;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA,wCAA6kB,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACqD/gB;AACiE;AAC7D;AACnB;AACZ;AAAA;;;;IAEnC,MAAMwY,KAAK,GAAGvU,+CAAG,CAAC,CAAC,CAAC;IACpB,MAAMlF,UAAU,GAAGkF,+CAAG,CAAC,KAAK,CAAC;IAC7B,MAAMiD,EAAE,GAAGC,oFAAS,CAAC,CAAC;IAEtB,MAAM;MAAEsR,YAAY;MAAEC,cAAc;MAAEC,OAAO;MAAEC,aAAa;MAAEC;IAAoB,CAAC,GAAGnY,2EAAU,CAAC;MAC/F+X,YAAY,EAAE,mBAAmB;MACjCC,cAAc,EAAE,wBAAwB;MACxCC,OAAO,EAAE,cAAc;MACvBC,aAAa,EAAE,uBAAuB;MACtCC,mBAAmB,EAAE;IACvB,CAAC,CAAC;IAEF,MAAM;MAAEC;IAAe,CAAC,GAAGlP,2EAAU,CAAC;MACpCkP,cAAc,EAAE;IAClB,CAAC,CAAC;;IAEF;IACA,MAAMC,eAAe,GAAG5X,oDAAQ,CAAC,MAAM;MAAA,IAAA6X,cAAA;MACrC,MAAMC,KAAK,GAAGP,cAAc,CAACvW,KAAK,KAAK,cAAc;MACrD,MAAM+W,YAAY,GAAG,EAAAF,cAAA,GAAAL,OAAO,CAACxW,KAAK,cAAA6W,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAe1O,OAAO,cAAA0O,cAAA,uBAAtBA,cAAA,CAAwBG,eAAe,KAAI,KAAK,CAAC,CAAC;;MAEvE,OAAOF,KAAK,IAAIC,YAAY;IAC9B,CAAC,CAAC;IAEF,MAAME,UAAU,GAAIC,IAAI,IAAK;MAC3B,IAAIA,IAAI,CAACC,mBAAmB,EAAE;QAC5BxR,MAAM,CAACC,IAAI,CAACsR,IAAI,CAACE,YAAY,EAAEF,IAAI,CAACC,mBAAmB,CAAC;MAC1D;MACA;IACF,CAAC;IAED,MAAME,SAAS,GAAGA,CAAA,KAAM;MACtBhB,KAAK,CAACrW,KAAK,GAAGqW,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAGqW,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAGsW,YAAY,CAACtW,KAAK,CAACmB,MAAM;IAC7E,CAAC;IAED,MAAMmW,SAAS,GAAGA,CAAA,KAAM;MACtBjB,KAAK,CAACrW,KAAK,GAAGqW,KAAK,CAACrW,KAAK,GAAGsW,YAAY,CAACtW,KAAK,CAACmB,MAAM,GAAGkV,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAG,CAAC;IAC7E,CAAC;IAED8D,qDAAS,CAAC,MAAM;MACdlH,UAAU,CAACoD,KAAK,GAAG,IAAI;MACvB2W,cAAc,CAAC;QACbvU,MAAM,EAAE2C,EAAE,CAACwS,QAAQ,CAACC,EAAE,CAACC,MAAM,GACzB,+BAA+B,GAC/B;MACN,CAAC,CAAC,CAAC9M,OAAO,CAAC,MAAO/N,UAAU,CAACoD,KAAK,GAAG,KAAM,CAAC;IAC9C,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1EiE;AAC9B;AACF;AAAA;;;;IAEnC,MAAM0X,kBAAkB,GAAGrZ,wFAAuB,CAAC,UAAU,CAAC;IAE9D,MAAM0G,EAAE,GAAGC,oFAAS,CAAC,CAAC;MACpB;QAAE2S;MAAgB,CAAC,GAAGD,kBAAkB,CAACnZ,UAAU,CAAC;QAClDoZ,eAAe,EAAE;MACnB,CAAC,CAAC;MACF;QAAEC;MAAkB,CAAC,GAAGF,kBAAkB,CAACjQ,UAAU,CAAC;QACpDmQ,iBAAiB,EAAE;MACrB,CAAC,CAAC;IAEJ,MAAMvB,KAAK,GAAGvU,+CAAG,CAAC,CAAC,CAAC;IAEpB,MAAMmV,UAAU,GAAI/T,IAAI,IAAK;MAC3B,IAAIA,IAAI,EAAEyC,MAAM,CAACC,IAAI,CAAC1C,IAAI,EAAE,QAAQ,CAAC;IACvC,CAAC;IAED,MAAMmU,SAAS,GAAGA,CAAA,KAAM;MACtBhB,KAAK,CAACrW,KAAK,GACTqW,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAGqW,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAG2X,eAAe,CAAC3X,KAAK,CAACmB,MAAM;IACpE,CAAC;IAED,MAAMmW,SAAS,GAAGA,CAAA,KAAM;MACtBjB,KAAK,CAACrW,KAAK,GACTqW,KAAK,CAACrW,KAAK,GAAG2X,eAAe,CAAC3X,KAAK,CAACmB,MAAM,GAAGkV,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAG,CAAC;IACpE,CAAC;IAED8D,qDAAS,CAAC,MAAM;MACd8T,iBAAiB,CAAC;QAChBxV,MAAM,EACJ2C,EAAE,CAACG,MAAM,CAAChB,KAAK,GAAG,GAAG,GACjB,8BAA8B,GAC9B;MACR,CAAC,CAAC;IACJ,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACpEF;AAAA;AAAA;AAAA;AAAA,wCAA+mB,C;;;;;;;;;;;ACA/mB,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAoF;AACtB;AACL;;AAE0B;;AAEmD;AACtI,iCAAiC,+IAAe,CAAC,gFAAM,aAAa,iGAAM;;AAE3D,0EAAW;AAC0C;AAC6B;AACjG,qGAAQ,CAAC,gFAAM,iBAAiB,8FAAS,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;kECXxCkC,uDAAA,CAyBSQ,iBAAA;IAzBDO,IAAI,EAAJ,EAAI;IAAC3K,KAAK,EAAC;;iEACjB,MAkBS,CAlBTK,uDAAA,CAkBSmB,iBAAA;MAlBDxB,KAAK,EAAC;IAAS;mEACrB,MAMiB,CANjBK,uDAAA,CAMiBsB,yBAAA;QANDyX,MAAM,EAAN;MAAM;qEACpB,MAIE,CAJF/Y,uDAAA,CAIEgb,qBAAA;UAHAxU,IAAI,EAAC,QAAQ;UACb8P,IAAI,EAAC,MAAM;UACX3W,KAAK,EAAC;;;UAGVK,uDAAA,CASiBsB,yBAAA;qEARf,MAEe,CAFftB,uDAAA,CAEegZ,uBAAA;UAFDrZ,KAAK,EAAC;QAA2B;uEAC7C,MAA0B,CAA1BK,uDAAA,CAA0Bgb,qBAAA;YAAdxU,IAAI,EAAC;UAAM,G;;YAEzBxG,uDAAA,CAIegZ,uBAAA;UAJDiC,OAAO,EAAP,EAAO;UAAChC,KAAK,EAAC,GAAG;UAACtZ,KAAK,EAAC;;uEACpC,MAA0B,CAA1BK,uDAAA,CAA0Bgb,qBAAA;YAAdxU,IAAI,EAAC;UAAM,IACvBxG,uDAAA,CAA0Bgb,qBAAA;YAAdxU,IAAI,EAAC;UAAM,IACvBxG,uDAAA,CAA0Bgb,qBAAA;YAAdxU,IAAI,EAAC;UAAM,G;;;;;;QAI7BxG,uDAAA,CAA6Cgb,qBAAA;MAAjC1T,MAAM,EAAC,OAAO;MAAC3H,KAAK,EAAC;QACjCK,uDAAA,CAGiBgK,yBAAA;MAHDrK,KAAK,EAAC;IAAK;mEACzB,MAAW,CAAXK,uDAAA,CAAWkb,kBAAA,GACXlb,uDAAA,CAA0Bgb,qBAAA;QAAdxU,IAAI,EAAC;MAAM,G;;;;;;;;;;;;;;;;;ACxB7B;AAAA;AAAA;AAAA;AAAA,wCAAikB,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;IC0CjkB,MAAMmO,QAAQ,GAAIlJ,IAAI,IAAK3C,MAAM,CAACC,IAAI,CAAE,IAAG0C,IAAK,QAAO,EAAE,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC1ClE;AAAA;AAAA;AAAA;AAAA,wCAA8kB,C;;;;;;;;;;;;ACA9kB;AAAA;AAAA;AAAA;AAAA,wCAA2kB,C;;;;;;;;;;;;ACA3kB;AAAA;AAAA;AAAA;AAA+C;AAExC,MAAM0P,mBAAmB,GAAG;EACjC9X,MAAM,EAAE,CAAEoD,MAAM,EAAElE,MAAM,CAAE;EAC1B6Y,YAAY,EAAEC;AAChB,CAAC;AAEM,SAASC,cAAcA,CAAEvZ,KAAK,EAAEwZ,aAAa,EAAE;EACpD,MAAMC,oBAAoB,GAAGrZ,oDAAQ,CAAC,MACpCJ,KAAK,CAACqZ,YAAY,KAAK,KAAK,CAAC,GACzBrZ,KAAK,CAACqZ,YAAY,GAClB,CAAC9Y,IAAI,EAAEmZ,KAAK,EAAErY,IAAI,EAAEsY,SAAS,KAAK;IAChC,MAAMC,UAAU,GAAGF,KAAK,GAAGA,KAAK,CAACG,WAAW,CAAC,CAAC,GAAG,EAAE;IACnD,OAAOtZ,IAAI,CAACe,MAAM,CAChBhB,GAAG,IAAIe,IAAI,CAACgQ,IAAI,CAAC9P,GAAG,IAAI;MACtB,MAAMkB,GAAG,GAAGkX,SAAS,CAACpY,GAAG,EAAEjB,GAAG,CAAC,GAAG,EAAE;MACpC,MAAMwZ,QAAQ,GAAIrX,GAAG,KAAK,WAAW,IAAIA,GAAG,KAAK,MAAM,GAAI,EAAE,GAAGA,GAAG,CAACoX,WAAW,CAAC,CAAC;MACjF,OAAOC,QAAQ,CAACpW,OAAO,CAACkW,UAAU,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC,CACH,CAAC;EACH,CACL,CAAC;EAEFzW,iDAAK,CACH,MAAMnD,KAAK,CAACsB,MAAM,EAClB,MAAM;IACJyY,oDAAQ,CAAC,MAAM;MACbP,aAAa,CAAC;QAAEQ,IAAI,EAAE;MAAE,CAAC,EAAE,IAAI,CAAC;IAClC,CAAC,CAAC;EACJ,CAAC,EACD;IAAEC,IAAI,EAAE;EAAK,CACf,CAAC;EAED,OAAO;IAAER;EAAqB,CAAC;AACjC,C;;;;;;;;;;;;AClCA;AAAA;AAAA;AAAkE;AACL;;AAEG;;AAEhE,oBAAoB,oFAAM;;AAEX,0E;;;;;;;;;;;;ACPf;AAAA;AAAA;AAAA;AAAA,wCAAulB,C;;;;;;;;;;;;ACAvlB;AAAA;AAAA;AAAA;AAAA;AAAoD;AAEpD,SAASS,cAAcA,CAAEC,MAAM,EAAEC,MAAM,EAAE;EACvC,KAAK,MAAMC,IAAI,IAAID,MAAM,EAAE;IACzB,IAAIA,MAAM,CAAEC,IAAI,CAAE,KAAKF,MAAM,CAAEE,IAAI,CAAE,EAAE;MACrC,OAAO,KAAK;IACd;EACF;EACA,OAAO,IAAI;AACb;AAEA,SAASC,aAAaA,CAAE5T,CAAC,EAAE;EACzB,IAAIA,CAAC,CAACsT,IAAI,GAAG,CAAC,EAAE;IACdtT,CAAC,CAACsT,IAAI,GAAG,CAAC;EACZ;EACA,IAAItT,CAAC,CAAC6T,WAAW,KAAK,KAAK,CAAC,IAAI7T,CAAC,CAAC6T,WAAW,GAAG,CAAC,EAAE;IACjD7T,CAAC,CAAC6T,WAAW,GAAG,CAAC;EACnB;EACA,OAAO7T,CAAC;AACV;AAEO,MAAM8T,uBAAuB,GAAG;EACrCC,UAAU,EAAEja,MAAM;EAClBka,kBAAkB,EAAE;IAClBjW,IAAI,EAAE3E,KAAK;IACX6E,OAAO,EAAEA,CAAA,KAAM,CAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;EAC9C,CAAC;EAED,qBAAqB,EAAE,CAAE2U,QAAQ,EAAExZ,KAAK;AAC1C,CAAC;AAEM,SAAS6a,uBAAuBA,CAAE9N,EAAE,EAAE+N,YAAY,EAAE;EACzD,MAAM;IAAE5a,KAAK;IAAEgD;EAAK,CAAC,GAAG6J,EAAE;EAE1B,MAAMgO,eAAe,GAAG3X,+CAAG,CACzB1C,MAAM,CAACsa,MAAM,CAAC;IACZ5Z,MAAM,EAAE,IAAI;IACZC,UAAU,EAAE,KAAK;IACjB6Y,IAAI,EAAE,CAAC;IACPO,WAAW,EAAEva,KAAK,CAAC0a,kBAAkB,CAACnY,MAAM,KAAK,CAAC,GAC9CvC,KAAK,CAAC0a,kBAAkB,CAAE,CAAC,CAAE,GAC7B;EACN,CAAC,EAAE1a,KAAK,CAACya,UAAU,CACrB,CAAC;EAED,MAAMxa,kBAAkB,GAAGG,oDAAQ,CAAC,MAAM;IACxC,MAAM2a,GAAG,GAAG/a,KAAK,CAAE,qBAAqB,CAAE,KAAK,KAAK,CAAC,GACjD;MAAE,GAAG6a,eAAe,CAACzZ,KAAK;MAAE,GAAGpB,KAAK,CAACya;IAAW,CAAC,GACjDI,eAAe,CAACzZ,KAAK;IAEzB,OAAOkZ,aAAa,CAACS,GAAG,CAAC;EAC3B,CAAC,CAAC;EAEF,MAAMC,YAAY,GAAG5a,oDAAQ,CAAC,MAAMH,kBAAkB,CAACmB,KAAK,CAAC6Z,UAAU,KAAK,KAAK,CAAC,CAAC;EAEnF,SAASC,iBAAiBA,CAAET,UAAU,EAAE;IACtCU,wBAAwB,CAAC;MACvBV,UAAU;MACVnZ,MAAM,EAAEtB,KAAK,CAACsB;IAChB,CAAC,CAAC;EACJ;EAEA,SAAS6Z,wBAAwBA,CAAEd,IAAI,GAAG,CAAC,CAAC,EAAE;IAC5CN,oDAAQ,CAAC,MAAM;MACb/W,IAAI,CAAC,SAAS,EAAE;QACdyX,UAAU,EAAEJ,IAAI,CAACI,UAAU,IAAIxa,kBAAkB,CAACmB,KAAK;QACvDE,MAAM,EAAE+Y,IAAI,CAAC/Y,MAAM,IAAItB,KAAK,CAACsB,MAAM;QACnCsZ;MACF,CAAC,CAAC;IACJ,CAAC,CAAC;EACJ;EAEA,SAASpB,aAAaA,CAAE/W,GAAG,EAAE2Y,kBAAkB,EAAE;IAC/C,MAAMC,aAAa,GAAGf,aAAa,CAAC;MAClC,GAAGra,kBAAkB,CAACmB,KAAK;MAC3B,GAAGqB;IACL,CAAC,CAAC;IAEF,IAAIyX,cAAc,CAACja,kBAAkB,CAACmB,KAAK,EAAEia,aAAa,CAAC,KAAK,IAAI,EAAE;MACpE,IAAIL,YAAY,CAAC5Z,KAAK,KAAK,IAAI,IAAIga,kBAAkB,KAAK,IAAI,EAAE;QAC9DF,iBAAiB,CAACG,aAAa,CAAC;MAClC;MACA;IACF;IAEA,IAAIL,YAAY,CAAC5Z,KAAK,KAAK,IAAI,EAAE;MAC/B8Z,iBAAiB,CAACG,aAAa,CAAC;MAChC;IACF;IAEA,IACErb,KAAK,CAACya,UAAU,KAAK,KAAK,CAAC,IACxBza,KAAK,CAAE,qBAAqB,CAAE,KAAK,KAAK,CAAC,EAC5C;MACAgD,IAAI,CAAC,mBAAmB,EAAEqY,aAAa,CAAC;IAC1C,CAAC,MACI;MACHR,eAAe,CAACzZ,KAAK,GAAGia,aAAa;IACvC;EACF;EAEA,OAAO;IACLR,eAAe;IACf5a,kBAAkB;IAClB+a,YAAY;IAEZG,wBAAwB;IACxB3B;EACF,CAAC;AACH;AAEO,SAAS8B,kBAAkBA,CAAEzO,EAAE,EAAEgO,eAAe,EAAE5a,kBAAkB,EAAE+a,YAAY,EAAExB,aAAa,EAAE+B,wBAAwB,EAAE;EAClI,MAAM;IAAEvb,KAAK;IAAEgD,IAAI;IAAEiK,KAAK,EAAE;MAAE9G;IAAG;EAAE,CAAC,GAAG0G,EAAE;EAEzC,MAAM2O,kBAAkB,GAAGpb,oDAAQ,CAAC,MAClC4a,YAAY,CAAC5Z,KAAK,KAAK,IAAI,GACvBnB,kBAAkB,CAACmB,KAAK,CAAC6Z,UAAU,IAAI,CAAC,GACxCM,wBAAwB,CAACna,KAC9B,CAAC;EAEF,MAAMqa,aAAa,GAAGrb,oDAAQ,CAAC,MAAM;IACnC,MAAM;MAAE4Z,IAAI;MAAEO;IAAY,CAAC,GAAGta,kBAAkB,CAACmB,KAAK;IACtD,OAAO,CAAC4Y,IAAI,GAAG,CAAC,IAAIO,WAAW;EACjC,CAAC,CAAC;EAEF,MAAMmB,YAAY,GAAGtb,oDAAQ,CAAC,MAAM;IAClC,MAAM;MAAE4Z,IAAI;MAAEO;IAAY,CAAC,GAAGta,kBAAkB,CAACmB,KAAK;IACtD,OAAO4Y,IAAI,GAAGO,WAAW;EAC3B,CAAC,CAAC;EAEF,MAAMoB,WAAW,GAAGvb,oDAAQ,CAAC,MAAMH,kBAAkB,CAACmB,KAAK,CAAC4Y,IAAI,KAAK,CAAC,CAAC;EAEvE,MAAM4B,WAAW,GAAGxb,oDAAQ,CAAC,MAC3BH,kBAAkB,CAACmB,KAAK,CAACmZ,WAAW,KAAK,CAAC,GACtC,CAAC,GACDsB,IAAI,CAACC,GAAG,CACR,CAAC,EACDD,IAAI,CAACE,IAAI,CAACP,kBAAkB,CAACpa,KAAK,GAAGnB,kBAAkB,CAACmB,KAAK,CAACmZ,WAAW,CAC3E,CACH,CAAC;EAEF,MAAMyB,UAAU,GAAG5b,oDAAQ,CAAC,MAC1Bsb,YAAY,CAACta,KAAK,KAAK,CAAC,GACpB,IAAI,GACJnB,kBAAkB,CAACmB,KAAK,CAAC4Y,IAAI,IAAI4B,WAAW,CAACxa,KAClD,CAAC;EAEF,MAAM6a,0BAA0B,GAAG7b,oDAAQ,CAAC,MAAM;IAChD,MAAM8b,IAAI,GAAGlc,KAAK,CAAC0a,kBAAkB,CAACjZ,QAAQ,CAACoZ,eAAe,CAACzZ,KAAK,CAACmZ,WAAW,CAAC,GAC7Eva,KAAK,CAAC0a,kBAAkB,GACxB,CAAEG,eAAe,CAACzZ,KAAK,CAACmZ,WAAW,CAAE,CAAC1I,MAAM,CAAC7R,KAAK,CAAC0a,kBAAkB,CAAC;IAE1E,OAAOwB,IAAI,CAACxb,GAAG,CAACyb,KAAK,KAAK;MACxBxb,KAAK,EAAEwb,KAAK,KAAK,CAAC,GAAGhW,EAAE,CAACiW,IAAI,CAAC9J,KAAK,CAAC+J,OAAO,GAAG,EAAE,GAAGF,KAAK;MACvD/a,KAAK,EAAE+a;IACT,CAAC,CAAC,CAAC;EACL,CAAC,CAAC;EAEFhZ,iDAAK,CAACyY,WAAW,EAAE,CAACU,QAAQ,EAAEC,WAAW,KAAK;IAC5C,IAAID,QAAQ,KAAKC,WAAW,EAAE;MAC5B;IACF;IAEA,MAAMC,WAAW,GAAGvc,kBAAkB,CAACmB,KAAK,CAAC4Y,IAAI;IACjD,IAAIsC,QAAQ,IAAI,CAACE,WAAW,EAAE;MAC5BhD,aAAa,CAAC;QAAEQ,IAAI,EAAE;MAAE,CAAC,CAAC;IAC5B,CAAC,MACI,IAAIsC,QAAQ,GAAGE,WAAW,EAAE;MAC/BhD,aAAa,CAAC;QAAEQ,IAAI,EAAEsC;MAAS,CAAC,CAAC;IACnC;EACF,CAAC,CAAC;EAEF,SAASG,SAASA,CAAA,EAAI;IACpBjD,aAAa,CAAC;MAAEQ,IAAI,EAAE;IAAE,CAAC,CAAC;EAC5B;EAEA,SAAS0C,QAAQA,CAAA,EAAI;IACnB,MAAM;MAAE1C;IAAK,CAAC,GAAG/Z,kBAAkB,CAACmB,KAAK;IACzC,IAAI4Y,IAAI,GAAG,CAAC,EAAE;MACZR,aAAa,CAAC;QAAEQ,IAAI,EAAEA,IAAI,GAAG;MAAE,CAAC,CAAC;IACnC;EACF;EAEA,SAAS2C,QAAQA,CAAA,EAAI;IACnB,MAAM;MAAE3C,IAAI;MAAEO;IAAY,CAAC,GAAGta,kBAAkB,CAACmB,KAAK;IACtD,IAAIsa,YAAY,CAACta,KAAK,GAAG,CAAC,IAAI4Y,IAAI,GAAGO,WAAW,GAAGiB,kBAAkB,CAACpa,KAAK,EAAE;MAC3EoY,aAAa,CAAC;QAAEQ,IAAI,EAAEA,IAAI,GAAG;MAAE,CAAC,CAAC;IACnC;EACF;EAEA,SAASsC,QAAQA,CAAA,EAAI;IACnB9C,aAAa,CAAC;MAAEQ,IAAI,EAAE4B,WAAW,CAACxa;IAAM,CAAC,CAAC;EAC5C;EAEA,IAAIpB,KAAK,CAAE,qBAAqB,CAAE,KAAK,KAAK,CAAC,EAAE;IAC7CgD,IAAI,CAAC,mBAAmB,EAAE;MAAE,GAAG/C,kBAAkB,CAACmB;IAAM,CAAC,CAAC;EAC5D;EAEA,OAAO;IACLqa,aAAa;IACbC,YAAY;IACZC,WAAW;IACXK,UAAU;IACVJ,WAAW;IACXK,0BAA0B;IAC1BT,kBAAkB;IAElBiB,SAAS;IACTC,QAAQ;IACRC,QAAQ;IACRL;EACF,CAAC;AACH,C;;;;;;;;;;;;ACpNA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA,wCAAslB,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACsM1gB;AACM;AACE;AACd;AACF;AACA;AACA;AACpE;AACkE;AACJ;AACU;AAChB;AACH;AACX;AACE;AAC6F;AAEtE;AACvB;AACT;AAAA;;;;IAEnC,MAAMM,aAAa,GAAGnd,yFAAuB,CAAC,MAAM,CAAC;MACnDod,gBAAgB,GAAGpd,yFAAuB,CAAC,UAAU,CAAC;MACtDqd,cAAc,GAAGrd,yFAAuB,CAAC,OAAO,CAAC;IAEnD,MAAMsd,eAAe,GAAG7Z,+CAAG,CAAC,IAAI,CAAC;MAC/B8Z,iBAAiB,GAAG9Z,+CAAG,CAAC,KAAK,CAAC;IAEhC,MAAMiD,EAAE,GAAGC,qFAAS,CAAC,CAAC;MACpBC,QAAQ,GAAGF,EAAE,CAACG,MAAM,CAAChB,KAAK,GAAG,GAAG;IAElC,MAAM;MACJ2X,WAAW;MACXC,cAAc;MACdC,gBAAgB;MAChBC,iBAAiB;MACjBC,iBAAiB;MACjBC;IACF,CAAC,GAAGV,aAAa,CAACjd,UAAU,CAAC,CAC3B,aAAa,EACb,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACnB,8BAA8B,CAC/B,CAAC;IAEF,MAAM;MAAE4d;IAAqB,CAAC,GAAGV,gBAAgB,CAAChU,UAAU,CAAC,CAC3D,sBAAsB,CACvB,CAAC;IACF,MAAM;MAAE2U;IAAsB,CAAC,GAAGV,cAAc,CAACjU,UAAU,CAAC,CAC1D,uBAAuB,CACxB,CAAC;IAEF,MAAM;MAAE4U,uBAAuB;MAAEC;IAAmB,CAAC,GACnDd,aAAa,CAAC/T,UAAU,CAAC,CAAC,yBAAyB,EAAE,oBAAoB,CAAC,CAAC;IAE7E,MAAM8U,SAAS,GAAIC,EAAE,KAAM;MACzB,CAAC,oBAAoB,GAAGA;IAC1B,CAAC,CAAC;IAEF,MAAMC,kBAAkB,GAAGA,CAACD,EAAE,GAAG,IAAI,KAAK;MACxCzX,EAAE,CAAC2X,OAAO,CAACC,IAAI,CAAC,CAAC;MACjB,IAAIH,EAAE,EAAEH,uBAAuB,CAACE,SAAS,CAACC,EAAE,CAAC,CAAC,CAAC7R,OAAO,CAAC,MAAMiS,MAAM,CAAC,CAAC,CAAC,CAAC,KAClEP,uBAAuB,CAAC,CAAC,CAAC1R,OAAO,CAAC,MAAMiS,MAAM,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,MAAMA,MAAM,GAAGA,CAAA,KAAMC,UAAU,CAAC,MAAM9X,EAAE,CAAC2X,OAAO,CAACI,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;IAE9D,MAAMC,oBAAoB,GAAIC,CAAC,IAAK;MAClC,MAAMxM,OAAO,GAAGmL,eAAe,CAAC3b,KAAK,GACjCuc,SAAS,CAACZ,eAAe,CAAC3b,KAAK,CAACwc,EAAE,CAAC,GACnC,IAAI;MAERzX,EAAE,CAAC2X,OAAO,CAACC,IAAI,CAAC,CAAC;MACjBL,kBAAkB,CAAC;QAAE9L,OAAO;QAAEmB,UAAU,EAAEqL;MAAE,CAAC,CAAC,CAACrS,OAAO,CAAC,MACrD5F,EAAE,CAAC2X,OAAO,CAACI,IAAI,CAAC,CAClB,CAAC;IACH,CAAC;IAED/a,iDAAK,CAAC4Z,eAAe,EAAGsB,MAAM,IAC5BR,kBAAkB,CAACQ,MAAM,GAAGA,MAAM,CAACT,EAAE,GAAG,IAAI,CAC9C,CAAC;IAED1Y,qDAAS,CAAC,MAAM;MACdiB,EAAE,CAAC2X,OAAO,CAACC,IAAI,CAAC,CAAC;MACjBO,OAAO,CAACC,GAAG,CAAC;MACV;MACA;MACAhB,oBAAoB,CAAC,CAAC,EACtBC,qBAAqB,CAAC;QACpB/c,IAAI,EAAE,CAAC,gBAAgB,EAAE,gBAAgB;MAC3C,CAAC,CAAC,CAACsL,OAAO,CAAC,MAAOiR,iBAAiB,CAAC5b,KAAK,GAAG,IAAK,CAAC,CACnD,CAAC,CAAC4I,IAAI,CAAC,MAAM7D,EAAE,CAAC2X,OAAO,CAACI,IAAI,CAAC,CAAC,CAAC;IAClC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACzPiE;AACX;AACA;AACf;AAAA;;;;;;;;;;IAUzC,MAAM;MAAEve;IAAW,CAAC,GAAGF,wFAAuB,CAAC,MAAM,CAAC;IACtD,MAAMqE,YAAY,GAAGrE,wFAAuB,CAAC,SAAS,CAAC;IAEvD,MAAM;MAAE+e;IAAW,CAAC,GAAG7e,UAAU,CAAC,CAAC,YAAY,CAAC,CAAC;IAEjD,MAAM;MAAEqE;IAAW,CAAC,GAAGF,YAAY,CAACnE,UAAU,CAAC;MAC7CqE,UAAU,EAAE,cAAc;MAC1Bya,MAAM,EAAE;IACV,CAAC,CAAC;IAEF,MAAMC,IAAI,GAAItd,KAAK,IAAK;MACtBud,4EAAa,CAAC,sCAAsC,CAAC;MACrDC,qFAAe,CAACxd,KAAK,CAAC;IACxB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrEsF;AAEtD;AAE4C;AACX;AAC+B;AACF;AAEhC;AACV;AACqB;AAC/B;AAC0C;AACzC;AAE5C,MAAMyd,aAAa,GAAG,EAAE;AACxB,MAAMC,KAAK,GAAG,CAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAE;AAC/C,MAAMC,WAAW,GAAGpS,CAAC,IAAImS,KAAK,CAACrd,QAAQ,CAACkL,CAAC,CAAC;AAC1C,MAAMqS,kBAAkB,GAAGrS,CAAC,IAAI,oBAAoB,CAACsS,IAAI,CAACtS,CAAC,CAAC;AAC5D,MAAMuS,OAAO,GAAG,UAAU;AAE1B,SAASC,YAAYA,CAAEC,IAAI,EAAE;EAC3B,OAAOA,IAAI,CAACC,IAAI,GAAG,GAAG,GAAGC,6DAAG,CAACF,IAAI,CAACG,KAAK,CAAC;AAC1C;AAEepT,+IAAe,CAAC;EAC7B7M,IAAI,EAAE,OAAO;EAEbU,KAAK,EAAE;IACL,GAAGwf,iEAAgB;IACnB,GAAGC,6EAAY;IACf,GAAGrT,6EAAY;IAEfsT,QAAQ,EAAEpT,OAAO;IACjBgC,KAAK,EAAEhC,OAAO;IAEdnO,KAAK,EAAEuG,MAAM;IACbib,QAAQ,EAAEjb,MAAM;IAEhBkb,IAAI,EAAE;MACJ;MACA;MACAjb,OAAO,EAAE;IACX,CAAC;IAEDkb,gBAAgB,EAAE;MAChBpb,IAAI,EAAEC,MAAM;MACZgI,SAAS,EAAEsS;IACb,CAAC;IAEDc,gBAAgB,EAAExT,OAAO;IAEzByT,MAAM,EAAE,CAAEjgB,KAAK,EAAEwZ,QAAQ,CAAE;IAC3B0G,UAAU,EAAE,CAAEtb,MAAM,EAAE4U,QAAQ,CAAE;IAEhC2G,eAAe,EAAE3T,OAAO;IAExB4B,OAAO,EAAE,CAAEpO,KAAK,EAAEwZ,QAAQ,CAAE;IAE5B4G,sBAAsB,EAAE;MACtBzb,IAAI,EAAEC,MAAM;MACZgI,SAAS,EAAEsS;IACb,CAAC;IAEDmB,sBAAsB,EAAE;MACtB1b,IAAI,EAAEC,MAAM;MACZgI,SAAS,EAAEsS;IACb,CAAC;IAEDoB,OAAO,EAAE9T,OAAO;IAEhB+T,cAAc,EAAE,CAAE3b,MAAM,EAAEiO,MAAM,CAAE;IAClC2N,QAAQ,EAAEhU,OAAO;IACjBiU,OAAO,EAAEjU,OAAO;IAChBkU,WAAW,EAAE;MACX/b,IAAI,EAAEC,MAAM;MACZC,OAAO,EAAE,UAAU;MACnB+H,SAAS,EAAEqS;IACb;EACF,CAAC;EAEDhN,KAAK,EAAE,CACL,GAAG0O,iEAAgB,EACnB,YAAY,EAAE,UAAU,EAAE,YAAY,CACvC;EAED5b,KAAKA,CAAE7E,KAAK,EAAE;IAAE4M,KAAK;IAAE5J;EAAK,CAAC,EAAE;IAC7B,MAAM;MAAEiK;IAAM,CAAC,GAAGH,8DAAkB,CAAC,CAAC;IACtC,MAAM;MAAE3G;IAAG,CAAC,GAAG8G,KAAK;IAEpB,MAAMF,MAAM,GAAGC,gFAAO,CAAChN,KAAK,EAAEmG,EAAE,CAAC;IACjC,MAAM;MAAEua;IAAS,CAAC,GAAGC,gFAAc,CAAC,CAAC;IACrC,MAAM;MAAEC,QAAQ;MAAEC,WAAW;MAAEC,SAAS;MAAEC;IAAe,CAAC,GAAGC,gEAAW,CAAChhB,KAAK,EAAEmG,EAAE,CAAC;IAEnF,IAAI8a,aAAa;IAEjB,MAAMC,SAAS,GAAGC,qFAAY,CAACnhB,KAAK,CAAC;IACrC,MAAMohB,eAAe,GAAGC,sFAAa,CAACH,SAAS,CAAC;IAEhD,MAAMI,aAAa,GAAGpe,+CAAG,CAAC,IAAI,CAAC;IAC/B,MAAMqe,SAAS,GAAGre,+CAAG,CAACse,OAAO,CAAC,CAAC,CAAC;IAChC,MAAMC,WAAW,GAAGve,+CAAG,CAAC4d,SAAS,CAAC,CAAC,CAAC;IAEpC,MAAMlB,IAAI,GAAGxf,oDAAQ,CAAC,MAAMohB,OAAO,CAAC,CAAC,CAAC;IACtC,MAAME,MAAM,GAAGthB,oDAAQ,CAAC,MAAM0gB,SAAS,CAAC,CAAC,CAAC;IAE1C,MAAMa,KAAK,GAAGvhB,oDAAQ,CAAC,MAAM2gB,cAAc,CAAC,CAAC,CAAC;;IAE9C;IACA,MAAMa,SAAS,GAAG1e,+CAAG,CAAC2e,YAAY,CAACN,SAAS,CAACngB,KAAK,EAAEqgB,WAAW,CAACrgB,KAAK,CAAC,CAAC;IAEvE,MAAM0gB,IAAI,GAAG5e,+CAAG,CAAClD,KAAK,CAACwgB,WAAW,CAAC;IAEnC,MAAMuB,SAAS,GAAG5b,EAAE,CAACiW,IAAI,CAAC4F,GAAG,KAAK,IAAI,GAAG,OAAO,GAAG,MAAM;IACzD,MAAMC,cAAc,GAAG/e,+CAAG,CAAC6e,SAAS,CAAC3gB,KAAK,CAAC;IAC3C,MAAM8gB,aAAa,GAAGhf,+CAAG,CAAC6e,SAAS,CAAC3gB,KAAK,CAAC;IAE1C,MAAMie,IAAI,GAAGuC,SAAS,CAACxgB,KAAK,CAACie,IAAI;IACjC,MAAM8C,SAAS,GAAGjf,+CAAG,CAACmc,IAAI,GAAIA,IAAI,GAAGR,aAAc,IAAIQ,IAAI,GAAG,CAAC,GAAGR,aAAa,GAAG,CAAC,CAAC,CAAC;IACrF,MAAMuD,SAAS,GAAGlf,+CAAG,CAAC,IAAI,CAAC;IAE3B,MAAMjB,OAAO,GAAG7B,oDAAQ,CAAC,MAAM;MAC7B,MAAMqE,IAAI,GAAGzE,KAAK,CAACqiB,SAAS,KAAK,IAAI,GAAG,WAAW,GAAG,UAAU;MAChE,OAAQ,kBAAkB5d,IAAM,YAAYA,IAAM,IAAIzE,KAAK,CAACugB,OAAO,KAAK,IAAI,GAAG,SAAS,GAAG,UAAY,EAAC,IACnGxT,MAAM,CAAC3L,KAAK,KAAK,IAAI,GAAG,sBAAsB,GAAG,EAAE,CAAC,IACpDpB,KAAK,CAACsI,QAAQ,KAAK,IAAI,GAAG,mBAAmB,GAAG,EAAE,CAAC,IACnDtI,KAAK,CAACuM,MAAM,KAAK,IAAI,GAAG,kCAAkC,GAAG,EAAE,CAAC,IAChEvM,KAAK,CAACuI,IAAI,KAAK,IAAI,GAAG,yBAAyB,GAAG,EAAE,CAAC,IACrDvI,KAAK,CAACsiB,OAAO,KAAK,IAAI,GAAG,WAAW,GAAItiB,KAAK,CAACuiB,QAAQ,KAAK,IAAI,GAAG,mBAAmB,GAAG,EAAG,CAAC;IACnG,CAAC,CAAC;IAEF,MAAMC,aAAa,GAAGpiB,oDAAQ,CAAC,MAAM;MACnC,OAAOJ,KAAK,CAACwE,KAAK,IAAI,SAAS;IACjC,CAAC,CAAC;IAEF,MAAMie,iBAAiB,GAAGriB,oDAAQ,CAAC,MAAM;MACvC,OAAOJ,KAAK,CAAC0iB,SAAS,IAAI,OAAO;IACnC,CAAC,CAAC;IAEF,MAAMC,WAAW,GAAGviB,oDAAQ,CAAC,MAC3BJ,KAAK,CAACigB,eAAe,KAAK,IAAI,IAC3BjgB,KAAK,CAAC0f,QAAQ,KAAK,IAAI,IACvB1f,KAAK,CAACsO,KAAK,KAAK,IACrB,CAAC;IAED,MAAMsU,eAAe,GAAGxiB,oDAAQ,CAAC,MAC/BN,KAAK,CAAC4C,OAAO,CAAC1C,KAAK,CAAC6iB,UAAU,CAAC,KAAK,IAAI,GACpC7iB,KAAK,CAAC6iB,UAAU,GACf7iB,KAAK,CAAC6iB,UAAU,KAAK,IAAI,IAAI7iB,KAAK,CAAC6iB,UAAU,KAAK,KAAK,CAAC,GAAG,CAAE7iB,KAAK,CAAC6iB,UAAU,CAAE,GAAG,EACxF,CAAC;IAEF,MAAMC,SAAS,GAAG1iB,oDAAQ,CAAC,MACzBwiB,eAAe,CAACxhB,KAAK,CAClBE,MAAM,CAAC8d,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,CAAC,CACxC1e,GAAG,CAAC0e,IAAI,IAAI2D,YAAY,CAAC3D,IAAI,EAAEmC,SAAS,CAACngB,KAAK,EAAEqgB,WAAW,CAACrgB,KAAK,CAAC,CAAC,CACnEE,MAAM,CAAC8d,IAAI,IACVA,IAAI,CAAC4D,QAAQ,KAAK,IAAI,IACnB5D,IAAI,CAAC6D,GAAG,KAAK,IAAI,IACjB7D,IAAI,CAACG,KAAK,KAAK,IAAI,IACnBH,IAAI,CAACC,IAAI,KAAK,IACnB,CACJ,CAAC;IAED,MAAM6D,UAAU,GAAG9iB,oDAAQ,CAAC,MAAM;MAChC,MAAM+iB,EAAE,GAAG/D,IAAI,IAAI2D,YAAY,CAAC3D,IAAI,EAAEmC,SAAS,CAACngB,KAAK,EAAEqgB,WAAW,CAACrgB,KAAK,CAAC;MACzE,OAAOwhB,eAAe,CAACxhB,KAAK,CACzBE,MAAM,CAAC8d,IAAI,IAAIgE,8DAAQ,CAAChE,IAAI,CAAC,KAAK,IAAI,IAAIA,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,IAAI2J,IAAI,CAAC/f,EAAE,KAAK,KAAK,CAAC,CAAC,CACrFqB,GAAG,CAAC4N,KAAK,KAAK;QAAEmH,IAAI,EAAE0N,EAAE,CAAC7U,KAAK,CAACmH,IAAI,CAAC;QAAEpW,EAAE,EAAE8jB,EAAE,CAAC7U,KAAK,CAACjP,EAAE;MAAE,CAAC,CAAC,CAAC,CAC1DiC,MAAM,CAACgN,KAAK,IAAIA,KAAK,CAACmH,IAAI,CAACuN,QAAQ,KAAK,IAAI,IAAI1U,KAAK,CAACjP,EAAE,CAAC2jB,QAAQ,KAAK,IAAI,IAAI1U,KAAK,CAACmH,IAAI,CAACuN,QAAQ,GAAG1U,KAAK,CAACjP,EAAE,CAAC2jB,QAAQ,CAAC;IAC3H,CAAC,CAAC;IAEF,MAAMK,eAAe,GAAGjjB,oDAAQ,CAAC,MAC/BJ,KAAK,CAACsjB,QAAQ,KAAK,SAAS,GACxB7V,KAAK,IAAI,IAAIM,IAAI,CAACN,KAAK,CAAC4R,IAAI,EAAE5R,KAAK,CAAC8R,KAAK,GAAG,CAAC,EAAE9R,KAAK,CAACwV,GAAG,CAAC,GACzDxV,KAAK,IAAI;MACT,MAAM8V,KAAK,GAAGC,mFAAW,CAAC/V,KAAK,CAAC4R,IAAI,EAAE5R,KAAK,CAAC8R,KAAK,EAAE9R,KAAK,CAACwV,GAAG,CAAC;MAC7D,OAAO,IAAIlV,IAAI,CAACwV,KAAK,CAACE,EAAE,EAAEF,KAAK,CAACG,EAAE,GAAG,CAAC,EAAEH,KAAK,CAACI,EAAE,CAAC;IACnD,CACH,CAAC;IAEF,MAAMC,cAAc,GAAGxjB,oDAAQ,CAAC,MAC9BJ,KAAK,CAACsjB,QAAQ,KAAK,SAAS,GACxBO,2DAAU,GACV,CAACzE,IAAI,EAAEQ,IAAI,EAAE8B,MAAM,KAAKoC,kEAAU,CAChC,IAAI/V,IAAI,CACNqR,IAAI,CAACC,IAAI,EACTD,IAAI,CAACG,KAAK,GAAG,CAAC,EACdH,IAAI,CAAC6D,GAAG,EACR7D,IAAI,CAAC2E,IAAI,EACT3E,IAAI,CAAC4E,MAAM,EACX5E,IAAI,CAAC6E,MAAM,EACX7E,IAAI,CAAC8E,WACP,CAAC,EACDtE,IAAI,KAAK,KAAK,CAAC,GAAG2B,SAAS,CAACngB,KAAK,GAAGwe,IAAI,EACxC8B,MAAM,KAAK,KAAK,CAAC,GAAGD,WAAW,CAACrgB,KAAK,GAAGsgB,MAAM,EAC9CtC,IAAI,CAACC,IAAI,EACTD,IAAI,CAAC+E,cACP,CACL,CAAC;IAEF,MAAMC,WAAW,GAAGhkB,oDAAQ,CAAC,MAC3B0iB,SAAS,CAAC1hB,KAAK,CAACmB,MAAM,GAAG2gB,UAAU,CAAC9hB,KAAK,CAACijB,MAAM,CAC9C,CAACC,GAAG,EAAEhW,KAAK,KAAKgW,GAAG,GAAG,CAAC,GAAGC,mEAAW,CACnClB,eAAe,CAACjiB,KAAK,CAACkN,KAAK,CAACjP,EAAE,CAAC,EAC/BgkB,eAAe,CAACjiB,KAAK,CAACkN,KAAK,CAACmH,IAAI,CAClC,CAAC,EACD,CACF,CACF,CAAC;IAED,MAAM+O,WAAW,GAAGpkB,oDAAQ,CAAC,MAAM;MACjC,IAAIJ,KAAK,CAAC7B,KAAK,KAAK,KAAK,CAAC,IAAI6B,KAAK,CAAC7B,KAAK,KAAK,IAAI,IAAI6B,KAAK,CAAC7B,KAAK,CAACoE,MAAM,KAAK,CAAC,EAAE;QAC9E,OAAOvC,KAAK,CAAC7B,KAAK;MACpB;MAEA,IAAIikB,SAAS,CAAChhB,KAAK,KAAK,IAAI,EAAE;QAC5B,MAAMqM,KAAK,GAAG2U,SAAS,CAAChhB,KAAK,CAACqjB,IAAI;QAClC,MAAMrF,IAAI,GAAGiE,eAAe,CAACjiB,KAAK,CAACqM,KAAK,CAAC;QAEzC,OAAOgU,WAAW,CAACrgB,KAAK,CAACsjB,SAAS,CAAEtF,IAAI,CAACuF,MAAM,CAAC,CAAC,CAAE,GAAG,IAAI,GACtDlD,WAAW,CAACrgB,KAAK,CAACwjB,WAAW,CAAEnX,KAAK,CAAC8R,KAAK,GAAG,CAAC,CAAE,GAAG,GAAG,GACtD9R,KAAK,CAACwV,GAAG,GAAG/D,OAAO,GAAG,GAAG;MAC/B;MAEA,IAAIkF,WAAW,CAAChjB,KAAK,KAAK,CAAC,EAAE;QAC3B,OAAO8d,OAAO;MAChB;MAEA,IAAIkF,WAAW,CAAChjB,KAAK,GAAG,CAAC,EAAE;QACzB,OAAQ,GAAGgjB,WAAW,CAAChjB,KAAO,IAAIqgB,WAAW,CAACrgB,KAAK,CAACyjB,SAAW,EAAC;MAClE;MAEA,MAAMpX,KAAK,GAAGqV,SAAS,CAAC1hB,KAAK,CAAE,CAAC,CAAE;MAClC,MAAMge,IAAI,GAAGiE,eAAe,CAACjiB,KAAK,CAACqM,KAAK,CAAC;MAEzC,IAAIqX,KAAK,CAAC1F,IAAI,CAAC2F,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QAClC,OAAO7F,OAAO;MAChB;MAEA,IAAIuC,WAAW,CAACrgB,KAAK,CAACojB,WAAW,KAAK,KAAK,CAAC,EAAE;QAC5C,OAAO/C,WAAW,CAACrgB,KAAK,CAACojB,WAAW,CAACpF,IAAI,EAAE3R,KAAK,CAAC;MACnD;MAEA,OAAOgU,WAAW,CAACrgB,KAAK,CAACsjB,SAAS,CAAEtF,IAAI,CAACuF,MAAM,CAAC,CAAC,CAAE,GAAG,IAAI,GACtDlD,WAAW,CAACrgB,KAAK,CAACwjB,WAAW,CAAEnX,KAAK,CAAC8R,KAAK,GAAG,CAAC,CAAE,GAAG,GAAG,GACtD9R,KAAK,CAACwV,GAAG;IACf,CAAC,CAAC;IAEF,MAAM+B,gBAAgB,GAAG5kB,oDAAQ,CAAC,MAAM;MACtC,MAAMqN,KAAK,GAAGqV,SAAS,CAAC1hB,KAAK,CAACyQ,MAAM,CAACqR,UAAU,CAAC9hB,KAAK,CAACV,GAAG,CAAC4N,KAAK,IAAIA,KAAK,CAACmH,IAAI,CAAC,CAAC,CAC5EhD,IAAI,CAAC,CAACwS,CAAC,EAAEC,CAAC,KAAKD,CAAC,CAAC5F,IAAI,GAAG6F,CAAC,CAAC7F,IAAI,IAAI4F,CAAC,CAAC1F,KAAK,GAAG2F,CAAC,CAAC3F,KAAK,CAAC;MAEvD,OAAO9R,KAAK,CAAE,CAAC,CAAE;IACnB,CAAC,CAAC;IAEF,MAAM0X,gBAAgB,GAAG/kB,oDAAQ,CAAC,MAAM;MACtC,MAAMqN,KAAK,GAAGqV,SAAS,CAAC1hB,KAAK,CAACyQ,MAAM,CAACqR,UAAU,CAAC9hB,KAAK,CAACV,GAAG,CAAC4N,KAAK,IAAIA,KAAK,CAACjP,EAAE,CAAC,CAAC,CAC1EoT,IAAI,CAAC,CAACwS,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC7F,IAAI,GAAG4F,CAAC,CAAC5F,IAAI,IAAI6F,CAAC,CAAC3F,KAAK,GAAG0F,CAAC,CAAC1F,KAAK,CAAC;MAEvD,OAAO9R,KAAK,CAAE,CAAC,CAAE;IACnB,CAAC,CAAC;IAEF,MAAM2X,cAAc,GAAGhlB,oDAAQ,CAAC,MAAM;MACpC,IAAIJ,KAAK,CAAC2f,QAAQ,KAAK,KAAK,CAAC,IAAI3f,KAAK,CAAC2f,QAAQ,KAAK,IAAI,IAAI3f,KAAK,CAAC2f,QAAQ,CAACpd,MAAM,KAAK,CAAC,EAAE;QACvF,OAAOvC,KAAK,CAAC2f,QAAQ;MACvB;MAEA,IAAIyE,WAAW,CAAChjB,KAAK,KAAK,CAAC,EAAE;QAC3B,OAAO8d,OAAO;MAChB;MAEA,IAAIkF,WAAW,CAAChjB,KAAK,GAAG,CAAC,EAAE;QACzB,MAAMqU,IAAI,GAAGuP,gBAAgB,CAAC5jB,KAAK;QACnC,MAAM/B,EAAE,GAAG8lB,gBAAgB,CAAC/jB,KAAK;QACjC,MAAMme,KAAK,GAAGkC,WAAW,CAACrgB,KAAK,CAACwjB,WAAW;QAE3C,OAAOrF,KAAK,CAAE9J,IAAI,CAAC8J,KAAK,GAAG,CAAC,CAAE,IAC5B9J,IAAI,CAAC4J,IAAI,KAAKhgB,EAAE,CAACggB,IAAI,GACjB,GAAG,GAAG5J,IAAI,CAAC4J,IAAI,GAAGH,OAAO,GAAGK,KAAK,CAAElgB,EAAE,CAACkgB,KAAK,GAAG,CAAC,CAAE,GAAG,GAAG,GAErD9J,IAAI,CAAC8J,KAAK,KAAKlgB,EAAE,CAACkgB,KAAK,GACnBL,OAAO,GAAGK,KAAK,CAAElgB,EAAE,CAACkgB,KAAK,GAAG,CAAC,CAAE,GAC/B,EACL,CACN,GAAG,GAAG,GAAGlgB,EAAE,CAACggB,IAAI;MACnB;MAEA,OAAOyD,SAAS,CAAC1hB,KAAK,CAAE,CAAC,CAAE,CAACie,IAAI;IAClC,CAAC,CAAC;IAEF,MAAMgG,SAAS,GAAGjlB,oDAAQ,CAAC,MAAM;MAC/B,MAAMqC,GAAG,GAAG,CAAE0D,EAAE,CAACkM,OAAO,CAACiT,QAAQ,CAACC,SAAS,EAAEpf,EAAE,CAACkM,OAAO,CAACiT,QAAQ,CAACE,UAAU,CAAE;MAC7E,OAAOrf,EAAE,CAACiW,IAAI,CAAC4F,GAAG,KAAK,IAAI,GAAGvf,GAAG,CAACgjB,OAAO,CAAC,CAAC,GAAGhjB,GAAG;IACnD,CAAC,CAAC;IAEF,MAAMijB,sBAAsB,GAAGtlB,oDAAQ,CAAC,MACtCJ,KAAK,CAACqgB,cAAc,KAAK,KAAK,CAAC,GAC3B1N,MAAM,CAAC3S,KAAK,CAACqgB,cAAc,CAAC,GAC5BoB,WAAW,CAACrgB,KAAK,CAACif,cACvB,CAAC;IAEF,MAAMsF,UAAU,GAAGvlB,oDAAQ,CAAC,MAAM;MAChC,MACEwlB,IAAI,GAAGnE,WAAW,CAACrgB,KAAK,CAACsjB,SAAS;QAClCmB,KAAK,GAAGH,sBAAsB,CAACtkB,KAAK;MAEtC,OAAOykB,KAAK,GAAG,CAAC,GACZD,IAAI,CAACjjB,KAAK,CAACkjB,KAAK,EAAE,CAAC,CAAC,CAAChU,MAAM,CAAC+T,IAAI,CAACjjB,KAAK,CAAC,CAAC,EAAEkjB,KAAK,CAAC,CAAC,GACjDD,IAAI;IACV,CAAC,CAAC;IAEF,MAAME,WAAW,GAAG1lB,oDAAQ,CAAC,MAAM;MACjC,MAAMgf,IAAI,GAAGwC,SAAS,CAACxgB,KAAK;MAC5B,OAAOpB,KAAK,CAACsjB,QAAQ,KAAK,SAAS,GAC9B,IAAIvV,IAAI,CAACqR,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,EAAE,CAAC,CAAC,CAAEtR,OAAO,CAAC,CAAC,GAC9C8X,0FAAkB,CAAC3G,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,CAAC;IAC/C,CAAC,CAAC;IAEF,MAAMyG,QAAQ,GAAG5lB,oDAAQ,CAAC,MACxB,OAAOJ,KAAK,CAACggB,UAAU,KAAK,UAAU,GAClChgB,KAAK,CAACggB,UAAU,GAChB,MAAMhgB,KAAK,CAACggB,UACjB,CAAC;IAEF,MAAMiG,MAAM,GAAG7lB,oDAAQ,CAAC,MAAM;MAC5B,IAAIJ,KAAK,CAACkgB,sBAAsB,KAAK,KAAK,CAAC,EAAE;QAC3C,OAAO,IAAI;MACb;MAEA,MAAMva,IAAI,GAAG3F,KAAK,CAACkgB,sBAAsB,CAACpZ,KAAK,CAAC,GAAG,CAAC;MACpD,OAAO;QAAEuY,IAAI,EAAEzP,QAAQ,CAACjK,IAAI,CAAE,CAAC,CAAE,EAAE,EAAE,CAAC;QAAE4Z,KAAK,EAAE3P,QAAQ,CAACjK,IAAI,CAAE,CAAC,CAAE,EAAE,EAAE;MAAE,CAAC;IAC1E,CAAC,CAAC;IAEF,MAAMugB,MAAM,GAAG9lB,oDAAQ,CAAC,MAAM;MAC5B,IAAIJ,KAAK,CAACmgB,sBAAsB,KAAK,KAAK,CAAC,EAAE;QAC3C,OAAO,IAAI;MACb;MAEA,MAAMxa,IAAI,GAAG3F,KAAK,CAACmgB,sBAAsB,CAACrZ,KAAK,CAAC,GAAG,CAAC;MACpD,OAAO;QAAEuY,IAAI,EAAEzP,QAAQ,CAACjK,IAAI,CAAE,CAAC,CAAE,EAAE,EAAE,CAAC;QAAE4Z,KAAK,EAAE3P,QAAQ,CAACjK,IAAI,CAAE,CAAC,CAAE,EAAE,EAAE;MAAE,CAAC;IAC1E,CAAC,CAAC;IAEF,MAAMwgB,aAAa,GAAG/lB,oDAAQ,CAAC,MAAM;MACnC,MAAMuF,IAAI,GAAG;QACX4Z,KAAK,EAAE;UAAE6G,IAAI,EAAE,IAAI;UAAEC,IAAI,EAAE;QAAK,CAAC;QACjChH,IAAI,EAAE;UAAE+G,IAAI,EAAE,IAAI;UAAEC,IAAI,EAAE;QAAK;MACjC,CAAC;MAED,IAAIJ,MAAM,CAAC7kB,KAAK,KAAK,IAAI,IAAI6kB,MAAM,CAAC7kB,KAAK,CAACie,IAAI,IAAIuC,SAAS,CAACxgB,KAAK,CAACie,IAAI,EAAE;QACtE1Z,IAAI,CAAC0Z,IAAI,CAAC+G,IAAI,GAAG,KAAK;QACtB,IAAIH,MAAM,CAAC7kB,KAAK,CAACie,IAAI,KAAKuC,SAAS,CAACxgB,KAAK,CAACie,IAAI,IAAI4G,MAAM,CAAC7kB,KAAK,CAACme,KAAK,IAAIqC,SAAS,CAACxgB,KAAK,CAACme,KAAK,EAAE;UAC7F5Z,IAAI,CAAC4Z,KAAK,CAAC6G,IAAI,GAAG,KAAK;QACzB;MACF;MAEA,IAAIF,MAAM,CAAC9kB,KAAK,KAAK,IAAI,IAAI8kB,MAAM,CAAC9kB,KAAK,CAACie,IAAI,IAAIuC,SAAS,CAACxgB,KAAK,CAACie,IAAI,EAAE;QACtE1Z,IAAI,CAAC0Z,IAAI,CAACgH,IAAI,GAAG,KAAK;QACtB,IAAIH,MAAM,CAAC9kB,KAAK,CAACie,IAAI,KAAKuC,SAAS,CAACxgB,KAAK,CAACie,IAAI,IAAI6G,MAAM,CAAC9kB,KAAK,CAACme,KAAK,IAAIqC,SAAS,CAACxgB,KAAK,CAACme,KAAK,EAAE;UAC7F5Z,IAAI,CAAC4Z,KAAK,CAAC8G,IAAI,GAAG,KAAK;QACzB;MACF;MAEA,OAAO1gB,IAAI;IACb,CAAC,CAAC;IAEF,MAAM2gB,OAAO,GAAGlmB,oDAAQ,CAAC,MAAM;MAC7B,MAAMM,GAAG,GAAG,CAAC,CAAC;MAEdoiB,SAAS,CAAC1hB,KAAK,CAACgB,OAAO,CAACmkB,KAAK,IAAI;QAC/B,MAAMC,IAAI,GAAGrH,YAAY,CAACoH,KAAK,CAAC;QAEhC,IAAI7lB,GAAG,CAAE8lB,IAAI,CAAE,KAAK,KAAK,CAAC,EAAE;UAC1B9lB,GAAG,CAAE8lB,IAAI,CAAE,GAAG,EAAE;QAClB;QAEA9lB,GAAG,CAAE8lB,IAAI,CAAE,CAAC7iB,IAAI,CAAC4iB,KAAK,CAACtD,GAAG,CAAC;MAC7B,CAAC,CAAC;MAEF,OAAOviB,GAAG;IACZ,CAAC,CAAC;IAEF,MAAM+lB,QAAQ,GAAGrmB,oDAAQ,CAAC,MAAM;MAC9B,MAAMM,GAAG,GAAG,CAAC,CAAC;MAEdwiB,UAAU,CAAC9hB,KAAK,CAACgB,OAAO,CAACmkB,KAAK,IAAI;QAChC,MAAMG,QAAQ,GAAGvH,YAAY,CAACoH,KAAK,CAAC9Q,IAAI,CAAC;QACzC,MAAMkR,MAAM,GAAGxH,YAAY,CAACoH,KAAK,CAAClnB,EAAE,CAAC;QAErC,IAAIqB,GAAG,CAAEgmB,QAAQ,CAAE,KAAK,KAAK,CAAC,EAAE;UAC9BhmB,GAAG,CAAEgmB,QAAQ,CAAE,GAAG,EAAE;QACtB;QAEAhmB,GAAG,CAAEgmB,QAAQ,CAAE,CAAC/iB,IAAI,CAAC;UACnB8R,IAAI,EAAE8Q,KAAK,CAAC9Q,IAAI,CAACwN,GAAG;UACpB5jB,EAAE,EAAEqnB,QAAQ,KAAKC,MAAM,GAAGJ,KAAK,CAAClnB,EAAE,CAAC4jB,GAAG,GAAG,KAAK,CAAC;UAC/C3U,KAAK,EAAEiY;QACT,CAAC,CAAC;QAEF,IAAIG,QAAQ,GAAGC,MAAM,EAAE;UACrB,IAAIH,IAAI;UACR,MAAM;YAAEnH,IAAI;YAAEE;UAAM,CAAC,GAAGgH,KAAK,CAAC9Q,IAAI;UAClC,MAAMmR,GAAG,GAAGrH,KAAK,GAAG,EAAE,GAClB;YAAEF,IAAI;YAAEE,KAAK,EAAEA,KAAK,GAAG;UAAE,CAAC,GAC1B;YAAEF,IAAI,EAAEA,IAAI,GAAG,CAAC;YAAEE,KAAK,EAAE;UAAE,CAAC;UAEhC,OAAO,CAACiH,IAAI,GAAGrH,YAAY,CAACyH,GAAG,CAAC,KAAKD,MAAM,EAAE;YAC3C,IAAIjmB,GAAG,CAAE8lB,IAAI,CAAE,KAAK,KAAK,CAAC,EAAE;cAC1B9lB,GAAG,CAAE8lB,IAAI,CAAE,GAAG,EAAE;YAClB;YAEA9lB,GAAG,CAAE8lB,IAAI,CAAE,CAAC7iB,IAAI,CAAC;cACf8R,IAAI,EAAE,KAAK,CAAC;cACZpW,EAAE,EAAEmnB,IAAI,KAAKG,MAAM,GAAGJ,KAAK,CAAClnB,EAAE,CAAC4jB,GAAG,GAAG,KAAK,CAAC;cAC3C3U,KAAK,EAAEiY;YACT,CAAC,CAAC;YAEFK,GAAG,CAACrH,KAAK,EAAE;YACX,IAAIqH,GAAG,CAACrH,KAAK,GAAG,EAAE,EAAE;cAClBqH,GAAG,CAACvH,IAAI,EAAE;cACVuH,GAAG,CAACrH,KAAK,GAAG,CAAC;YACf;UACF;QACF;MACF,CAAC,CAAC;MAEF,OAAO7e,GAAG;IACZ,CAAC,CAAC;IAEF,MAAMmmB,SAAS,GAAGzmB,oDAAQ,CAAC,MAAM;MAC/B,IAAIgiB,SAAS,CAAChhB,KAAK,KAAK,IAAI,EAAE;QAC5B;MACF;MAEA,MAAM;QAAEqjB,IAAI;QAAEqC,QAAQ;QAAEC,KAAK;QAAEC;MAAU,CAAC,GAAG5E,SAAS,CAAChhB,KAAK;MAE5D,MAAM,CAAEqU,IAAI,EAAEpW,EAAE,CAAE,GAAGynB,QAAQ,IAAIE,SAAS,GACtC,CAAEvC,IAAI,EAAEsC,KAAK,CAAE,GACf,CAAEA,KAAK,EAAEtC,IAAI,CAAE;MAEnB,MAAMwC,QAAQ,GAAG9H,YAAY,CAAC1J,IAAI,CAAC;MACnC,MAAMyR,MAAM,GAAG/H,YAAY,CAAC9f,EAAE,CAAC;MAE/B,IAAI4nB,QAAQ,KAAKE,aAAa,CAAC/lB,KAAK,IAAI8lB,MAAM,KAAKC,aAAa,CAAC/lB,KAAK,EAAE;QACtE;MACF;MAEA,MAAM0gB,IAAI,GAAG,CAAC,CAAC;MAEf,IAAImF,QAAQ,KAAKE,aAAa,CAAC/lB,KAAK,EAAE;QACpC0gB,IAAI,CAACrM,IAAI,GAAGA,IAAI,CAACwN,GAAG;QACpBnB,IAAI,CAACsF,WAAW,GAAG,IAAI;MACzB,CAAC,MACI;QACHtF,IAAI,CAACrM,IAAI,GAAG,CAAC;MACf;MAEA,IAAIyR,MAAM,KAAKC,aAAa,CAAC/lB,KAAK,EAAE;QAClC0gB,IAAI,CAACziB,EAAE,GAAGA,EAAE,CAAC4jB,GAAG;QAChBnB,IAAI,CAACuF,SAAS,GAAG,IAAI;MACvB,CAAC,MACI;QACHvF,IAAI,CAACziB,EAAE,GAAGymB,WAAW,CAAC1kB,KAAK;MAC7B;MAEA,OAAO0gB,IAAI;IACb,CAAC,CAAC;IAEF,MAAMqF,aAAa,GAAG/mB,oDAAQ,CAAC,MAAM+e,YAAY,CAACyC,SAAS,CAACxgB,KAAK,CAAC,CAAC;IAEnE,MAAMkmB,gBAAgB,GAAGlnB,oDAAQ,CAAC,MAAM;MACtC,MAAMM,GAAG,GAAG,CAAC,CAAC;MAEd,IAAIV,KAAK,CAACkO,OAAO,KAAK,KAAK,CAAC,EAAE;QAC5B,KAAK,IAAI6I,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI+O,WAAW,CAAC1kB,KAAK,EAAE2V,CAAC,EAAE,EAAE;UAC3CrW,GAAG,CAAEqW,CAAC,CAAE,GAAG,IAAI;QACjB;QAEA,OAAOrW,GAAG;MACZ;MAEA,MAAMyiB,EAAE,GAAG,OAAOnjB,KAAK,CAACkO,OAAO,KAAK,UAAU,GAC1ClO,KAAK,CAACkO,OAAO,GACbkR,IAAI,IAAIpf,KAAK,CAACkO,OAAO,CAACzM,QAAQ,CAAC2d,IAAI,CAAC;MAExC,KAAK,IAAIrI,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI+O,WAAW,CAAC1kB,KAAK,EAAE2V,CAAC,EAAE,EAAE;QAC3C,MAAMwQ,OAAO,GAAGJ,aAAa,CAAC/lB,KAAK,GAAG,GAAG,GAAGke,6DAAG,CAACvI,CAAC,CAAC;QAClDrW,GAAG,CAAEqW,CAAC,CAAE,GAAGoM,EAAE,CAACoE,OAAO,CAAC;MACxB;MAEA,OAAO7mB,GAAG;IACZ,CAAC,CAAC;IAEF,MAAM8mB,YAAY,GAAGpnB,oDAAQ,CAAC,MAAM;MAClC,MAAMM,GAAG,GAAG,CAAC,CAAC;MAEd,IAAIV,KAAK,CAAC+f,MAAM,KAAK,KAAK,CAAC,EAAE;QAC3B,KAAK,IAAIhJ,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI+O,WAAW,CAAC1kB,KAAK,EAAE2V,CAAC,EAAE,EAAE;UAC3CrW,GAAG,CAAEqW,CAAC,CAAE,GAAG,KAAK;QAClB;MACF,CAAC,MACI;QACH,MAAMoM,EAAE,GAAG,OAAOnjB,KAAK,CAAC+f,MAAM,KAAK,UAAU,GACzC/f,KAAK,CAAC+f,MAAM,GACZX,IAAI,IAAIpf,KAAK,CAAC+f,MAAM,CAACte,QAAQ,CAAC2d,IAAI,CAAC;QAEvC,KAAK,IAAIrI,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI+O,WAAW,CAAC1kB,KAAK,EAAE2V,CAAC,EAAE,EAAE;UAC3C,MAAMwQ,OAAO,GAAGJ,aAAa,CAAC/lB,KAAK,GAAG,GAAG,GAAGke,6DAAG,CAACvI,CAAC,CAAC;UAClDrW,GAAG,CAAEqW,CAAC,CAAE,GAAGoM,EAAE,CAACoE,OAAO,CAAC,KAAK,IAAI,IAAIvB,QAAQ,CAAC5kB,KAAK,CAACmmB,OAAO,CAAC;QAC5D;MACF;MAEA,OAAO7mB,GAAG;IACZ,CAAC,CAAC;IAEF,MAAM+mB,QAAQ,GAAGrnB,oDAAQ,CAAC,MAAM;MAC9B,IAAIgf,IAAI,EAAEsI,MAAM;MAChB,MAAM;QAAErI,IAAI;QAAEE;MAAM,CAAC,GAAGqC,SAAS,CAACxgB,KAAK;MAEvC,IAAIpB,KAAK,CAACsjB,QAAQ,KAAK,SAAS,EAAE;QAChClE,IAAI,GAAG,IAAIrR,IAAI,CAACsR,IAAI,EAAEE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QACnCmI,MAAM,GAAI,IAAI3Z,IAAI,CAACsR,IAAI,EAAEE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAEtR,OAAO,CAAC,CAAC;MACnD,CAAC,MACI;QACH,MAAMsV,KAAK,GAAGC,mFAAW,CAACnE,IAAI,EAAEE,KAAK,EAAE,CAAC,CAAC;QACzCH,IAAI,GAAG,IAAIrR,IAAI,CAACwV,KAAK,CAACE,EAAE,EAAEF,KAAK,CAACG,EAAE,GAAG,CAAC,EAAEH,KAAK,CAACI,EAAE,CAAC;QACjD,IAAIgE,MAAM,GAAGpI,KAAK,GAAG,CAAC;QACtB,IAAIqI,MAAM,GAAGvI,IAAI;QACjB,IAAIsI,MAAM,KAAK,CAAC,EAAE;UAChBA,MAAM,GAAG,EAAE;UACXC,MAAM,EAAE;QACV;QACAF,MAAM,GAAG3B,0FAAkB,CAAC6B,MAAM,EAAED,MAAM,CAAC;MAC7C;MAEA,OAAO;QACL/B,IAAI,EAAExG,IAAI,CAACuF,MAAM,CAAC,CAAC,GAAGe,sBAAsB,CAACtkB,KAAK,GAAG,CAAC;QACtDsmB;MACF,CAAC;IACH,CAAC,CAAC;IAEF,MAAM9B,IAAI,GAAGxlB,oDAAQ,CAAC,MAAM;MAC1B,MAAM4L,GAAG,GAAG,EAAE;MACd,MAAM;QAAE4Z,IAAI;QAAE8B;MAAO,CAAC,GAAGD,QAAQ,CAACrmB,KAAK;MAEvC,MAAMymB,GAAG,GAAGjC,IAAI,GAAG,CAAC,GAAGA,IAAI,GAAG,CAAC,GAAGA,IAAI;MACtC,IAAIiC,GAAG,GAAG,CAAC,EAAE;QACX,KAAK,IAAI9Q,CAAC,GAAG2Q,MAAM,GAAGG,GAAG,EAAE9Q,CAAC,IAAI2Q,MAAM,EAAE3Q,CAAC,EAAE,EAAE;UAC3C/K,GAAG,CAACrI,IAAI,CAAC;YAAEoT,CAAC;YAAE+Q,IAAI,EAAE;UAAK,CAAC,CAAC;QAC7B;MACF;MAEA,MAAMrkB,KAAK,GAAGuI,GAAG,CAACzJ,MAAM;MAExB,KAAK,IAAIwU,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAI+O,WAAW,CAAC1kB,KAAK,EAAE2V,CAAC,EAAE,EAAE;QAC3C,MAAMkM,GAAG,GAAG;UAAElM,CAAC;UAAEgR,KAAK,EAAEP,YAAY,CAACpmB,KAAK,CAAE2V,CAAC,CAAE;UAAE9U,OAAO,EAAE;QAAG,CAAC;QAE9D,IAAIqlB,gBAAgB,CAAClmB,KAAK,CAAE2V,CAAC,CAAE,KAAK,IAAI,EAAE;UACxCkM,GAAG,CAAC+E,EAAE,GAAG,IAAI;UACb/E,GAAG,CAAC1a,IAAI,GAAG,IAAI;QACjB;QAEAyD,GAAG,CAACrI,IAAI,CAACsf,GAAG,CAAC;MACf;;MAEA;MACA,IAAIqD,OAAO,CAACllB,KAAK,CAAE+lB,aAAa,CAAC/lB,KAAK,CAAE,KAAK,KAAK,CAAC,EAAE;QACnDklB,OAAO,CAACllB,KAAK,CAAE+lB,aAAa,CAAC/lB,KAAK,CAAE,CAACgB,OAAO,CAAC6gB,GAAG,IAAI;UAClD,MAAMlM,CAAC,GAAGtT,KAAK,GAAGwf,GAAG,GAAG,CAAC;UACzBziB,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAE+K,CAAC,CAAE,EAAE;YACtBrG,QAAQ,EAAE,IAAI;YACduX,UAAU,EAAE,IAAI;YAChB1f,IAAI,EAAE,KAAK;YACX/D,KAAK,EAAEge,aAAa,CAACphB,KAAK;YAC1BshB,SAAS,EAAED,iBAAiB,CAACrhB;UAC/B,CAAC,CAAC;QACJ,CAAC,CAAC;MACJ;;MAEA;MACA,IAAIqlB,QAAQ,CAACrlB,KAAK,CAAE+lB,aAAa,CAAC/lB,KAAK,CAAE,KAAK,KAAK,CAAC,EAAE;QACpDqlB,QAAQ,CAACrlB,KAAK,CAAE+lB,aAAa,CAAC/lB,KAAK,CAAE,CAACgB,OAAO,CAACmkB,KAAK,IAAI;UACrD,IAAIA,KAAK,CAAC9Q,IAAI,KAAK,KAAK,CAAC,EAAE;YACzB,MAAMA,IAAI,GAAGhS,KAAK,GAAG8iB,KAAK,CAAC9Q,IAAI,GAAG,CAAC;YACnC,MAAMpW,EAAE,GAAGoE,KAAK,IAAI8iB,KAAK,CAAClnB,EAAE,IAAIymB,WAAW,CAAC1kB,KAAK,CAAC,GAAG,CAAC;YAEtD,KAAK,IAAI6hB,GAAG,GAAGxN,IAAI,EAAEwN,GAAG,IAAI5jB,EAAE,EAAE4jB,GAAG,EAAE,EAAE;cACrCziB,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAEiX,GAAG,CAAE,EAAE;gBACxB3U,KAAK,EAAEiY,KAAK,CAACjY,KAAK;gBAClB2Z,UAAU,EAAE,IAAI;gBAChBzjB,KAAK,EAAEge,aAAa,CAACphB,KAAK;gBAC1BshB,SAAS,EAAED,iBAAiB,CAACrhB;cAC/B,CAAC,CAAC;YACJ;YAEAZ,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAEyJ,IAAI,CAAE,EAAE;cACzByS,SAAS,EAAE,IAAI;cACf3f,IAAI,EAAE;YACR,CAAC,CAAC;YAEFge,KAAK,CAAClnB,EAAE,KAAK,KAAK,CAAC,IAAImB,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAE3M,EAAE,CAAE,EAAE;cAC9C8oB,OAAO,EAAE,IAAI;cACb5f,IAAI,EAAE;YACR,CAAC,CAAC;UACJ,CAAC,MACI,IAAIge,KAAK,CAAClnB,EAAE,KAAK,KAAK,CAAC,EAAE;YAC5B,MAAMA,EAAE,GAAGoE,KAAK,GAAG8iB,KAAK,CAAClnB,EAAE,GAAG,CAAC;YAE/B,KAAK,IAAI4jB,GAAG,GAAGxf,KAAK,EAAEwf,GAAG,IAAI5jB,EAAE,EAAE4jB,GAAG,EAAE,EAAE;cACtCziB,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAEiX,GAAG,CAAE,EAAE;gBACxB3U,KAAK,EAAEiY,KAAK,CAACjY,KAAK;gBAClB2Z,UAAU,EAAE,IAAI;gBAChBzjB,KAAK,EAAEge,aAAa,CAACphB,KAAK;gBAC1BshB,SAAS,EAAED,iBAAiB,CAACrhB;cAC/B,CAAC,CAAC;YACJ;YAEAZ,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAE3M,EAAE,CAAE,EAAE;cACvBkJ,IAAI,EAAE,KAAK;cACX4f,OAAO,EAAE;YACX,CAAC,CAAC;UACJ,CAAC,MACI;YACH,MAAM9oB,EAAE,GAAGoE,KAAK,GAAGqiB,WAAW,CAAC1kB,KAAK,GAAG,CAAC;YACxC,KAAK,IAAI6hB,GAAG,GAAGxf,KAAK,EAAEwf,GAAG,IAAI5jB,EAAE,EAAE4jB,GAAG,EAAE,EAAE;cACtCziB,MAAM,CAACsa,MAAM,CAAC9O,GAAG,CAAEiX,GAAG,CAAE,EAAE;gBACxB3U,KAAK,EAAEiY,KAAK,CAACjY,KAAK;gBAClB2Z,UAAU,EAAE,IAAI;gBAChBzjB,KAAK,EAAEge,aAAa,CAACphB,KAAK;gBAC1BshB,SAAS,EAAED,iBAAiB,CAACrhB;cAC/B,CAAC,CAAC;YACJ;UACF;QACF,CAAC,CAAC;MACJ;MAEA,IAAIylB,SAAS,CAACzlB,KAAK,KAAK,KAAK,CAAC,EAAE;QAC9B,MAAMqU,IAAI,GAAGhS,KAAK,GAAGojB,SAAS,CAACzlB,KAAK,CAACqU,IAAI,GAAG,CAAC;QAC7C,MAAMpW,EAAE,GAAGoE,KAAK,GAAGojB,SAAS,CAACzlB,KAAK,CAAC/B,EAAE,GAAG,CAAC;QAEzC,KAAK,IAAI4jB,GAAG,GAAGxN,IAAI,EAAEwN,GAAG,IAAI5jB,EAAE,EAAE4jB,GAAG,EAAE,EAAE;UACrCjX,GAAG,CAAEiX,GAAG,CAAE,CAACze,KAAK,GAAGge,aAAa,CAACphB,KAAK;UACtC4K,GAAG,CAAEiX,GAAG,CAAE,CAACb,SAAS,GAAG,IAAI;QAC7B;QAEA,IAAIyE,SAAS,CAACzlB,KAAK,CAACgmB,WAAW,KAAK,IAAI,EAAE;UACxCpb,GAAG,CAAEyJ,IAAI,CAAE,CAAC2S,aAAa,GAAG,IAAI;QAClC;QACA,IAAIvB,SAAS,CAACzlB,KAAK,CAACimB,SAAS,KAAK,IAAI,EAAE;UACtCrb,GAAG,CAAE3M,EAAE,CAAE,CAACgpB,WAAW,GAAG,IAAI;QAC9B;MACF;MAEA,IAAIzG,SAAS,CAACxgB,KAAK,CAACie,IAAI,KAAKsC,KAAK,CAACvgB,KAAK,CAACie,IAAI,IAAIuC,SAAS,CAACxgB,KAAK,CAACme,KAAK,KAAKoC,KAAK,CAACvgB,KAAK,CAACme,KAAK,EAAE;QAC5FvT,GAAG,CAAEvI,KAAK,GAAGke,KAAK,CAACvgB,KAAK,CAAC6hB,GAAG,GAAG,CAAC,CAAE,CAACtB,KAAK,GAAG,IAAI;MACjD;MAEA,MAAM2G,IAAI,GAAGtc,GAAG,CAACzJ,MAAM,GAAG,CAAC;MAC3B,IAAI+lB,IAAI,GAAG,CAAC,EAAE;QACZ,MAAMC,SAAS,GAAG,CAAC,GAAGD,IAAI;QAC1B,KAAK,IAAIvR,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAIwR,SAAS,EAAExR,CAAC,EAAE,EAAE;UACnC/K,GAAG,CAACrI,IAAI,CAAC;YAAEoT,CAAC;YAAE+Q,IAAI,EAAE;UAAK,CAAC,CAAC;QAC7B;MACF;MAEA9b,GAAG,CAAC5J,OAAO,CAAC6gB,GAAG,IAAI;QACjB,IAAIuF,GAAG,GAAG,wBAAwB;QAElC,IAAIvF,GAAG,CAAC6E,IAAI,KAAK,IAAI,EAAE;UACrBU,GAAG,IAAI,6BAA6B;QACtC,CAAC,MACI;UACHA,GAAG,IAAK,0BAA0BvF,GAAG,CAAC+E,EAAE,KAAK,IAAI,GAAG,IAAI,GAAG,KAAO,EAAC;UAEnE,IAAI/E,GAAG,CAAC3U,KAAK,KAAK,KAAK,CAAC,EAAE;YACxBka,GAAG,IAAK,iBAAiBvF,GAAG,CAACkF,OAAO,KAAK,IAAI,GAAG,KAAK,GAAIlF,GAAG,CAACiF,SAAS,KAAK,IAAI,GAAG,OAAO,GAAG,EAAK,EAAC;UACpG;UAEA,IAAIjF,GAAG,CAACb,SAAS,KAAK,IAAI,EAAE;YAC1BoG,GAAG,IAAK,sBAAsBvF,GAAG,CAACmF,aAAa,KAAK,IAAI,GAAG,OAAO,GAAG,EAAI,GAAGnF,GAAG,CAACoF,WAAW,KAAK,IAAI,GAAG,KAAK,GAAG,EAAI,EAAC;UACtH;UAEA,IAAIpF,GAAG,CAAC3U,KAAK,KAAK,KAAK,CAAC,IAAI2U,GAAG,CAACb,SAAS,KAAK,IAAI,EAAE;YAClDoG,GAAG,IAAK,SAASvF,GAAG,CAACze,KAAO,EAAC;UAC/B;QACF;QAEAye,GAAG,CAAChhB,OAAO,GAAGumB,GAAG;MACnB,CAAC,CAAC;MAEF,OAAOxc,GAAG;IACZ,CAAC,CAAC;IAEF,MAAMyc,UAAU,GAAGroB,oDAAQ,CAAC,MAC1BJ,KAAK,CAACsiB,OAAO,KAAK,IAAI,GAClB;MAAE,eAAe,EAAE;IAAO,CAAC,GAC3B,CAAC,CACN,CAAC;IAEFnf,iDAAK,CAAC,MAAMnD,KAAK,CAAC6iB,UAAU,EAAElW,CAAC,IAAI;MACjC,IAAIsU,aAAa,KAAKtU,CAAC,EAAE;QACvBsU,aAAa,GAAG,CAAC;MACnB,CAAC,MACI;QACH,MAAMxT,KAAK,GAAGoU,YAAY,CAACN,SAAS,CAACngB,KAAK,EAAEqgB,WAAW,CAACrgB,KAAK,CAAC;QAC9DsnB,eAAe,CAACjb,KAAK,CAAC4R,IAAI,EAAE5R,KAAK,CAAC8R,KAAK,EAAE9R,KAAK,CAAC;MACjD;IACF,CAAC,CAAC;IAEFtK,iDAAK,CAAC2e,IAAI,EAAE,MAAM;MAChB,IAAIR,aAAa,CAAClgB,KAAK,KAAK,IAAI,IAAI6L,KAAK,CAAC0b,GAAG,CAAC7S,QAAQ,CAACJ,QAAQ,CAACkT,aAAa,CAAC,KAAK,IAAI,EAAE;QACvFtH,aAAa,CAAClgB,KAAK,CAACynB,KAAK,CAAC,CAAC;MAC7B;IACF,CAAC,CAAC;IAEF1lB,iDAAK,CAAC,MAAMye,SAAS,CAACxgB,KAAK,CAACie,IAAI,GAAG,GAAG,GAAGuC,SAAS,CAACxgB,KAAK,CAACme,KAAK,EAAE,MAAM;MACpEvc,IAAI,CAAC,YAAY,EAAE;QAAEqc,IAAI,EAAEuC,SAAS,CAACxgB,KAAK,CAACie,IAAI;QAAEE,KAAK,EAAEqC,SAAS,CAACxgB,KAAK,CAACme;MAAM,CAAC,CAAC;IAClF,CAAC,CAAC;IAEFpc,iDAAK,CAACyc,IAAI,EAAEnd,GAAG,IAAI;MACjBqmB,WAAW,CAACrmB,GAAG,EAAEgf,WAAW,CAACrgB,KAAK,EAAE,MAAM,CAAC;MAC3CmgB,SAAS,CAACngB,KAAK,GAAGqB,GAAG;IACvB,CAAC,CAAC;IAEFU,iDAAK,CAACue,MAAM,EAAEjf,GAAG,IAAI;MACnBqmB,WAAW,CAACvH,SAAS,CAACngB,KAAK,EAAEqB,GAAG,EAAE,QAAQ,CAAC;MAC3Cgf,WAAW,CAACrgB,KAAK,GAAGqB,GAAG;IACzB,CAAC,CAAC;IAEF,SAASsmB,QAAQA,CAAA,EAAI;MACnB,MAAM;QAAE1J,IAAI;QAAEE,KAAK;QAAE0D;MAAI,CAAC,GAAGtB,KAAK,CAACvgB,KAAK;MAExC,MAAMge,IAAI,GAAG;QACX;QACA;QACA,GAAGwC,SAAS,CAACxgB,KAAK;QAElB;QACAie,IAAI;QACJE,KAAK;QACL0D;MACF,CAAC;MAED,MAAM+F,QAAQ,GAAG1C,OAAO,CAACllB,KAAK,CAAE+d,YAAY,CAACC,IAAI,CAAC,CAAE;MAEpD,IAAI4J,QAAQ,KAAK,KAAK,CAAC,IAAIA,QAAQ,CAACvnB,QAAQ,CAAC2d,IAAI,CAAC6D,GAAG,CAAC,KAAK,KAAK,EAAE;QAChEgG,UAAU,CAAC7J,IAAI,CAAC;MAClB;MAEA8J,aAAa,CAAC9J,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,CAAC;IACtC;IAEA,SAAS4J,OAAOA,CAAEC,QAAQ,EAAE;MAC1B,IAAIrK,WAAW,CAACqK,QAAQ,CAAC,KAAK,IAAI,EAAE;QAClCtH,IAAI,CAAC1gB,KAAK,GAAGgoB,QAAQ;MACvB;IACF;IAEA,SAASC,cAAcA,CAAE5kB,IAAI,EAAEtD,UAAU,EAAE;MACzC,IAAI,CAAE,OAAO,EAAE,MAAM,CAAE,CAACM,QAAQ,CAACgD,IAAI,CAAC,EAAE;QACtC,MAAM0e,EAAE,GAAG1e,IAAI,KAAK,OAAO,GAAG6kB,SAAS,GAAGC,QAAQ;QAClDpG,EAAE,CAAChiB,UAAU,KAAK,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;MAClC;IACF;IAEA,SAAS+nB,aAAaA,CAAE7J,IAAI,EAAEE,KAAK,EAAE;MACnCuC,IAAI,CAAC1gB,KAAK,GAAG,UAAU;MACvBsnB,eAAe,CAACrJ,IAAI,EAAEE,KAAK,CAAC;IAC9B;IAEA,SAASiK,eAAeA,CAAE/T,IAAI,EAAEpW,EAAE,EAAE;MAClC,IAAIW,KAAK,CAACsO,KAAK,KAAK,KAAK,IAAI,CAACmH,IAAI,EAAE;QAClC2M,SAAS,CAAChhB,KAAK,GAAG,IAAI;QACtB;MACF;MAEA,MAAMqjB,IAAI,GAAGjkB,MAAM,CAACsa,MAAM,CAAC;QAAE,GAAG8G,SAAS,CAACxgB;MAAM,CAAC,EAAEqU,IAAI,CAAC;MACxD,MAAMsR,KAAK,GAAG1nB,EAAE,KAAK,KAAK,CAAC,GACvBmB,MAAM,CAACsa,MAAM,CAAC;QAAE,GAAG8G,SAAS,CAACxgB;MAAM,CAAC,EAAE/B,EAAE,CAAC,GACzColB,IAAI;MAERrC,SAAS,CAAChhB,KAAK,GAAG;QAChBqjB,IAAI;QACJqC,QAAQ,EAAEjD,mEAAU,CAACY,IAAI,CAAC;QAC1BsC,KAAK;QACLC,SAAS,EAAEnD,mEAAU,CAACkD,KAAK;MAC7B,CAAC;MAEDmC,aAAa,CAACzE,IAAI,CAACpF,IAAI,EAAEoF,IAAI,CAAClF,KAAK,CAAC;IACtC;IAEA,SAASiC,OAAOA,CAAA,EAAI;MAClB,OAAOxhB,KAAK,CAACsjB,QAAQ,KAAK,SAAS,GAAG,YAAY,GAAGtjB,KAAK,CAAC4f,IAAI;IACjE;IAEA,SAASmD,YAAYA,CAAE3D,IAAI,EAAEQ,IAAI,EAAE8B,MAAM,EAAE;MACzC,OAAO+H,mEAAW,CAChBrK,IAAI,EACJQ,IAAI,EACJ8B,MAAM,EACN1hB,KAAK,CAACsjB,QAAQ,EACd;QACES,IAAI,EAAE,CAAC;QACPC,MAAM,EAAE,CAAC;QACTC,MAAM,EAAE,CAAC;QACTC,WAAW,EAAE;MACf,CACF,CAAC;IACH;IAEA,SAASrC,YAAYA,CAAEjC,IAAI,EAAE8B,MAAM,EAAE;MACnC,MAAMjU,KAAK,GAAG3N,KAAK,CAAC4C,OAAO,CAAC1C,KAAK,CAAC6iB,UAAU,CAAC,KAAK,IAAI,GAClD7iB,KAAK,CAAC6iB,UAAU,GACf7iB,KAAK,CAAC6iB,UAAU,GAAG,CAAE7iB,KAAK,CAAC6iB,UAAU,CAAE,GAAG,EAAG;MAElD,IAAIpV,KAAK,CAAClL,MAAM,KAAK,CAAC,EAAE;QACtB,OAAOmnB,mBAAmB,CAAC,CAAC;MAC9B;MAEA,MAAMlmB,MAAM,GAAGiK,KAAK,CAAEA,KAAK,CAAClL,MAAM,GAAG,CAAC,CAAE;MACxC,MAAMonB,OAAO,GAAG5G,YAAY,CAC1Bvf,MAAM,CAACiS,IAAI,KAAK,KAAK,CAAC,GAAGjS,MAAM,CAACiS,IAAI,GAAGjS,MAAM,EAC7Coc,IAAI,EACJ8B,MACF,CAAC;MAED,OAAOiI,OAAO,CAAC3G,QAAQ,KAAK,IAAI,GAC5B0G,mBAAmB,CAAC,CAAC,GACrBC,OAAO;IACb;IAEA,SAASD,mBAAmBA,CAAA,EAAI;MAC9B,IAAIrK,IAAI,EAAEE,KAAK;MAEf,IAAIvf,KAAK,CAAC6f,gBAAgB,KAAK,KAAK,CAAC,EAAE;QACrC,MAAM/R,CAAC,GAAG9N,KAAK,CAAC6f,gBAAgB,CAAC/Y,KAAK,CAAC,GAAG,CAAC;QAC3CuY,IAAI,GAAGzP,QAAQ,CAAC9B,CAAC,CAAE,CAAC,CAAE,EAAE,EAAE,CAAC;QAC3ByR,KAAK,GAAG3P,QAAQ,CAAC9B,CAAC,CAAE,CAAC,CAAE,EAAE,EAAE,CAAC;MAC9B,CAAC,MACI;QACH;QACA;QACA,MAAMA,CAAC,GAAG6T,KAAK,CAACvgB,KAAK,KAAK,KAAK,CAAC,GAC5BugB,KAAK,CAACvgB,KAAK,GACX2f,cAAc,CAAC,CAAC;QAEpB1B,IAAI,GAAGvR,CAAC,CAACuR,IAAI;QACbE,KAAK,GAAGzR,CAAC,CAACyR,KAAK;MACjB;MAEA,OAAO;QACLF,IAAI;QACJE,KAAK;QACL0D,GAAG,EAAE,CAAC;QACNc,IAAI,EAAE,CAAC;QACPC,MAAM,EAAE,CAAC;QACTC,MAAM,EAAE,CAAC;QACTC,WAAW,EAAE,CAAC;QACdlB,QAAQ,EAAE3D,IAAI,GAAG,GAAG,GAAGC,6DAAG,CAACC,KAAK,CAAC,GAAG;MACtC,CAAC;IACH;IAEA,SAAS+J,SAASA,CAAEM,MAAM,EAAE;MAC1B,IAAIvK,IAAI,GAAGuC,SAAS,CAACxgB,KAAK,CAACie,IAAI;MAC/B,IAAIE,KAAK,GAAG5M,MAAM,CAACiP,SAAS,CAACxgB,KAAK,CAACme,KAAK,CAAC,GAAGqK,MAAM;MAElD,IAAIrK,KAAK,KAAK,EAAE,EAAE;QAChBA,KAAK,GAAG,CAAC;QACTF,IAAI,EAAE;MACR,CAAC,MACI,IAAIE,KAAK,KAAK,CAAC,EAAE;QACpBA,KAAK,GAAG,EAAE;QACVF,IAAI,EAAE;MACR;MAEAqJ,eAAe,CAACrJ,IAAI,EAAEE,KAAK,CAAC;MAC5BoD,WAAW,CAACvhB,KAAK,KAAK,IAAI,IAAI6e,eAAe,CAAC,OAAO,CAAC;IACxD;IAEA,SAASsJ,QAAQA,CAAEK,MAAM,EAAE;MACzB,MAAMvK,IAAI,GAAG1M,MAAM,CAACiP,SAAS,CAACxgB,KAAK,CAACie,IAAI,CAAC,GAAGuK,MAAM;MAClDlB,eAAe,CAACrJ,IAAI,EAAEuC,SAAS,CAACxgB,KAAK,CAACme,KAAK,CAAC;MAC5CoD,WAAW,CAACvhB,KAAK,KAAK,IAAI,IAAI6e,eAAe,CAAC,MAAM,CAAC;IACvD;IAEA,SAAS4J,OAAOA,CAAExK,IAAI,EAAE;MACtBqJ,eAAe,CAACrJ,IAAI,EAAEuC,SAAS,CAACxgB,KAAK,CAACme,KAAK,CAAC;MAC5CuC,IAAI,CAAC1gB,KAAK,GAAGpB,KAAK,CAACwgB,WAAW,KAAK,OAAO,GAAG,QAAQ,GAAG,UAAU;MAClEmC,WAAW,CAACvhB,KAAK,KAAK,IAAI,IAAI6e,eAAe,CAAC,MAAM,CAAC;IACvD;IAEA,SAAS6J,QAAQA,CAAEvK,KAAK,EAAE;MACxBmJ,eAAe,CAAC9G,SAAS,CAACxgB,KAAK,CAACie,IAAI,EAAEE,KAAK,CAAC;MAC5CuC,IAAI,CAAC1gB,KAAK,GAAG,UAAU;MACvBuhB,WAAW,CAACvhB,KAAK,KAAK,IAAI,IAAI6e,eAAe,CAAC,OAAO,CAAC;IACxD;IAEA,SAAS8J,UAAUA,CAAE3K,IAAI,EAAE4K,SAAS,EAAE;MACpC,MAAMzK,KAAK,GAAG+G,OAAO,CAACllB,KAAK,CAAE4oB,SAAS,CAAE;MACxC,MAAM7G,EAAE,GAAG5D,KAAK,KAAK,KAAK,CAAC,IAAIA,KAAK,CAAC9d,QAAQ,CAAC2d,IAAI,CAAC6D,GAAG,CAAC,KAAK,IAAI,GAC5DgH,eAAe,GACfhB,UAAU;MAEd9F,EAAE,CAAC/D,IAAI,CAAC;IACV;IAEA,SAAS8K,YAAYA,CAAE9K,IAAI,EAAE;MAC3B,OAAO;QAAEC,IAAI,EAAED,IAAI,CAACC,IAAI;QAAEE,KAAK,EAAEH,IAAI,CAACG,KAAK;QAAE0D,GAAG,EAAE7D,IAAI,CAAC6D;MAAI,CAAC;IAC9D;IAEA,SAASyF,eAAeA,CAAErJ,IAAI,EAAEE,KAAK,EAAE4K,IAAI,EAAE;MAC3C,IAAIlE,MAAM,CAAC7kB,KAAK,KAAK,IAAI,IAAIie,IAAI,IAAI4G,MAAM,CAAC7kB,KAAK,CAACie,IAAI,EAAE;QACtD,IAAIE,KAAK,GAAG0G,MAAM,CAAC7kB,KAAK,CAACme,KAAK,IAAIF,IAAI,GAAG4G,MAAM,CAAC7kB,KAAK,CAACie,IAAI,EAAE;UAC1DE,KAAK,GAAG0G,MAAM,CAAC7kB,KAAK,CAACme,KAAK;QAC5B;QACAF,IAAI,GAAG4G,MAAM,CAAC7kB,KAAK,CAACie,IAAI;MAC1B;MAEA,IAAI6G,MAAM,CAAC9kB,KAAK,KAAK,IAAI,IAAIie,IAAI,IAAI6G,MAAM,CAAC9kB,KAAK,CAACie,IAAI,EAAE;QACtD,IAAIE,KAAK,GAAG2G,MAAM,CAAC9kB,KAAK,CAACme,KAAK,IAAIF,IAAI,GAAG6G,MAAM,CAAC9kB,KAAK,CAACie,IAAI,EAAE;UAC1DE,KAAK,GAAG2G,MAAM,CAAC9kB,KAAK,CAACme,KAAK;QAC5B;QACAF,IAAI,GAAG6G,MAAM,CAAC9kB,KAAK,CAACie,IAAI;MAC1B;MAEA,IAAI8K,IAAI,KAAK,KAAK,CAAC,EAAE;QACnB,MAAM;UAAEpG,IAAI;UAAEC,MAAM;UAAEC,MAAM;UAAEC,WAAW;UAAEC,cAAc;UAAEiG;QAAS,CAAC,GAAGD,IAAI;QAC5E3pB,MAAM,CAACsa,MAAM,CAAC8G,SAAS,CAACxgB,KAAK,EAAE;UAAE2iB,IAAI;UAAEC,MAAM;UAAEC,MAAM;UAAEC,WAAW;UAAEC,cAAc;UAAEiG;QAAS,CAAC,CAAC;MACjG;MAEA,MAAMC,OAAO,GAAGhL,IAAI,GAAG,GAAG,GAAGC,6DAAG,CAACC,KAAK,CAAC,GAAG,KAAK;MAE/C,IAAI8K,OAAO,KAAKzI,SAAS,CAACxgB,KAAK,CAAC4hB,QAAQ,EAAE;QACxCf,cAAc,CAAC7gB,KAAK,GAAIwgB,SAAS,CAACxgB,KAAK,CAAC4hB,QAAQ,GAAGqH,OAAO,MAAOlkB,EAAE,CAACiW,IAAI,CAAC4F,GAAG,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,OAAO;QACzG,IAAI3C,IAAI,KAAKuC,SAAS,CAACxgB,KAAK,CAACie,IAAI,EAAE;UACjC6C,aAAa,CAAC9gB,KAAK,GAAG6gB,cAAc,CAAC7gB,KAAK;QAC5C;QAEA2Y,oDAAQ,CAAC,MAAM;UACboI,SAAS,CAAC/gB,KAAK,GAAGie,IAAI,GAAGA,IAAI,GAAGR,aAAa,IAAIQ,IAAI,GAAG,CAAC,GAAGR,aAAa,GAAG,CAAC,CAAC;UAC9Ere,MAAM,CAACsa,MAAM,CAAC8G,SAAS,CAACxgB,KAAK,EAAE;YAC7Bie,IAAI;YACJE,KAAK;YACL0D,GAAG,EAAE,CAAC;YACND,QAAQ,EAAEqH;UACZ,CAAC,CAAC;QACJ,CAAC,CAAC;MACJ;IACF;IAEA,SAASC,SAASA,CAAE7nB,GAAG,EAAE4F,MAAM,EAAE+W,IAAI,EAAE;MACrC,MAAMhe,KAAK,GAAGqB,GAAG,KAAK,IAAI,IAAIA,GAAG,CAACF,MAAM,KAAK,CAAC,IAAIvC,KAAK,CAAC0f,QAAQ,KAAK,KAAK,GACtEjd,GAAG,CAAE,CAAC,CAAE,GACRA,GAAG;MAEPwe,aAAa,GAAG7f,KAAK;MAErB,MAAM;QAAEmpB,MAAM;QAAEC;MAAQ,CAAC,GAAGC,aAAa,CAACpiB,MAAM,EAAE+W,IAAI,CAAC;MACvDpc,IAAI,CAAC,mBAAmB,EAAE5B,KAAK,EAAEmpB,MAAM,EAAEC,OAAO,CAAC;IACnD;IAEA,SAASvK,eAAeA,CAAEsK,MAAM,EAAE;MAChC,MAAMnL,IAAI,GAAG0D,SAAS,CAAC1hB,KAAK,CAAE,CAAC,CAAE,KAAK,KAAK,CAAC,IAAI0hB,SAAS,CAAC1hB,KAAK,CAAE,CAAC,CAAE,CAAC4hB,QAAQ,KAAK,IAAI,GAClF;QAAE,GAAGF,SAAS,CAAC1hB,KAAK,CAAE,CAAC;MAAG,CAAC,GAC3B;QAAE,GAAGwgB,SAAS,CAACxgB;MAAM,CAAC,EAAC;;MAE3B;MACA2Y,oDAAQ,CAAC,MAAM;QACbqF,IAAI,CAACC,IAAI,GAAGuC,SAAS,CAACxgB,KAAK,CAACie,IAAI;QAChCD,IAAI,CAACG,KAAK,GAAGqC,SAAS,CAACxgB,KAAK,CAACme,KAAK;QAElC,MAAMmL,MAAM,GAAG1qB,KAAK,CAACsjB,QAAQ,KAAK,SAAS,GACtC,IAAIvV,IAAI,CAACqR,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,EAAE,CAAC,CAAC,CAAEtR,OAAO,CAAC,CAAC,GAC9C8X,0FAAkB,CAAC3G,IAAI,CAACC,IAAI,EAAED,IAAI,CAACG,KAAK,CAAC;QAE7CH,IAAI,CAAC6D,GAAG,GAAGpH,IAAI,CAAC8O,GAAG,CAAC9O,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEsD,IAAI,CAAC6D,GAAG,CAAC,EAAEyH,MAAM,CAAC;QAElD,MAAMtpB,KAAK,GAAGwpB,WAAW,CAACxL,IAAI,CAAC;QAC/B6B,aAAa,GAAG7f,KAAK;QAErB,MAAM;UAAEopB;QAAQ,CAAC,GAAGC,aAAa,CAAC,EAAE,EAAErL,IAAI,CAAC;QAC3Cpc,IAAI,CAAC,mBAAmB,EAAE5B,KAAK,EAAEmpB,MAAM,EAAEC,OAAO,CAAC;MACnD,CAAC,CAAC;IACJ;IAEA,SAASC,aAAaA,CAAEpiB,MAAM,EAAE+W,IAAI,EAAE;MACpC,OAAOA,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,GACvB;QACE8U,MAAM,EAAG,GAAGliB,MAAQ,QAAO;QAC3BmiB,OAAO,EAAE;UACP,GAAGN,YAAY,CAAC9K,IAAI,CAAC5b,MAAM,CAAC;UAC5BiS,IAAI,EAAEyU,YAAY,CAAC9K,IAAI,CAAC3J,IAAI,CAAC;UAC7BpW,EAAE,EAAE6qB,YAAY,CAAC9K,IAAI,CAAC/f,EAAE;QAC1B;MACF,CAAC,GACD;QACEkrB,MAAM,EAAG,GAAGliB,MAAQ,MAAK;QACzBmiB,OAAO,EAAEN,YAAY,CAAC9K,IAAI;MAC5B,CAAC;IACP;IAEA,SAASwL,WAAWA,CAAExL,IAAI,EAAEQ,IAAI,EAAE8B,MAAM,EAAE;MACxC,OAAOtC,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,GACvB;QAAEA,IAAI,EAAEmO,cAAc,CAACxiB,KAAK,CAACge,IAAI,CAAC3J,IAAI,EAAEmK,IAAI,EAAE8B,MAAM,CAAC;QAAEriB,EAAE,EAAEukB,cAAc,CAACxiB,KAAK,CAACge,IAAI,CAAC/f,EAAE,EAAEugB,IAAI,EAAE8B,MAAM;MAAE,CAAC,GACxGkC,cAAc,CAACxiB,KAAK,CAACge,IAAI,EAAEQ,IAAI,EAAE8B,MAAM,CAAC;IAC9C;IAEA,SAASuH,UAAUA,CAAE7J,IAAI,EAAE;MACzB,IAAIhe,KAAK;MAET,IAAIpB,KAAK,CAAC0f,QAAQ,KAAK,IAAI,EAAE;QAC3B,IAAIN,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,EAAE;UACxB;;UAEA,MAAMwR,QAAQ,GAAGpD,mEAAU,CAACzE,IAAI,CAAC3J,IAAI,CAAC;UACtC,MAAMyR,MAAM,GAAGrD,mEAAU,CAACzE,IAAI,CAAC/f,EAAE,CAAC;UAElC,MAAMumB,IAAI,GAAG9C,SAAS,CAAC1hB,KAAK,CACzBE,MAAM,CAAC2hB,GAAG,IAAIA,GAAG,CAACD,QAAQ,GAAGiE,QAAQ,IAAIhE,GAAG,CAACD,QAAQ,GAAGkE,MAAM,CAAC;UAElE,MAAM2D,MAAM,GAAG3H,UAAU,CAAC9hB,KAAK,CAC5BE,MAAM,CAAC,CAAC;YAAEmU,IAAI;YAAEpW;UAAG,CAAC,KAAKA,EAAE,CAAC2jB,QAAQ,GAAGiE,QAAQ,IAAIxR,IAAI,CAACuN,QAAQ,GAAGkE,MAAM,CAAC;UAE7E9lB,KAAK,GAAGwkB,IAAI,CAAC/T,MAAM,CAACgZ,MAAM,CAAC,CAAChZ,MAAM,CAACuN,IAAI,CAAC,CAAC1e,GAAG,CAAC6lB,KAAK,IAAIqE,WAAW,CAACrE,KAAK,CAAC,CAAC;QAC3E,CAAC,MACI;UACH,MAAM9Y,KAAK,GAAGmV,eAAe,CAACxhB,KAAK,CAACuB,KAAK,CAAC,CAAC;UAC3C8K,KAAK,CAAC9J,IAAI,CAACinB,WAAW,CAACxL,IAAI,CAAC,CAAC;UAC7Bhe,KAAK,GAAGqM,KAAK;QACf;MACF,CAAC,MACI;QACHrM,KAAK,GAAGwpB,WAAW,CAACxL,IAAI,CAAC;MAC3B;MAEAkL,SAAS,CAAClpB,KAAK,EAAE,KAAK,EAAEge,IAAI,CAAC;IAC/B;IAEA,SAAS6K,eAAeA,CAAE7K,IAAI,EAAE;MAC9B,IAAIpf,KAAK,CAACogB,OAAO,KAAK,IAAI,EAAE;QAC1B;MACF;MAEA,IAAI3S,KAAK,GAAG,IAAI;MAEhB,IAAIzN,KAAK,CAAC0f,QAAQ,KAAK,IAAI,IAAI5f,KAAK,CAAC4C,OAAO,CAAC1C,KAAK,CAAC6iB,UAAU,CAAC,KAAK,IAAI,EAAE;QACvE,MAAMpgB,GAAG,GAAGmoB,WAAW,CAACxL,IAAI,CAAC;QAE7B,IAAIA,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,EAAE;UACxBhI,KAAK,GAAGzN,KAAK,CAAC6iB,UAAU,CAACvhB,MAAM,CAC7B8d,IAAI,IACFA,IAAI,CAAC3J,IAAI,KAAK,KAAK,CAAC,GACf2J,IAAI,CAAC3J,IAAI,KAAKhT,GAAG,CAACgT,IAAI,IAAI2J,IAAI,CAAC/f,EAAE,KAAKoD,GAAG,CAACpD,EAAE,GAC7C,IAER,CAAC;QACH,CAAC,MACI;UACHoO,KAAK,GAAGzN,KAAK,CAAC6iB,UAAU,CAACvhB,MAAM,CAAC8d,IAAI,IAAIA,IAAI,KAAK3c,GAAG,CAAC;QACvD;QAEA,IAAIgL,KAAK,CAAClL,MAAM,KAAK,CAAC,EAAE;UACtBkL,KAAK,GAAG,IAAI;QACd;MACF;MAEA6c,SAAS,CAAC7c,KAAK,EAAE,QAAQ,EAAE2R,IAAI,CAAC;IAClC;IAEA,SAAS0J,WAAWA,CAAElJ,IAAI,EAAE8B,MAAM,EAAE6I,MAAM,EAAE;MAC1C,MAAM9c,KAAK,GAAGqV,SAAS,CAAC1hB,KAAK,CAC1ByQ,MAAM,CAACqR,UAAU,CAAC9hB,KAAK,CAAC,CACxBV,GAAG,CAAC6lB,KAAK,IAAIqE,WAAW,CAACrE,KAAK,EAAE3G,IAAI,EAAE8B,MAAM,CAAC,CAAC,CAC9CpgB,MAAM,CAACilB,KAAK,IAAI;QACf,OAAOA,KAAK,CAAC9Q,IAAI,KAAK,KAAK,CAAC,GACxB8Q,KAAK,CAAC9Q,IAAI,CAACuN,QAAQ,KAAK,IAAI,IAAIuD,KAAK,CAAClnB,EAAE,CAAC2jB,QAAQ,KAAK,IAAI,GAC1DuD,KAAK,CAACvD,QAAQ,KAAK,IAAI;MAC7B,CAAC,CAAC;MAEJhgB,IAAI,CAAC,mBAAmB,EAAE,CAAChD,KAAK,CAAC0f,QAAQ,KAAK,IAAI,GAAGjS,KAAK,GAAGA,KAAK,CAAE,CAAC,CAAE,KAAK,IAAI,EAAE8c,MAAM,CAAC;IAC3F;IAEA,SAASO,SAASA,CAAA,EAAI;MACpB,IAAI9qB,KAAK,CAACugB,OAAO,KAAK,IAAI,EAAE;MAE5B,OAAOrT,6CAAC,CAAC,KAAK,EAAE;QACdtP,KAAK,EAAE,iBAAiB,GAAGijB,WAAW,CAACzf;MACzC,CAAC,EAAE,CACD8L,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC6d,8CAAU,EAAE;QACZzrB,IAAI,EAAE;MACR,CAAC,EAAE,MAAM4N,6CAAC,CAAC,KAAK,EAAE;QAChBpO,GAAG,EAAE,OAAO,GAAGsmB,cAAc,CAAChkB,KAAK;QACnCxD,KAAK,EAAE,8CAA8C,IAChDkkB,IAAI,CAAC1gB,KAAK,KAAK,OAAO,GAAG,6BAA6B,GAAG,gBAAgB,CAAC;QAC/Ewf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxB,GAAGsf,QAAQ,CAAC,IAAI,EAAE;UAChBhZ,OAAOA,CAAA,EAAI;YAAEoa,IAAI,CAAC1gB,KAAK,GAAG,OAAO;UAAC,CAAC;UACnC4pB,OAAOA,CAAE5M,CAAC,EAAE;YAAEA,CAAC,CAAC6M,OAAO,KAAK,EAAE,KAAKnJ,IAAI,CAAC1gB,KAAK,GAAG,OAAO,CAAC;UAAC;QAC3D,CAAC;MACH,CAAC,EAAE,CAAEgkB,cAAc,CAAChkB,KAAK,CAAE,CAAC,CAAC,CAC9B,CAAC,EAEF8L,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC6d,8CAAU,EAAE;QACZzrB,IAAI,EAAE;MACR,CAAC,EAAE,MAAM4N,6CAAC,CAAC,KAAK,EAAE;QAChBpO,GAAG,EAAE,OAAO,GAAG0lB,WAAW,CAACpjB,KAAK;QAChCxD,KAAK,EAAE,iDAAiD,IACnDkkB,IAAI,CAAC1gB,KAAK,KAAK,UAAU,GAAG,6BAA6B,GAAG,gBAAgB,CAAC;QAClFwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxB,GAAGsf,QAAQ,CAAC,IAAI,EAAE;UAChBhZ,OAAOA,CAAA,EAAI;YAAEoa,IAAI,CAAC1gB,KAAK,GAAG,UAAU;UAAC,CAAC;UACtC4pB,OAAOA,CAAE5M,CAAC,EAAE;YAAEA,CAAC,CAAC6M,OAAO,KAAK,EAAE,KAAKnJ,IAAI,CAAC1gB,KAAK,GAAG,UAAU,CAAC;UAAC;QAC9D,CAAC;MACH,CAAC,EAAE,CAAEojB,WAAW,CAACpjB,KAAK,CAAE,CAAC,CAAC,CAC3B,CAAC,EAEFpB,KAAK,CAACsgB,QAAQ,KAAK,IAAI,GAAGpT,6CAAC,CAACge,oDAAI,EAAE;QAChCttB,KAAK,EAAE,iCAAiC;QACxCkK,IAAI,EAAE3B,EAAE,CAACkM,OAAO,CAACiT,QAAQ,CAAC3D,KAAK;QAC/BpZ,IAAI,EAAE,IAAI;QACVgM,IAAI,EAAE,IAAI;QACV4W,KAAK,EAAE,IAAI;QACXvK,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxBsG,OAAO,EAAEqhB;MACX,CAAC,CAAC,GAAG,IAAI,CACV,CAAC,CACH,CAAC;IACJ;IAEA,SAASqC,aAAaA,CAAE;MAAEzqB,KAAK;MAAE8D,IAAI;MAAE3F,GAAG;MAAEusB,GAAG;MAAEC,IAAI;MAAEC,UAAU;MAAE/C;IAAI,CAAC,EAAE;MACxE,OAAO,CACLtb,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;QACNC,KAAK,EAAE,IAAI;QACX9e,KAAK,EAAE,IAAI;QACXkI,IAAI,EAAE,IAAI;QACVhM,IAAI,EAAE,IAAI;QACVT,IAAI,EAAEud,SAAS,CAACjkB,KAAK,CAAE,CAAC,CAAE;QAC1Bwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxBkhB,OAAO,EAAEiJ,UAAU,CAACnF,IAAI,KAAK,KAAK;QAClC,GAAG1F,QAAQ,CAAC,MAAM,GAAGjc,IAAI,EAAE;UAAEiD,OAAOA,CAAA,EAAI;YAAE4jB,IAAI,CAAC,CAAC,CAAC,CAAC;UAAC;QAAE,CAAC;MACxD,CAAC,CAAC,CACH,CAAC,EAEFpe,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE,oDAAoD,GAAG4qB;MAChE,CAAC,EAAE,CACDtb,6CAAC,CAAC6d,8CAAU,EAAE;QACZzrB,IAAI,EAAE,qBAAqB,GAAG+rB;MAChC,CAAC,EAAE,MAAMne,6CAAC,CAAC,KAAK,EAAE;QAAEpO;MAAI,CAAC,EAAE,CACzBoO,6CAAC,CAACge,oDAAI,EAAE;QACN3iB,IAAI,EAAE,IAAI;QACV8D,KAAK,EAAE,IAAI;QACXmf,MAAM,EAAE,IAAI;QACZ7qB,KAAK;QACLigB,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxB,GAAGsf,QAAQ,CAAC,OAAO,GAAGjc,IAAI,EAAE;UAAEiD,OAAO,EAAEA,CAAA,KAAM;YAAEoa,IAAI,CAAC1gB,KAAK,GAAGqD,IAAI;UAAC;QAAE,CAAC;MACtE,CAAC,CAAC,CACH,CAAC,CAAC,CACJ,CAAC,EAEFyI,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;QACNC,KAAK,EAAE,IAAI;QACX9e,KAAK,EAAE,IAAI;QACXkI,IAAI,EAAE,IAAI;QACVhM,IAAI,EAAE,IAAI;QACVT,IAAI,EAAEud,SAAS,CAACjkB,KAAK,CAAE,CAAC,CAAE;QAC1Bwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxBkhB,OAAO,EAAEiJ,UAAU,CAAClF,IAAI,KAAK,KAAK;QAClC,GAAG3F,QAAQ,CAAC,MAAM,GAAGjc,IAAI,EAAE;UAAEiD,OAAOA,CAAA,EAAI;YAAE4jB,IAAI,CAAC,CAAC,CAAC;UAAC;QAAE,CAAC;MACvD,CAAC,CAAC,CACH,CAAC,CACH;IACH;IAEA,MAAMG,WAAW,GAAG;MAClBC,QAAQ,EAAEA,CAAA,KAAO,CACfxe,6CAAC,CAAC,KAAK,EAAE;QACPpO,GAAG,EAAE,eAAe;QACpBlB,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAEwtB,aAAa,CAAC;QACfzqB,KAAK,EAAE8gB,WAAW,CAACrgB,KAAK,CAACuqB,MAAM,CAAE/J,SAAS,CAACxgB,KAAK,CAACme,KAAK,GAAG,CAAC,CAAE;QAC5D9a,IAAI,EAAE,QAAQ;QACd3F,GAAG,EAAE8iB,SAAS,CAACxgB,KAAK,CAACme,KAAK;QAC1B8L,GAAG,EAAEpJ,cAAc,CAAC7gB,KAAK;QACzBkqB,IAAI,EAAEhC,SAAS;QACfiC,UAAU,EAAEpF,aAAa,CAAC/kB,KAAK,CAACme,KAAK;QACrCiJ,GAAG,EAAE;MACP,CAAC,CAAC,CAAC3W,MAAM,CAACuZ,aAAa,CAAC;QACtBzqB,KAAK,EAAEihB,SAAS,CAACxgB,KAAK,CAACie,IAAI;QAC3B5a,IAAI,EAAE,OAAO;QACb3F,GAAG,EAAE8iB,SAAS,CAACxgB,KAAK,CAACie,IAAI;QACzBgM,GAAG,EAAEnJ,aAAa,CAAC9gB,KAAK;QACxBkqB,IAAI,EAAE/B,QAAQ;QACdgC,UAAU,EAAEpF,aAAa,CAAC/kB,KAAK,CAACie,IAAI;QACpCmJ,GAAG,EAAE;MACP,CAAC,CAAC,CAAC,CAAC,EAEJtb,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE+nB,UAAU,CAACvkB,KAAK,CAACV,GAAG,CAACuiB,GAAG,IAAI/V,6CAAC,CAAC,KAAK,EAAE;QAAEtP,KAAK,EAAE;MAAwB,CAAC,EAAE,CAAEsP,6CAAC,CAAC,KAAK,EAAE+V,GAAG,CAAC,CAAE,CAAC,CAAC,CAAC,EAEhG/V,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC6d,8CAAU,EAAE;QACZzrB,IAAI,EAAE,sBAAsB,GAAG2iB,cAAc,CAAC7gB;MAChD,CAAC,EAAE,MAAM8L,6CAAC,CAAC,KAAK,EAAE;QAChBpO,GAAG,EAAEqoB,aAAa,CAAC/lB,KAAK;QACxBxD,KAAK,EAAE;MACT,CAAC,EAAEgoB,IAAI,CAACxkB,KAAK,CAACV,GAAG,CAACuiB,GAAG,IAAI/V,6CAAC,CAAC,KAAK,EAAE;QAAEtP,KAAK,EAAEqlB,GAAG,CAAChhB;MAAQ,CAAC,EAAE,CACxDghB,GAAG,CAAC+E,EAAE,KAAK,IAAI,GACX9a,6CAAC,CACDge,oDAAI,EAAE;QACJttB,KAAK,EAAEqlB,GAAG,CAACtB,KAAK,KAAK,IAAI,GAAG,eAAe,GAAG,EAAE;QAChDtV,KAAK,EAAE,IAAI;QACX9D,IAAI,EAAE0a,GAAG,CAAC1a,IAAI;QACd0f,UAAU,EAAEhF,GAAG,CAACgF,UAAU;QAC1BzjB,KAAK,EAAEye,GAAG,CAACze,KAAK;QAChBke,SAAS,EAAEO,GAAG,CAACP,SAAS;QACxB/hB,KAAK,EAAEsiB,GAAG,CAAClM,CAAC;QACZ6J,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;QACxB,GAAGsf,QAAQ,CAAC,MAAM,GAAGuC,GAAG,CAAClM,CAAC,EAAE;UAC1BrP,OAAO,EAAEA,CAAA,KAAM;YAAEkkB,UAAU,CAAC3I,GAAG,CAAClM,CAAC,CAAC;UAAC,CAAC;UACpC8U,WAAW,EAAEA,CAAA,KAAM;YAAEC,cAAc,CAAC7I,GAAG,CAAClM,CAAC,CAAC;UAAC;QAC7C,CAAC;MACH,CAAC,EACDkM,GAAG,CAAC8E,KAAK,KAAK,KAAK,GACf,MAAM7a,6CAAC,CAAC,KAAK,EAAE;QAAEtP,KAAK,EAAE,mBAAmB,GAAGqlB,GAAG,CAAC8E;MAAM,CAAC,CAAC,GAC1D,IACN,CAAC,GACC7a,6CAAC,CAAC,KAAK,EAAE,EAAE,GAAG+V,GAAG,CAAClM,CAAC,CAAC,CACzB,CAAC,CAAC,CAAC,CAAC,CACN,CAAC,CACH,CAAC,CACF;MAEFgV,MAAMA,CAAA,EAAI;QACR,MAAMC,WAAW,GAAGpK,SAAS,CAACxgB,KAAK,CAACie,IAAI,KAAKsC,KAAK,CAACvgB,KAAK,CAACie,IAAI;QAC7D,MAAM4M,UAAU,GAAG1M,KAAK,IAAI;UAC1B,OACG0G,MAAM,CAAC7kB,KAAK,KAAK,IAAI,IAAIwgB,SAAS,CAACxgB,KAAK,CAACie,IAAI,KAAK4G,MAAM,CAAC7kB,KAAK,CAACie,IAAI,IAAI4G,MAAM,CAAC7kB,KAAK,CAACme,KAAK,GAAGA,KAAK,IAC9F2G,MAAM,CAAC9kB,KAAK,KAAK,IAAI,IAAIwgB,SAAS,CAACxgB,KAAK,CAACie,IAAI,KAAK6G,MAAM,CAAC9kB,KAAK,CAACie,IAAI,IAAI6G,MAAM,CAAC9kB,KAAK,CAACme,KAAK,GAAGA,KAAM;QAE1G,CAAC;QAED,MAAMhb,OAAO,GAAGkd,WAAW,CAACrgB,KAAK,CAACwjB,WAAW,CAAClkB,GAAG,CAAC,CAAC6e,KAAK,EAAExI,CAAC,KAAK;UAC9D,MAAMmV,MAAM,GAAGtK,SAAS,CAACxgB,KAAK,CAACme,KAAK,KAAKxI,CAAC,GAAG,CAAC;UAE9C,OAAO7J,6CAAC,CAAC,KAAK,EAAE;YACdtP,KAAK,EAAE;UACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;YACNttB,KAAK,EAAEouB,WAAW,KAAK,IAAI,IAAIrK,KAAK,CAACvgB,KAAK,CAACme,KAAK,KAAKxI,CAAC,GAAG,CAAC,GAAG,eAAe,GAAG,IAAI;YACnFxO,IAAI,EAAE2jB,MAAM,KAAK,IAAI;YACrBvrB,KAAK,EAAE4e,KAAK;YACZ0I,UAAU,EAAEiE,MAAM;YAClB1nB,KAAK,EAAE0nB,MAAM,KAAK,IAAI,GAAG1J,aAAa,CAACphB,KAAK,GAAG,IAAI;YACnDshB,SAAS,EAAEwJ,MAAM,KAAK,IAAI,GAAGzJ,iBAAiB,CAACrhB,KAAK,GAAG,IAAI;YAC3Dwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;YACxBkhB,OAAO,EAAE2J,UAAU,CAAClV,CAAC,GAAG,CAAC,CAAC;YAC1B,GAAG2J,QAAQ,CAAC,QAAQ,GAAG3J,CAAC,EAAE;cAAErP,OAAO,EAAEA,CAAA,KAAM;gBAAEoiB,QAAQ,CAAC/S,CAAC,GAAG,CAAC,CAAC;cAAC;YAAE,CAAC;UAClE,CAAC,CAAC,CACH,CAAC;QACJ,CAAC,CAAC;QAEF/W,KAAK,CAAC8f,gBAAgB,KAAK,IAAI,IAAIvb,OAAO,CAAC4nB,OAAO,CAChDjf,6CAAC,CAAC,KAAK,EAAE;UAAEtP,KAAK,EAAE;QAAyB,CAAC,EAAE,CAC5CwtB,aAAa,CAAC;UACZzqB,KAAK,EAAEihB,SAAS,CAACxgB,KAAK,CAACie,IAAI;UAC3B5a,IAAI,EAAE,OAAO;UACb3F,GAAG,EAAE8iB,SAAS,CAACxgB,KAAK,CAACie,IAAI;UACzBgM,GAAG,EAAEnJ,aAAa,CAAC9gB,KAAK;UACxBkqB,IAAI,EAAE/B,QAAQ;UACdgC,UAAU,EAAEpF,aAAa,CAAC/kB,KAAK,CAACie,IAAI;UACpCmJ,GAAG,EAAE;QACP,CAAC,CAAC,CACH,CACH,CAAC;QAED,OAAOtb,6CAAC,CAAC,KAAK,EAAE;UACdpO,GAAG,EAAE,aAAa;UAClBlB,KAAK,EAAE;QACT,CAAC,EAAE2G,OAAO,CAAC;MACb,CAAC;MAED6nB,KAAKA,CAAA,EAAI;QACP,MACEC,KAAK,GAAGlK,SAAS,CAAC/gB,KAAK;UACvBkrB,IAAI,GAAGD,KAAK,GAAGxN,aAAa;UAC5B0N,KAAK,GAAG,EAAE;QAEZ,MAAMN,UAAU,GAAG5M,IAAI,IAAI;UACzB,OACG4G,MAAM,CAAC7kB,KAAK,KAAK,IAAI,IAAI6kB,MAAM,CAAC7kB,KAAK,CAACie,IAAI,GAAGA,IAAI,IAC9C6G,MAAM,CAAC9kB,KAAK,KAAK,IAAI,IAAI8kB,MAAM,CAAC9kB,KAAK,CAACie,IAAI,GAAGA,IAAK;QAE1D,CAAC;QAED,KAAK,IAAItI,CAAC,GAAGsV,KAAK,EAAEtV,CAAC,IAAIuV,IAAI,EAAEvV,CAAC,EAAE,EAAE;UAClC,MAAMmV,MAAM,GAAGtK,SAAS,CAACxgB,KAAK,CAACie,IAAI,KAAKtI,CAAC;UAEzCwV,KAAK,CAAC5oB,IAAI,CACRuJ,6CAAC,CAAC,KAAK,EAAE;YACPtP,KAAK,EAAE;UACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;YACNpsB,GAAG,EAAE,IAAI,GAAGiY,CAAC;YACbnZ,KAAK,EAAE+jB,KAAK,CAACvgB,KAAK,CAACie,IAAI,KAAKtI,CAAC,GAAG,eAAe,GAAG,IAAI;YACtDxO,IAAI,EAAE,CAAC2jB,MAAM;YACbvrB,KAAK,EAAEoW,CAAC;YACR1K,KAAK,EAAE,IAAI;YACX4b,UAAU,EAAEiE,MAAM;YAClB1nB,KAAK,EAAE0nB,MAAM,KAAK,IAAI,GAAG1J,aAAa,CAACphB,KAAK,GAAG,IAAI;YACnDshB,SAAS,EAAEwJ,MAAM,KAAK,IAAI,GAAGzJ,iBAAiB,CAACrhB,KAAK,GAAG,IAAI;YAC3Dwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;YACxBkhB,OAAO,EAAE2J,UAAU,CAAClV,CAAC,CAAC;YACtB,GAAG2J,QAAQ,CAAC,KAAK,GAAG3J,CAAC,EAAE;cAAErP,OAAO,EAAEA,CAAA,KAAM;gBAAEmiB,OAAO,CAAC9S,CAAC,CAAC;cAAC;YAAE,CAAC;UAC1D,CAAC,CAAC,CACH,CACH,CAAC;QACH;QAEA,OAAO7J,6CAAC,CAAC,KAAK,EAAE;UACdtP,KAAK,EAAE;QACT,CAAC,EAAE,CACDsP,6CAAC,CAAC,KAAK,EAAE;UACPtP,KAAK,EAAE;QACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;UACNC,KAAK,EAAE,IAAI;UACX9e,KAAK,EAAE,IAAI;UACX9D,IAAI,EAAE,IAAI;UACVT,IAAI,EAAEud,SAAS,CAACjkB,KAAK,CAAE,CAAC,CAAE;UAC1Bwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;UACxBkhB,OAAO,EAAE2J,UAAU,CAACI,KAAK,CAAC;UAC1B,GAAG3L,QAAQ,CAAC,IAAI,EAAE;YAAEhZ,OAAO,EAAEA,CAAA,KAAM;cAAEya,SAAS,CAAC/gB,KAAK,IAAIyd,aAAa;YAAC;UAAE,CAAC;QAC3E,CAAC,CAAC,CACH,CAAC,EAEF3R,6CAAC,CAAC,KAAK,EAAE;UACPtP,KAAK,EAAE;QACT,CAAC,EAAE2uB,KAAK,CAAC,EAETrf,6CAAC,CAAC,KAAK,EAAE;UACPtP,KAAK,EAAE;QACT,CAAC,EAAE,CACDsP,6CAAC,CAACge,oDAAI,EAAE;UACNC,KAAK,EAAE,IAAI;UACX9e,KAAK,EAAE,IAAI;UACX9D,IAAI,EAAE,IAAI;UACVT,IAAI,EAAEud,SAAS,CAACjkB,KAAK,CAAE,CAAC,CAAE;UAC1Bwf,QAAQ,EAAEA,QAAQ,CAACxf,KAAK;UACxBkhB,OAAO,EAAE2J,UAAU,CAACK,IAAI,CAAC;UACzB,GAAG5L,QAAQ,CAAC,IAAI,EAAE;YAAEhZ,OAAO,EAAEA,CAAA,KAAM;cAAEya,SAAS,CAAC/gB,KAAK,IAAIyd,aAAa;YAAC;UAAE,CAAC;QAC3E,CAAC,CAAC,CACH,CAAC,CACH,CAAC;MACJ;IACF,CAAC;IAED,SAAS+M,UAAUA,CAAEY,QAAQ,EAAE;MAC7B,MAAMvJ,GAAG,GAAG;QAAE,GAAGrB,SAAS,CAACxgB,KAAK;QAAE6hB,GAAG,EAAEuJ;MAAS,CAAC;MAEjD,IAAIxsB,KAAK,CAACsO,KAAK,KAAK,KAAK,EAAE;QACzByb,UAAU,CAAC9G,GAAG,EAAEkE,aAAa,CAAC/lB,KAAK,CAAC;QACpC;MACF;MAEA,IAAIghB,SAAS,CAAChhB,KAAK,KAAK,IAAI,EAAE;QAC5B,MAAMqrB,QAAQ,GAAG7G,IAAI,CAACxkB,KAAK,CAACqF,IAAI,CAACwc,GAAG,IAAIA,GAAG,CAAC6E,IAAI,KAAK,IAAI,IAAI7E,GAAG,CAAClM,CAAC,KAAKyV,QAAQ,CAAC;QAEhF,IAAIxsB,KAAK,CAACogB,OAAO,KAAK,IAAI,IAAIqM,QAAQ,CAACne,KAAK,KAAK,KAAK,CAAC,EAAE;UACvD2b,eAAe,CAAC;YAAEzmB,MAAM,EAAEyf,GAAG;YAAExN,IAAI,EAAEgX,QAAQ,CAACne,KAAK,CAACmH,IAAI;YAAEpW,EAAE,EAAEotB,QAAQ,CAACne,KAAK,CAACjP;UAAG,CAAC,CAAC;UAClF;QACF;QAEA,IAAIotB,QAAQ,CAAC/b,QAAQ,KAAK,IAAI,EAAE;UAC9BuZ,eAAe,CAAChH,GAAG,CAAC;UACpB;QACF;QAEA,MAAM6D,QAAQ,GAAGjD,mEAAU,CAACZ,GAAG,CAAC;QAEhCb,SAAS,CAAChhB,KAAK,GAAG;UAChBqjB,IAAI,EAAExB,GAAG;UACT6D,QAAQ;UACRC,KAAK,EAAE9D,GAAG;UACV+D,SAAS,EAAEF;QACb,CAAC;QAED9jB,IAAI,CAAC,YAAY,EAAEknB,YAAY,CAACjH,GAAG,CAAC,CAAC;MACvC,CAAC,MACI;QACH,MACE6D,QAAQ,GAAG1E,SAAS,CAAChhB,KAAK,CAAC0lB,QAAQ;UACnCE,SAAS,GAAGnD,mEAAU,CAACZ,GAAG,CAAC;UAC3BrR,OAAO,GAAGkV,QAAQ,IAAIE,SAAS,GAC3B;YAAEvR,IAAI,EAAE2M,SAAS,CAAChhB,KAAK,CAACqjB,IAAI;YAAEplB,EAAE,EAAE4jB;UAAI,CAAC,GACvC;YAAExN,IAAI,EAAEwN,GAAG;YAAE5jB,EAAE,EAAE+iB,SAAS,CAAChhB,KAAK,CAACqjB;UAAK,CAAC;QAE7CrC,SAAS,CAAChhB,KAAK,GAAG,IAAI;QACtB6nB,UAAU,CAACnC,QAAQ,KAAKE,SAAS,GAAG/D,GAAG,GAAG;UAAEzf,MAAM,EAAEyf,GAAG;UAAE,GAAGrR;QAAQ,CAAC,CAAC;QAEtE5O,IAAI,CAAC,UAAU,EAAE;UACfyS,IAAI,EAAEyU,YAAY,CAACtY,OAAO,CAAC6D,IAAI,CAAC;UAChCpW,EAAE,EAAE6qB,YAAY,CAACtY,OAAO,CAACvS,EAAE;QAC7B,CAAC,CAAC;MACJ;IACF;IAEA,SAASysB,cAAcA,CAAEU,QAAQ,EAAE;MACjC,IAAIpK,SAAS,CAAChhB,KAAK,KAAK,IAAI,EAAE;QAC5B,MAAM2lB,KAAK,GAAG;UAAE,GAAGnF,SAAS,CAACxgB,KAAK;UAAE6hB,GAAG,EAAEuJ;QAAS,CAAC;QAEnDhsB,MAAM,CAACsa,MAAM,CAACsH,SAAS,CAAChhB,KAAK,EAAE;UAC7B2lB,KAAK;UACLC,SAAS,EAAEnD,mEAAU,CAACkD,KAAK;QAC7B,CAAC,CAAC;MACJ;IACF;;IAEA;IACAvmB,MAAM,CAACsa,MAAM,CAAC7N,KAAK,EAAE;MACnB8b,QAAQ;MAAEI,OAAO;MAAEE,cAAc;MAAEH,aAAa;MAAEM;IACpD,CAAC,CAAC;IAEF,OAAO,MAAM;MACX,MAAMjlB,OAAO,GAAG,CACd2I,6CAAC,CAAC,KAAK,EAAE;QACPtP,KAAK,EAAE;MACT,CAAC,EAAE,CACDsP,6CAAC,CAAC6d,8CAAU,EAAE;QACZzrB,IAAI,EAAE;MACR,CAAC,EAAEmsB,WAAW,CAAE3J,IAAI,CAAC1gB,KAAK,CAAE,CAAC,CAC9B,CAAC,CACH;MAED,MAAMsrB,GAAG,GAAGvf,sEAAK,CAACP,KAAK,CAACjI,OAAO,CAAC;MAChC+nB,GAAG,KAAK,KAAK,CAAC,IAAInoB,OAAO,CAACZ,IAAI,CAC5BuJ,6CAAC,CAAC,KAAK,EAAE;QAAEtP,KAAK,EAAE;MAAkB,CAAC,EAAE8uB,GAAG,CAC5C,CAAC;MAED,IAAI1sB,KAAK,CAACV,IAAI,KAAK,KAAK,CAAC,IAAIU,KAAK,CAACsiB,OAAO,KAAK,IAAI,EAAE;QACnDlB,eAAe,CAAC7c,OAAO,EAAE,MAAM,CAAC;MAClC;MAEA,OAAO2I,6CAAC,CAAC,KAAK,EAAE;QACdtP,KAAK,EAAEqE,OAAO,CAACb,KAAK;QACpB,GAAGqnB,UAAU,CAACrnB;MAChB,CAAC,EAAE,CACD0pB,SAAS,CAAC,CAAC,EAEX5d,6CAAC,CAAC,KAAK,EAAE;QACPhK,GAAG,EAAEoe,aAAa;QAClB1jB,KAAK,EAAE,yBAAyB;QAChCgjB,QAAQ,EAAE,CAAC;MACb,CAAC,EAAErc,OAAO,CAAC,CACZ,CAAC;IACJ,CAAC;EACH;AACF,CAAC,CAAC,E;;;;;;;;;;;;ACt8CF;AAAA;AAAA;AAAA;AAAA,wCAA2lB,C;;;;;;;;;;;;ACA3lB;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACqCA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAwF;AACpB;AAED;AAC7B;AACH;AAAD;AAElC,MAAMsY,gBAAe,GAAIpd,wFAAuB,CAAC,UAAU,CAAC;AAE7CwM,0HAAe,CAAC;EAC7B3M,IAAI,EAAE,0BAA0B;EAEhCwJ,UAAU,EAAE;IACVsB,4FAAiB;IACjBuiB,gHAA2BA;EAC7B,CAAC;EAED9nB,KAAKA,CAAA,EAAG;IACN,MAAMsB,EAAC,GAAIC,oFAAS,CAAC,CAAC;IACtB,MAAMC,QAAO,GAAIF,EAAE,CAACG,MAAM,CAAChB,KAAI,GAAI,GAAG;IAEtC,MAAM;MAAEsnB;IAAmB,IAAI/P,gBAAgB,CAACld,UAAU,CAAC,CACzD,oBAAoB,CACrB,CAAC;IAEF,OAAO;MACL0G,QAAQ;MACRumB,kBAAkB;MAClBha,QAAQ,EAAEA,CAAA,KAAM7L,MAAM,CAACC,IAAI,CAAE,WAAU,EAAE,QAAQ;IACnD,CAAC;EACH;AACF,CAAC,CAAC,E;;;;;;;;;;;;;;;;;;EClEOpJ,KAAK,EAAC;AAAyD;;EAmB/DA,KAAK,EAAC;AAAqB;;;;;;;;;;kEApBlCC,8DAAA,CAwEM;IAxEAD,KAAK,EAAAE,0DAAA;MAAA+uB,IAAA,EAAU9uB,MAAA,CAAA+uB;IAAM,GAAU,uCAAuC;MAC1EjuB,8DAAA,CAkBM,OAlBNJ,UAkBM,GAjBJR,uDAAA,CAEegZ,uBAAA;IAFDrZ,KAAK,EAAC;EAAgC;iEAClD,MAAwB,C,wHAArB0J,MAAA,CAAAylB,SAAS,CAACC,QAAQ,IAAG,IAC1B,K;;MACA/uB,uDAAA,CAMEgvB,qBAAA;IALCvlB,OAAK,EAAE3J,MAAA,CAAAmvB,cAAc;gBACbnvB,MAAA,CAAA+uB,MAAM;+DAAN/uB,MAAA,CAAA+uB,MAAM,GAAAllB,MAAA;IACfpD,KAAK,EAAC,QAAQ;IACd,YAAU,EAAV,EAAU;IACV+P,IAAI,EAAC;0CAEPtW,uDAAA,CAMegZ,uBAAA;IALZrZ,KAAK,EAAAE,0DAAA;MAAA,mCAAuCwJ,MAAA,CAAAylB,SAAS,CAACvhB;IAAG,GAEpD,aAAa;IADlB9D,OAAK,EAAE3J,MAAA,CAAAovB;;iEAGR,MAA2B,C,wHAAxB7lB,MAAA,CAAAylB,SAAS,CAAC3oB,WAAW,M;;iCAG5BvF,8DAAA,CA4BM,OA5BNI,UA4BM,GA1BIqI,MAAA,CAAAylB,SAAS,CAACK,SAAS,I,yDAD3B5lB,uDAAA,CAOEC,iBAAA;;IALCC,OAAK,EAAE3J,MAAA,CAAAsvB,SAAS;IACjBzvB,KAAK,EAAC,wBAAwB;IAC9B2W,IAAI,EAAC,OAAO;IACZ/P,KAAK,EAAC,KAAK;IACXlF,IAAI,EAAC;wGAGCgI,MAAA,CAAAylB,SAAS,CAACO,gBAAgB,I,yDADlC9lB,uDAAA,CAUSC,iBAAA;;IARP7J,KAAK,EAAC,wBAAwB;IAC9B2W,IAAI,EAAC,OAAO;IACZ/P,KAAK,EAAC,UAAU;IAChBlF,IAAI,EAAC;;iEAEL,MAEY,CAFZrB,uDAAA,CAEYsvB,oBAAA;MAFA3D,MAAM,EAAE,QAAQ;MAAEhsB,KAAK,EAAC;;mEAClC,MAAgC,C,wHAA7B0J,MAAA,CAAAylB,SAAS,CAACO,gBAAgB,M;;;;kFAIzBvvB,MAAA,CAAAyvB,MAAM,I,yDADdhmB,uDAAA,CAOEC,iBAAA;;IALCC,OAAK,EAAAC,MAAA,QAAAA,MAAA,MAAAC,MAAA,IAAE7J,MAAA,CAAA0vB,QAAQ,IAAI1vB,MAAA,CAAA0vB,QAAQ;IAC5B7vB,KAAK,EAAC,wBAAwB;IAC9B2W,IAAI,EAAC,OAAO;IACZ/P,KAAK,EAAC,QAAQ;IACdlF,IAAI,EAAC;oFAGOvB,MAAA,CAAAyvB,MAAM,I,yDAAtBhmB,uDAAA,CAsBWO,mBAAA;;gBAtBsBhK,MAAA,CAAA0vB,QAAQ;+DAAR1vB,MAAA,CAAA0vB,QAAQ,GAAA7lB,MAAA;IAAE8lB,QAAQ,EAAC;;iEAClD,MAoBM,CApBN7uB,8DAAA,CAoBM;MAnBHkD,KAAK,EAAA4rB,0DAAA,CAAEvvB,IAAA,CAAA+H,EAAE,CAACwS,QAAQ,CAACC,EAAE,CAACgV,OAAO;MAC9BhwB,KAAK,EAAC;mEAENK,uDAAA,CAQE4J,gBAAA;MAPAjK,KAAK,EAAC,UAAU;MAChB4G,KAAK,EAAC,OAAO;MACbsD,IAAI,EAAC,OAAO;MACZS,IAAI,EAAJ,EAAI;MACJ4iB,KAAK,EAAL,EAAK;MACL9e,KAAK,EAAL;gDAGFpO,uDAAA,CAMQ4vB,gBAAA;MALNjwB,KAAK,EAAC,gBAAgB;MACrB8J,OAAK,EAAE3J,MAAA,CAAAovB,SAAS;MACjBW,GAAG,EAAC,SAAS;MACZ7a,GAAG,EAAElV,MAAA,CAAAyvB;;;;;;;;;;;;;;;;ACpEhB;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;AvCyCA;AAAA;AAAA;AAAA;AAAA;AAAA;AACqE;AACL;AACR;AACN;AAEnC;EACbluB,IAAI,EAAE,qBAAqB;EAE3BwJ,UAAU,EAAE;IAAEsB,iFAAiB;IAAE2jB,yFAAW;IAAEC,2EAAcA;EAAC,CAAC;EAE9DhuB,KAAK,EAAE;IACL4W,SAAS,EAAE9W;EACb,CAAC;EAED+E,KAAKA,CAAA,EAAG;IACN,SAASuS,QAAQA,CAAC9S,IAAI,EAAE;MACtB,IAAI,CAACA,IAAI,EAAE;QACTiS,OAAO,CAACC,KAAK,CAAC,sCAAsC,CAAC;QACrDyX,0EAAW,CAAC,sCAAsC,CAAC;QACnD;MACF;;MAEA;MACAC,SAAS,CAACC,SAAQ,CACfC,SAAS,CAAC9pB,IAAI,EACd0F,IAAI,CAAC,MAAM;QACV2U,4EAAa,CAAC,8BAA8B,CAAC;MAC/C,CAAC,EACAtI,KAAK,CAAEC,GAAG,IAAK;QACdC,OAAO,CAACC,KAAK,CAAC,2BAA2B,EAAEF,GAAG,CAAC;QAC/C2X,0EAAW,CAAC,2BAA2B,CAAC;MAC1C,CAAC,CAAC;IACN;IAEA,OAAO;MAAE7W;IAAS,CAAC;EACrB;AACF,CAAC,E;;;;;;;;;;;;;;;;;;EwCrESxZ,KAAK,EAAC;AAAqB;;EACzBA,KAAK,EAAC;AAAgC;;EACpCA,KAAK,EAAC;AAA4B;;EAIlCA,KAAK,EAAC;AAAS;;;;;kEAd3BC,8DAAA,CA+BK;IA9BHD,KAAK,EAAAE,0DAAA,EAAC,+BAA+B;gBACXwJ,MAAA,CAAAtI,QAAQ;yCAA2CsI,MAAA,CAAA9I,QAAQ;SAAW8I,MAAA,CAAA+mB;;MAMhGxvB,8DAAA,CAsBO,QAtBPJ,UAsBO,GArBLI,8DAAA,CAmBO,QAnBPI,UAmBO,GAlBLJ,8DAAA,CAEO,QAFPqU,UAEO,EAAAU,2DAAA,CADFxV,IAAA,CAAAC,EAAE,CAACiJ,MAAA,CAAAnJ,KAAK,QAGbU,8DAAA,CAaO,QAbPwU,UAaO,GARG/L,MAAA,CAAA8lB,SAAS,I,yDAJjB5lB,uDAAA,CAUQK,gBAAA;;IATLymB,MAAM,EAAE,KAAK;IACd/lB,IAAI,EAAJ,EAAI;IACJ4iB,KAAK,EAAL,EAAK;IAEJzjB,OAAK,EAAE3J,MAAA,CAAAwwB,cAAc;IACtBzmB,IAAI,EAAC,QAAQ;IACbtD,KAAK,EAAC;;iEAEN,MAAiE,CAAjEvG,uDAAA,CAAiEuwB,wBAAA;MAAjD,eAAa,EAAEzwB,MAAA,CAAA0wB,aAAa;MAAGjjB,GAAG,EAAElE,MAAA,CAAA8lB;;;wBAElC9lB,MAAA,CAAAhJ,OAAO,I,yDAA3BkJ,uDAAA,CAA0DknB,kBAAA;;IAA5BC,eAAe,EAAErnB,MAAA,CAAAhJ;oHAGnDswB,sDAAA,CAAaxwB,IAAA,CAAAywB,MAAA,iBAAAxZ,SAAA,Q;;;;;;;;;;;;AC9BnB,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC6CwF;AACpB;AACD;AAEhC;AAAA;;;;;;;;;;IAEnC,MAAMuH,aAAa,GAAGnd,wFAAuB,CAAC,MAAM,CAAC;IASrD,MAAM0G,EAAE,GAAGC,oFAAS,CAAC,CAAC;IAEtB,MAAM;MAAE0oB;IAAiB,CAAC,GAAGlS,aAAa,CAACjd,UAAU,CAAC,CAAC,kBAAkB,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC9D3E,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA,uC;;;;;;;;;;;;;;;;;;;;;;ACuCgG;AACJ;AACtB;AACJ;AACF;AACrB;AAE5BsM,0HAAe,CAAC;EAC7B3M,IAAI,EAAE,6BAA6B;EAEnCwJ,UAAU,EAAE;IACV;IACAimB,yFAAqB;IACrB;IACAC,+FAAwB;IACxB;IACAC,2FAAsB;IACtB;IACAC,yHAAgC;IAChC;IACAC,qHAA8BA;EAChC,CAAC;EAEDnvB,KAAK,EAAE;IACLovB,QAAQ,EAAE;MACR3qB,IAAI,EAAEC,MAAM;MACZlD,QAAQ,EAAE;IACZ,CAAC;IACDmE,IAAI,EAAE;MACJlB,IAAI,EAAE3E,KAAK;MACX0B,QAAQ,EAAE;IACZ,CAAC;IACD6tB,SAAS,EAAE;MACT5qB,IAAI,EAAEkO,MAAM;MACZhO,OAAO,EAAE;IACX,CAAC;IACD2qB,SAAS,EAAE;MACT7qB,IAAI,EAAEC,MAAM;MACZC,OAAO,EAAE;IACX,CAAC;IACD4qB,YAAY,EAAE;MACZ9qB,IAAI,EAAE6H,OAAO;MACb3H,OAAO,EAAE;IACX;EACF,CAAC;EAEDE,KAAKA,CAAA,EAAG;IACN,MAAM2qB,UAAS,GAAIA,CAACC,KAAK,EAAEJ,SAAS,KAAK;MACvC,MAAMK,YAAW,GAAI,EAAE;MACvB,IAAIC,YAAW,GAAI,EAAE;MAErB,KAAK,IAAI5Y,CAAA,GAAI,CAAC,EAAEA,CAAA,GAAI0Y,KAAK,CAACltB,MAAM,EAAEwU,CAAC,EAAE,EAAE;QACrC4Y,YAAY,CAAChsB,IAAI,CAAC8rB,KAAK,CAAC1Y,CAAC,CAAC,CAAC;QAE3B,IAAI4Y,YAAY,CAACptB,MAAK,KAAM8sB,SAAQ,IAAKtY,CAAA,KAAM0Y,KAAK,CAACltB,MAAK,GAAI,CAAC,EAAE;UAC/DmtB,YAAY,CAAC/rB,IAAI,CAAC;YAAE8rB,KAAK,EAAEE;UAAa,CAAC,CAAC;UAC1CA,YAAW,GAAI,EAAE;QACnB;MACF;MAEA,OAAOD,YAAY;IACrB,CAAC;IAED,OAAO;MACLjY,KAAK,EAAEvU,+CAAG,CAAC,CAAC,CAAC;MACbssB;IACF,CAAC;EACH;AACF,CAAC,CAAC,E;;;;;;;;;;;;AC5EF;AAAA;AAAA;AAAA;AAAmE;AACD;AACxC;AAE1B,MAAM;EAAE3mB,UAAU;EAAElJ;AAAW,IAAIF,wFAAuB,CAAC,MAAM,CAAC;AAEnD;EACbH,IAAI,EAAE,QAAQ;EAEduF,KAAKA,CAAA,EAAG;IACN,MAAM;MAAE+qB,WAAW;MAAEC;IAAc,IAAIhnB,UAAU,CAAC,CAChD,aAAa,EACb,eAAe,CAChB,CAAC;IACF,MAAM4kB,QAAO,GAAIvqB,+CAAG,CAAC,KAAK,CAAC;MACzB;QAAE4sB,OAAO;QAAEC;MAAW,IAAIpwB,UAAU,CAAC;QACnCmwB,OAAO,EAAE,WAAW;QACpBC,UAAU,EAAE;MACd,CAAC,CAAC;IAEJH,WAAW,CAAC,CAAC,CAAC5lB,IAAI,CAAC,MAAM;MACvB,IAAI8lB,OAAO,CAAC1uB,KAAI,IAAK2uB,UAAU,CAAC3uB,KAAI,KAAM,KAAK,EAAEqsB,QAAQ,CAACrsB,KAAI,GAAI,IAAI,MACjEqsB,QAAQ,CAACrsB,KAAI,GAAI,KAAK;IAC7B,CAAC,CAAC;IAEF,MAAM4uB,OAAM,GAAIA,CAAA,KACdH,aAAa,CAAC,EACX7lB,IAAI,CAAC,MAAMimB,yEAAU,CAAC,gBAAgB,CAAC,EACvC5Z,KAAK,CAAC,MAAM4X,0EAAW,CAAC,qCAAqC,CAAC,CAAC;IAEpE,OAAO;MACLR,QAAQ;MACRqC,OAAO;MACPE;IACF,CAAC;EACH;AACF,CAAC,E;;;;;;;;;;;;ACnED;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAA2F;AACtB;AACL;;AAEyB;;AAE6C;AACtI,iCAAiC,+IAAe,CAAC,uFAAM,aAAa,wGAAM;;AAE3D,0EAAW;AACoC;AACN;AACH;AACiB;AACjB;AACiB;AACjB;AACkD;AACvG,sGAAQ,CAAC,uFAAM,iBAAiB,wFAAO,CAAC,kFAAK,CAAC,+EAAI,CAAC,gGAAY,CAAC,+EAAI,CAAC,gGAAY,CAAC,gFAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACkEzC;AACoB;AACD;AAC9B;AACmB;AACnB;AAAA;AACG;;;;IAEtC,MAAM;MAAEE,OAAO;MAAEC;IAAW,CAAC,GAAGxwB,2EAAU,CAAC;MACzCuwB,OAAO,EAAE,iBAAiB;MAC1BC,UAAU,EAAE;IACd,CAAC,CAAC;IAEF,MAAM;MAAEC;IAAqB,CAAC,GAAGvnB,2EAAU,CAAC;MAC1CunB,oBAAoB,EAAE;IACxB,CAAC,CAAC;IAEF,MAAM;MAAEhjB;IAAE,CAAC,GAAGijB,wDAAO,CAAC,CAAC;IACvB,MAAMlqB,EAAE,GAAGC,oFAAS,CAAC,CAAC;IAEtB,MAAMkqB,UAAU,GAAGptB,+CAAG,CAAC,IAAI,CAAC;IAC5B,MAAMqtB,WAAW,GAAGrtB,+CAAG,CAAC,IAAI,CAAC;IAC7B,MAAMstB,YAAY,GAAGttB,+CAAG,CAAC,EAAE,CAAC;IAC5B,MAAMutB,QAAQ,GAAGvtB,+CAAG,CAAC,KAAK,CAAC;IAE3B,MAAMgL,OAAO,GAAGC,oDAAQ,CAAC,CACvB;MACExN,KAAK,EAAEyM,CAAC,CAAC,aAAa,CAAC;MACvBhM,KAAK,EAAE;IACT,CAAC,EACD;MACET,KAAK,EAAEyM,CAAC,CAAC,iBAAiB,CAAC;MAC3BhM,KAAK,EAAE;IACT,CAAC,EACD;MACET,KAAK,EAAEyM,CAAC,CAAC,WAAW,CAAC;MACrBhM,KAAK,EAAE;IACT,CAAC,EACD;MACET,KAAK,EAAEyM,CAAC,CAAC,aAAa,CAAC;MACvBhM,KAAK,EAAE;IACT,CAAC,EACD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAACV,GAAG,CAAE9B,CAAC,KAAM;MACzB+B,KAAK,EAAEyM,CAAC,CAAC,qBAAqB,EAAE;QAAExO;MAAE,CAAC,CAAC;MACtCwC,KAAK,EAAExC;IACT,CAAC,CAAC,CAAC,EACH;MACE+B,KAAK,EAAE,eAAe;MACtBS,KAAK,EAAE;IACT,CAAC,CACF,CAAC;IAEF,MAAMsvB,iBAAiB,GAAIC,cAAc,IAAK;MAC5C,IAAIA,cAAc,CAACvvB,KAAK,KAAK,eAAe,EAAE;QAC5C,OAAO+E,EAAE,CAACyqB,MAAM,CAAC;UACfC,SAAS,EAAEnF,qDAAQ;UACnBoF,cAAc,EAAE;YACdC,mBAAmB,EAAGC,SAAS,IAAK;cAClC,IAAIA,SAAS,KAAK,IAAI,EAAE;gBACtB,IAAI,EAACR,YAAY,aAAZA,YAAY,eAAZA,YAAY,CAAEpvB,KAAK,GAAEmvB,WAAW,CAACnvB,KAAK,GAAG,IAAI,CAAC,KAEjDmvB,WAAW,CAACnvB,KAAK,GAAG8M,OAAO,CAACzH,IAAI,CAC7B2B,MAAM,IAAKA,MAAM,CAAChH,KAAK,KAAKovB,YAAY,CAACpvB,KAC5C,CAAC;gBAEH;cACF;cAEAqvB,QAAQ,CAACrvB,KAAK,GAAG,IAAI;cACrBgvB,oBAAoB,CAACa,UAAU,CAACD,SAAS,CAAC,CAAC,CAACjlB,OAAO,CAAC,MAAM;gBACxD0kB,QAAQ,CAACrvB,KAAK,GAAG,KAAK;cACxB,CAAC,CAAC;cAEFkvB,UAAU,CAAClvB,KAAK,GAAG4vB,SAAS;YAC9B;UACF;QACF,CAAC,CAAC;MACJ;IACF,CAAC;IAED,MAAME,QAAQ,GAAIC,MAAM,IAAK;MAC3B,IAAIA,MAAM,EAAE;QACV,MAAMC,IAAI,GAAG,IAAIrjB,IAAI,CAAC,CAAC;QACvB,MAAMsjB,GAAG,GAAGD,IAAI,CAACE,WAAW,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC,CAAC5uB,KAAK,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM6uB,GAAG,GAAI,GAAEJ,IAAI,CAACK,QAAQ,CAAC,CAAC,GAAG,CAAE,EAAC,CAACC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QACrD,MAAMC,GAAG,GAAI,GAAEP,IAAI,CAACnjB,OAAO,CAAC,CAAE,EAAC,CAACyjB,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC;QAChD,MAAME,aAAa,GAAI,GAAEP,GAAI,IAAGG,GAAI,IAAGG,GAAI,EAAC;QAE5C,MAAME,UAAU,GAAGV,MAAM,CAACW,cAAc,IAAIX,MAAM,CAACY,gBAAgB;QAEnE,OAAOF,UAAU,IAAIV,MAAM,CAACW,cAAc,IAAIF,aAAa,GACvDxkB,CAAC,CAAC,aAAa,CAAC,GAChBykB,UAAU,IAAIV,MAAM,CAACW,cAAc,IAAIF,aAAa,GACnD,SAAQ9N,sFAAU,CAACqN,MAAM,CAACY,gBAAgB,CAAE,EAAC,GAC7C,MAAKjO,sFAAU,CAACqN,MAAM,CAACY,gBAAgB,CAAE,QAAOjO,sFAAU,CACzDqN,MAAM,CAACW,cACT,CAAE,EAAC;MACT;IACF,CAAC;IAED,MAAMb,UAAU,GAAIe,eAAe,IAAK;MACtC,IAAIA,eAAe,IAAI,IAAI,EAAE,OAAO,CAAC,CAAC;MAEtC,MAAMC,WAAW,GAAG;QAClBC,UAAU,EAAEF,eAAe,CAACD,gBAAgB;QAC5CI,QAAQ,EAAEH,eAAe,CAACF;MAC5B,CAAC;MAED,MAAMM,YAAY,GAAG;QACnBC,QAAQ,EAAEL,eAAe,CAACD,gBAAgB;QAC1CO,MAAM,EAAEN,eAAe,CAACF;MAC1B,CAAC;MAED,OAAO;QAAEG,WAAW;QAAEG;MAAa,CAAC;IACtC,CAAC;IAEDjvB,iDAAK,CAACotB,WAAW,EAAE,CAACgC,QAAQ,EAAEC,QAAQ,KAAK;MACzC,IAAID,QAAQ,IAAIA,QAAQ,CAACnxB,KAAK,KAAK,eAAe,EAAE;QAClDovB,YAAY,CAACpvB,KAAK,GAAGoxB,QAAQ,GAAGA,QAAQ,CAACpxB,KAAK,GAAG,IAAI;QAErD;MACF;MAEAkvB,UAAU,CAAClvB,KAAK,GACdmxB,QAAQ,IAAI,IAAI,GACZA,QAAQ,CAACnxB,KAAK,IAAI,eAAe,IAAImxB,QAAQ,CAACnxB,KAAK,IAAI,YAAY,GACjEqxB,gGAAoB,CAACF,QAAQ,CAACnxB,KAAK,CAAC,GACpCsxB,wFAAY,CAACH,QAAQ,CAACnxB,KAAK,CAAC,GAC9B,IAAI;MAEVqvB,QAAQ,CAACrvB,KAAK,GAAG,IAAI;MAErBgvB,oBAAoB,CAACa,UAAU,CAACX,UAAU,CAAClvB,KAAK,CAAC,CAAC,CAAC2K,OAAO,CAAC,MAAM;QAC/D0kB,QAAQ,CAACrvB,KAAK,GAAG,KAAK;MACxB,CAAC,CAAC;IACJ,CAAC,CAAC;IAEF8D,qDAAS,CAAC,MAAMkrB,oBAAoB,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC7NvC,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA,wCAAikB,C;;;;;;;;;;;ACAjkB,uC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACqJkE;AACI;AACR;AAClB;AACD;;;;IAE3C,MAAM;MACJ/kB,MAAM;MAAEsnB,UAAU;MAAEC,sBAAsB;MAAEpU,UAAU;MAAE5G,OAAO;MAAEuY;IACnE,CAAC,GAAGxwB,2EAAU,CAAC;MACb0L,MAAM,EAAE,mBAAmB;MAC3BsnB,UAAU,EAAE,iBAAiB;MAC7BC,sBAAsB,EAAE,6BAA6B;MACrDpU,UAAU,EAAE,iBAAiB;MAC7B5G,OAAO,EAAE,cAAc;MACvBuY,UAAU,EAAE;IACd,CAAC,CAAC;IAEF,MAAM;MAAE0C,oBAAoB;MAAEC;IAAwB,CAAC,GAAGjqB,2EAAU,CAAC;MACnEgqB,oBAAoB,EAAE,2BAA2B;MACjDC,uBAAuB,EAAE;IAC3B,CAAC,CAAC;IAEF,MAAMC,UAAU,GAAG7vB,+CAAG,CAAC,KAAK,CAAC;IAC7B,MAAM8vB,cAAc,GAAG9vB,+CAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,MAAM+vB,sBAAsB,GAAG/vB,+CAAG,CAAC,IAAI,CAAC;IAExC,MAAMgwB,YAAY,GAAG9yB,oDAAQ,CAAC;MAAA,IAAA+yB,iBAAA;MAAA,QAAAA,iBAAA,GAAMR,UAAU,CAACvxB,KAAK,cAAA+xB,iBAAA,uBAAhBA,iBAAA,CAAkB/uB,WAAW;IAAA,EAAC;;IAElE;AACA;AACA;IACA,MAAMgvB,kCAAkC,GAAGhzB,oDAAQ,CAAC,MAAM;MACxD,MAAMizB,OAAO,GAAGJ,sBAAsB,CAAC7xB,KAAK;MAE5C,OACE,CAAAiyB,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEC,QAAQ,MACjBD,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,UAAU,KACnB,EAACF,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEG,UAAU,KACpB,EAACH,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEI,iBAAiB,KAC3B,EAACJ,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEK,UAAU;IAExB,CAAC,CAAC;IAEF,MAAMC,aAAa,GAAGvzB,oDAAQ,CAAC,MAAM;MAAA,IAAAwzB,iBAAA;MACnC;MACA,IAAI,CAACR,kCAAkC,CAAChyB,KAAK,EAAE,OAAO,IAAI;;MAE1D;AACF;AACA;MACE,OAAOgyB,kCAAkC,CAAChyB,KAAK,MAAAwyB,iBAAA,GAAIpV,UAAU,CAACpd,KAAK,cAAAwyB,iBAAA,uBAAhBA,iBAAA,CAAkBvc,MAAM;IAC7E,CAAC,CAAC;IAKF,MAAMwc,aAAa,GAAGzzB,oDAAQ,CAAC;MAAA,IAAA0zB,iBAAA;MAAA,OAC7B,EAAAA,iBAAA,GAAA3D,UAAU,CAAC/uB,KAAK,cAAA0yB,iBAAA,uBAAhBA,iBAAA,CAAkBpqB,IAAI,MAAK,SAAS,GAClC,qDAAqD,GACrD,oDAAoD;IAAA,CACxD,CAAC;IAGD,MAAMqqB,iBAAiB,GAAG3zB,oDAAQ,CAAC;MAAA,IAAA4zB,kBAAA;MAAA,OACjC,EAAAA,kBAAA,GAAA7D,UAAU,CAAC/uB,KAAK,cAAA4yB,kBAAA,uBAAhBA,kBAAA,CAAkBtqB,IAAI,MAAK,SAAS,GAClCkpB,sBAAsB,CAACxxB,KAAK,CAAC6yB,SAAS,CAACC,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,GACnEtB,sBAAsB,CAACxxB,KAAK,CAAC6yB,SAAS;IAAA,CAC1C,CAAC;;IAGD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACA,MAAME,oBAAoB,GAAG/zB,oDAAQ,CACnC;MAAA,IAAAg0B,qBAAA,EAAAC,sBAAA;MAAA,OACE,EAAAD,qBAAA,GAAAnB,sBAAsB,CAAC7xB,KAAK,cAAAgzB,qBAAA,uBAA5BA,qBAAA,CAA8Bb,UAAU,OAAAc,sBAAA,GACxCpB,sBAAsB,CAAC7xB,KAAK,cAAAizB,sBAAA,uBAA5BA,sBAAA,CAA8Bb,UAAU;IAAA,CAC5C,CAAC;;IAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACA,MAAMc,mBAAmB,GAAGl0B,oDAAQ,CAClC;MAAA,IAAAm0B,sBAAA,EAAAC,sBAAA,EAAAvc,cAAA;MAAA,OACE,EAAAsc,sBAAA,GAAAtB,sBAAsB,CAAC7xB,KAAK,cAAAmzB,sBAAA,uBAA5BA,sBAAA,CAA8BjB,QAAQ,OAAAkB,sBAAA,GACtCvB,sBAAsB,CAAC7xB,KAAK,cAAAozB,sBAAA,uBAA5BA,sBAAA,CAA8Bf,iBAAiB,KAC/C,EAAAxb,cAAA,GAAAL,OAAO,CAACxW,KAAK,cAAA6W,cAAA,gBAAAA,cAAA,GAAbA,cAAA,CAAe1O,OAAO,cAAA0O,cAAA,uBAAtBA,cAAA,CAAwBwc,wBAAwB,KAAI,CAAC;IAAA,CACzD,CAAC;IAEDtxB,iDAAK,CACHkI,MAAM,EACLknB,QAAQ,IAAK;MAAA,IAAAmC,qBAAA;MACZzB,sBAAsB,CAAC7xB,KAAK,GAAGmxB,QAAQ,aAARA,QAAQ,gBAAAmC,qBAAA,GAARnC,QAAQ,CAAEoC,aAAa,cAAAD,qBAAA,uBAAvBA,qBAAA,CAAyBtzB,KAAK;MAE7D,IAAIkzB,mBAAmB,CAAClzB,KAAK,EAAE;QAC7B0xB,uBAAuB,CAAC,CAAC;QACzBD,oBAAoB,CAAC,CAAC;MACxB;IACF,CAAC,EACD;MAAE5Y,IAAI,EAAE,IAAI;MAAE2a,SAAS,EAAE;IAAK,CAChC,CAAC;;IAED;IACA,MAAMC,UAAU,GAAGA,CAAA,KAAM;MACvB,IAAIP,mBAAmB,CAAClzB,KAAK,EAAE;QAC7B4xB,cAAc,CAAC5xB,KAAK,GAAG,CAAC4xB,cAAc,CAAC5xB,KAAK;MAC9C;IACF,CAAC;IAED,SAAS0zB,mBAAmBA,CAACC,KAAK,EAAE;MAClC;MACA,IAAI,OAAOA,KAAK,KAAK,QAAQ,IAAI,CAACjQ,KAAK,CAACiQ,KAAK,CAAC,EAAE;QAC9C,OAAQ,GAAElhB,UAAU,CAACkhB,KAAK,CAAE,GAAE;MAChC;MACA,MAAM,IAAIC,KAAK,CAAC,mDAAmD,CAAC;IACtE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACvRA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA,wCAAiiB,C;;;;;;;;;;;ACAjiB,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAA8E;AACL;;AAEG;;AAE5E,oBAAoB,gGAAM;;AAEX,0E;;;;;;;;;;;;;;;;;;;;;;;ACQ6C;AAAA;AACD;AAChC;AACgG;;;;;;;;;;;;;;IAE3H,MAAM7uB,EAAE,GAAGC,oFAAS,CAAC,CAAC;IAMtB,MAAMpG,KAAK,GAAGiG,OAQZ;IAEF,MAAMwH,KAAK,GAAGvK,+CAAG,CAAC;MACduS,IAAI,EAAE,EAAE;MACRpW,EAAE,EAAE;IACR,CAAC,CAAC;IAEF,MAAM41B,cAAc,GAAG/xB,+CAAG,CAAC,IAAI,CAAC;IAChC,MAAMgyB,eAAe,GAAGhyB,+CAAG,CAAC,EAAE,CAAC;IAE/BC,iDAAK,CAACsK,KAAK,EAAG8kB,QAAQ,IAAK;MACvB,IAAK,CAACA,QAAQ,EAAG,OAAO0C,cAAc,CAAC7zB,KAAK,GAAG,IAAI;MAEnD,MAAMqU,IAAI,GAAG8c,QAAQ,CAAC9c,IAAI;QAC1BpW,EAAE,GAAGkzB,QAAQ,CAAClzB,EAAE;MAEhB,IAAK,CAACoW,IAAI,IAAI,CAACpW,EAAE,EAAG,OAAO41B,cAAc,CAAC7zB,KAAK,GAAG,IAAI;MAEtD6zB,cAAc,CAAC7zB,KAAK,GAAG,KAAK;MAC5B8zB,eAAe,CAAC9zB,KAAK,GAAI,GAAE+zB,qGAAyB,CAAC1f,IAAI,EAAEpW,EAAE,CAAE,OAAM;IACzE,CAAC,CAAC;IAEF,MAAM+1B,WAAW,GAAGzsB,6CAAM,CAAC,CAAC,CAACD,MAAM,CAAC,YAAY,CAAC;MACjD2sB,aAAa,GAAG1sB,6CAAM,CAAC,CAAC,CAAC2sB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC5sB,MAAM,CAAC,YAAY,CAAC;IAElE,MAAM;MAAE6sB,SAAS;MAAEC,YAAY;MAAEC;IAAW,CAAC,GAAGC,qGAAwB,CAAC,CAAC;;IAE1E;;IAEA;IACA,SAASC,SAASA,CAAA,EAAG;MAAA,IAAAC,YAAA,EAAAC,aAAA;MAEjB,IAAK,GAAAD,YAAA,GAACnoB,KAAK,CAACrM,KAAK,cAAAw0B,YAAA,eAAXA,YAAA,CAAangB,IAAI,KAAI,GAAAogB,aAAA,GAACpoB,KAAK,CAACrM,KAAK,cAAAy0B,aAAA,eAAXA,aAAA,CAAax2B,EAAE,GAAG,OAAOy2B,iBAAiB,CAAC,CAAC;MAExEroB,KAAK,CAACrM,KAAK,GAAG;QACV2wB,gBAAgB,EAAEgE,0FAAc,CAACtoB,KAAK,CAACrM,KAAK,CAACqU,IAAI,CAAC;QAClDqc,cAAc,EAAEiE,0FAAc,CAACtoB,KAAK,CAACrM,KAAK,CAAC/B,EAAE;MACjD,CAAC;MAED,IAAK,CAAC22B,gBAAgB,CAAC,CAAC,EAAG,OAAOF,iBAAiB,CAAC,CAAC;MAErD91B,KAAK,CAAC+wB,mBAAmB,CAACtjB,KAAK,CAACrM,KAAK,CAAC;MACtCq0B,UAAU,CAAC,CAAC;IAChB;;IAEA;IACA,MAAMQ,UAAU,GAAGA,CAAA,KAAM;MACrBj2B,KAAK,CAAC+wB,mBAAmB,CAAC,IAAI,CAAC;MAC/ByE,YAAY,CAAC,CAAC;IAClB,CAAC;;IAED;IACA,MAAMU,eAAe,GAAI9W,IAAI,IAAK;MAC9B,OAAOA,IAAI,IAAIiW,aAAa,IAAIjW,IAAI,IAAIgW,WAAW;IACvD,CAAC;;IAED;IACA,MAAMU,iBAAiB,GAAGA,CAAA,KAAM;MAC5B3vB,EAAE,CAACyqB,MAAM,CAAC;QACNzyB,KAAK,EAAE,MAAM;QACbqM,OAAO,EAAE;MACb,CAAC,CAAC;IACN,CAAC;;IAED;IACA,MAAMwrB,gBAAgB,GAAGA,CAAA,KAAM;MAC3B,IACI,CAACG,uFAAW,CAAC1oB,KAAK,CAACrM,KAAK,CAAC2wB,gBAAgB,EAAE,YAAY,CAAC,IACxD,CAACoE,uFAAW,CAAC1oB,KAAK,CAACrM,KAAK,CAAC0wB,cAAc,EAAE,YAAY,CAAC,EACxD,OAAO,KAAK;MAEd,IAAKrkB,KAAK,CAACrM,KAAK,CAAC2wB,gBAAgB,KAAKtkB,KAAK,CAACrM,KAAK,CAAC0wB,cAAc,EAAG,OAAO,KAAK;MAE/E,OAAO,IAAI;IACf,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AC5GD;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA,uC;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAyG;AACtB;AACL;;AAE0B;;AAE8B;AACtI,iCAAiC,+IAAe,CAAC,qGAAM,aAAa,sHAAM;;AAE3D,0EAAW;AAC8B;AACc;AACX;AACS;AACF;AACwC;AAC1G,qGAAQ,CAAC,qGAAM,iBAAiB,kFAAK,CAAC,gGAAY,CAAC,qFAAM,CAAC,8FAAS,CAAC,4FAAU,CAAC;;;;;;;;;;;;AChB/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE,KAAK;AACL,wFAAwF;AACxF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD;AACnD;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF,SAAS;AAC/F,4DAA4D,SAAS;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA,wEAAwE;AACxE,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,EAAE;AACpD,sBAAsB;AACtB;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C;AACA;AACA,wCAAwC,SAAS;AACjD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C,yDAAyD,SAAS;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,oBAAoB,SAAS;AAC7B;AACA;AACA;AACA;AACA,OAAO;AACP,oBAAoB,UAAU;AAC9B;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,cAAc,MAAM;AACpB;AACA;AACA,cAAc,MAAM;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,OAAO;AAC3C;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C,4EAA4E,UAAU;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,sCAAsC,OAAO;AAC7C,gEAAgE,OAAO;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,OAAO;AAC3C,wDAAwD,OAAO;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C;AACA;AACA;AACA,wCAAwC,SAAS;AACjD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,kEAAkE;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D,OAAO;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,WAAW;AACX;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E;AAC5E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,OAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C,OAAO;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,OAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,wCAAwC;AAC9F;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,iFAAiF;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C;AACA,SAAS,gBAAgB;AACzB;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA,kBAAkB,UAAU;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,oDAAoD;AACpD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2CAA2C;AAC3C,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,sEAAsE,6BAA6B;AACnG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,OAAO;AAChE;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,gEAAgE,QAAQ;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,6DAA6D,OAAO;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,OAAO;AACrD,WAAW;AACX;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,2CAA2C,QAAQ;AACnD,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,OAAO;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,OAAO;AAC9B,oEAAoE,OAAO;AAC3E;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,4CAA4C;AAC5C;AACA;AACA;AACA;AACA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,+BAA+B,iCAAiC;AAChE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA,gCAAgC,QAAQ;AACxC,yBAAyB,8BAA8B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,cAAc;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA,OAAO;AACP,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,UAAU;AACV;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,8BAA8B,8BAA8B;AAC5D;AACA,+CAA+C;AAC/C,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,+BAA+B,OAAO;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,iBAAiB,OAAO;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,OAAO;AACxD;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,QAAQ;AACtB;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B;AACA;AACA,6BAA6B;AAC7B,OAAO;AACP;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL,wBAAwB,OAAO;AAC/B;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,eAAe,QAAQ;AACvB,UAAU,OAAO;AACjB,UAAU,OAAO;AACjB;AACA,iBAAiB,QAAQ;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,8BAA8B;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,8BAA8B;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,mCAAmC;AACnC;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,WAAW;AACX,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD,OAAO,2DAA2D,iBAAiB,OAAO;AACnJ;AACA,yDAAyD,OAAO,2DAA2D,iBAAiB,OAAO;AACnJ;AACA,mDAAmD,OAAO,mDAAmD,iBAAiB,OAAO;AACrI;AACA;AACA;AACA,qBAAqB,OAAO;AAC5B;AACA;AACA,qBAAqB,OAAO;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP,iBAAiB,OAAO;AACxB;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,KAAK;AACL;AACA,GAAG;AACH;AACA;AACA;AACA,iBAAiB,OAAO;AACxB,0BAA0B,OAAO;AACjC;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,iBAAiB,OAAO;AACxB,2BAA2B,OAAO;AAClC,uDAAuD,OAAO;AAC9D,0EAA0E,OAAO;AACjF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,OAAO;AACxB;AACA,KAAK;AACL;AACA;AACA,iBAAiB,OAAO;AACxB,0BAA0B,OAAO;AACjC,0BAA0B,OAAO,yBAAyB,iBAAiB,OAAO;AAClF;AACA,iBAAiB,OAAO;AACxB;AACA,KAAK;AACL;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,UAAU,MAAM;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,OAAO;AAC1B;AACA;AACA,gCAAgC,SAAS;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,oBAAoB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA,iFAAiF;AACjF;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,8EAA8E,OAAO;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2DAA2D;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA,8BAA8B,OAAO;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,gCAAgC;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,MAAM,qBAAqB,OAAO;AAClD;AACA,SAAS;AACT;AACA,gBAAgB,QAAQ,sBAAsB,OAAO;AACrD;AACA,mBAAmB,cAAc;AACjC,8BAA8B,kBAAkB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,SAAS;AACT;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,qBAAqB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C;AACA,yDAAyD,SAAS;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C;AACA,yDAAyD,SAAS;AAClE;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,SAAS;AAC9C,yDAAyD,SAAS;AAClE;AACA;AACA;AACA;AACA,+CAA+C,SAAS;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,OAAO;AAC3C;AACA,wDAAwD,OAAO;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,OAAO;AACP;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA,oCAAoC,OAAO;AAC3C;AACA,wDAAwD,OAAO;AAC/D;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe;AACf;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb,WAAW;AACX,SAAS;AACT;AACA;AACA,WAAW;AACX;AACA;AACA;AACA,WAAW;AACX;AACA;AACA,WAAW;AACX;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mDAAmD,0BAA0B;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;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AAM;MACtBjB,KAAK,CAACrW,KAAK,GAAGqW,KAAK,CAACrW,KAAK,GAAGkqC,SAAS,CAAClqC,KAAK,CAACmB,MAAM,GAAGkV,KAAK,CAACrW,KAAK,GAAG,CAAC,GAAG,CAAC;IAC1E,CAAC;IAED8D,qDAAS,CAAC,MAAM;MACdmmC,WAAW,CAAC;QACV7nC,MAAM,EAAE2C,EAAE,CAACwS,QAAQ,CAACC,EAAE,CAACC,MAAM,GACzB,8BAA8B,GAC9B;MACN,CAAC,CAAC;IACJ,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ACrEF;AAAA;AAAA;AAAA;;;;;;;;;;;;;ACAA;AAAA;AAAA;AAAA;;;;;;;;;;;;ACAA;AACA,QAAQ,IAA0C;AAClD,QAAQ,iCAAO,CAAC,qCAAI,CAAC,mCAAE;AACvB;AACA,SAAS;AAAA,oGAAC;AACV,KAAK,MAAM,EAIN;AACL,CAAC;AACD;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,uCAAuC,YAAY;AACnD;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,uBAAuB;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,mBAAmB,cAAc;AACjC;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,WAAW,gCAAgC;AAC3C;;AAEA,+CAA+C,YAAY;AAC3D;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,+CAA+C,YAAY;AAC3D;AACA;AACA;AACA;AACA;AACA,6BAA6B,2CAA2C;AACxE,SAAS;;AAET;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,SAAS;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,SAAS;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG,aAAa;AAChB;AACA;AACA;AACA;AACA;AACA,EAAE;AACF;AACA;;AAEA,EAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,gBAAgB,yCAAyC;AACzD;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,iCAAiC,cAAc;AAC/C;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH;;AAEA;AACA;AACA;AACA,mCAAmC,yCAAyC,qBAAqB;AACjG;;AAEA;;AAEA,2CAA2C,gBAAgB;;AAE3D,2CAA2C,gBAAgB;AAC3D,2CAA2C,2BAA2B;;AAEtE;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;;AAEA;AACA,sBAAsB,gBAAgB;AACtC,sBAAsB,+BAA+B,wBAAwB,UAAU;;AAEvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA,8CAA8C;AAC9C;;AAEA,GAAG;AACH;;AAEA,yBAAyB;;AAEzB;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;AACA;AACA,2BAA2B,cAAc;AACzC;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,iBAAiB,8DAA8D;AAC/E,GAAG;;AAEH;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B;AACA;;AAEA;AACA,4CAA4C,+BAA+B;AAC3E;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B,GAAG;AACH;AACA;AACA,2BAA2B;AAC3B;AACA;;AAEA;AACA,4CAA4C,+BAA+B;AAC3E;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,IAAI;AACJ;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;;AAEA;AACA;AACA,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC,mCAAmC;AACnC;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,aAAa,iBAAiB;AAC9B;AACA;AACA,cAAc,gCAAgC;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA,4CAA4C;AAC5C;AACA;;AAEA,mBAAmB;;AAEnB;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,EAAE;;AAEF;;AAEA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA,mCAAmC,uCAAuC;;AAE1E;AACA;;AAEA;AACA,EAAE;;AAEF;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,MAAM;AACN;AACA,IAAI;AACJ,GAAG;;AAEH;AACA;AACA,CAAC;;AAED;;AAEA;;AAEA;AACA,kBAAkB;;AAElB;;AAEA;;AAEA;;AAEA;AACA,wCAAwC;AACxC,8BAA8B,gCAAgC;AAC9D;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM;AACN,KAAK;;AAEL;;AAEA;AACA;;AAEA;;;AAGA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA,IAAI;AACJ,GAAG;AACH;;AAEA,kCAAkC,gBAAgB;AAClD;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,iBAAiB,WAAW;;AAE5B;AACA;;AAEA,kBAAkB,+BAA+B;AACjD;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,GAAG;AACH;;AAEA,kCAAkC,gBAAgB;AAClD;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAiB,yCAAyC;;AAE1D,GAAG;AACH;AACA;;AAEA,mCAAmC,gBAAgB;AACnD;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,+FAA+F,aAAa;;AAE5G;AACA,mDAAmD,WAAW;AAC9D;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,qBAAqB,iEAAiE;;AAEtF;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA,oDAAoD;;AAEpD;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA,iBAAiB,yCAAyC;;AAE1D,GAAG;AACH;AACA;;AAEA;AACA,mCAAmC,gBAAgB;AACnD,EAAE;;AAEF;;AAEA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA,kGAAkG,aAAa;;AAE/G;;AAEA;;AAEA;;AAEA;AACA,EAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,qBAAqB,iEAAiE;AACtF;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,KAAK;AACL;AACA;;AAEA;;AAEA,GAAG;;AAEH;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;;AAGA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,IAAI;;AAEJ;;AAEA,GAAG;;AAEH;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;;AAEA,GAAG;AACH;;AAEA;AACA;AACA;AACA,GAAG;AACH;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;;AAEL,8CAA8C,QAAQ;AACtD;AACA;;AAEA;AACA;AACA,GAAG;AACH;AACA,EAAE;;AAEF;AACA,kC;AACA;AACA;AACA,EAAE;AACF;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA,8BAA8B;AAC9B;AACA;;AAEA;AACA;AACA;AACA;AACA,IAAI,O;AACJ,8CAA8C,qBAAqB;AACnE;AACA;AACA;;AAEA;;AAEA,GAAG;;AAEH;AACA;;AAEA;AACA;AACA,gDAAgD,8BAA8B;AAC9E;AACA;AACA;AACA,yCAAyC;AACzC;AACA,yCAAyC;AACzC;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,yCAAyC;AACzC;AACA;AACA;AACA,iCAAiC;;AAEjC,yBAAyB;;AAEzB;AACA;AACA;AACA,iCAAiC;;AAEjC;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,MAAM;AACN;AACA,IAAI;AACJ;;AAEA;AACA;AACA,GAAG;AACH;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA;;AAEA,qCAAqC;;AAErC;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB,+BAA+B;AACjD;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,EAAE;;AAEF;AACA,+BAA+B;AAC/B,EAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA,iCAAiC,qBAAqB;;AAEtD;;AAEA;AACA;AACA;AACA;;AAEA,mCAAmC,MAAM,OAAO;AAChD;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA,GAAG;;AAEH;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA,0CAA0C,kBAAkB;;AAE5D;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA,GAAG;AACH;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;;AAEA,mCAAmC,gBAAgB;;AAEnD;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;AACH;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA,oCAAoC;AACpC,EAAE;;AAEF;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,WAAW;;AAEjC;AACA;AACA;;AAEA;AACA;AACA,GAAG;;;AAGH,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;;AAEA,eAAe;AACf;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AACD;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA,iBAAiB,mBAAmB;AACpC;AACA;AACA,IAAI;;AAEJ;AACA;AACA;AACA,KAAK;AACL,IAAI;AACJ;;AAEA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,uBAAuB;AAC/C,KAAK;AACL;AACA,yBAAyB,uBAAuB;AAChD,KAAK;AACL;AACA;AACA;;AAEA;;AAEA,oBAAoB,mBAAmB;AACvC;AACA;AACA;AACA;AACA,OAAO;AACP;AACA;AACA,IAAI;AACJ,GAAG;;AAEH;AACA;AACA,GAAG;;AAEH,EAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA,GAAG;;AAEH,EAAE;;AAEF;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA,CAAC;;AAED;;AAEA;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,oF;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA,yBAAyB;AACzB,IAAI;AACJ;;AAEA;AACA;;AAEA;AACA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;;AAEA;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;AACA;AACA;AACA,GAAG;;AAEH;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA,qBAAqB,+BAA+B;;AAEpD;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;AACJ;AACA,EAAE;;AAEF;;AAEA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA,qCAAqC;AACrC;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA,+BAA+B,gBAAgB,gBAAgB;;AAE/D,sC;AACA;AACA;AACA;AACA;AACA;AACA,IAAI;;AAEJ;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;;AAEA;AACA;;AAEA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,EAAE;;AAEF;;AAEA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH;AACA,EAAE;;AAEF;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA,KAAK;;AAEL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,IAAI;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;AACA;AACA,4BAA4B,+BAA+B;AAC3D;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;;AAED;;AAEA;;AAEA;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;AACA;AACA,EAAE;;AAEF;AACA;AACA;AACA;AACA;AACA,aAAa,6CAA6C;AAC1D;AACA;AACA;AACA;AACA,EAAE;;AAEF;AACA;AACA;;AAEA;AACA,iDAAiD,4BAA4B,EAAE;;AAE/E;AACA;;AAEA;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;AACA;AACA,IAAI;;AAEJ;;AAEA;AACA;AACA,GAAG;;AAEH;AACA;;AAEA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;;AAEA,UAAU;AACV,EAAE;;AAEF;;AAEA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA,wBAAwB,qBAAqB;AAC7C,qBAAqB,iBAAiB;;AAEtC;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,GAAG;;AAEH,EAAE;;AAEF;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,EAAE;;AAEF;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;;AAEA;;AAEA;;AAEA;AACA;AACA;AACA;AACA,KAAK;;AAEL,IAAI;AACJ;AACA;AACA;AACA;AACA;AACA;;AAEA,GAAG;AACH,EAA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","file":"js/chunk-799c7474.16c6ee39.js","sourcesContent":["\n\n\n","\n\n\n\n\n","import { computed } from 'vue'\n\nimport { isNumber } from '../../utils/is.js'\n\nexport const useTableColumnSelectionProps = {\n visibleColumns: Array\n}\n\nexport function useTableColumnSelection (props, computedPagination, hasSelectionMode) {\n const colList = computed(() => {\n if (props.columns !== void 0) {\n return props.columns\n }\n\n // we infer columns from first row\n const row = props.rows[ 0 ]\n\n return row !== void 0\n ? Object.keys(row).map(name => ({\n name,\n label: name.toUpperCase(),\n field: name,\n align: isNumber(row[ name ]) ? 'right' : 'left',\n sortable: true\n }))\n : []\n })\n\n const computedCols = computed(() => {\n const { sortBy, descending } = computedPagination.value\n\n const cols = props.visibleColumns !== void 0\n ? colList.value.filter(col => col.required === true || props.visibleColumns.includes(col.name) === true)\n : colList.value\n\n return cols.map(col => {\n const align = col.align || 'right'\n const alignClass = `text-${ align }`\n\n return {\n ...col,\n align,\n __iconClass: `q-table__sort-icon q-table__sort-icon--${ align }`,\n __thClass: alignClass\n + (col.headerClasses !== void 0 ? ' ' + col.headerClasses : '')\n + (col.sortable === true ? ' sortable' : '')\n + (col.name === sortBy ? ` sorted ${ descending === true ? 'sort-desc' : '' }` : ''),\n\n __tdStyle: col.style !== void 0\n ? (\n typeof col.style !== 'function'\n ? () => col.style\n : col.style\n )\n : () => null,\n\n __tdClass: col.classes !== void 0\n ? (\n typeof col.classes !== 'function'\n ? () => alignClass + ' ' + col.classes\n : row => alignClass + ' ' + col.classes(row)\n )\n : () => alignClass\n }\n })\n })\n\n const computedColsMap = computed(() => {\n const names = {}\n computedCols.value.forEach(col => {\n names[ col.name ] = col\n })\n return names\n })\n\n const computedColspan = computed(() => {\n return props.tableColspan !== void 0\n ? props.tableColspan\n : computedCols.value.length + (hasSelectionMode.value === true ? 1 : 0)\n })\n\n return {\n colList,\n computedCols,\n computedColsMap,\n computedColspan\n }\n}\n","import { render } from \"./TotalSalesComponent.vue?vue&type=template&id=a82aaa8c&scoped=true\"\nimport script from \"./TotalSalesComponent.vue?vue&type=script&lang=js\"\nexport * from \"./TotalSalesComponent.vue?vue&type=script&lang=js\"\n\nimport \"./TotalSalesComponent.vue?vue&type=style&index=0&id=a82aaa8c&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a82aaa8c\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton,QBtn});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribe.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribe.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./lastPointsReleased.vue?vue&type=style&index=0&id=6a078528&lang=scss\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./invite.vue?vue&type=template&id=b5b78ea0&scoped=true\"","export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklists.vue?vue&type=template&id=b87a8856&scoped=true\"","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribeSkeleton.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribeSkeleton.vue?vue&type=script&lang=js\"","import { render } from \"./rickshawChart.vue?vue&type=template&id=6031efbf\"\nimport script from \"./rickshawChart.vue?vue&type=script&lang=js\"\nexport * from \"./rickshawChart.vue?vue&type=script&lang=js\"\n\nimport \"./rickshawChart.vue?vue&type=style&index=0&id=6031efbf&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__","import { render } from \"./CreditDataComponent.vue?vue&type=template&id=28031f9c&scoped=true\"\nimport script from \"./CreditDataComponent.vue?vue&type=script&lang=js\"\nexport * from \"./CreditDataComponent.vue?vue&type=script&lang=js\"\n\nimport \"./CreditDataComponent.vue?vue&type=style&index=0&id=28031f9c&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-28031f9c\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton,QBtn,QIcon});\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./NewDashboard.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./NewDashboard.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClustersAndShareComponent.vue?vue&type=style&index=0&id=4021d509&scoped=true&lang=scss\"","import { render } from \"./products.vue?vue&type=template&id=241a078b&scoped=true\"\nimport script from \"./products.vue?vue&type=script&lang=js\"\nexport * from \"./products.vue?vue&type=script&lang=js\"\n\nimport \"./products.vue?vue&type=style&index=0&id=241a078b&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-241a078b\"]])\n\nexport default __exports__\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QItem,QItemSection});\n","import script from \"./DashAreaComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./DashAreaComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./DashAreaComponent.vue?vue&type=style&index=0&id=30fcb30e&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-30fcb30e\"]])\n\nexport default __exports__","import { ref, watch } from 'vue'\n\nfunction getVal (val) {\n return Array.isArray(val)\n ? val.slice()\n : []\n}\n\nexport const useTableRowExpandProps = {\n expanded: Array // v-model:expanded\n}\n\nexport const useTableRowExpandEmits = [ 'update:expanded' ]\n\nexport function useTableRowExpand (props, emit) {\n const innerExpanded = ref(getVal(props.expanded))\n\n watch(() => props.expanded, val => {\n innerExpanded.value = getVal(val)\n })\n\n function isRowExpanded (key) {\n return innerExpanded.value.includes(key)\n }\n\n function setExpanded (val) {\n if (props.expanded !== void 0) {\n emit('update:expanded', val)\n }\n else {\n innerExpanded.value = val\n }\n }\n\n function updateExpanded (key, add) {\n const target = innerExpanded.value.slice()\n const index = target.indexOf(key)\n\n if (add === true) {\n if (index === -1) {\n target.push(key)\n setExpanded(target)\n }\n }\n else if (index !== -1) {\n target.splice(index, 1)\n setExpanded(target)\n }\n }\n\n return {\n isRowExpanded,\n setExpanded,\n updateExpanded\n }\n}\n","// extracted by mini-css-extract-plugin","\n\n\n\n\n","\n\n\n\n\n\n","import script from \"./widget.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./widget.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./widget.vue?vue&type=style&index=0&id=50a84df2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-50a84df2\"]])\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QIcon,QBtn});\n","\n\n\n\n\n","\n\n\n\n\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","\n\n\n\n\n","import { render } from \"./checklists.vue?vue&type=template&id=b87a8856&scoped=true\"\nimport script from \"./checklists.vue?vue&type=script&lang=js\"\nexport * from \"./checklists.vue?vue&type=script&lang=js\"\n\nimport \"./checklists.vue?vue&type=style&index=0&id=b87a8856&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b87a8856\"]])\n\nexport default __exports__","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./showUp.vue?vue&type=style&index=0&id=b7fcea06&lang=scss\"","\n\n","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CreditDataComponent.vue?vue&type=template&id=28031f9c&scoped=true\"","import { render } from \"./MyLinksComponent.vue?vue&type=template&id=f097a1b2&scoped=true\"\nimport script from \"./MyLinksComponent.vue?vue&type=script&lang=js\"\nexport * from \"./MyLinksComponent.vue?vue&type=script&lang=js\"\n\nimport \"./MyLinksComponent.vue?vue&type=style&index=0&id=f097a1b2&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-f097a1b2\"]])\n\nexport default __exports__\nimport QScrollArea from 'quasar/src/components/scroll-area/QScrollArea.js';\nimport QList from 'quasar/src/components/item/QList.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QScrollArea,QList,QItem,QItemSection,QIcon,QItemLabel});\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./graph.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./graph.vue?vue&type=script&lang=js\"","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./TotalSalesComponent.vue?vue&type=style&index=0&id=a82aaa8c&scoped=true&lang=css\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareComponent.vue?vue&type=style&index=0&id=7a5873ae&scoped=true&lang=css\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleMissionsComponent.vue?vue&type=style&index=0&id=11e66ef6&scoped=true&lang=css\"","\n\n\n\n\n","// extracted by mini-css-extract-plugin","\n\n\n\n\n","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucherIcon.vue?vue&type=style&index=0&id=a784dc30&scoped=true&lang=scss\"","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./myStore.vue?vue&type=style&index=0&id=4a5fb1f8&scoped=true&lang=scss\"","import { h, computed, getCurrentInstance } from 'vue'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { hSlot } from '../../utils/private/render.js'\n\nconst separatorValues = [ 'horizontal', 'vertical', 'cell', 'none' ]\n\nexport default createComponent({\n name: 'QMarkupTable',\n\n props: {\n ...useDarkProps,\n\n dense: Boolean,\n flat: Boolean,\n bordered: Boolean,\n square: Boolean,\n wrapCells: Boolean,\n\n separator: {\n type: String,\n default: 'horizontal',\n validator: v => separatorValues.includes(v)\n }\n },\n\n setup (props, { slots }) {\n const vm = getCurrentInstance()\n const isDark = useDark(props, vm.proxy.$q)\n\n const classes = computed(() =>\n 'q-markup-table q-table__container q-table__card'\n + ` q-table--${ props.separator }-separator`\n + (isDark.value === true ? ' q-table--dark q-table__card--dark q-dark' : '')\n + (props.dense === true ? ' q-table--dense' : '')\n + (props.flat === true ? ' q-table--flat' : '')\n + (props.bordered === true ? ' q-table--bordered' : '')\n + (props.square === true ? ' q-table--square' : '')\n + (props.wrapCells === false ? ' q-table--no-wrap' : '')\n )\n\n return () => h('div', {\n class: classes.value\n }, [\n h('table', { class: 'q-table' }, hSlot(slots.default))\n ])\n }\n})\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./carouselComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./carouselComponent.vue?vue&type=script&setup=true&lang=js\"","\n\n\n\n\n","module.exports = __webpack_public_path__ + \"img/available.5371edfa.png\";","import { render } from \"./productItemStore.vue?vue&type=template&id=7b6d8b08\"\nimport script from \"./productItemStore.vue?vue&type=script&lang=js\"\nexport * from \"./productItemStore.vue?vue&type=script&lang=js\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport qInstall from \"../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton,QImg});\n","\n\n\n\n\n","import { computed } from 'vue'\n\nexport const useTableRowSelectionProps = {\n selection: {\n type: String,\n default: 'none',\n validator: v => [ 'single', 'multiple', 'none' ].includes(v)\n },\n selected: {\n type: Array,\n default: () => []\n }\n}\n\nexport const useTableRowSelectionEmits = [ 'update:selected', 'selection' ]\n\nexport function useTableRowSelection (props, emit, computedRows, getRowKey) {\n const selectedKeys = computed(() => {\n const keys = {}\n props.selected.map(getRowKey.value).forEach(key => {\n keys[ key ] = true\n })\n return keys\n })\n\n const hasSelectionMode = computed(() => {\n return props.selection !== 'none'\n })\n\n const singleSelection = computed(() => {\n return props.selection === 'single'\n })\n\n const multipleSelection = computed(() => {\n return props.selection === 'multiple'\n })\n\n const allRowsSelected = computed(() =>\n computedRows.value.length !== 0 && computedRows.value.every(\n row => selectedKeys.value[ getRowKey.value(row) ] === true\n )\n )\n\n const someRowsSelected = computed(() =>\n allRowsSelected.value !== true\n && computedRows.value.some(row => selectedKeys.value[ getRowKey.value(row) ] === true)\n )\n\n const rowsSelectedNumber = computed(() => props.selected.length)\n\n function isRowSelected (key) {\n return selectedKeys.value[ key ] === true\n }\n\n function clearSelection () {\n emit('update:selected', [])\n }\n\n function updateSelection (keys, rows, added, evt) {\n emit('selection', { rows, added, keys, evt })\n\n const payload = singleSelection.value === true\n ? (added === true ? rows : [])\n : (\n added === true\n ? props.selected.concat(rows)\n : props.selected.filter(\n row => keys.includes(getRowKey.value(row)) === false\n )\n )\n\n emit('update:selected', payload)\n }\n\n return {\n hasSelectionMode,\n singleSelection,\n multipleSelection,\n allRowsSelected,\n someRowsSelected,\n rowsSelectedNumber,\n\n isRowSelected,\n clearSelection,\n updateSelection\n }\n}\n","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","module.exports = \"data:image/png;base64,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\"","import { h, getCurrentInstance } from 'vue'\n\nimport QIcon from '../icon/QIcon.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { hSlot, hUniqueSlot } from '../../utils/private/render.js'\n\nexport default createComponent({\n name: 'QTh',\n\n props: {\n props: Object,\n autoWidth: Boolean\n },\n\n emits: [ 'click' ],\n\n setup (props, { slots, emit }) {\n const vm = getCurrentInstance()\n const { proxy: { $q } } = vm\n\n const onClick = evt => { emit('click', evt) }\n\n return () => {\n if (props.props === void 0) {\n return h('th', {\n class: props.autoWidth === true ? 'q-table--col-auto-width' : '',\n onClick\n }, hSlot(slots.default))\n }\n\n let col, child\n const name = vm.vnode.key\n\n if (name) {\n col = props.props.colsMap[ name ]\n if (col === void 0) return\n }\n else {\n col = props.props.col\n }\n\n if (col.sortable === true) {\n const action = col.align === 'right'\n ? 'unshift'\n : 'push'\n\n child = hUniqueSlot(slots.default, [])\n child[ action ](\n h(QIcon, {\n class: col.__iconClass,\n name: $q.iconSet.table.arrowUp\n })\n )\n }\n else {\n child = hSlot(slots.default)\n }\n\n const data = {\n class: col.__thClass\n + (props.autoWidth === true ? ' q-table--col-auto-width' : ''),\n style: col.headerStyle,\n onClick: evt => {\n col.sortable === true && props.props.sort(col)\n onClick(evt)\n }\n }\n\n return h('th', data, child)\n }\n }\n})\n","module.exports = __webpack_public_path__ + \"img/visitors-icon.9b6791f2.png\";","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widgetsContainer.vue?vue&type=style&index=1&id=cec7594e&lang=scss&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerActive.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerActive.vue?vue&type=script&setup=true&lang=js\"","\n\n\n\n\n","import script from \"./ClusterPartnerInfoDialog.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ClusterPartnerInfoDialog.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ClusterPartnerInfoDialog.vue?vue&type=style&index=0&id=ef395fc0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-ef395fc0\"]])\n\nexport default __exports__\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QBar from 'quasar/src/components/bar/QBar.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QBadge from 'quasar/src/components/badge/QBadge.js';\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QLinearProgress from 'quasar/src/components/linear-progress/QLinearProgress.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QDialog,QCard,QBar,QSpace,QBtn,QTooltip,QIcon,QBadge,QImg,QLinearProgress});qInstall(script, 'directives', {ClosePopup});\n","import script from \"./calendar.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./calendar.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./calendar.vue?vue&type=style&index=0&id=9c9facc0&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QDate from 'quasar/src/components/date/QDate.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QDialog,QCard,QCardSection,QDate,QCardActions,QBtn});\n","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./pending-docs.vue?vue&type=template&id=0a5479d2&scoped=true\"","import script from \"./AvaibleCompaniesComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./AvaibleCompaniesComponent.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__","export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./SideTitleComponent.vue?vue&type=template&id=078670a2&scoped=true\"","export { default } from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklists.vue?vue&type=script&lang=js\"; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklists.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CarouselMultiItensComponent.vue?vue&type=template&id=1ab9d98c&scoped=true\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CopyActions.vue?vue&type=style&index=0&id=27d9018e&lang=scss&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CarouselMultiItensComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CarouselMultiItensComponent.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleMissionsComponent.vue?vue&type=template&id=11e66ef6&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyLinksComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyLinksComponent.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareFlipnetComponent.vue?vue&type=style&index=0&id=45f3d27c&lang=scss&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widget.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widget.vue?vue&type=script&setup=true&lang=js\"","\n\n","\n\n\n\n\n","\n\n\n\n\n","module.exports =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"0bd6\":\n/***/ (function(module, exports) {\n\nmodule.exports = require(\"highcharts\");\n\n/***/ }),\n\n/***/ \"8875\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// addapted from the document.currentScript polyfill by Adam Miller\n// MIT license\n// source: https://github.com/amiller-gh/currentScript-polyfill\n\n// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n(function (root, factory) {\n if (true) {\n !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n } else {}\n}(typeof self !== 'undefined' ? self : this, function () {\n function getCurrentScript () {\n var descriptor = Object.getOwnPropertyDescriptor(document, 'currentScript')\n // for chrome\n if (!descriptor && 'currentScript' in document && document.currentScript) {\n return document.currentScript\n }\n\n // for other browsers with native support for currentScript\n if (descriptor && descriptor.get !== getCurrentScript && document.currentScript) {\n return document.currentScript\n }\n \n // IE 8-10 support script readyState\n // IE 11+ & Firefox support stack trace\n try {\n throw new Error();\n }\n catch (err) {\n // Find the second match for the \"at\" string to get file src url from stack.\n var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n scriptLocation = (stackDetails && stackDetails[1]) || false,\n line = (stackDetails && stackDetails[2]) || false,\n currentLocation = document.location.href.replace(document.location.hash, ''),\n pageSource,\n inlineScriptSourceRegExp,\n inlineScriptSource,\n scripts = document.getElementsByTagName('script'); // Live NodeList collection\n \n if (scriptLocation === currentLocation) {\n pageSource = document.documentElement.outerHTML;\n inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*\n\n","\n\n\n\n\n","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterItemComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterItemComponent.vue?vue&type=script&setup=true&lang=js\"","// extracted by mini-css-extract-plugin","import { render } from \"./voucherIcon.vue?vue&type=template&id=a784dc30&scoped=true\"\nimport script from \"./voucherIcon.vue?vue&type=script&lang=js\"\nexport * from \"./voucherIcon.vue?vue&type=script&lang=js\"\n\nimport \"./voucherIcon.vue?vue&type=style&index=0&id=a784dc30&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a784dc30\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport qInstall from \"../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton});\n","\n\n\n\n\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./showUp.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./showUp.vue?vue&type=script&lang=js\"","\n\n\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CreditDataComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CreditDataComponent.vue?vue&type=script&lang=js\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./drive.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./drive.vue?vue&type=script&setup=true&lang=js\"","import { computed, watch, nextTick } from 'vue'\n\nexport const useTableFilterProps = {\n filter: [ String, Object ],\n filterMethod: Function\n}\n\nexport function useTableFilter (props, setPagination) {\n const computedFilterMethod = computed(() => (\n props.filterMethod !== void 0\n ? props.filterMethod\n : (rows, terms, cols, cellValue) => {\n const lowerTerms = terms ? terms.toLowerCase() : ''\n return rows.filter(\n row => cols.some(col => {\n const val = cellValue(col, row) + ''\n const haystack = (val === 'undefined' || val === 'null') ? '' : val.toLowerCase()\n return haystack.indexOf(lowerTerms) !== -1\n })\n )\n }\n ))\n\n watch(\n () => props.filter,\n () => {\n nextTick(() => {\n setPagination({ page: 1 }, true)\n })\n },\n { deep: true }\n )\n\n return { computedFilterMethod }\n}\n","import script from \"./Home.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./Home.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./Home.vue?vue&type=style&index=0&id=6f833a65&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CantSubsOnMission.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CantSubsOnMission.vue?vue&type=script&setup=true&lang=js\"","import { ref, computed, watch, nextTick } from 'vue'\n\nfunction samePagination (oldPag, newPag) {\n for (const prop in newPag) {\n if (newPag[ prop ] !== oldPag[ prop ]) {\n return false\n }\n }\n return true\n}\n\nfunction fixPagination (p) {\n if (p.page < 1) {\n p.page = 1\n }\n if (p.rowsPerPage !== void 0 && p.rowsPerPage < 1) {\n p.rowsPerPage = 0\n }\n return p\n}\n\nexport const useTablePaginationProps = {\n pagination: Object,\n rowsPerPageOptions: {\n type: Array,\n default: () => [ 5, 7, 10, 15, 20, 25, 50, 0 ]\n },\n\n 'onUpdate:pagination': [ Function, Array ]\n}\n\nexport function useTablePaginationState (vm, getCellValue) {\n const { props, emit } = vm\n\n const innerPagination = ref(\n Object.assign({\n sortBy: null,\n descending: false,\n page: 1,\n rowsPerPage: props.rowsPerPageOptions.length !== 0\n ? props.rowsPerPageOptions[ 0 ]\n : 5\n }, props.pagination)\n )\n\n const computedPagination = computed(() => {\n const pag = props[ 'onUpdate:pagination' ] !== void 0\n ? { ...innerPagination.value, ...props.pagination }\n : innerPagination.value\n\n return fixPagination(pag)\n })\n\n const isServerSide = computed(() => computedPagination.value.rowsNumber !== void 0)\n\n function sendServerRequest (pagination) {\n requestServerInteraction({\n pagination,\n filter: props.filter\n })\n }\n\n function requestServerInteraction (prop = {}) {\n nextTick(() => {\n emit('request', {\n pagination: prop.pagination || computedPagination.value,\n filter: prop.filter || props.filter,\n getCellValue\n })\n })\n }\n\n function setPagination (val, forceServerRequest) {\n const newPagination = fixPagination({\n ...computedPagination.value,\n ...val\n })\n\n if (samePagination(computedPagination.value, newPagination) === true) {\n if (isServerSide.value === true && forceServerRequest === true) {\n sendServerRequest(newPagination)\n }\n return\n }\n\n if (isServerSide.value === true) {\n sendServerRequest(newPagination)\n return\n }\n\n if (\n props.pagination !== void 0\n && props[ 'onUpdate:pagination' ] !== void 0\n ) {\n emit('update:pagination', newPagination)\n }\n else {\n innerPagination.value = newPagination\n }\n }\n\n return {\n innerPagination,\n computedPagination,\n isServerSide,\n\n requestServerInteraction,\n setPagination\n }\n}\n\nexport function useTablePagination (vm, innerPagination, computedPagination, isServerSide, setPagination, filteredSortedRowsNumber) {\n const { props, emit, proxy: { $q } } = vm\n\n const computedRowsNumber = computed(() => (\n isServerSide.value === true\n ? computedPagination.value.rowsNumber || 0\n : filteredSortedRowsNumber.value\n ))\n\n const firstRowIndex = computed(() => {\n const { page, rowsPerPage } = computedPagination.value\n return (page - 1) * rowsPerPage\n })\n\n const lastRowIndex = computed(() => {\n const { page, rowsPerPage } = computedPagination.value\n return page * rowsPerPage\n })\n\n const isFirstPage = computed(() => computedPagination.value.page === 1)\n\n const pagesNumber = computed(() => (\n computedPagination.value.rowsPerPage === 0\n ? 1\n : Math.max(\n 1,\n Math.ceil(computedRowsNumber.value / computedPagination.value.rowsPerPage)\n )\n ))\n\n const isLastPage = computed(() => (\n lastRowIndex.value === 0\n ? true\n : computedPagination.value.page >= pagesNumber.value\n ))\n\n const computedRowsPerPageOptions = computed(() => {\n const opts = props.rowsPerPageOptions.includes(innerPagination.value.rowsPerPage)\n ? props.rowsPerPageOptions\n : [ innerPagination.value.rowsPerPage ].concat(props.rowsPerPageOptions)\n\n return opts.map(count => ({\n label: count === 0 ? $q.lang.table.allRows : '' + count,\n value: count\n }))\n })\n\n watch(pagesNumber, (lastPage, oldLastPage) => {\n if (lastPage === oldLastPage) {\n return\n }\n\n const currentPage = computedPagination.value.page\n if (lastPage && !currentPage) {\n setPagination({ page: 1 })\n }\n else if (lastPage < currentPage) {\n setPagination({ page: lastPage })\n }\n })\n\n function firstPage () {\n setPagination({ page: 1 })\n }\n\n function prevPage () {\n const { page } = computedPagination.value\n if (page > 1) {\n setPagination({ page: page - 1 })\n }\n }\n\n function nextPage () {\n const { page, rowsPerPage } = computedPagination.value\n if (lastRowIndex.value > 0 && page * rowsPerPage < computedRowsNumber.value) {\n setPagination({ page: page + 1 })\n }\n }\n\n function lastPage () {\n setPagination({ page: pagesNumber.value })\n }\n\n if (props[ 'onUpdate:pagination' ] !== void 0) {\n emit('update:pagination', { ...computedPagination.value })\n }\n\n return {\n firstRowIndex,\n lastRowIndex,\n isFirstPage,\n isLastPage,\n pagesNumber,\n computedRowsPerPageOptions,\n computedRowsNumber,\n\n firstPage,\n prevPage,\n nextPage,\n lastPage\n }\n}\n","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterItemComponent.vue?vue&type=style&index=0&id=2c038724&scoped=true&lang=scss\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./shareNow.vue?vue&type=style&index=0&id=520ba1cc&lang=scss&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DefaultDashboard.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DefaultDashboard.vue?vue&type=script&setup=true&lang=js\"","\n\n\n","\n\n\n\n","import { h, ref, computed, watch, Transition, nextTick, getCurrentInstance } from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\nimport useRenderCache from '../../composables/use-render-cache.js'\nimport { useFormProps, useFormAttrs, useFormInject } from '../../composables/private/use-form.js'\nimport useDatetime, { useDatetimeProps, useDatetimeEmits, getDayHash } from './use-datetime.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { hSlot } from '../../utils/private/render.js'\nimport { formatDate, __splitDate, getDateDiff } from '../../utils/date.js'\nimport { pad } from '../../utils/format.js'\nimport { jalaaliMonthLength, toGregorian } from '../../utils/private/date-persian.js'\nimport { isObject } from '../../utils/is.js'\n\nconst yearsInterval = 20\nconst views = [ 'Calendar', 'Years', 'Months' ]\nconst viewIsValid = v => views.includes(v)\nconst yearMonthValidator = v => /^-?[\\d]+\\/[0-1]\\d$/.test(v)\nconst lineStr = ' \\u2014 '\n\nfunction getMonthHash (date) {\n return date.year + '/' + pad(date.month)\n}\n\nexport default createComponent({\n name: 'QDate',\n\n props: {\n ...useDatetimeProps,\n ...useFormProps,\n ...useDarkProps,\n\n multiple: Boolean,\n range: Boolean,\n\n title: String,\n subtitle: String,\n\n mask: {\n // this mask is forced\n // when using persian calendar\n default: 'YYYY/MM/DD'\n },\n\n defaultYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n yearsInMonthView: Boolean,\n\n events: [ Array, Function ],\n eventColor: [ String, Function ],\n\n emitImmediately: Boolean,\n\n options: [ Array, Function ],\n\n navigationMinYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n navigationMaxYearMonth: {\n type: String,\n validator: yearMonthValidator\n },\n\n noUnset: Boolean,\n\n firstDayOfWeek: [ String, Number ],\n todayBtn: Boolean,\n minimal: Boolean,\n defaultView: {\n type: String,\n default: 'Calendar',\n validator: viewIsValid\n }\n },\n\n emits: [\n ...useDatetimeEmits,\n 'rangeStart', 'rangeEnd', 'navigation'\n ],\n\n setup (props, { slots, emit }) {\n const { proxy } = getCurrentInstance()\n const { $q } = proxy\n\n const isDark = useDark(props, $q)\n const { getCache } = useRenderCache()\n const { tabindex, headerClass, getLocale, getCurrentDate } = useDatetime(props, $q)\n\n let lastEmitValue\n\n const formAttrs = useFormAttrs(props)\n const injectFormInput = useFormInject(formAttrs)\n\n const blurTargetRef = ref(null)\n const innerMask = ref(getMask())\n const innerLocale = ref(getLocale())\n\n const mask = computed(() => getMask())\n const locale = computed(() => getLocale())\n\n const today = computed(() => getCurrentDate())\n\n // model of current calendar view:\n const viewModel = ref(getViewModel(innerMask.value, innerLocale.value))\n\n const view = ref(props.defaultView)\n\n const direction = $q.lang.rtl === true ? 'right' : 'left'\n const monthDirection = ref(direction.value)\n const yearDirection = ref(direction.value)\n\n const year = viewModel.value.year\n const startYear = ref(year - (year % yearsInterval) - (year < 0 ? yearsInterval : 0))\n const editRange = ref(null)\n\n const classes = computed(() => {\n const type = props.landscape === true ? 'landscape' : 'portrait'\n return `q-date q-date--${ type } q-date--${ type }-${ props.minimal === true ? 'minimal' : 'standard' }`\n + (isDark.value === true ? ' q-date--dark q-dark' : '')\n + (props.bordered === true ? ' q-date--bordered' : '')\n + (props.square === true ? ' q-date--square no-border-radius' : '')\n + (props.flat === true ? ' q-date--flat no-shadow' : '')\n + (props.disable === true ? ' disabled' : (props.readonly === true ? ' q-date--readonly' : ''))\n })\n\n const computedColor = computed(() => {\n return props.color || 'primary'\n })\n\n const computedTextColor = computed(() => {\n return props.textColor || 'white'\n })\n\n const isImmediate = computed(() =>\n props.emitImmediately === true\n && props.multiple !== true\n && props.range !== true\n )\n\n const normalizedModel = computed(() => (\n Array.isArray(props.modelValue) === true\n ? props.modelValue\n : (props.modelValue !== null && props.modelValue !== void 0 ? [ props.modelValue ] : [])\n ))\n\n const daysModel = computed(() =>\n normalizedModel.value\n .filter(date => typeof date === 'string')\n .map(date => decodeString(date, innerMask.value, innerLocale.value))\n .filter(date =>\n date.dateHash !== null\n && date.day !== null\n && date.month !== null\n && date.year !== null\n )\n )\n\n const rangeModel = computed(() => {\n const fn = date => decodeString(date, innerMask.value, innerLocale.value)\n return normalizedModel.value\n .filter(date => isObject(date) === true && date.from !== void 0 && date.to !== void 0)\n .map(range => ({ from: fn(range.from), to: fn(range.to) }))\n .filter(range => range.from.dateHash !== null && range.to.dateHash !== null && range.from.dateHash < range.to.dateHash)\n })\n\n const getNativeDateFn = computed(() => (\n props.calendar !== 'persian'\n ? model => new Date(model.year, model.month - 1, model.day)\n : model => {\n const gDate = toGregorian(model.year, model.month, model.day)\n return new Date(gDate.gy, gDate.gm - 1, gDate.gd)\n }\n ))\n\n const encodeObjectFn = computed(() => (\n props.calendar === 'persian'\n ? getDayHash\n : (date, mask, locale) => formatDate(\n new Date(\n date.year,\n date.month - 1,\n date.day,\n date.hour,\n date.minute,\n date.second,\n date.millisecond\n ),\n mask === void 0 ? innerMask.value : mask,\n locale === void 0 ? innerLocale.value : locale,\n date.year,\n date.timezoneOffset\n )\n ))\n\n const daysInModel = computed(() =>\n daysModel.value.length + rangeModel.value.reduce(\n (acc, range) => acc + 1 + getDateDiff(\n getNativeDateFn.value(range.to),\n getNativeDateFn.value(range.from)\n ),\n 0\n )\n )\n\n const headerTitle = computed(() => {\n if (props.title !== void 0 && props.title !== null && props.title.length !== 0) {\n return props.title\n }\n\n if (editRange.value !== null) {\n const model = editRange.value.init\n const date = getNativeDateFn.value(model)\n\n return innerLocale.value.daysShort[ date.getDay() ] + ', '\n + innerLocale.value.monthsShort[ model.month - 1 ] + ' '\n + model.day + lineStr + '?'\n }\n\n if (daysInModel.value === 0) {\n return lineStr\n }\n\n if (daysInModel.value > 1) {\n return `${ daysInModel.value } ${ innerLocale.value.pluralDay }`\n }\n\n const model = daysModel.value[ 0 ]\n const date = getNativeDateFn.value(model)\n\n if (isNaN(date.valueOf()) === true) {\n return lineStr\n }\n\n if (innerLocale.value.headerTitle !== void 0) {\n return innerLocale.value.headerTitle(date, model)\n }\n\n return innerLocale.value.daysShort[ date.getDay() ] + ', '\n + innerLocale.value.monthsShort[ model.month - 1 ] + ' '\n + model.day\n })\n\n const minSelectedModel = computed(() => {\n const model = daysModel.value.concat(rangeModel.value.map(range => range.from))\n .sort((a, b) => a.year - b.year || a.month - b.month)\n\n return model[ 0 ]\n })\n\n const maxSelectedModel = computed(() => {\n const model = daysModel.value.concat(rangeModel.value.map(range => range.to))\n .sort((a, b) => b.year - a.year || b.month - a.month)\n\n return model[ 0 ]\n })\n\n const headerSubtitle = computed(() => {\n if (props.subtitle !== void 0 && props.subtitle !== null && props.subtitle.length !== 0) {\n return props.subtitle\n }\n\n if (daysInModel.value === 0) {\n return lineStr\n }\n\n if (daysInModel.value > 1) {\n const from = minSelectedModel.value\n const to = maxSelectedModel.value\n const month = innerLocale.value.monthsShort\n\n return month[ from.month - 1 ] + (\n from.year !== to.year\n ? ' ' + from.year + lineStr + month[ to.month - 1 ] + ' '\n : (\n from.month !== to.month\n ? lineStr + month[ to.month - 1 ]\n : ''\n )\n ) + ' ' + to.year\n }\n\n return daysModel.value[ 0 ].year\n })\n\n const dateArrow = computed(() => {\n const val = [ $q.iconSet.datetime.arrowLeft, $q.iconSet.datetime.arrowRight ]\n return $q.lang.rtl === true ? val.reverse() : val\n })\n\n const computedFirstDayOfWeek = computed(() => (\n props.firstDayOfWeek !== void 0\n ? Number(props.firstDayOfWeek)\n : innerLocale.value.firstDayOfWeek\n ))\n\n const daysOfWeek = computed(() => {\n const\n days = innerLocale.value.daysShort,\n first = computedFirstDayOfWeek.value\n\n return first > 0\n ? days.slice(first, 7).concat(days.slice(0, first))\n : days\n })\n\n const daysInMonth = computed(() => {\n const date = viewModel.value\n return props.calendar !== 'persian'\n ? (new Date(date.year, date.month, 0)).getDate()\n : jalaaliMonthLength(date.year, date.month)\n })\n\n const evtColor = computed(() => (\n typeof props.eventColor === 'function'\n ? props.eventColor\n : () => props.eventColor\n ))\n\n const minNav = computed(() => {\n if (props.navigationMinYearMonth === void 0) {\n return null\n }\n\n const data = props.navigationMinYearMonth.split('/')\n return { year: parseInt(data[ 0 ], 10), month: parseInt(data[ 1 ], 10) }\n })\n\n const maxNav = computed(() => {\n if (props.navigationMaxYearMonth === void 0) {\n return null\n }\n\n const data = props.navigationMaxYearMonth.split('/')\n return { year: parseInt(data[ 0 ], 10), month: parseInt(data[ 1 ], 10) }\n })\n\n const navBoundaries = computed(() => {\n const data = {\n month: { prev: true, next: true },\n year: { prev: true, next: true }\n }\n\n if (minNav.value !== null && minNav.value.year >= viewModel.value.year) {\n data.year.prev = false\n if (minNav.value.year === viewModel.value.year && minNav.value.month >= viewModel.value.month) {\n data.month.prev = false\n }\n }\n\n if (maxNav.value !== null && maxNav.value.year <= viewModel.value.year) {\n data.year.next = false\n if (maxNav.value.year === viewModel.value.year && maxNav.value.month <= viewModel.value.month) {\n data.month.next = false\n }\n }\n\n return data\n })\n\n const daysMap = computed(() => {\n const map = {}\n\n daysModel.value.forEach(entry => {\n const hash = getMonthHash(entry)\n\n if (map[ hash ] === void 0) {\n map[ hash ] = []\n }\n\n map[ hash ].push(entry.day)\n })\n\n return map\n })\n\n const rangeMap = computed(() => {\n const map = {}\n\n rangeModel.value.forEach(entry => {\n const hashFrom = getMonthHash(entry.from)\n const hashTo = getMonthHash(entry.to)\n\n if (map[ hashFrom ] === void 0) {\n map[ hashFrom ] = []\n }\n\n map[ hashFrom ].push({\n from: entry.from.day,\n to: hashFrom === hashTo ? entry.to.day : void 0,\n range: entry\n })\n\n if (hashFrom < hashTo) {\n let hash\n const { year, month } = entry.from\n const cur = month < 12\n ? { year, month: month + 1 }\n : { year: year + 1, month: 1 }\n\n while ((hash = getMonthHash(cur)) <= hashTo) {\n if (map[ hash ] === void 0) {\n map[ hash ] = []\n }\n\n map[ hash ].push({\n from: void 0,\n to: hash === hashTo ? entry.to.day : void 0,\n range: entry\n })\n\n cur.month++\n if (cur.month > 12) {\n cur.year++\n cur.month = 1\n }\n }\n }\n })\n\n return map\n })\n\n const rangeView = computed(() => {\n if (editRange.value === null) {\n return\n }\n\n const { init, initHash, final, finalHash } = editRange.value\n\n const [ from, to ] = initHash <= finalHash\n ? [ init, final ]\n : [ final, init ]\n\n const fromHash = getMonthHash(from)\n const toHash = getMonthHash(to)\n\n if (fromHash !== viewMonthHash.value && toHash !== viewMonthHash.value) {\n return\n }\n\n const view = {}\n\n if (fromHash === viewMonthHash.value) {\n view.from = from.day\n view.includeFrom = true\n }\n else {\n view.from = 1\n }\n\n if (toHash === viewMonthHash.value) {\n view.to = to.day\n view.includeTo = true\n }\n else {\n view.to = daysInMonth.value\n }\n\n return view\n })\n\n const viewMonthHash = computed(() => getMonthHash(viewModel.value))\n\n const selectionDaysMap = computed(() => {\n const map = {}\n\n if (props.options === void 0) {\n for (let i = 1; i <= daysInMonth.value; i++) {\n map[ i ] = true\n }\n\n return map\n }\n\n const fn = typeof props.options === 'function'\n ? props.options\n : date => props.options.includes(date)\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const dayHash = viewMonthHash.value + '/' + pad(i)\n map[ i ] = fn(dayHash)\n }\n\n return map\n })\n\n const eventDaysMap = computed(() => {\n const map = {}\n\n if (props.events === void 0) {\n for (let i = 1; i <= daysInMonth.value; i++) {\n map[ i ] = false\n }\n }\n else {\n const fn = typeof props.events === 'function'\n ? props.events\n : date => props.events.includes(date)\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const dayHash = viewMonthHash.value + '/' + pad(i)\n map[ i ] = fn(dayHash) === true && evtColor.value(dayHash)\n }\n }\n\n return map\n })\n\n const viewDays = computed(() => {\n let date, endDay\n const { year, month } = viewModel.value\n\n if (props.calendar !== 'persian') {\n date = new Date(year, month - 1, 1)\n endDay = (new Date(year, month - 1, 0)).getDate()\n }\n else {\n const gDate = toGregorian(year, month, 1)\n date = new Date(gDate.gy, gDate.gm - 1, gDate.gd)\n let prevJM = month - 1\n let prevJY = year\n if (prevJM === 0) {\n prevJM = 12\n prevJY--\n }\n endDay = jalaaliMonthLength(prevJY, prevJM)\n }\n\n return {\n days: date.getDay() - computedFirstDayOfWeek.value - 1,\n endDay\n }\n })\n\n const days = computed(() => {\n const res = []\n const { days, endDay } = viewDays.value\n\n const len = days < 0 ? days + 7 : days\n if (len < 6) {\n for (let i = endDay - len; i <= endDay; i++) {\n res.push({ i, fill: true })\n }\n }\n\n const index = res.length\n\n for (let i = 1; i <= daysInMonth.value; i++) {\n const day = { i, event: eventDaysMap.value[ i ], classes: [] }\n\n if (selectionDaysMap.value[ i ] === true) {\n day.in = true\n day.flat = true\n }\n\n res.push(day)\n }\n\n // if current view has days in model\n if (daysMap.value[ viewMonthHash.value ] !== void 0) {\n daysMap.value[ viewMonthHash.value ].forEach(day => {\n const i = index + day - 1\n Object.assign(res[ i ], {\n selected: true,\n unelevated: true,\n flat: false,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n })\n }\n\n // if current view has ranges in model\n if (rangeMap.value[ viewMonthHash.value ] !== void 0) {\n rangeMap.value[ viewMonthHash.value ].forEach(entry => {\n if (entry.from !== void 0) {\n const from = index + entry.from - 1\n const to = index + (entry.to || daysInMonth.value) - 1\n\n for (let day = from; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n\n Object.assign(res[ from ], {\n rangeFrom: true,\n flat: false\n })\n\n entry.to !== void 0 && Object.assign(res[ to ], {\n rangeTo: true,\n flat: false\n })\n }\n else if (entry.to !== void 0) {\n const to = index + entry.to - 1\n\n for (let day = index; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n\n Object.assign(res[ to ], {\n flat: false,\n rangeTo: true\n })\n }\n else {\n const to = index + daysInMonth.value - 1\n for (let day = index; day <= to; day++) {\n Object.assign(res[ day ], {\n range: entry.range,\n unelevated: true,\n color: computedColor.value,\n textColor: computedTextColor.value\n })\n }\n }\n })\n }\n\n if (rangeView.value !== void 0) {\n const from = index + rangeView.value.from - 1\n const to = index + rangeView.value.to - 1\n\n for (let day = from; day <= to; day++) {\n res[ day ].color = computedColor.value\n res[ day ].editRange = true\n }\n\n if (rangeView.value.includeFrom === true) {\n res[ from ].editRangeFrom = true\n }\n if (rangeView.value.includeTo === true) {\n res[ to ].editRangeTo = true\n }\n }\n\n if (viewModel.value.year === today.value.year && viewModel.value.month === today.value.month) {\n res[ index + today.value.day - 1 ].today = true\n }\n\n const left = res.length % 7\n if (left > 0) {\n const afterDays = 7 - left\n for (let i = 1; i <= afterDays; i++) {\n res.push({ i, fill: true })\n }\n }\n\n res.forEach(day => {\n let cls = 'q-date__calendar-item '\n\n if (day.fill === true) {\n cls += 'q-date__calendar-item--fill'\n }\n else {\n cls += `q-date__calendar-item--${ day.in === true ? 'in' : 'out' }`\n\n if (day.range !== void 0) {\n cls += ` q-date__range${ day.rangeTo === true ? '-to' : (day.rangeFrom === true ? '-from' : '') }`\n }\n\n if (day.editRange === true) {\n cls += ` q-date__edit-range${ day.editRangeFrom === true ? '-from' : '' }${ day.editRangeTo === true ? '-to' : '' }`\n }\n\n if (day.range !== void 0 || day.editRange === true) {\n cls += ` text-${ day.color }`\n }\n }\n\n day.classes = cls\n })\n\n return res\n })\n\n const attributes = computed(() => (\n props.disable === true\n ? { 'aria-disabled': 'true' }\n : {}\n ))\n\n watch(() => props.modelValue, v => {\n if (lastEmitValue === v) {\n lastEmitValue = 0\n }\n else {\n const model = getViewModel(innerMask.value, innerLocale.value)\n updateViewModel(model.year, model.month, model)\n }\n })\n\n watch(view, () => {\n if (blurTargetRef.value !== null && proxy.$el.contains(document.activeElement) === true) {\n blurTargetRef.value.focus()\n }\n })\n\n watch(() => viewModel.value.year + '|' + viewModel.value.month, () => {\n emit('navigation', { year: viewModel.value.year, month: viewModel.value.month })\n })\n\n watch(mask, val => {\n updateValue(val, innerLocale.value, 'mask')\n innerMask.value = val\n })\n\n watch(locale, val => {\n updateValue(innerMask.value, val, 'locale')\n innerLocale.value = val\n })\n\n function setToday () {\n const { year, month, day } = today.value\n\n const date = {\n // contains more props than needed (hour, minute, second, millisecond)\n // but those aren't used in the processing of this \"date\" variable\n ...viewModel.value,\n\n // overwriting with today's date\n year,\n month,\n day\n }\n\n const monthMap = daysMap.value[ getMonthHash(date) ]\n\n if (monthMap === void 0 || monthMap.includes(date.day) === false) {\n addToModel(date)\n }\n\n setCalendarTo(date.year, date.month)\n }\n\n function setView (viewMode) {\n if (viewIsValid(viewMode) === true) {\n view.value = viewMode\n }\n }\n\n function offsetCalendar (type, descending) {\n if ([ 'month', 'year' ].includes(type)) {\n const fn = type === 'month' ? goToMonth : goToYear\n fn(descending === true ? -1 : 1)\n }\n }\n\n function setCalendarTo (year, month) {\n view.value = 'Calendar'\n updateViewModel(year, month)\n }\n\n function setEditingRange (from, to) {\n if (props.range === false || !from) {\n editRange.value = null\n return\n }\n\n const init = Object.assign({ ...viewModel.value }, from)\n const final = to !== void 0\n ? Object.assign({ ...viewModel.value }, to)\n : init\n\n editRange.value = {\n init,\n initHash: getDayHash(init),\n final,\n finalHash: getDayHash(final)\n }\n\n setCalendarTo(init.year, init.month)\n }\n\n function getMask () {\n return props.calendar === 'persian' ? 'YYYY/MM/DD' : props.mask\n }\n\n function decodeString (date, mask, locale) {\n return __splitDate(\n date,\n mask,\n locale,\n props.calendar,\n {\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0\n }\n )\n }\n\n function getViewModel (mask, locale) {\n const model = Array.isArray(props.modelValue) === true\n ? props.modelValue\n : (props.modelValue ? [ props.modelValue ] : [])\n\n if (model.length === 0) {\n return getDefaultViewModel()\n }\n\n const target = model[ model.length - 1 ]\n const decoded = decodeString(\n target.from !== void 0 ? target.from : target,\n mask,\n locale\n )\n\n return decoded.dateHash === null\n ? getDefaultViewModel()\n : decoded\n }\n\n function getDefaultViewModel () {\n let year, month\n\n if (props.defaultYearMonth !== void 0) {\n const d = props.defaultYearMonth.split('/')\n year = parseInt(d[ 0 ], 10)\n month = parseInt(d[ 1 ], 10)\n }\n else {\n // may come from data() where computed\n // props are not yet available\n const d = today.value !== void 0\n ? today.value\n : getCurrentDate()\n\n year = d.year\n month = d.month\n }\n\n return {\n year,\n month,\n day: 1,\n hour: 0,\n minute: 0,\n second: 0,\n millisecond: 0,\n dateHash: year + '/' + pad(month) + '/01'\n }\n }\n\n function goToMonth (offset) {\n let year = viewModel.value.year\n let month = Number(viewModel.value.month) + offset\n\n if (month === 13) {\n month = 1\n year++\n }\n else if (month === 0) {\n month = 12\n year--\n }\n\n updateViewModel(year, month)\n isImmediate.value === true && emitImmediately('month')\n }\n\n function goToYear (offset) {\n const year = Number(viewModel.value.year) + offset\n updateViewModel(year, viewModel.value.month)\n isImmediate.value === true && emitImmediately('year')\n }\n\n function setYear (year) {\n updateViewModel(year, viewModel.value.month)\n view.value = props.defaultView === 'Years' ? 'Months' : 'Calendar'\n isImmediate.value === true && emitImmediately('year')\n }\n\n function setMonth (month) {\n updateViewModel(viewModel.value.year, month)\n view.value = 'Calendar'\n isImmediate.value === true && emitImmediately('month')\n }\n\n function toggleDate (date, monthHash) {\n const month = daysMap.value[ monthHash ]\n const fn = month !== void 0 && month.includes(date.day) === true\n ? removeFromModel\n : addToModel\n\n fn(date)\n }\n\n function getShortDate (date) {\n return { year: date.year, month: date.month, day: date.day }\n }\n\n function updateViewModel (year, month, time) {\n if (minNav.value !== null && year <= minNav.value.year) {\n if (month < minNav.value.month || year < minNav.value.year) {\n month = minNav.value.month\n }\n year = minNav.value.year\n }\n\n if (maxNav.value !== null && year >= maxNav.value.year) {\n if (month > maxNav.value.month || year > maxNav.value.year) {\n month = maxNav.value.month\n }\n year = maxNav.value.year\n }\n\n if (time !== void 0) {\n const { hour, minute, second, millisecond, timezoneOffset, timeHash } = time\n Object.assign(viewModel.value, { hour, minute, second, millisecond, timezoneOffset, timeHash })\n }\n\n const newHash = year + '/' + pad(month) + '/01'\n\n if (newHash !== viewModel.value.dateHash) {\n monthDirection.value = (viewModel.value.dateHash < newHash) === ($q.lang.rtl !== true) ? 'left' : 'right'\n if (year !== viewModel.value.year) {\n yearDirection.value = monthDirection.value\n }\n\n nextTick(() => {\n startYear.value = year - year % yearsInterval - (year < 0 ? yearsInterval : 0)\n Object.assign(viewModel.value, {\n year,\n month,\n day: 1,\n dateHash: newHash\n })\n })\n }\n }\n\n function emitValue (val, action, date) {\n const value = val !== null && val.length === 1 && props.multiple === false\n ? val[ 0 ]\n : val\n\n lastEmitValue = value\n\n const { reason, details } = getEmitParams(action, date)\n emit('update:modelValue', value, reason, details)\n }\n\n function emitImmediately (reason) {\n const date = daysModel.value[ 0 ] !== void 0 && daysModel.value[ 0 ].dateHash !== null\n ? { ...daysModel.value[ 0 ] }\n : { ...viewModel.value } // inherit day, hours, minutes, milliseconds...\n\n // nextTick required because of animation delay in viewModel\n nextTick(() => {\n date.year = viewModel.value.year\n date.month = viewModel.value.month\n\n const maxDay = props.calendar !== 'persian'\n ? (new Date(date.year, date.month, 0)).getDate()\n : jalaaliMonthLength(date.year, date.month)\n\n date.day = Math.min(Math.max(1, date.day), maxDay)\n\n const value = encodeEntry(date)\n lastEmitValue = value\n\n const { details } = getEmitParams('', date)\n emit('update:modelValue', value, reason, details)\n })\n }\n\n function getEmitParams (action, date) {\n return date.from !== void 0\n ? {\n reason: `${ action }-range`,\n details: {\n ...getShortDate(date.target),\n from: getShortDate(date.from),\n to: getShortDate(date.to)\n }\n }\n : {\n reason: `${ action }-day`,\n details: getShortDate(date)\n }\n }\n\n function encodeEntry (date, mask, locale) {\n return date.from !== void 0\n ? { from: encodeObjectFn.value(date.from, mask, locale), to: encodeObjectFn.value(date.to, mask, locale) }\n : encodeObjectFn.value(date, mask, locale)\n }\n\n function addToModel (date) {\n let value\n\n if (props.multiple === true) {\n if (date.from !== void 0) {\n // we also need to filter out intersections\n\n const fromHash = getDayHash(date.from)\n const toHash = getDayHash(date.to)\n\n const days = daysModel.value\n .filter(day => day.dateHash < fromHash || day.dateHash > toHash)\n\n const ranges = rangeModel.value\n .filter(({ from, to }) => to.dateHash < fromHash || from.dateHash > toHash)\n\n value = days.concat(ranges).concat(date).map(entry => encodeEntry(entry))\n }\n else {\n const model = normalizedModel.value.slice()\n model.push(encodeEntry(date))\n value = model\n }\n }\n else {\n value = encodeEntry(date)\n }\n\n emitValue(value, 'add', date)\n }\n\n function removeFromModel (date) {\n if (props.noUnset === true) {\n return\n }\n\n let model = null\n\n if (props.multiple === true && Array.isArray(props.modelValue) === true) {\n const val = encodeEntry(date)\n\n if (date.from !== void 0) {\n model = props.modelValue.filter(\n date => (\n date.from !== void 0\n ? (date.from !== val.from && date.to !== val.to)\n : true\n )\n )\n }\n else {\n model = props.modelValue.filter(date => date !== val)\n }\n\n if (model.length === 0) {\n model = null\n }\n }\n\n emitValue(model, 'remove', date)\n }\n\n function updateValue (mask, locale, reason) {\n const model = daysModel.value\n .concat(rangeModel.value)\n .map(entry => encodeEntry(entry, mask, locale))\n .filter(entry => {\n return entry.from !== void 0\n ? entry.from.dateHash !== null && entry.to.dateHash !== null\n : entry.dateHash !== null\n })\n\n emit('update:modelValue', (props.multiple === true ? model : model[ 0 ]) || null, reason)\n }\n\n function getHeader () {\n if (props.minimal === true) return\n\n return h('div', {\n class: 'q-date__header ' + headerClass.value\n }, [\n h('div', {\n class: 'relative-position'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, () => h('div', {\n key: 'h-yr-' + headerSubtitle.value,\n class: 'q-date__header-subtitle q-date__header-link '\n + (view.value === 'Years' ? 'q-date__header-link--active' : 'cursor-pointer'),\n tabindex: tabindex.value,\n ...getCache('vY', {\n onClick () { view.value = 'Years' },\n onKeyup (e) { e.keyCode === 13 && (view.value = 'Years') }\n })\n }, [ headerSubtitle.value ]))\n ]),\n\n h('div', {\n class: 'q-date__header-title relative-position flex no-wrap'\n }, [\n h('div', {\n class: 'relative-position col'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, () => h('div', {\n key: 'h-sub' + headerTitle.value,\n class: 'q-date__header-title-label q-date__header-link '\n + (view.value === 'Calendar' ? 'q-date__header-link--active' : 'cursor-pointer'),\n tabindex: tabindex.value,\n ...getCache('vC', {\n onClick () { view.value = 'Calendar' },\n onKeyup (e) { e.keyCode === 13 && (view.value = 'Calendar') }\n })\n }, [ headerTitle.value ]))\n ]),\n\n props.todayBtn === true ? h(QBtn, {\n class: 'q-date__header-today self-start',\n icon: $q.iconSet.datetime.today,\n flat: true,\n size: 'sm',\n round: true,\n tabindex: tabindex.value,\n onClick: setToday\n }) : null\n ])\n ])\n }\n\n function getNavigation ({ label, type, key, dir, goTo, boundaries, cls }) {\n return [\n h('div', {\n class: 'row items-center q-date__arrow'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n size: 'sm',\n flat: true,\n icon: dateArrow.value[ 0 ],\n tabindex: tabindex.value,\n disable: boundaries.prev === false,\n ...getCache('go-#' + type, { onClick () { goTo(-1) } })\n })\n ]),\n\n h('div', {\n class: 'relative-position overflow-hidden flex flex-center' + cls\n }, [\n h(Transition, {\n name: 'q-transition--jump-' + dir\n }, () => h('div', { key }, [\n h(QBtn, {\n flat: true,\n dense: true,\n noCaps: true,\n label,\n tabindex: tabindex.value,\n ...getCache('view#' + type, { onClick: () => { view.value = type } })\n })\n ]))\n ]),\n\n h('div', {\n class: 'row items-center q-date__arrow'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n size: 'sm',\n flat: true,\n icon: dateArrow.value[ 1 ],\n tabindex: tabindex.value,\n disable: boundaries.next === false,\n ...getCache('go+#' + type, { onClick () { goTo(1) } })\n })\n ])\n ]\n }\n\n const renderViews = {\n Calendar: () => ([\n h('div', {\n key: 'calendar-view',\n class: 'q-date__view q-date__calendar'\n }, [\n h('div', {\n class: 'q-date__navigation row items-center no-wrap'\n }, getNavigation({\n label: innerLocale.value.months[ viewModel.value.month - 1 ],\n type: 'Months',\n key: viewModel.value.month,\n dir: monthDirection.value,\n goTo: goToMonth,\n boundaries: navBoundaries.value.month,\n cls: ' col'\n }).concat(getNavigation({\n label: viewModel.value.year,\n type: 'Years',\n key: viewModel.value.year,\n dir: yearDirection.value,\n goTo: goToYear,\n boundaries: navBoundaries.value.year,\n cls: ''\n }))),\n\n h('div', {\n class: 'q-date__calendar-weekdays row items-center no-wrap'\n }, daysOfWeek.value.map(day => h('div', { class: 'q-date__calendar-item' }, [ h('div', day) ]))),\n\n h('div', {\n class: 'q-date__calendar-days-container relative-position overflow-hidden'\n }, [\n h(Transition, {\n name: 'q-transition--slide-' + monthDirection.value\n }, () => h('div', {\n key: viewMonthHash.value,\n class: 'q-date__calendar-days fit'\n }, days.value.map(day => h('div', { class: day.classes }, [\n day.in === true\n ? h(\n QBtn, {\n class: day.today === true ? 'q-date__today' : '',\n dense: true,\n flat: day.flat,\n unelevated: day.unelevated,\n color: day.color,\n textColor: day.textColor,\n label: day.i,\n tabindex: tabindex.value,\n ...getCache('day#' + day.i, {\n onClick: () => { onDayClick(day.i) },\n onMouseover: () => { onDayMouseover(day.i) }\n })\n },\n day.event !== false\n ? () => h('div', { class: 'q-date__event bg-' + day.event })\n : null\n )\n : h('div', '' + day.i)\n ]))))\n ])\n ])\n ]),\n\n Months () {\n const currentYear = viewModel.value.year === today.value.year\n const isDisabled = month => {\n return (\n (minNav.value !== null && viewModel.value.year === minNav.value.year && minNav.value.month > month)\n || (maxNav.value !== null && viewModel.value.year === maxNav.value.year && maxNav.value.month < month)\n )\n }\n\n const content = innerLocale.value.monthsShort.map((month, i) => {\n const active = viewModel.value.month === i + 1\n\n return h('div', {\n class: 'q-date__months-item flex flex-center'\n }, [\n h(QBtn, {\n class: currentYear === true && today.value.month === i + 1 ? 'q-date__today' : null,\n flat: active !== true,\n label: month,\n unelevated: active,\n color: active === true ? computedColor.value : null,\n textColor: active === true ? computedTextColor.value : null,\n tabindex: tabindex.value,\n disable: isDisabled(i + 1),\n ...getCache('month#' + i, { onClick: () => { setMonth(i + 1) } })\n })\n ])\n })\n\n props.yearsInMonthView === true && content.unshift(\n h('div', { class: 'row no-wrap full-width' }, [\n getNavigation({\n label: viewModel.value.year,\n type: 'Years',\n key: viewModel.value.year,\n dir: yearDirection.value,\n goTo: goToYear,\n boundaries: navBoundaries.value.year,\n cls: ' col'\n })\n ])\n )\n\n return h('div', {\n key: 'months-view',\n class: 'q-date__view q-date__months flex flex-center'\n }, content)\n },\n\n Years () {\n const\n start = startYear.value,\n stop = start + yearsInterval,\n years = []\n\n const isDisabled = year => {\n return (\n (minNav.value !== null && minNav.value.year > year)\n || (maxNav.value !== null && maxNav.value.year < year)\n )\n }\n\n for (let i = start; i <= stop; i++) {\n const active = viewModel.value.year === i\n\n years.push(\n h('div', {\n class: 'q-date__years-item flex flex-center'\n }, [\n h(QBtn, {\n key: 'yr' + i,\n class: today.value.year === i ? 'q-date__today' : null,\n flat: !active,\n label: i,\n dense: true,\n unelevated: active,\n color: active === true ? computedColor.value : null,\n textColor: active === true ? computedTextColor.value : null,\n tabindex: tabindex.value,\n disable: isDisabled(i),\n ...getCache('yr#' + i, { onClick: () => { setYear(i) } })\n })\n ])\n )\n }\n\n return h('div', {\n class: 'q-date__view q-date__years flex flex-center'\n }, [\n h('div', {\n class: 'col-auto'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n flat: true,\n icon: dateArrow.value[ 0 ],\n tabindex: tabindex.value,\n disable: isDisabled(start),\n ...getCache('y-', { onClick: () => { startYear.value -= yearsInterval } })\n })\n ]),\n\n h('div', {\n class: 'q-date__years-content col self-stretch row items-center'\n }, years),\n\n h('div', {\n class: 'col-auto'\n }, [\n h(QBtn, {\n round: true,\n dense: true,\n flat: true,\n icon: dateArrow.value[ 1 ],\n tabindex: tabindex.value,\n disable: isDisabled(stop),\n ...getCache('y+', { onClick: () => { startYear.value += yearsInterval } })\n })\n ])\n ])\n }\n }\n\n function onDayClick (dayIndex) {\n const day = { ...viewModel.value, day: dayIndex }\n\n if (props.range === false) {\n toggleDate(day, viewMonthHash.value)\n return\n }\n\n if (editRange.value === null) {\n const dayProps = days.value.find(day => day.fill !== true && day.i === dayIndex)\n\n if (props.noUnset !== true && dayProps.range !== void 0) {\n removeFromModel({ target: day, from: dayProps.range.from, to: dayProps.range.to })\n return\n }\n\n if (dayProps.selected === true) {\n removeFromModel(day)\n return\n }\n\n const initHash = getDayHash(day)\n\n editRange.value = {\n init: day,\n initHash,\n final: day,\n finalHash: initHash\n }\n\n emit('rangeStart', getShortDate(day))\n }\n else {\n const\n initHash = editRange.value.initHash,\n finalHash = getDayHash(day),\n payload = initHash <= finalHash\n ? { from: editRange.value.init, to: day }\n : { from: day, to: editRange.value.init }\n\n editRange.value = null\n addToModel(initHash === finalHash ? day : { target: day, ...payload })\n\n emit('rangeEnd', {\n from: getShortDate(payload.from),\n to: getShortDate(payload.to)\n })\n }\n }\n\n function onDayMouseover (dayIndex) {\n if (editRange.value !== null) {\n const final = { ...viewModel.value, day: dayIndex }\n\n Object.assign(editRange.value, {\n final,\n finalHash: getDayHash(final)\n })\n }\n }\n\n // expose public methods\n Object.assign(proxy, {\n setToday, setView, offsetCalendar, setCalendarTo, setEditingRange\n })\n\n return () => {\n const content = [\n h('div', {\n class: 'q-date__content col relative-position'\n }, [\n h(Transition, {\n name: 'q-transition--fade'\n }, renderViews[ view.value ])\n ])\n ]\n\n const def = hSlot(slots.default)\n def !== void 0 && content.push(\n h('div', { class: 'q-date__actions' }, def)\n )\n\n if (props.name !== void 0 && props.disable !== true) {\n injectFormInput(content, 'push')\n }\n\n return h('div', {\n class: classes.value,\n ...attributes.value\n }, [\n getHeader(),\n\n h('div', {\n ref: blurTargetRef,\n class: 'q-date__main col column',\n tabindex: -1\n }, content)\n ])\n }\n }\n})\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./carouselFlipComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./carouselFlipComponent.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribeSkeleton.vue?vue&type=style&index=0&id=a86c4358&lang=scss&scoped=true\"","\n\n\n\n\n","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./graph.vue?vue&type=style&index=0&id=1f4385c0&scoped=true&lang=scss\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DashAreaComponent.vue?vue&type=style&index=0&id=30fcb30e&scoped=true&lang=css\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyVouchersComponent.vue?vue&type=style&index=0&id=4266120a&scoped=true&lang=css\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareComponent.vue?vue&type=template&id=7a5873ae&scoped=true\"","\n\n\n\n\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./pending-docs.vue?vue&type=style&index=0&id=0a5479d2&lang=scss&scoped=true\"","\n\n\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./shareNow.vue?vue&type=template&id=520ba1cc&scoped=true\"","// extracted by mini-css-extract-plugin","\n\n\n\n\n","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widgetsContainer.vue?vue&type=style&index=0&id=cec7594e&lang=scss\"","import { render } from \"./firstAcessTutorial.vue?vue&type=template&id=304cfef8&scoped=true\"\nimport script from \"./firstAcessTutorial.vue?vue&type=script&lang=js\"\nexport * from \"./firstAcessTutorial.vue?vue&type=script&lang=js\"\n\nimport \"./firstAcessTutorial.vue?vue&type=style&index=0&id=304cfef8&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-304cfef8\"]])\n\nexport default __exports__\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QBar from 'quasar/src/components/bar/QBar.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QDialog,QCard,QBar,QCardSection,QImg,QCardActions,QBtn});\n","\n\n\n\n\n\n\n","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./invite.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./invite.vue?vue&type=script&lang=js\"","// extracted by mini-css-extract-plugin","\n\n\n\n","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./products.vue?vue&type=template&id=241a078b&scoped=true\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CarouselMultiItensComponent.vue?vue&type=style&index=0&id=1ab9d98c&lang=scss&scoped=true\"","export { default } from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./productItemStore.vue?vue&type=script&lang=js\"; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./productItemStore.vue?vue&type=script&lang=js\"","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./graph.vue?vue&type=template&id=1f4385c0&scoped=true\"","import script from \"./DefaultDashboard.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./DefaultDashboard.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./DefaultDashboard.vue?vue&type=style&index=0&id=7e1980a2&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__","\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyLinksComponent.vue?vue&type=style&index=0&id=f097a1b2&scoped=true&lang=css\"","// extracted by mini-css-extract-plugin","import { render } from \"./CardFlipPartnerSubscribeSkeleton.vue?vue&type=template&id=a86c4358&scoped=true\"\nimport script from \"./CardFlipPartnerSubscribeSkeleton.vue?vue&type=script&lang=js\"\nexport * from \"./CardFlipPartnerSubscribeSkeleton.vue?vue&type=script&lang=js\"\n\nimport \"./CardFlipPartnerSubscribeSkeleton.vue?vue&type=style&index=0&id=a86c4358&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-a86c4358\"]])\n\nexport default __exports__\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCard,QCardSection,QSpace,QSkeleton,QItemLabel});\n","!function() {\n var d3 = {\n version: \"3.5.17\"\n };\n var d3_arraySlice = [].slice, d3_array = function(list) {\n return d3_arraySlice.call(list);\n };\n var d3_document = this.document;\n function d3_documentElement(node) {\n return node && (node.ownerDocument || node.document || node).documentElement;\n }\n function d3_window(node) {\n return node && (node.ownerDocument && node.ownerDocument.defaultView || node.document && node || node.defaultView);\n }\n if (d3_document) {\n try {\n d3_array(d3_document.documentElement.childNodes)[0].nodeType;\n } catch (e) {\n d3_array = function(list) {\n var i = list.length, array = new Array(i);\n while (i--) array[i] = list[i];\n return array;\n };\n }\n }\n if (!Date.now) Date.now = function() {\n return +new Date();\n };\n if (d3_document) {\n try {\n d3_document.createElement(\"DIV\").style.setProperty(\"opacity\", 0, \"\");\n } catch (error) {\n var d3_element_prototype = this.Element.prototype, d3_element_setAttribute = d3_element_prototype.setAttribute, d3_element_setAttributeNS = d3_element_prototype.setAttributeNS, d3_style_prototype = this.CSSStyleDeclaration.prototype, d3_style_setProperty = d3_style_prototype.setProperty;\n d3_element_prototype.setAttribute = function(name, value) {\n d3_element_setAttribute.call(this, name, value + \"\");\n };\n d3_element_prototype.setAttributeNS = function(space, local, value) {\n d3_element_setAttributeNS.call(this, space, local, value + \"\");\n };\n d3_style_prototype.setProperty = function(name, value, priority) {\n d3_style_setProperty.call(this, name, value + \"\", priority);\n };\n }\n }\n d3.ascending = d3_ascending;\n function d3_ascending(a, b) {\n return a < b ? -1 : a > b ? 1 : a >= b ? 0 : NaN;\n }\n d3.descending = function(a, b) {\n return b < a ? -1 : b > a ? 1 : b >= a ? 0 : NaN;\n };\n d3.min = function(array, f) {\n var i = -1, n = array.length, a, b;\n if (arguments.length === 1) {\n while (++i < n) if ((b = array[i]) != null && b >= b) {\n a = b;\n break;\n }\n while (++i < n) if ((b = array[i]) != null && a > b) a = b;\n } else {\n while (++i < n) if ((b = f.call(array, array[i], i)) != null && b >= b) {\n a = b;\n break;\n }\n while (++i < n) if ((b = f.call(array, array[i], i)) != null && a > b) a = b;\n }\n return a;\n };\n d3.max = function(array, f) {\n var i = -1, n = array.length, a, b;\n if (arguments.length === 1) {\n while (++i < n) if ((b = array[i]) != null && b >= b) {\n a = b;\n break;\n }\n while (++i < n) if ((b = array[i]) != null && b > a) a = b;\n } else {\n while (++i < n) if ((b = f.call(array, array[i], i)) != null && b >= b) {\n a = b;\n break;\n }\n while (++i < n) if ((b = f.call(array, array[i], i)) != null && b > a) a = b;\n }\n return a;\n };\n d3.extent = function(array, f) {\n var i = -1, n = array.length, a, b, c;\n if (arguments.length === 1) {\n while (++i < n) if ((b = array[i]) != null && b >= b) {\n a = c = b;\n break;\n }\n while (++i < n) if ((b = array[i]) != null) {\n if (a > b) a = b;\n if (c < b) c = b;\n }\n } else {\n while (++i < n) if ((b = f.call(array, array[i], i)) != null && b >= b) {\n a = c = b;\n break;\n }\n while (++i < n) if ((b = f.call(array, array[i], i)) != null) {\n if (a > b) a = b;\n if (c < b) c = b;\n }\n }\n return [ a, c ];\n };\n function d3_number(x) {\n return x === null ? NaN : +x;\n }\n function d3_numeric(x) {\n return !isNaN(x);\n }\n d3.sum = function(array, f) {\n var s = 0, n = array.length, a, i = -1;\n if (arguments.length === 1) {\n while (++i < n) if (d3_numeric(a = +array[i])) s += a;\n } else {\n while (++i < n) if (d3_numeric(a = +f.call(array, array[i], i))) s += a;\n }\n return s;\n };\n d3.mean = function(array, f) {\n var s = 0, n = array.length, a, i = -1, j = n;\n if (arguments.length === 1) {\n while (++i < n) if (d3_numeric(a = d3_number(array[i]))) s += a; else --j;\n } else {\n while (++i < n) if (d3_numeric(a = d3_number(f.call(array, array[i], i)))) s += a; else --j;\n }\n if (j) return s / j;\n };\n d3.quantile = function(values, p) {\n var H = (values.length - 1) * p + 1, h = Math.floor(H), v = +values[h - 1], e = H - h;\n return e ? v + e * (values[h] - v) : v;\n };\n d3.median = function(array, f) {\n var numbers = [], n = array.length, a, i = -1;\n if (arguments.length === 1) {\n while (++i < n) if (d3_numeric(a = d3_number(array[i]))) numbers.push(a);\n } else {\n while (++i < n) if (d3_numeric(a = d3_number(f.call(array, array[i], i)))) numbers.push(a);\n }\n if (numbers.length) return d3.quantile(numbers.sort(d3_ascending), .5);\n };\n d3.variance = function(array, f) {\n var n = array.length, m = 0, a, d, s = 0, i = -1, j = 0;\n if (arguments.length === 1) {\n while (++i < n) {\n if (d3_numeric(a = d3_number(array[i]))) {\n d = a - m;\n m += d / ++j;\n s += d * (a - m);\n }\n }\n } else {\n while (++i < n) {\n if (d3_numeric(a = d3_number(f.call(array, array[i], i)))) {\n d = a - m;\n m += d / ++j;\n s += d * (a - m);\n }\n }\n }\n if (j > 1) return s / (j - 1);\n };\n d3.deviation = function() {\n var v = d3.variance.apply(this, arguments);\n return v ? Math.sqrt(v) : v;\n };\n function d3_bisector(compare) {\n return {\n left: function(a, x, lo, hi) {\n if (arguments.length < 3) lo = 0;\n if (arguments.length < 4) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) < 0) lo = mid + 1; else hi = mid;\n }\n return lo;\n },\n right: function(a, x, lo, hi) {\n if (arguments.length < 3) lo = 0;\n if (arguments.length < 4) hi = a.length;\n while (lo < hi) {\n var mid = lo + hi >>> 1;\n if (compare(a[mid], x) > 0) hi = mid; else lo = mid + 1;\n }\n return lo;\n }\n };\n }\n var d3_bisect = d3_bisector(d3_ascending);\n d3.bisectLeft = d3_bisect.left;\n d3.bisect = d3.bisectRight = d3_bisect.right;\n d3.bisector = function(f) {\n return d3_bisector(f.length === 1 ? function(d, x) {\n return d3_ascending(f(d), x);\n } : f);\n };\n d3.shuffle = function(array, i0, i1) {\n if ((m = arguments.length) < 3) {\n i1 = array.length;\n if (m < 2) i0 = 0;\n }\n var m = i1 - i0, t, i;\n while (m) {\n i = Math.random() * m-- | 0;\n t = array[m + i0], array[m + i0] = array[i + i0], array[i + i0] = t;\n }\n return array;\n };\n d3.permute = function(array, indexes) {\n var i = indexes.length, permutes = new Array(i);\n while (i--) permutes[i] = array[indexes[i]];\n return permutes;\n };\n d3.pairs = function(array) {\n var i = 0, n = array.length - 1, p0, p1 = array[0], pairs = new Array(n < 0 ? 0 : n);\n while (i < n) pairs[i] = [ p0 = p1, p1 = array[++i] ];\n return pairs;\n };\n d3.transpose = function(matrix) {\n if (!(n = matrix.length)) return [];\n for (var i = -1, m = d3.min(matrix, d3_transposeLength), transpose = new Array(m); ++i < m; ) {\n for (var j = -1, n, row = transpose[i] = new Array(n); ++j < n; ) {\n row[j] = matrix[j][i];\n }\n }\n return transpose;\n };\n function d3_transposeLength(d) {\n return d.length;\n }\n d3.zip = function() {\n return d3.transpose(arguments);\n };\n d3.keys = function(map) {\n var keys = [];\n for (var key in map) keys.push(key);\n return keys;\n };\n d3.values = function(map) {\n var values = [];\n for (var key in map) values.push(map[key]);\n return values;\n };\n d3.entries = function(map) {\n var entries = [];\n for (var key in map) entries.push({\n key: key,\n value: map[key]\n });\n return entries;\n };\n d3.merge = function(arrays) {\n var n = arrays.length, m, i = -1, j = 0, merged, array;\n while (++i < n) j += arrays[i].length;\n merged = new Array(j);\n while (--n >= 0) {\n array = arrays[n];\n m = array.length;\n while (--m >= 0) {\n merged[--j] = array[m];\n }\n }\n return merged;\n };\n var abs = Math.abs;\n d3.range = function(start, stop, step) {\n if (arguments.length < 3) {\n step = 1;\n if (arguments.length < 2) {\n stop = start;\n start = 0;\n }\n }\n if ((stop - start) / step === Infinity) throw new Error(\"infinite range\");\n var range = [], k = d3_range_integerScale(abs(step)), i = -1, j;\n start *= k, stop *= k, step *= k;\n if (step < 0) while ((j = start + step * ++i) > stop) range.push(j / k); else while ((j = start + step * ++i) < stop) range.push(j / k);\n return range;\n };\n function d3_range_integerScale(x) {\n var k = 1;\n while (x * k % 1) k *= 10;\n return k;\n }\n function d3_class(ctor, properties) {\n for (var key in properties) {\n Object.defineProperty(ctor.prototype, key, {\n value: properties[key],\n enumerable: false\n });\n }\n }\n d3.map = function(object, f) {\n var map = new d3_Map();\n if (object instanceof d3_Map) {\n object.forEach(function(key, value) {\n map.set(key, value);\n });\n } else if (Array.isArray(object)) {\n var i = -1, n = object.length, o;\n if (arguments.length === 1) while (++i < n) map.set(i, object[i]); else while (++i < n) map.set(f.call(object, o = object[i], i), o);\n } else {\n for (var key in object) map.set(key, object[key]);\n }\n return map;\n };\n function d3_Map() {\n this._ = Object.create(null);\n }\n var d3_map_proto = \"__proto__\", d3_map_zero = \"\\x00\";\n d3_class(d3_Map, {\n has: d3_map_has,\n get: function(key) {\n return this._[d3_map_escape(key)];\n },\n set: function(key, value) {\n return this._[d3_map_escape(key)] = value;\n },\n remove: d3_map_remove,\n keys: d3_map_keys,\n values: function() {\n var values = [];\n for (var key in this._) values.push(this._[key]);\n return values;\n },\n entries: function() {\n var entries = [];\n for (var key in this._) entries.push({\n key: d3_map_unescape(key),\n value: this._[key]\n });\n return entries;\n },\n size: d3_map_size,\n empty: d3_map_empty,\n forEach: function(f) {\n for (var key in this._) f.call(this, d3_map_unescape(key), this._[key]);\n }\n });\n function d3_map_escape(key) {\n return (key += \"\") === d3_map_proto || key[0] === d3_map_zero ? d3_map_zero + key : key;\n }\n function d3_map_unescape(key) {\n return (key += \"\")[0] === d3_map_zero ? key.slice(1) : key;\n }\n function d3_map_has(key) {\n return d3_map_escape(key) in this._;\n }\n function d3_map_remove(key) {\n return (key = d3_map_escape(key)) in this._ && delete this._[key];\n }\n function d3_map_keys() {\n var keys = [];\n for (var key in this._) keys.push(d3_map_unescape(key));\n return keys;\n }\n function d3_map_size() {\n var size = 0;\n for (var key in this._) ++size;\n return size;\n }\n function d3_map_empty() {\n for (var key in this._) return false;\n return true;\n }\n d3.nest = function() {\n var nest = {}, keys = [], sortKeys = [], sortValues, rollup;\n function map(mapType, array, depth) {\n if (depth >= keys.length) return rollup ? rollup.call(nest, array) : sortValues ? array.sort(sortValues) : array;\n var i = -1, n = array.length, key = keys[depth++], keyValue, object, setter, valuesByKey = new d3_Map(), values;\n while (++i < n) {\n if (values = valuesByKey.get(keyValue = key(object = array[i]))) {\n values.push(object);\n } else {\n valuesByKey.set(keyValue, [ object ]);\n }\n }\n if (mapType) {\n object = mapType();\n setter = function(keyValue, values) {\n object.set(keyValue, map(mapType, values, depth));\n };\n } else {\n object = {};\n setter = function(keyValue, values) {\n object[keyValue] = map(mapType, values, depth);\n };\n }\n valuesByKey.forEach(setter);\n return object;\n }\n function entries(map, depth) {\n if (depth >= keys.length) return map;\n var array = [], sortKey = sortKeys[depth++];\n map.forEach(function(key, keyMap) {\n array.push({\n key: key,\n values: entries(keyMap, depth)\n });\n });\n return sortKey ? array.sort(function(a, b) {\n return sortKey(a.key, b.key);\n }) : array;\n }\n nest.map = function(array, mapType) {\n return map(mapType, array, 0);\n };\n nest.entries = function(array) {\n return entries(map(d3.map, array, 0), 0);\n };\n nest.key = function(d) {\n keys.push(d);\n return nest;\n };\n nest.sortKeys = function(order) {\n sortKeys[keys.length - 1] = order;\n return nest;\n };\n nest.sortValues = function(order) {\n sortValues = order;\n return nest;\n };\n nest.rollup = function(f) {\n rollup = f;\n return nest;\n };\n return nest;\n };\n d3.set = function(array) {\n var set = new d3_Set();\n if (array) for (var i = 0, n = array.length; i < n; ++i) set.add(array[i]);\n return set;\n };\n function d3_Set() {\n this._ = Object.create(null);\n }\n d3_class(d3_Set, {\n has: d3_map_has,\n add: function(key) {\n this._[d3_map_escape(key += \"\")] = true;\n return key;\n },\n remove: d3_map_remove,\n values: d3_map_keys,\n size: d3_map_size,\n empty: d3_map_empty,\n forEach: function(f) {\n for (var key in this._) f.call(this, d3_map_unescape(key));\n }\n });\n d3.behavior = {};\n function d3_identity(d) {\n return d;\n }\n d3.rebind = function(target, source) {\n var i = 1, n = arguments.length, method;\n while (++i < n) target[method = arguments[i]] = d3_rebind(target, source, source[method]);\n return target;\n };\n function d3_rebind(target, source, method) {\n return function() {\n var value = method.apply(source, arguments);\n return value === source ? target : value;\n };\n }\n function d3_vendorSymbol(object, name) {\n if (name in object) return name;\n name = name.charAt(0).toUpperCase() + name.slice(1);\n for (var i = 0, n = d3_vendorPrefixes.length; i < n; ++i) {\n var prefixName = d3_vendorPrefixes[i] + name;\n if (prefixName in object) return prefixName;\n }\n }\n var d3_vendorPrefixes = [ \"webkit\", \"ms\", \"moz\", \"Moz\", \"o\", \"O\" ];\n function d3_noop() {}\n d3.dispatch = function() {\n var dispatch = new d3_dispatch(), i = -1, n = arguments.length;\n while (++i < n) dispatch[arguments[i]] = d3_dispatch_event(dispatch);\n return dispatch;\n };\n function d3_dispatch() {}\n d3_dispatch.prototype.on = function(type, listener) {\n var i = type.indexOf(\".\"), name = \"\";\n if (i >= 0) {\n name = type.slice(i + 1);\n type = type.slice(0, i);\n }\n if (type) return arguments.length < 2 ? this[type].on(name) : this[type].on(name, listener);\n if (arguments.length === 2) {\n if (listener == null) for (type in this) {\n if (this.hasOwnProperty(type)) this[type].on(name, null);\n }\n return this;\n }\n };\n function d3_dispatch_event(dispatch) {\n var listeners = [], listenerByName = new d3_Map();\n function event() {\n var z = listeners, i = -1, n = z.length, l;\n while (++i < n) if (l = z[i].on) l.apply(this, arguments);\n return dispatch;\n }\n event.on = function(name, listener) {\n var l = listenerByName.get(name), i;\n if (arguments.length < 2) return l && l.on;\n if (l) {\n l.on = null;\n listeners = listeners.slice(0, i = listeners.indexOf(l)).concat(listeners.slice(i + 1));\n listenerByName.remove(name);\n }\n if (listener) listeners.push(listenerByName.set(name, {\n on: listener\n }));\n return dispatch;\n };\n return event;\n }\n d3.event = null;\n function d3_eventPreventDefault() {\n d3.event.preventDefault();\n }\n function d3_eventSource() {\n var e = d3.event, s;\n while (s = e.sourceEvent) e = s;\n return e;\n }\n function d3_eventDispatch(target) {\n var dispatch = new d3_dispatch(), i = 0, n = arguments.length;\n while (++i < n) dispatch[arguments[i]] = d3_dispatch_event(dispatch);\n dispatch.of = function(thiz, argumentz) {\n return function(e1) {\n try {\n var e0 = e1.sourceEvent = d3.event;\n e1.target = target;\n d3.event = e1;\n dispatch[e1.type].apply(thiz, argumentz);\n } finally {\n d3.event = e0;\n }\n };\n };\n return dispatch;\n }\n d3.requote = function(s) {\n return s.replace(d3_requote_re, \"\\\\$&\");\n };\n var d3_requote_re = /[\\\\\\^\\$\\*\\+\\?\\|\\[\\]\\(\\)\\.\\{\\}]/g;\n var d3_subclass = {}.__proto__ ? function(object, prototype) {\n object.__proto__ = prototype;\n } : function(object, prototype) {\n for (var property in prototype) object[property] = prototype[property];\n };\n function d3_selection(groups) {\n d3_subclass(groups, d3_selectionPrototype);\n return groups;\n }\n var d3_select = function(s, n) {\n return n.querySelector(s);\n }, d3_selectAll = function(s, n) {\n return n.querySelectorAll(s);\n }, d3_selectMatches = function(n, s) {\n var d3_selectMatcher = n.matches || n[d3_vendorSymbol(n, \"matchesSelector\")];\n d3_selectMatches = function(n, s) {\n return d3_selectMatcher.call(n, s);\n };\n return d3_selectMatches(n, s);\n };\n if (typeof Sizzle === \"function\") {\n d3_select = function(s, n) {\n return Sizzle(s, n)[0] || null;\n };\n d3_selectAll = Sizzle;\n d3_selectMatches = Sizzle.matchesSelector;\n }\n d3.selection = function() {\n return d3.select(d3_document.documentElement);\n };\n var d3_selectionPrototype = d3.selection.prototype = [];\n d3_selectionPrototype.select = function(selector) {\n var subgroups = [], subgroup, subnode, group, node;\n selector = d3_selection_selector(selector);\n for (var j = -1, m = this.length; ++j < m; ) {\n subgroups.push(subgroup = []);\n subgroup.parentNode = (group = this[j]).parentNode;\n for (var i = -1, n = group.length; ++i < n; ) {\n if (node = group[i]) {\n subgroup.push(subnode = selector.call(node, node.__data__, i, j));\n if (subnode && \"__data__\" in node) subnode.__data__ = node.__data__;\n } else {\n subgroup.push(null);\n }\n }\n }\n return d3_selection(subgroups);\n };\n function d3_selection_selector(selector) {\n return typeof selector === \"function\" ? selector : function() {\n return d3_select(selector, this);\n };\n }\n d3_selectionPrototype.selectAll = function(selector) {\n var subgroups = [], subgroup, node;\n selector = d3_selection_selectorAll(selector);\n for (var j = -1, m = this.length; ++j < m; ) {\n for (var group = this[j], i = -1, n = group.length; ++i < n; ) {\n if (node = group[i]) {\n subgroups.push(subgroup = d3_array(selector.call(node, node.__data__, i, j)));\n subgroup.parentNode = node;\n }\n }\n }\n return d3_selection(subgroups);\n };\n function d3_selection_selectorAll(selector) {\n return typeof selector === \"function\" ? selector : function() {\n return d3_selectAll(selector, this);\n };\n }\n var d3_nsXhtml = \"http://www.w3.org/1999/xhtml\";\n var d3_nsPrefix = {\n svg: \"http://www.w3.org/2000/svg\",\n xhtml: d3_nsXhtml,\n xlink: \"http://www.w3.org/1999/xlink\",\n xml: \"http://www.w3.org/XML/1998/namespace\",\n xmlns: \"http://www.w3.org/2000/xmlns/\"\n };\n d3.ns = {\n prefix: d3_nsPrefix,\n qualify: function(name) {\n var i = name.indexOf(\":\"), prefix = name;\n if (i >= 0 && (prefix = name.slice(0, i)) !== \"xmlns\") name = name.slice(i + 1);\n return d3_nsPrefix.hasOwnProperty(prefix) ? {\n space: d3_nsPrefix[prefix],\n local: name\n } : name;\n }\n };\n d3_selectionPrototype.attr = function(name, value) {\n if (arguments.length < 2) {\n if (typeof name === \"string\") {\n var node = this.node();\n name = d3.ns.qualify(name);\n return name.local ? node.getAttributeNS(name.space, name.local) : node.getAttribute(name);\n }\n for (value in name) this.each(d3_selection_attr(value, name[value]));\n return this;\n }\n return this.each(d3_selection_attr(name, value));\n };\n function d3_selection_attr(name, value) {\n name = d3.ns.qualify(name);\n function attrNull() {\n this.removeAttribute(name);\n }\n function attrNullNS() {\n this.removeAttributeNS(name.space, name.local);\n }\n function attrConstant() {\n this.setAttribute(name, value);\n }\n function attrConstantNS() {\n this.setAttributeNS(name.space, name.local, value);\n }\n function attrFunction() {\n var x = value.apply(this, arguments);\n if (x == null) this.removeAttribute(name); else this.setAttribute(name, x);\n }\n function attrFunctionNS() {\n var x = value.apply(this, arguments);\n if (x == null) this.removeAttributeNS(name.space, name.local); else this.setAttributeNS(name.space, name.local, x);\n }\n return value == null ? name.local ? attrNullNS : attrNull : typeof value === \"function\" ? name.local ? attrFunctionNS : attrFunction : name.local ? attrConstantNS : attrConstant;\n }\n function d3_collapse(s) {\n return s.trim().replace(/\\s+/g, \" \");\n }\n d3_selectionPrototype.classed = function(name, value) {\n if (arguments.length < 2) {\n if (typeof name === \"string\") {\n var node = this.node(), n = (name = d3_selection_classes(name)).length, i = -1;\n if (value = node.classList) {\n while (++i < n) if (!value.contains(name[i])) return false;\n } else {\n value = node.getAttribute(\"class\");\n while (++i < n) if (!d3_selection_classedRe(name[i]).test(value)) return false;\n }\n return true;\n }\n for (value in name) this.each(d3_selection_classed(value, name[value]));\n return this;\n }\n return this.each(d3_selection_classed(name, value));\n };\n function d3_selection_classedRe(name) {\n return new RegExp(\"(?:^|\\\\s+)\" + d3.requote(name) + \"(?:\\\\s+|$)\", \"g\");\n }\n function d3_selection_classes(name) {\n return (name + \"\").trim().split(/^|\\s+/);\n }\n function d3_selection_classed(name, value) {\n name = d3_selection_classes(name).map(d3_selection_classedName);\n var n = name.length;\n function classedConstant() {\n var i = -1;\n while (++i < n) name[i](this, value);\n }\n function classedFunction() {\n var i = -1, x = value.apply(this, arguments);\n while (++i < n) name[i](this, x);\n }\n return typeof value === \"function\" ? classedFunction : classedConstant;\n }\n function d3_selection_classedName(name) {\n var re = d3_selection_classedRe(name);\n return function(node, value) {\n if (c = node.classList) return value ? c.add(name) : c.remove(name);\n var c = node.getAttribute(\"class\") || \"\";\n if (value) {\n re.lastIndex = 0;\n if (!re.test(c)) node.setAttribute(\"class\", d3_collapse(c + \" \" + name));\n } else {\n node.setAttribute(\"class\", d3_collapse(c.replace(re, \" \")));\n }\n };\n }\n d3_selectionPrototype.style = function(name, value, priority) {\n var n = arguments.length;\n if (n < 3) {\n if (typeof name !== \"string\") {\n if (n < 2) value = \"\";\n for (priority in name) this.each(d3_selection_style(priority, name[priority], value));\n return this;\n }\n if (n < 2) {\n var node = this.node();\n return d3_window(node).getComputedStyle(node, null).getPropertyValue(name);\n }\n priority = \"\";\n }\n return this.each(d3_selection_style(name, value, priority));\n };\n function d3_selection_style(name, value, priority) {\n function styleNull() {\n this.style.removeProperty(name);\n }\n function styleConstant() {\n this.style.setProperty(name, value, priority);\n }\n function styleFunction() {\n var x = value.apply(this, arguments);\n if (x == null) this.style.removeProperty(name); else this.style.setProperty(name, x, priority);\n }\n return value == null ? styleNull : typeof value === \"function\" ? styleFunction : styleConstant;\n }\n d3_selectionPrototype.property = function(name, value) {\n if (arguments.length < 2) {\n if (typeof name === \"string\") return this.node()[name];\n for (value in name) this.each(d3_selection_property(value, name[value]));\n return this;\n }\n return this.each(d3_selection_property(name, value));\n };\n function d3_selection_property(name, value) {\n function propertyNull() {\n delete this[name];\n }\n function propertyConstant() {\n this[name] = value;\n }\n function propertyFunction() {\n var x = value.apply(this, arguments);\n if (x == null) delete this[name]; else this[name] = x;\n }\n return value == null ? propertyNull : typeof value === \"function\" ? propertyFunction : propertyConstant;\n }\n d3_selectionPrototype.text = function(value) {\n return arguments.length ? this.each(typeof value === \"function\" ? function() {\n var v = value.apply(this, arguments);\n this.textContent = v == null ? \"\" : v;\n } : value == null ? function() {\n this.textContent = \"\";\n } : function() {\n this.textContent = value;\n }) : this.node().textContent;\n };\n d3_selectionPrototype.html = function(value) {\n return arguments.length ? this.each(typeof value === \"function\" ? function() {\n var v = value.apply(this, arguments);\n this.innerHTML = v == null ? \"\" : v;\n } : value == null ? function() {\n this.innerHTML = \"\";\n } : function() {\n this.innerHTML = value;\n }) : this.node().innerHTML;\n };\n d3_selectionPrototype.append = function(name) {\n name = d3_selection_creator(name);\n return this.select(function() {\n return this.appendChild(name.apply(this, arguments));\n });\n };\n function d3_selection_creator(name) {\n function create() {\n var document = this.ownerDocument, namespace = this.namespaceURI;\n return namespace === d3_nsXhtml && document.documentElement.namespaceURI === d3_nsXhtml ? document.createElement(name) : document.createElementNS(namespace, name);\n }\n function createNS() {\n return this.ownerDocument.createElementNS(name.space, name.local);\n }\n return typeof name === \"function\" ? name : (name = d3.ns.qualify(name)).local ? createNS : create;\n }\n d3_selectionPrototype.insert = function(name, before) {\n name = d3_selection_creator(name);\n before = d3_selection_selector(before);\n return this.select(function() {\n return this.insertBefore(name.apply(this, arguments), before.apply(this, arguments) || null);\n });\n };\n d3_selectionPrototype.remove = function() {\n return this.each(d3_selectionRemove);\n };\n function d3_selectionRemove() {\n var parent = this.parentNode;\n if (parent) parent.removeChild(this);\n }\n d3_selectionPrototype.data = function(value, key) {\n var i = -1, n = this.length, group, node;\n if (!arguments.length) {\n value = new Array(n = (group = this[0]).length);\n while (++i < n) {\n if (node = group[i]) {\n value[i] = node.__data__;\n }\n }\n return value;\n }\n function bind(group, groupData) {\n var i, n = group.length, m = groupData.length, n0 = Math.min(n, m), updateNodes = new Array(m), enterNodes = new Array(m), exitNodes = new Array(n), node, nodeData;\n if (key) {\n var nodeByKeyValue = new d3_Map(), keyValues = new Array(n), keyValue;\n for (i = -1; ++i < n; ) {\n if (node = group[i]) {\n if (nodeByKeyValue.has(keyValue = key.call(node, node.__data__, i))) {\n exitNodes[i] = node;\n } else {\n nodeByKeyValue.set(keyValue, node);\n }\n keyValues[i] = keyValue;\n }\n }\n for (i = -1; ++i < m; ) {\n if (!(node = nodeByKeyValue.get(keyValue = key.call(groupData, nodeData = groupData[i], i)))) {\n enterNodes[i] = d3_selection_dataNode(nodeData);\n } else if (node !== true) {\n updateNodes[i] = node;\n node.__data__ = nodeData;\n }\n nodeByKeyValue.set(keyValue, true);\n }\n for (i = -1; ++i < n; ) {\n if (i in keyValues && nodeByKeyValue.get(keyValues[i]) !== true) {\n exitNodes[i] = group[i];\n }\n }\n } else {\n for (i = -1; ++i < n0; ) {\n node = group[i];\n nodeData = groupData[i];\n if (node) {\n node.__data__ = nodeData;\n updateNodes[i] = node;\n } else {\n enterNodes[i] = d3_selection_dataNode(nodeData);\n }\n }\n for (;i < m; ++i) {\n enterNodes[i] = d3_selection_dataNode(groupData[i]);\n }\n for (;i < n; ++i) {\n exitNodes[i] = group[i];\n }\n }\n enterNodes.update = updateNodes;\n enterNodes.parentNode = updateNodes.parentNode = exitNodes.parentNode = group.parentNode;\n enter.push(enterNodes);\n update.push(updateNodes);\n exit.push(exitNodes);\n }\n var enter = d3_selection_enter([]), update = d3_selection([]), exit = d3_selection([]);\n if (typeof value === \"function\") {\n while (++i < n) {\n bind(group = this[i], value.call(group, group.parentNode.__data__, i));\n }\n } else {\n while (++i < n) {\n bind(group = this[i], value);\n }\n }\n update.enter = function() {\n return enter;\n };\n update.exit = function() {\n return exit;\n };\n return update;\n };\n function d3_selection_dataNode(data) {\n return {\n __data__: data\n };\n }\n d3_selectionPrototype.datum = function(value) {\n return arguments.length ? this.property(\"__data__\", value) : this.property(\"__data__\");\n };\n d3_selectionPrototype.filter = function(filter) {\n var subgroups = [], subgroup, group, node;\n if (typeof filter !== \"function\") filter = d3_selection_filter(filter);\n for (var j = 0, m = this.length; j < m; j++) {\n subgroups.push(subgroup = []);\n subgroup.parentNode = (group = this[j]).parentNode;\n for (var i = 0, n = group.length; i < n; i++) {\n if ((node = group[i]) && filter.call(node, node.__data__, i, j)) {\n subgroup.push(node);\n }\n }\n }\n return d3_selection(subgroups);\n };\n function d3_selection_filter(selector) {\n return function() {\n return d3_selectMatches(this, selector);\n };\n }\n d3_selectionPrototype.order = function() {\n for (var j = -1, m = this.length; ++j < m; ) {\n for (var group = this[j], i = group.length - 1, next = group[i], node; --i >= 0; ) {\n if (node = group[i]) {\n if (next && next !== node.nextSibling) next.parentNode.insertBefore(node, next);\n next = node;\n }\n }\n }\n return this;\n };\n d3_selectionPrototype.sort = function(comparator) {\n comparator = d3_selection_sortComparator.apply(this, arguments);\n for (var j = -1, m = this.length; ++j < m; ) this[j].sort(comparator);\n return this.order();\n };\n function d3_selection_sortComparator(comparator) {\n if (!arguments.length) comparator = d3_ascending;\n return function(a, b) {\n return a && b ? comparator(a.__data__, b.__data__) : !a - !b;\n };\n }\n d3_selectionPrototype.each = function(callback) {\n return d3_selection_each(this, function(node, i, j) {\n callback.call(node, node.__data__, i, j);\n });\n };\n function d3_selection_each(groups, callback) {\n for (var j = 0, m = groups.length; j < m; j++) {\n for (var group = groups[j], i = 0, n = group.length, node; i < n; i++) {\n if (node = group[i]) callback(node, i, j);\n }\n }\n return groups;\n }\n d3_selectionPrototype.call = function(callback) {\n var args = d3_array(arguments);\n callback.apply(args[0] = this, args);\n return this;\n };\n d3_selectionPrototype.empty = function() {\n return !this.node();\n };\n d3_selectionPrototype.node = function() {\n for (var j = 0, m = this.length; j < m; j++) {\n for (var group = this[j], i = 0, n = group.length; i < n; i++) {\n var node = group[i];\n if (node) return node;\n }\n }\n return null;\n };\n d3_selectionPrototype.size = function() {\n var n = 0;\n d3_selection_each(this, function() {\n ++n;\n });\n return n;\n };\n function d3_selection_enter(selection) {\n d3_subclass(selection, d3_selection_enterPrototype);\n return selection;\n }\n var d3_selection_enterPrototype = [];\n d3.selection.enter = d3_selection_enter;\n d3.selection.enter.prototype = d3_selection_enterPrototype;\n d3_selection_enterPrototype.append = d3_selectionPrototype.append;\n d3_selection_enterPrototype.empty = d3_selectionPrototype.empty;\n d3_selection_enterPrototype.node = d3_selectionPrototype.node;\n d3_selection_enterPrototype.call = d3_selectionPrototype.call;\n d3_selection_enterPrototype.size = d3_selectionPrototype.size;\n d3_selection_enterPrototype.select = function(selector) {\n var subgroups = [], subgroup, subnode, upgroup, group, node;\n for (var j = -1, m = this.length; ++j < m; ) {\n upgroup = (group = this[j]).update;\n subgroups.push(subgroup = []);\n subgroup.parentNode = group.parentNode;\n for (var i = -1, n = group.length; ++i < n; ) {\n if (node = group[i]) {\n subgroup.push(upgroup[i] = subnode = selector.call(group.parentNode, node.__data__, i, j));\n subnode.__data__ = node.__data__;\n } else {\n subgroup.push(null);\n }\n }\n }\n return d3_selection(subgroups);\n };\n d3_selection_enterPrototype.insert = function(name, before) {\n if (arguments.length < 2) before = d3_selection_enterInsertBefore(this);\n return d3_selectionPrototype.insert.call(this, name, before);\n };\n function d3_selection_enterInsertBefore(enter) {\n var i0, j0;\n return function(d, i, j) {\n var group = enter[j].update, n = group.length, node;\n if (j != j0) j0 = j, i0 = 0;\n if (i >= i0) i0 = i + 1;\n while (!(node = group[i0]) && ++i0 < n) ;\n return node;\n };\n }\n d3.select = function(node) {\n var group;\n if (typeof node === \"string\") {\n group = [ d3_select(node, d3_document) ];\n group.parentNode = d3_document.documentElement;\n } else {\n group = [ node ];\n group.parentNode = d3_documentElement(node);\n }\n return d3_selection([ group ]);\n };\n d3.selectAll = function(nodes) {\n var group;\n if (typeof nodes === \"string\") {\n group = d3_array(d3_selectAll(nodes, d3_document));\n group.parentNode = d3_document.documentElement;\n } else {\n group = d3_array(nodes);\n group.parentNode = null;\n }\n return d3_selection([ group ]);\n };\n d3_selectionPrototype.on = function(type, listener, capture) {\n var n = arguments.length;\n if (n < 3) {\n if (typeof type !== \"string\") {\n if (n < 2) listener = false;\n for (capture in type) this.each(d3_selection_on(capture, type[capture], listener));\n return this;\n }\n if (n < 2) return (n = this.node()[\"__on\" + type]) && n._;\n capture = false;\n }\n return this.each(d3_selection_on(type, listener, capture));\n };\n function d3_selection_on(type, listener, capture) {\n var name = \"__on\" + type, i = type.indexOf(\".\"), wrap = d3_selection_onListener;\n if (i > 0) type = type.slice(0, i);\n var filter = d3_selection_onFilters.get(type);\n if (filter) type = filter, wrap = d3_selection_onFilter;\n function onRemove() {\n var l = this[name];\n if (l) {\n this.removeEventListener(type, l, l.$);\n delete this[name];\n }\n }\n function onAdd() {\n var l = wrap(listener, d3_array(arguments));\n onRemove.call(this);\n this.addEventListener(type, this[name] = l, l.$ = capture);\n l._ = listener;\n }\n function removeAll() {\n var re = new RegExp(\"^__on([^.]+)\" + d3.requote(type) + \"$\"), match;\n for (var name in this) {\n if (match = name.match(re)) {\n var l = this[name];\n this.removeEventListener(match[1], l, l.$);\n delete this[name];\n }\n }\n }\n return i ? listener ? onAdd : onRemove : listener ? d3_noop : removeAll;\n }\n var d3_selection_onFilters = d3.map({\n mouseenter: \"mouseover\",\n mouseleave: \"mouseout\"\n });\n if (d3_document) {\n d3_selection_onFilters.forEach(function(k) {\n if (\"on\" + k in d3_document) d3_selection_onFilters.remove(k);\n });\n }\n function d3_selection_onListener(listener, argumentz) {\n return function(e) {\n var o = d3.event;\n d3.event = e;\n argumentz[0] = this.__data__;\n try {\n listener.apply(this, argumentz);\n } finally {\n d3.event = o;\n }\n };\n }\n function d3_selection_onFilter(listener, argumentz) {\n var l = d3_selection_onListener(listener, argumentz);\n return function(e) {\n var target = this, related = e.relatedTarget;\n if (!related || related !== target && !(related.compareDocumentPosition(target) & 8)) {\n l.call(target, e);\n }\n };\n }\n var d3_event_dragSelect, d3_event_dragId = 0;\n function d3_event_dragSuppress(node) {\n var name = \".dragsuppress-\" + ++d3_event_dragId, click = \"click\" + name, w = d3.select(d3_window(node)).on(\"touchmove\" + name, d3_eventPreventDefault).on(\"dragstart\" + name, d3_eventPreventDefault).on(\"selectstart\" + name, d3_eventPreventDefault);\n if (d3_event_dragSelect == null) {\n d3_event_dragSelect = \"onselectstart\" in node ? false : d3_vendorSymbol(node.style, \"userSelect\");\n }\n if (d3_event_dragSelect) {\n var style = d3_documentElement(node).style, select = style[d3_event_dragSelect];\n style[d3_event_dragSelect] = \"none\";\n }\n return function(suppressClick) {\n w.on(name, null);\n if (d3_event_dragSelect) style[d3_event_dragSelect] = select;\n if (suppressClick) {\n var off = function() {\n w.on(click, null);\n };\n w.on(click, function() {\n d3_eventPreventDefault();\n off();\n }, true);\n setTimeout(off, 0);\n }\n };\n }\n d3.mouse = function(container) {\n return d3_mousePoint(container, d3_eventSource());\n };\n var d3_mouse_bug44083 = this.navigator && /WebKit/.test(this.navigator.userAgent) ? -1 : 0;\n function d3_mousePoint(container, e) {\n if (e.changedTouches) e = e.changedTouches[0];\n var svg = container.ownerSVGElement || container;\n if (svg.createSVGPoint) {\n var point = svg.createSVGPoint();\n if (d3_mouse_bug44083 < 0) {\n var window = d3_window(container);\n if (window.scrollX || window.scrollY) {\n svg = d3.select(\"body\").append(\"svg\").style({\n position: \"absolute\",\n top: 0,\n left: 0,\n margin: 0,\n padding: 0,\n border: \"none\"\n }, \"important\");\n var ctm = svg[0][0].getScreenCTM();\n d3_mouse_bug44083 = !(ctm.f || ctm.e);\n svg.remove();\n }\n }\n if (d3_mouse_bug44083) point.x = e.pageX, point.y = e.pageY; else point.x = e.clientX, \n point.y = e.clientY;\n point = point.matrixTransform(container.getScreenCTM().inverse());\n return [ point.x, point.y ];\n }\n var rect = container.getBoundingClientRect();\n return [ e.clientX - rect.left - container.clientLeft, e.clientY - rect.top - container.clientTop ];\n }\n d3.touch = function(container, touches, identifier) {\n if (arguments.length < 3) identifier = touches, touches = d3_eventSource().changedTouches;\n if (touches) for (var i = 0, n = touches.length, touch; i < n; ++i) {\n if ((touch = touches[i]).identifier === identifier) {\n return d3_mousePoint(container, touch);\n }\n }\n };\n d3.behavior.drag = function() {\n var event = d3_eventDispatch(drag, \"drag\", \"dragstart\", \"dragend\"), origin = null, mousedown = dragstart(d3_noop, d3.mouse, d3_window, \"mousemove\", \"mouseup\"), touchstart = dragstart(d3_behavior_dragTouchId, d3.touch, d3_identity, \"touchmove\", \"touchend\");\n function drag() {\n this.on(\"mousedown.drag\", mousedown).on(\"touchstart.drag\", touchstart);\n }\n function dragstart(id, position, subject, move, end) {\n return function() {\n var that = this, target = d3.event.target.correspondingElement || d3.event.target, parent = that.parentNode, dispatch = event.of(that, arguments), dragged = 0, dragId = id(), dragName = \".drag\" + (dragId == null ? \"\" : \"-\" + dragId), dragOffset, dragSubject = d3.select(subject(target)).on(move + dragName, moved).on(end + dragName, ended), dragRestore = d3_event_dragSuppress(target), position0 = position(parent, dragId);\n if (origin) {\n dragOffset = origin.apply(that, arguments);\n dragOffset = [ dragOffset.x - position0[0], dragOffset.y - position0[1] ];\n } else {\n dragOffset = [ 0, 0 ];\n }\n dispatch({\n type: \"dragstart\"\n });\n function moved() {\n var position1 = position(parent, dragId), dx, dy;\n if (!position1) return;\n dx = position1[0] - position0[0];\n dy = position1[1] - position0[1];\n dragged |= dx | dy;\n position0 = position1;\n dispatch({\n type: \"drag\",\n x: position1[0] + dragOffset[0],\n y: position1[1] + dragOffset[1],\n dx: dx,\n dy: dy\n });\n }\n function ended() {\n if (!position(parent, dragId)) return;\n dragSubject.on(move + dragName, null).on(end + dragName, null);\n dragRestore(dragged);\n dispatch({\n type: \"dragend\"\n });\n }\n };\n }\n drag.origin = function(x) {\n if (!arguments.length) return origin;\n origin = x;\n return drag;\n };\n return d3.rebind(drag, event, \"on\");\n };\n function d3_behavior_dragTouchId() {\n return d3.event.changedTouches[0].identifier;\n }\n d3.touches = function(container, touches) {\n if (arguments.length < 2) touches = d3_eventSource().touches;\n return touches ? d3_array(touches).map(function(touch) {\n var point = d3_mousePoint(container, touch);\n point.identifier = touch.identifier;\n return point;\n }) : [];\n };\n var ε = 1e-6, ε2 = ε * ε, π = Math.PI, τ = 2 * π, τε = τ - ε, halfπ = π / 2, d3_radians = π / 180, d3_degrees = 180 / π;\n function d3_sgn(x) {\n return x > 0 ? 1 : x < 0 ? -1 : 0;\n }\n function d3_cross2d(a, b, c) {\n return (b[0] - a[0]) * (c[1] - a[1]) - (b[1] - a[1]) * (c[0] - a[0]);\n }\n function d3_acos(x) {\n return x > 1 ? 0 : x < -1 ? π : Math.acos(x);\n }\n function d3_asin(x) {\n return x > 1 ? halfπ : x < -1 ? -halfπ : Math.asin(x);\n }\n function d3_sinh(x) {\n return ((x = Math.exp(x)) - 1 / x) / 2;\n }\n function d3_cosh(x) {\n return ((x = Math.exp(x)) + 1 / x) / 2;\n }\n function d3_tanh(x) {\n return ((x = Math.exp(2 * x)) - 1) / (x + 1);\n }\n function d3_haversin(x) {\n return (x = Math.sin(x / 2)) * x;\n }\n var ρ = Math.SQRT2, ρ2 = 2, ρ4 = 4;\n d3.interpolateZoom = function(p0, p1) {\n var ux0 = p0[0], uy0 = p0[1], w0 = p0[2], ux1 = p1[0], uy1 = p1[1], w1 = p1[2], dx = ux1 - ux0, dy = uy1 - uy0, d2 = dx * dx + dy * dy, i, S;\n if (d2 < ε2) {\n S = Math.log(w1 / w0) / ρ;\n i = function(t) {\n return [ ux0 + t * dx, uy0 + t * dy, w0 * Math.exp(ρ * t * S) ];\n };\n } else {\n var d1 = Math.sqrt(d2), b0 = (w1 * w1 - w0 * w0 + ρ4 * d2) / (2 * w0 * ρ2 * d1), b1 = (w1 * w1 - w0 * w0 - ρ4 * d2) / (2 * w1 * ρ2 * d1), r0 = Math.log(Math.sqrt(b0 * b0 + 1) - b0), r1 = Math.log(Math.sqrt(b1 * b1 + 1) - b1);\n S = (r1 - r0) / ρ;\n i = function(t) {\n var s = t * S, coshr0 = d3_cosh(r0), u = w0 / (ρ2 * d1) * (coshr0 * d3_tanh(ρ * s + r0) - d3_sinh(r0));\n return [ ux0 + u * dx, uy0 + u * dy, w0 * coshr0 / d3_cosh(ρ * s + r0) ];\n };\n }\n i.duration = S * 1e3;\n return i;\n };\n d3.behavior.zoom = function() {\n var view = {\n x: 0,\n y: 0,\n k: 1\n }, translate0, center0, center, size = [ 960, 500 ], scaleExtent = d3_behavior_zoomInfinity, duration = 250, zooming = 0, mousedown = \"mousedown.zoom\", mousemove = \"mousemove.zoom\", mouseup = \"mouseup.zoom\", mousewheelTimer, touchstart = \"touchstart.zoom\", touchtime, event = d3_eventDispatch(zoom, \"zoomstart\", \"zoom\", \"zoomend\"), x0, x1, y0, y1;\n if (!d3_behavior_zoomWheel) {\n d3_behavior_zoomWheel = \"onwheel\" in d3_document ? (d3_behavior_zoomDelta = function() {\n return -d3.event.deltaY * (d3.event.deltaMode ? 120 : 1);\n }, \"wheel\") : \"onmousewheel\" in d3_document ? (d3_behavior_zoomDelta = function() {\n return d3.event.wheelDelta;\n }, \"mousewheel\") : (d3_behavior_zoomDelta = function() {\n return -d3.event.detail;\n }, \"MozMousePixelScroll\");\n }\n function zoom(g) {\n g.on(mousedown, mousedowned).on(d3_behavior_zoomWheel + \".zoom\", mousewheeled).on(\"dblclick.zoom\", dblclicked).on(touchstart, touchstarted);\n }\n zoom.event = function(g) {\n g.each(function() {\n var dispatch = event.of(this, arguments), view1 = view;\n if (d3_transitionInheritId) {\n d3.select(this).transition().each(\"start.zoom\", function() {\n view = this.__chart__ || {\n x: 0,\n y: 0,\n k: 1\n };\n zoomstarted(dispatch);\n }).tween(\"zoom:zoom\", function() {\n var dx = size[0], dy = size[1], cx = center0 ? center0[0] : dx / 2, cy = center0 ? center0[1] : dy / 2, i = d3.interpolateZoom([ (cx - view.x) / view.k, (cy - view.y) / view.k, dx / view.k ], [ (cx - view1.x) / view1.k, (cy - view1.y) / view1.k, dx / view1.k ]);\n return function(t) {\n var l = i(t), k = dx / l[2];\n this.__chart__ = view = {\n x: cx - l[0] * k,\n y: cy - l[1] * k,\n k: k\n };\n zoomed(dispatch);\n };\n }).each(\"interrupt.zoom\", function() {\n zoomended(dispatch);\n }).each(\"end.zoom\", function() {\n zoomended(dispatch);\n });\n } else {\n this.__chart__ = view;\n zoomstarted(dispatch);\n zoomed(dispatch);\n zoomended(dispatch);\n }\n });\n };\n zoom.translate = function(_) {\n if (!arguments.length) return [ view.x, view.y ];\n view = {\n x: +_[0],\n y: +_[1],\n k: view.k\n };\n rescale();\n return zoom;\n };\n zoom.scale = function(_) {\n if (!arguments.length) return view.k;\n view = {\n x: view.x,\n y: view.y,\n k: null\n };\n scaleTo(+_);\n rescale();\n return zoom;\n };\n zoom.scaleExtent = function(_) {\n if (!arguments.length) return scaleExtent;\n scaleExtent = _ == null ? d3_behavior_zoomInfinity : [ +_[0], +_[1] ];\n return zoom;\n };\n zoom.center = function(_) {\n if (!arguments.length) return center;\n center = _ && [ +_[0], +_[1] ];\n return zoom;\n };\n zoom.size = function(_) {\n if (!arguments.length) return size;\n size = _ && [ +_[0], +_[1] ];\n return zoom;\n };\n zoom.duration = function(_) {\n if (!arguments.length) return duration;\n duration = +_;\n return zoom;\n };\n zoom.x = function(z) {\n if (!arguments.length) return x1;\n x1 = z;\n x0 = z.copy();\n view = {\n x: 0,\n y: 0,\n k: 1\n };\n return zoom;\n };\n zoom.y = function(z) {\n if (!arguments.length) return y1;\n y1 = z;\n y0 = z.copy();\n view = {\n x: 0,\n y: 0,\n k: 1\n };\n return zoom;\n };\n function location(p) {\n return [ (p[0] - view.x) / view.k, (p[1] - view.y) / view.k ];\n }\n function point(l) {\n return [ l[0] * view.k + view.x, l[1] * view.k + view.y ];\n }\n function scaleTo(s) {\n view.k = Math.max(scaleExtent[0], Math.min(scaleExtent[1], s));\n }\n function translateTo(p, l) {\n l = point(l);\n view.x += p[0] - l[0];\n view.y += p[1] - l[1];\n }\n function zoomTo(that, p, l, k) {\n that.__chart__ = {\n x: view.x,\n y: view.y,\n k: view.k\n };\n scaleTo(Math.pow(2, k));\n translateTo(center0 = p, l);\n that = d3.select(that);\n if (duration > 0) that = that.transition().duration(duration);\n that.call(zoom.event);\n }\n function rescale() {\n if (x1) x1.domain(x0.range().map(function(x) {\n return (x - view.x) / view.k;\n }).map(x0.invert));\n if (y1) y1.domain(y0.range().map(function(y) {\n return (y - view.y) / view.k;\n }).map(y0.invert));\n }\n function zoomstarted(dispatch) {\n if (!zooming++) dispatch({\n type: \"zoomstart\"\n });\n }\n function zoomed(dispatch) {\n rescale();\n dispatch({\n type: \"zoom\",\n scale: view.k,\n translate: [ view.x, view.y ]\n });\n }\n function zoomended(dispatch) {\n if (!--zooming) dispatch({\n type: \"zoomend\"\n }), center0 = null;\n }\n function mousedowned() {\n var that = this, dispatch = event.of(that, arguments), dragged = 0, subject = d3.select(d3_window(that)).on(mousemove, moved).on(mouseup, ended), location0 = location(d3.mouse(that)), dragRestore = d3_event_dragSuppress(that);\n d3_selection_interrupt.call(that);\n zoomstarted(dispatch);\n function moved() {\n dragged = 1;\n translateTo(d3.mouse(that), location0);\n zoomed(dispatch);\n }\n function ended() {\n subject.on(mousemove, null).on(mouseup, null);\n dragRestore(dragged);\n zoomended(dispatch);\n }\n }\n function touchstarted() {\n var that = this, dispatch = event.of(that, arguments), locations0 = {}, distance0 = 0, scale0, zoomName = \".zoom-\" + d3.event.changedTouches[0].identifier, touchmove = \"touchmove\" + zoomName, touchend = \"touchend\" + zoomName, targets = [], subject = d3.select(that), dragRestore = d3_event_dragSuppress(that);\n started();\n zoomstarted(dispatch);\n subject.on(mousedown, null).on(touchstart, started);\n function relocate() {\n var touches = d3.touches(that);\n scale0 = view.k;\n touches.forEach(function(t) {\n if (t.identifier in locations0) locations0[t.identifier] = location(t);\n });\n return touches;\n }\n function started() {\n var target = d3.event.target;\n d3.select(target).on(touchmove, moved).on(touchend, ended);\n targets.push(target);\n var changed = d3.event.changedTouches;\n for (var i = 0, n = changed.length; i < n; ++i) {\n locations0[changed[i].identifier] = null;\n }\n var touches = relocate(), now = Date.now();\n if (touches.length === 1) {\n if (now - touchtime < 500) {\n var p = touches[0];\n zoomTo(that, p, locations0[p.identifier], Math.floor(Math.log(view.k) / Math.LN2) + 1);\n d3_eventPreventDefault();\n }\n touchtime = now;\n } else if (touches.length > 1) {\n var p = touches[0], q = touches[1], dx = p[0] - q[0], dy = p[1] - q[1];\n distance0 = dx * dx + dy * dy;\n }\n }\n function moved() {\n var touches = d3.touches(that), p0, l0, p1, l1;\n d3_selection_interrupt.call(that);\n for (var i = 0, n = touches.length; i < n; ++i, l1 = null) {\n p1 = touches[i];\n if (l1 = locations0[p1.identifier]) {\n if (l0) break;\n p0 = p1, l0 = l1;\n }\n }\n if (l1) {\n var distance1 = (distance1 = p1[0] - p0[0]) * distance1 + (distance1 = p1[1] - p0[1]) * distance1, scale1 = distance0 && Math.sqrt(distance1 / distance0);\n p0 = [ (p0[0] + p1[0]) / 2, (p0[1] + p1[1]) / 2 ];\n l0 = [ (l0[0] + l1[0]) / 2, (l0[1] + l1[1]) / 2 ];\n scaleTo(scale1 * scale0);\n }\n touchtime = null;\n translateTo(p0, l0);\n zoomed(dispatch);\n }\n function ended() {\n if (d3.event.touches.length) {\n var changed = d3.event.changedTouches;\n for (var i = 0, n = changed.length; i < n; ++i) {\n delete locations0[changed[i].identifier];\n }\n for (var identifier in locations0) {\n return void relocate();\n }\n }\n d3.selectAll(targets).on(zoomName, null);\n subject.on(mousedown, mousedowned).on(touchstart, touchstarted);\n dragRestore();\n zoomended(dispatch);\n }\n }\n function mousewheeled() {\n var dispatch = event.of(this, arguments);\n if (mousewheelTimer) clearTimeout(mousewheelTimer); else d3_selection_interrupt.call(this), \n translate0 = location(center0 = center || d3.mouse(this)), zoomstarted(dispatch);\n mousewheelTimer = setTimeout(function() {\n mousewheelTimer = null;\n zoomended(dispatch);\n }, 50);\n d3_eventPreventDefault();\n scaleTo(Math.pow(2, d3_behavior_zoomDelta() * .002) * view.k);\n translateTo(center0, translate0);\n zoomed(dispatch);\n }\n function dblclicked() {\n var p = d3.mouse(this), k = Math.log(view.k) / Math.LN2;\n zoomTo(this, p, location(p), d3.event.shiftKey ? Math.ceil(k) - 1 : Math.floor(k) + 1);\n }\n return d3.rebind(zoom, event, \"on\");\n };\n var d3_behavior_zoomInfinity = [ 0, Infinity ], d3_behavior_zoomDelta, d3_behavior_zoomWheel;\n d3.color = d3_color;\n function d3_color() {}\n d3_color.prototype.toString = function() {\n return this.rgb() + \"\";\n };\n d3.hsl = d3_hsl;\n function d3_hsl(h, s, l) {\n return this instanceof d3_hsl ? void (this.h = +h, this.s = +s, this.l = +l) : arguments.length < 2 ? h instanceof d3_hsl ? new d3_hsl(h.h, h.s, h.l) : d3_rgb_parse(\"\" + h, d3_rgb_hsl, d3_hsl) : new d3_hsl(h, s, l);\n }\n var d3_hslPrototype = d3_hsl.prototype = new d3_color();\n d3_hslPrototype.brighter = function(k) {\n k = Math.pow(.7, arguments.length ? k : 1);\n return new d3_hsl(this.h, this.s, this.l / k);\n };\n d3_hslPrototype.darker = function(k) {\n k = Math.pow(.7, arguments.length ? k : 1);\n return new d3_hsl(this.h, this.s, k * this.l);\n };\n d3_hslPrototype.rgb = function() {\n return d3_hsl_rgb(this.h, this.s, this.l);\n };\n function d3_hsl_rgb(h, s, l) {\n var m1, m2;\n h = isNaN(h) ? 0 : (h %= 360) < 0 ? h + 360 : h;\n s = isNaN(s) ? 0 : s < 0 ? 0 : s > 1 ? 1 : s;\n l = l < 0 ? 0 : l > 1 ? 1 : l;\n m2 = l <= .5 ? l * (1 + s) : l + s - l * s;\n m1 = 2 * l - m2;\n function v(h) {\n if (h > 360) h -= 360; else if (h < 0) h += 360;\n if (h < 60) return m1 + (m2 - m1) * h / 60;\n if (h < 180) return m2;\n if (h < 240) return m1 + (m2 - m1) * (240 - h) / 60;\n return m1;\n }\n function vv(h) {\n return Math.round(v(h) * 255);\n }\n return new d3_rgb(vv(h + 120), vv(h), vv(h - 120));\n }\n d3.hcl = d3_hcl;\n function d3_hcl(h, c, l) {\n return this instanceof d3_hcl ? void (this.h = +h, this.c = +c, this.l = +l) : arguments.length < 2 ? h instanceof d3_hcl ? new d3_hcl(h.h, h.c, h.l) : h instanceof d3_lab ? d3_lab_hcl(h.l, h.a, h.b) : d3_lab_hcl((h = d3_rgb_lab((h = d3.rgb(h)).r, h.g, h.b)).l, h.a, h.b) : new d3_hcl(h, c, l);\n }\n var d3_hclPrototype = d3_hcl.prototype = new d3_color();\n d3_hclPrototype.brighter = function(k) {\n return new d3_hcl(this.h, this.c, Math.min(100, this.l + d3_lab_K * (arguments.length ? k : 1)));\n };\n d3_hclPrototype.darker = function(k) {\n return new d3_hcl(this.h, this.c, Math.max(0, this.l - d3_lab_K * (arguments.length ? k : 1)));\n };\n d3_hclPrototype.rgb = function() {\n return d3_hcl_lab(this.h, this.c, this.l).rgb();\n };\n function d3_hcl_lab(h, c, l) {\n if (isNaN(h)) h = 0;\n if (isNaN(c)) c = 0;\n return new d3_lab(l, Math.cos(h *= d3_radians) * c, Math.sin(h) * c);\n }\n d3.lab = d3_lab;\n function d3_lab(l, a, b) {\n return this instanceof d3_lab ? void (this.l = +l, this.a = +a, this.b = +b) : arguments.length < 2 ? l instanceof d3_lab ? new d3_lab(l.l, l.a, l.b) : l instanceof d3_hcl ? d3_hcl_lab(l.h, l.c, l.l) : d3_rgb_lab((l = d3_rgb(l)).r, l.g, l.b) : new d3_lab(l, a, b);\n }\n var d3_lab_K = 18;\n var d3_lab_X = .95047, d3_lab_Y = 1, d3_lab_Z = 1.08883;\n var d3_labPrototype = d3_lab.prototype = new d3_color();\n d3_labPrototype.brighter = function(k) {\n return new d3_lab(Math.min(100, this.l + d3_lab_K * (arguments.length ? k : 1)), this.a, this.b);\n };\n d3_labPrototype.darker = function(k) {\n return new d3_lab(Math.max(0, this.l - d3_lab_K * (arguments.length ? k : 1)), this.a, this.b);\n };\n d3_labPrototype.rgb = function() {\n return d3_lab_rgb(this.l, this.a, this.b);\n };\n function d3_lab_rgb(l, a, b) {\n var y = (l + 16) / 116, x = y + a / 500, z = y - b / 200;\n x = d3_lab_xyz(x) * d3_lab_X;\n y = d3_lab_xyz(y) * d3_lab_Y;\n z = d3_lab_xyz(z) * d3_lab_Z;\n return new d3_rgb(d3_xyz_rgb(3.2404542 * x - 1.5371385 * y - .4985314 * z), d3_xyz_rgb(-.969266 * x + 1.8760108 * y + .041556 * z), d3_xyz_rgb(.0556434 * x - .2040259 * y + 1.0572252 * z));\n }\n function d3_lab_hcl(l, a, b) {\n return l > 0 ? new d3_hcl(Math.atan2(b, a) * d3_degrees, Math.sqrt(a * a + b * b), l) : new d3_hcl(NaN, NaN, l);\n }\n function d3_lab_xyz(x) {\n return x > .206893034 ? x * x * x : (x - 4 / 29) / 7.787037;\n }\n function d3_xyz_lab(x) {\n return x > .008856 ? Math.pow(x, 1 / 3) : 7.787037 * x + 4 / 29;\n }\n function d3_xyz_rgb(r) {\n return Math.round(255 * (r <= .00304 ? 12.92 * r : 1.055 * Math.pow(r, 1 / 2.4) - .055));\n }\n d3.rgb = d3_rgb;\n function d3_rgb(r, g, b) {\n return this instanceof d3_rgb ? void (this.r = ~~r, this.g = ~~g, this.b = ~~b) : arguments.length < 2 ? r instanceof d3_rgb ? new d3_rgb(r.r, r.g, r.b) : d3_rgb_parse(\"\" + r, d3_rgb, d3_hsl_rgb) : new d3_rgb(r, g, b);\n }\n function d3_rgbNumber(value) {\n return new d3_rgb(value >> 16, value >> 8 & 255, value & 255);\n }\n function d3_rgbString(value) {\n return d3_rgbNumber(value) + \"\";\n }\n var d3_rgbPrototype = d3_rgb.prototype = new d3_color();\n d3_rgbPrototype.brighter = function(k) {\n k = Math.pow(.7, arguments.length ? k : 1);\n var r = this.r, g = this.g, b = this.b, i = 30;\n if (!r && !g && !b) return new d3_rgb(i, i, i);\n if (r && r < i) r = i;\n if (g && g < i) g = i;\n if (b && b < i) b = i;\n return new d3_rgb(Math.min(255, r / k), Math.min(255, g / k), Math.min(255, b / k));\n };\n d3_rgbPrototype.darker = function(k) {\n k = Math.pow(.7, arguments.length ? k : 1);\n return new d3_rgb(k * this.r, k * this.g, k * this.b);\n };\n d3_rgbPrototype.hsl = function() {\n return d3_rgb_hsl(this.r, this.g, this.b);\n };\n d3_rgbPrototype.toString = function() {\n return \"#\" + d3_rgb_hex(this.r) + d3_rgb_hex(this.g) + d3_rgb_hex(this.b);\n };\n function d3_rgb_hex(v) {\n return v < 16 ? \"0\" + Math.max(0, v).toString(16) : Math.min(255, v).toString(16);\n }\n function d3_rgb_parse(format, rgb, hsl) {\n var r = 0, g = 0, b = 0, m1, m2, color;\n m1 = /([a-z]+)\\((.*)\\)/.exec(format = format.toLowerCase());\n if (m1) {\n m2 = m1[2].split(\",\");\n switch (m1[1]) {\n case \"hsl\":\n {\n return hsl(parseFloat(m2[0]), parseFloat(m2[1]) / 100, parseFloat(m2[2]) / 100);\n }\n\n case \"rgb\":\n {\n return rgb(d3_rgb_parseNumber(m2[0]), d3_rgb_parseNumber(m2[1]), d3_rgb_parseNumber(m2[2]));\n }\n }\n }\n if (color = d3_rgb_names.get(format)) {\n return rgb(color.r, color.g, color.b);\n }\n if (format != null && format.charAt(0) === \"#\" && !isNaN(color = parseInt(format.slice(1), 16))) {\n if (format.length === 4) {\n r = (color & 3840) >> 4;\n r = r >> 4 | r;\n g = color & 240;\n g = g >> 4 | g;\n b = color & 15;\n b = b << 4 | b;\n } else if (format.length === 7) {\n r = (color & 16711680) >> 16;\n g = (color & 65280) >> 8;\n b = color & 255;\n }\n }\n return rgb(r, g, b);\n }\n function d3_rgb_hsl(r, g, b) {\n var min = Math.min(r /= 255, g /= 255, b /= 255), max = Math.max(r, g, b), d = max - min, h, s, l = (max + min) / 2;\n if (d) {\n s = l < .5 ? d / (max + min) : d / (2 - max - min);\n if (r == max) h = (g - b) / d + (g < b ? 6 : 0); else if (g == max) h = (b - r) / d + 2; else h = (r - g) / d + 4;\n h *= 60;\n } else {\n h = NaN;\n s = l > 0 && l < 1 ? 0 : h;\n }\n return new d3_hsl(h, s, l);\n }\n function d3_rgb_lab(r, g, b) {\n r = d3_rgb_xyz(r);\n g = d3_rgb_xyz(g);\n b = d3_rgb_xyz(b);\n var x = d3_xyz_lab((.4124564 * r + .3575761 * g + .1804375 * b) / d3_lab_X), y = d3_xyz_lab((.2126729 * r + .7151522 * g + .072175 * b) / d3_lab_Y), z = d3_xyz_lab((.0193339 * r + .119192 * g + .9503041 * b) / d3_lab_Z);\n return d3_lab(116 * y - 16, 500 * (x - y), 200 * (y - z));\n }\n function d3_rgb_xyz(r) {\n return (r /= 255) <= .04045 ? r / 12.92 : Math.pow((r + .055) / 1.055, 2.4);\n }\n function d3_rgb_parseNumber(c) {\n var f = parseFloat(c);\n return c.charAt(c.length - 1) === \"%\" ? Math.round(f * 2.55) : f;\n }\n var d3_rgb_names = d3.map({\n aliceblue: 15792383,\n antiquewhite: 16444375,\n aqua: 65535,\n aquamarine: 8388564,\n azure: 15794175,\n beige: 16119260,\n bisque: 16770244,\n black: 0,\n blanchedalmond: 16772045,\n blue: 255,\n blueviolet: 9055202,\n brown: 10824234,\n burlywood: 14596231,\n cadetblue: 6266528,\n chartreuse: 8388352,\n chocolate: 13789470,\n coral: 16744272,\n cornflowerblue: 6591981,\n cornsilk: 16775388,\n crimson: 14423100,\n cyan: 65535,\n darkblue: 139,\n darkcyan: 35723,\n darkgoldenrod: 12092939,\n darkgray: 11119017,\n darkgreen: 25600,\n darkgrey: 11119017,\n darkkhaki: 12433259,\n darkmagenta: 9109643,\n darkolivegreen: 5597999,\n darkorange: 16747520,\n darkorchid: 10040012,\n darkred: 9109504,\n darksalmon: 15308410,\n darkseagreen: 9419919,\n darkslateblue: 4734347,\n darkslategray: 3100495,\n darkslategrey: 3100495,\n darkturquoise: 52945,\n darkviolet: 9699539,\n deeppink: 16716947,\n deepskyblue: 49151,\n dimgray: 6908265,\n dimgrey: 6908265,\n dodgerblue: 2003199,\n firebrick: 11674146,\n floralwhite: 16775920,\n forestgreen: 2263842,\n fuchsia: 16711935,\n gainsboro: 14474460,\n ghostwhite: 16316671,\n gold: 16766720,\n goldenrod: 14329120,\n gray: 8421504,\n green: 32768,\n greenyellow: 11403055,\n grey: 8421504,\n honeydew: 15794160,\n hotpink: 16738740,\n indianred: 13458524,\n indigo: 4915330,\n ivory: 16777200,\n khaki: 15787660,\n lavender: 15132410,\n lavenderblush: 16773365,\n lawngreen: 8190976,\n lemonchiffon: 16775885,\n lightblue: 11393254,\n lightcoral: 15761536,\n lightcyan: 14745599,\n lightgoldenrodyellow: 16448210,\n lightgray: 13882323,\n lightgreen: 9498256,\n lightgrey: 13882323,\n lightpink: 16758465,\n lightsalmon: 16752762,\n lightseagreen: 2142890,\n lightskyblue: 8900346,\n lightslategray: 7833753,\n lightslategrey: 7833753,\n lightsteelblue: 11584734,\n lightyellow: 16777184,\n lime: 65280,\n limegreen: 3329330,\n linen: 16445670,\n magenta: 16711935,\n maroon: 8388608,\n mediumaquamarine: 6737322,\n mediumblue: 205,\n mediumorchid: 12211667,\n mediumpurple: 9662683,\n mediumseagreen: 3978097,\n mediumslateblue: 8087790,\n mediumspringgreen: 64154,\n mediumturquoise: 4772300,\n mediumvioletred: 13047173,\n midnightblue: 1644912,\n mintcream: 16121850,\n mistyrose: 16770273,\n moccasin: 16770229,\n navajowhite: 16768685,\n navy: 128,\n oldlace: 16643558,\n olive: 8421376,\n olivedrab: 7048739,\n orange: 16753920,\n orangered: 16729344,\n orchid: 14315734,\n palegoldenrod: 15657130,\n palegreen: 10025880,\n paleturquoise: 11529966,\n palevioletred: 14381203,\n papayawhip: 16773077,\n peachpuff: 16767673,\n peru: 13468991,\n pink: 16761035,\n plum: 14524637,\n powderblue: 11591910,\n purple: 8388736,\n rebeccapurple: 6697881,\n red: 16711680,\n rosybrown: 12357519,\n royalblue: 4286945,\n saddlebrown: 9127187,\n salmon: 16416882,\n sandybrown: 16032864,\n seagreen: 3050327,\n seashell: 16774638,\n sienna: 10506797,\n silver: 12632256,\n skyblue: 8900331,\n slateblue: 6970061,\n slategray: 7372944,\n slategrey: 7372944,\n snow: 16775930,\n springgreen: 65407,\n steelblue: 4620980,\n tan: 13808780,\n teal: 32896,\n thistle: 14204888,\n tomato: 16737095,\n turquoise: 4251856,\n violet: 15631086,\n wheat: 16113331,\n white: 16777215,\n whitesmoke: 16119285,\n yellow: 16776960,\n yellowgreen: 10145074\n });\n d3_rgb_names.forEach(function(key, value) {\n d3_rgb_names.set(key, d3_rgbNumber(value));\n });\n function d3_functor(v) {\n return typeof v === \"function\" ? v : function() {\n return v;\n };\n }\n d3.functor = d3_functor;\n d3.xhr = d3_xhrType(d3_identity);\n function d3_xhrType(response) {\n return function(url, mimeType, callback) {\n if (arguments.length === 2 && typeof mimeType === \"function\") callback = mimeType, \n mimeType = null;\n return d3_xhr(url, mimeType, response, callback);\n };\n }\n function d3_xhr(url, mimeType, response, callback) {\n var xhr = {}, dispatch = d3.dispatch(\"beforesend\", \"progress\", \"load\", \"error\"), headers = {}, request = new XMLHttpRequest(), responseType = null;\n if (this.XDomainRequest && !(\"withCredentials\" in request) && /^(http(s)?:)?\\/\\//.test(url)) request = new XDomainRequest();\n \"onload\" in request ? request.onload = request.onerror = respond : request.onreadystatechange = function() {\n request.readyState > 3 && respond();\n };\n function respond() {\n var status = request.status, result;\n if (!status && d3_xhrHasResponse(request) || status >= 200 && status < 300 || status === 304) {\n try {\n result = response.call(xhr, request);\n } catch (e) {\n dispatch.error.call(xhr, e);\n return;\n }\n dispatch.load.call(xhr, result);\n } else {\n dispatch.error.call(xhr, request);\n }\n }\n request.onprogress = function(event) {\n var o = d3.event;\n d3.event = event;\n try {\n dispatch.progress.call(xhr, request);\n } finally {\n d3.event = o;\n }\n };\n xhr.header = function(name, value) {\n name = (name + \"\").toLowerCase();\n if (arguments.length < 2) return headers[name];\n if (value == null) delete headers[name]; else headers[name] = value + \"\";\n return xhr;\n };\n xhr.mimeType = function(value) {\n if (!arguments.length) return mimeType;\n mimeType = value == null ? null : value + \"\";\n return xhr;\n };\n xhr.responseType = function(value) {\n if (!arguments.length) return responseType;\n responseType = value;\n return xhr;\n };\n xhr.response = function(value) {\n response = value;\n return xhr;\n };\n [ \"get\", \"post\" ].forEach(function(method) {\n xhr[method] = function() {\n return xhr.send.apply(xhr, [ method ].concat(d3_array(arguments)));\n };\n });\n xhr.send = function(method, data, callback) {\n if (arguments.length === 2 && typeof data === \"function\") callback = data, data = null;\n request.open(method, url, true);\n if (mimeType != null && !(\"accept\" in headers)) headers[\"accept\"] = mimeType + \",*/*\";\n if (request.setRequestHeader) for (var name in headers) request.setRequestHeader(name, headers[name]);\n if (mimeType != null && request.overrideMimeType) request.overrideMimeType(mimeType);\n if (responseType != null) request.responseType = responseType;\n if (callback != null) xhr.on(\"error\", callback).on(\"load\", function(request) {\n callback(null, request);\n });\n dispatch.beforesend.call(xhr, request);\n request.send(data == null ? null : data);\n return xhr;\n };\n xhr.abort = function() {\n request.abort();\n return xhr;\n };\n d3.rebind(xhr, dispatch, \"on\");\n return callback == null ? xhr : xhr.get(d3_xhr_fixCallback(callback));\n }\n function d3_xhr_fixCallback(callback) {\n return callback.length === 1 ? function(error, request) {\n callback(error == null ? request : null);\n } : callback;\n }\n function d3_xhrHasResponse(request) {\n var type = request.responseType;\n return type && type !== \"text\" ? request.response : request.responseText;\n }\n d3.dsv = function(delimiter, mimeType) {\n var reFormat = new RegExp('[\"' + delimiter + \"\\n]\"), delimiterCode = delimiter.charCodeAt(0);\n function dsv(url, row, callback) {\n if (arguments.length < 3) callback = row, row = null;\n var xhr = d3_xhr(url, mimeType, row == null ? response : typedResponse(row), callback);\n xhr.row = function(_) {\n return arguments.length ? xhr.response((row = _) == null ? response : typedResponse(_)) : row;\n };\n return xhr;\n }\n function response(request) {\n return dsv.parse(request.responseText);\n }\n function typedResponse(f) {\n return function(request) {\n return dsv.parse(request.responseText, f);\n };\n }\n dsv.parse = function(text, f) {\n var o;\n return dsv.parseRows(text, function(row, i) {\n if (o) return o(row, i - 1);\n var a = new Function(\"d\", \"return {\" + row.map(function(name, i) {\n return JSON.stringify(name) + \": d[\" + i + \"]\";\n }).join(\",\") + \"}\");\n o = f ? function(row, i) {\n return f(a(row), i);\n } : a;\n });\n };\n dsv.parseRows = function(text, f) {\n var EOL = {}, EOF = {}, rows = [], N = text.length, I = 0, n = 0, t, eol;\n function token() {\n if (I >= N) return EOF;\n if (eol) return eol = false, EOL;\n var j = I;\n if (text.charCodeAt(j) === 34) {\n var i = j;\n while (i++ < N) {\n if (text.charCodeAt(i) === 34) {\n if (text.charCodeAt(i + 1) !== 34) break;\n ++i;\n }\n }\n I = i + 2;\n var c = text.charCodeAt(i + 1);\n if (c === 13) {\n eol = true;\n if (text.charCodeAt(i + 2) === 10) ++I;\n } else if (c === 10) {\n eol = true;\n }\n return text.slice(j + 1, i).replace(/\"\"/g, '\"');\n }\n while (I < N) {\n var c = text.charCodeAt(I++), k = 1;\n if (c === 10) eol = true; else if (c === 13) {\n eol = true;\n if (text.charCodeAt(I) === 10) ++I, ++k;\n } else if (c !== delimiterCode) continue;\n return text.slice(j, I - k);\n }\n return text.slice(j);\n }\n while ((t = token()) !== EOF) {\n var a = [];\n while (t !== EOL && t !== EOF) {\n a.push(t);\n t = token();\n }\n if (f && (a = f(a, n++)) == null) continue;\n rows.push(a);\n }\n return rows;\n };\n dsv.format = function(rows) {\n if (Array.isArray(rows[0])) return dsv.formatRows(rows);\n var fieldSet = new d3_Set(), fields = [];\n rows.forEach(function(row) {\n for (var field in row) {\n if (!fieldSet.has(field)) {\n fields.push(fieldSet.add(field));\n }\n }\n });\n return [ fields.map(formatValue).join(delimiter) ].concat(rows.map(function(row) {\n return fields.map(function(field) {\n return formatValue(row[field]);\n }).join(delimiter);\n })).join(\"\\n\");\n };\n dsv.formatRows = function(rows) {\n return rows.map(formatRow).join(\"\\n\");\n };\n function formatRow(row) {\n return row.map(formatValue).join(delimiter);\n }\n function formatValue(text) {\n return reFormat.test(text) ? '\"' + text.replace(/\\\"/g, '\"\"') + '\"' : text;\n }\n return dsv;\n };\n d3.csv = d3.dsv(\",\", \"text/csv\");\n d3.tsv = d3.dsv(\"\t\", \"text/tab-separated-values\");\n var d3_timer_queueHead, d3_timer_queueTail, d3_timer_interval, d3_timer_timeout, d3_timer_frame = this[d3_vendorSymbol(this, \"requestAnimationFrame\")] || function(callback) {\n setTimeout(callback, 17);\n };\n d3.timer = function() {\n d3_timer.apply(this, arguments);\n };\n function d3_timer(callback, delay, then) {\n var n = arguments.length;\n if (n < 2) delay = 0;\n if (n < 3) then = Date.now();\n var time = then + delay, timer = {\n c: callback,\n t: time,\n n: null\n };\n if (d3_timer_queueTail) d3_timer_queueTail.n = timer; else d3_timer_queueHead = timer;\n d3_timer_queueTail = timer;\n if (!d3_timer_interval) {\n d3_timer_timeout = clearTimeout(d3_timer_timeout);\n d3_timer_interval = 1;\n d3_timer_frame(d3_timer_step);\n }\n return timer;\n }\n function d3_timer_step() {\n var now = d3_timer_mark(), delay = d3_timer_sweep() - now;\n if (delay > 24) {\n if (isFinite(delay)) {\n clearTimeout(d3_timer_timeout);\n d3_timer_timeout = setTimeout(d3_timer_step, delay);\n }\n d3_timer_interval = 0;\n } else {\n d3_timer_interval = 1;\n d3_timer_frame(d3_timer_step);\n }\n }\n d3.timer.flush = function() {\n d3_timer_mark();\n d3_timer_sweep();\n };\n function d3_timer_mark() {\n var now = Date.now(), timer = d3_timer_queueHead;\n while (timer) {\n if (now >= timer.t && timer.c(now - timer.t)) timer.c = null;\n timer = timer.n;\n }\n return now;\n }\n function d3_timer_sweep() {\n var t0, t1 = d3_timer_queueHead, time = Infinity;\n while (t1) {\n if (t1.c) {\n if (t1.t < time) time = t1.t;\n t1 = (t0 = t1).n;\n } else {\n t1 = t0 ? t0.n = t1.n : d3_timer_queueHead = t1.n;\n }\n }\n d3_timer_queueTail = t0;\n return time;\n }\n function d3_format_precision(x, p) {\n return p - (x ? Math.ceil(Math.log(x) / Math.LN10) : 1);\n }\n d3.round = function(x, n) {\n return n ? Math.round(x * (n = Math.pow(10, n))) / n : Math.round(x);\n };\n var d3_formatPrefixes = [ \"y\", \"z\", \"a\", \"f\", \"p\", \"n\", \"µ\", \"m\", \"\", \"k\", \"M\", \"G\", \"T\", \"P\", \"E\", \"Z\", \"Y\" ].map(d3_formatPrefix);\n d3.formatPrefix = function(value, precision) {\n var i = 0;\n if (value = +value) {\n if (value < 0) value *= -1;\n if (precision) value = d3.round(value, d3_format_precision(value, precision));\n i = 1 + Math.floor(1e-12 + Math.log(value) / Math.LN10);\n i = Math.max(-24, Math.min(24, Math.floor((i - 1) / 3) * 3));\n }\n return d3_formatPrefixes[8 + i / 3];\n };\n function d3_formatPrefix(d, i) {\n var k = Math.pow(10, abs(8 - i) * 3);\n return {\n scale: i > 8 ? function(d) {\n return d / k;\n } : function(d) {\n return d * k;\n },\n symbol: d\n };\n }\n function d3_locale_numberFormat(locale) {\n var locale_decimal = locale.decimal, locale_thousands = locale.thousands, locale_grouping = locale.grouping, locale_currency = locale.currency, formatGroup = locale_grouping && locale_thousands ? function(value, width) {\n var i = value.length, t = [], j = 0, g = locale_grouping[0], length = 0;\n while (i > 0 && g > 0) {\n if (length + g + 1 > width) g = Math.max(1, width - length);\n t.push(value.substring(i -= g, i + g));\n if ((length += g + 1) > width) break;\n g = locale_grouping[j = (j + 1) % locale_grouping.length];\n }\n return t.reverse().join(locale_thousands);\n } : d3_identity;\n return function(specifier) {\n var match = d3_format_re.exec(specifier), fill = match[1] || \" \", align = match[2] || \">\", sign = match[3] || \"-\", symbol = match[4] || \"\", zfill = match[5], width = +match[6], comma = match[7], precision = match[8], type = match[9], scale = 1, prefix = \"\", suffix = \"\", integer = false, exponent = true;\n if (precision) precision = +precision.substring(1);\n if (zfill || fill === \"0\" && align === \"=\") {\n zfill = fill = \"0\";\n align = \"=\";\n }\n switch (type) {\n case \"n\":\n comma = true;\n type = \"g\";\n break;\n\n case \"%\":\n scale = 100;\n suffix = \"%\";\n type = \"f\";\n break;\n\n case \"p\":\n scale = 100;\n suffix = \"%\";\n type = \"r\";\n break;\n\n case \"b\":\n case \"o\":\n case \"x\":\n case \"X\":\n if (symbol === \"#\") prefix = \"0\" + type.toLowerCase();\n\n case \"c\":\n exponent = false;\n\n case \"d\":\n integer = true;\n precision = 0;\n break;\n\n case \"s\":\n scale = -1;\n type = \"r\";\n break;\n }\n if (symbol === \"$\") prefix = locale_currency[0], suffix = locale_currency[1];\n if (type == \"r\" && !precision) type = \"g\";\n if (precision != null) {\n if (type == \"g\") precision = Math.max(1, Math.min(21, precision)); else if (type == \"e\" || type == \"f\") precision = Math.max(0, Math.min(20, precision));\n }\n type = d3_format_types.get(type) || d3_format_typeDefault;\n var zcomma = zfill && comma;\n return function(value) {\n var fullSuffix = suffix;\n if (integer && value % 1) return \"\";\n var negative = value < 0 || value === 0 && 1 / value < 0 ? (value = -value, \"-\") : sign === \"-\" ? \"\" : sign;\n if (scale < 0) {\n var unit = d3.formatPrefix(value, precision);\n value = unit.scale(value);\n fullSuffix = unit.symbol + suffix;\n } else {\n value *= scale;\n }\n value = type(value, precision);\n var i = value.lastIndexOf(\".\"), before, after;\n if (i < 0) {\n var j = exponent ? value.lastIndexOf(\"e\") : -1;\n if (j < 0) before = value, after = \"\"; else before = value.substring(0, j), after = value.substring(j);\n } else {\n before = value.substring(0, i);\n after = locale_decimal + value.substring(i + 1);\n }\n if (!zfill && comma) before = formatGroup(before, Infinity);\n var length = prefix.length + before.length + after.length + (zcomma ? 0 : negative.length), padding = length < width ? new Array(length = width - length + 1).join(fill) : \"\";\n if (zcomma) before = formatGroup(padding + before, padding.length ? width - after.length : Infinity);\n negative += prefix;\n value = before + after;\n return (align === \"<\" ? negative + value + padding : align === \">\" ? padding + negative + value : align === \"^\" ? padding.substring(0, length >>= 1) + negative + value + padding.substring(length) : negative + (zcomma ? value : padding + value)) + fullSuffix;\n };\n };\n }\n var d3_format_re = /(?:([^{])?([<>=^]))?([+\\- ])?([$#])?(0)?(\\d+)?(,)?(\\.-?\\d+)?([a-z%])?/i;\n var d3_format_types = d3.map({\n b: function(x) {\n return x.toString(2);\n },\n c: function(x) {\n return String.fromCharCode(x);\n },\n o: function(x) {\n return x.toString(8);\n },\n x: function(x) {\n return x.toString(16);\n },\n X: function(x) {\n return x.toString(16).toUpperCase();\n },\n g: function(x, p) {\n return x.toPrecision(p);\n },\n e: function(x, p) {\n return x.toExponential(p);\n },\n f: function(x, p) {\n return x.toFixed(p);\n },\n r: function(x, p) {\n return (x = d3.round(x, d3_format_precision(x, p))).toFixed(Math.max(0, Math.min(20, d3_format_precision(x * (1 + 1e-15), p))));\n }\n });\n function d3_format_typeDefault(x) {\n return x + \"\";\n }\n var d3_time = d3.time = {}, d3_date = Date;\n function d3_date_utc() {\n this._ = new Date(arguments.length > 1 ? Date.UTC.apply(this, arguments) : arguments[0]);\n }\n d3_date_utc.prototype = {\n getDate: function() {\n return this._.getUTCDate();\n },\n getDay: function() {\n return this._.getUTCDay();\n },\n getFullYear: function() {\n return this._.getUTCFullYear();\n },\n getHours: function() {\n return this._.getUTCHours();\n },\n getMilliseconds: function() {\n return this._.getUTCMilliseconds();\n },\n getMinutes: function() {\n return this._.getUTCMinutes();\n },\n getMonth: function() {\n return this._.getUTCMonth();\n },\n getSeconds: function() {\n return this._.getUTCSeconds();\n },\n getTime: function() {\n return this._.getTime();\n },\n getTimezoneOffset: function() {\n return 0;\n },\n valueOf: function() {\n return this._.valueOf();\n },\n setDate: function() {\n d3_time_prototype.setUTCDate.apply(this._, arguments);\n },\n setDay: function() {\n d3_time_prototype.setUTCDay.apply(this._, arguments);\n },\n setFullYear: function() {\n d3_time_prototype.setUTCFullYear.apply(this._, arguments);\n },\n setHours: function() {\n d3_time_prototype.setUTCHours.apply(this._, arguments);\n },\n setMilliseconds: function() {\n d3_time_prototype.setUTCMilliseconds.apply(this._, arguments);\n },\n setMinutes: function() {\n d3_time_prototype.setUTCMinutes.apply(this._, arguments);\n },\n setMonth: function() {\n d3_time_prototype.setUTCMonth.apply(this._, arguments);\n },\n setSeconds: function() {\n d3_time_prototype.setUTCSeconds.apply(this._, arguments);\n },\n setTime: function() {\n d3_time_prototype.setTime.apply(this._, arguments);\n }\n };\n var d3_time_prototype = Date.prototype;\n function d3_time_interval(local, step, number) {\n function round(date) {\n var d0 = local(date), d1 = offset(d0, 1);\n return date - d0 < d1 - date ? d0 : d1;\n }\n function ceil(date) {\n step(date = local(new d3_date(date - 1)), 1);\n return date;\n }\n function offset(date, k) {\n step(date = new d3_date(+date), k);\n return date;\n }\n function range(t0, t1, dt) {\n var time = ceil(t0), times = [];\n if (dt > 1) {\n while (time < t1) {\n if (!(number(time) % dt)) times.push(new Date(+time));\n step(time, 1);\n }\n } else {\n while (time < t1) times.push(new Date(+time)), step(time, 1);\n }\n return times;\n }\n function range_utc(t0, t1, dt) {\n try {\n d3_date = d3_date_utc;\n var utc = new d3_date_utc();\n utc._ = t0;\n return range(utc, t1, dt);\n } finally {\n d3_date = Date;\n }\n }\n local.floor = local;\n local.round = round;\n local.ceil = ceil;\n local.offset = offset;\n local.range = range;\n var utc = local.utc = d3_time_interval_utc(local);\n utc.floor = utc;\n utc.round = d3_time_interval_utc(round);\n utc.ceil = d3_time_interval_utc(ceil);\n utc.offset = d3_time_interval_utc(offset);\n utc.range = range_utc;\n return local;\n }\n function d3_time_interval_utc(method) {\n return function(date, k) {\n try {\n d3_date = d3_date_utc;\n var utc = new d3_date_utc();\n utc._ = date;\n return method(utc, k)._;\n } finally {\n d3_date = Date;\n }\n };\n }\n d3_time.year = d3_time_interval(function(date) {\n date = d3_time.day(date);\n date.setMonth(0, 1);\n return date;\n }, function(date, offset) {\n date.setFullYear(date.getFullYear() + offset);\n }, function(date) {\n return date.getFullYear();\n });\n d3_time.years = d3_time.year.range;\n d3_time.years.utc = d3_time.year.utc.range;\n d3_time.day = d3_time_interval(function(date) {\n var day = new d3_date(2e3, 0);\n day.setFullYear(date.getFullYear(), date.getMonth(), date.getDate());\n return day;\n }, function(date, offset) {\n date.setDate(date.getDate() + offset);\n }, function(date) {\n return date.getDate() - 1;\n });\n d3_time.days = d3_time.day.range;\n d3_time.days.utc = d3_time.day.utc.range;\n d3_time.dayOfYear = function(date) {\n var year = d3_time.year(date);\n return Math.floor((date - year - (date.getTimezoneOffset() - year.getTimezoneOffset()) * 6e4) / 864e5);\n };\n [ \"sunday\", \"monday\", \"tuesday\", \"wednesday\", \"thursday\", \"friday\", \"saturday\" ].forEach(function(day, i) {\n i = 7 - i;\n var interval = d3_time[day] = d3_time_interval(function(date) {\n (date = d3_time.day(date)).setDate(date.getDate() - (date.getDay() + i) % 7);\n return date;\n }, function(date, offset) {\n date.setDate(date.getDate() + Math.floor(offset) * 7);\n }, function(date) {\n var day = d3_time.year(date).getDay();\n return Math.floor((d3_time.dayOfYear(date) + (day + i) % 7) / 7) - (day !== i);\n });\n d3_time[day + \"s\"] = interval.range;\n d3_time[day + \"s\"].utc = interval.utc.range;\n d3_time[day + \"OfYear\"] = function(date) {\n var day = d3_time.year(date).getDay();\n return Math.floor((d3_time.dayOfYear(date) + (day + i) % 7) / 7);\n };\n });\n d3_time.week = d3_time.sunday;\n d3_time.weeks = d3_time.sunday.range;\n d3_time.weeks.utc = d3_time.sunday.utc.range;\n d3_time.weekOfYear = d3_time.sundayOfYear;\n function d3_locale_timeFormat(locale) {\n var locale_dateTime = locale.dateTime, locale_date = locale.date, locale_time = locale.time, locale_periods = locale.periods, locale_days = locale.days, locale_shortDays = locale.shortDays, locale_months = locale.months, locale_shortMonths = locale.shortMonths;\n function d3_time_format(template) {\n var n = template.length;\n function format(date) {\n var string = [], i = -1, j = 0, c, p, f;\n while (++i < n) {\n if (template.charCodeAt(i) === 37) {\n string.push(template.slice(j, i));\n if ((p = d3_time_formatPads[c = template.charAt(++i)]) != null) c = template.charAt(++i);\n if (f = d3_time_formats[c]) c = f(date, p == null ? c === \"e\" ? \" \" : \"0\" : p);\n string.push(c);\n j = i + 1;\n }\n }\n string.push(template.slice(j, i));\n return string.join(\"\");\n }\n format.parse = function(string) {\n var d = {\n y: 1900,\n m: 0,\n d: 1,\n H: 0,\n M: 0,\n S: 0,\n L: 0,\n Z: null\n }, i = d3_time_parse(d, template, string, 0);\n if (i != string.length) return null;\n if (\"p\" in d) d.H = d.H % 12 + d.p * 12;\n var localZ = d.Z != null && d3_date !== d3_date_utc, date = new (localZ ? d3_date_utc : d3_date)();\n if (\"j\" in d) date.setFullYear(d.y, 0, d.j); else if (\"W\" in d || \"U\" in d) {\n if (!(\"w\" in d)) d.w = \"W\" in d ? 1 : 0;\n date.setFullYear(d.y, 0, 1);\n date.setFullYear(d.y, 0, \"W\" in d ? (d.w + 6) % 7 + d.W * 7 - (date.getDay() + 5) % 7 : d.w + d.U * 7 - (date.getDay() + 6) % 7);\n } else date.setFullYear(d.y, d.m, d.d);\n date.setHours(d.H + (d.Z / 100 | 0), d.M + d.Z % 100, d.S, d.L);\n return localZ ? date._ : date;\n };\n format.toString = function() {\n return template;\n };\n return format;\n }\n function d3_time_parse(date, template, string, j) {\n var c, p, t, i = 0, n = template.length, m = string.length;\n while (i < n) {\n if (j >= m) return -1;\n c = template.charCodeAt(i++);\n if (c === 37) {\n t = template.charAt(i++);\n p = d3_time_parsers[t in d3_time_formatPads ? template.charAt(i++) : t];\n if (!p || (j = p(date, string, j)) < 0) return -1;\n } else if (c != string.charCodeAt(j++)) {\n return -1;\n }\n }\n return j;\n }\n d3_time_format.utc = function(template) {\n var local = d3_time_format(template);\n function format(date) {\n try {\n d3_date = d3_date_utc;\n var utc = new d3_date();\n utc._ = date;\n return local(utc);\n } finally {\n d3_date = Date;\n }\n }\n format.parse = function(string) {\n try {\n d3_date = d3_date_utc;\n var date = local.parse(string);\n return date && date._;\n } finally {\n d3_date = Date;\n }\n };\n format.toString = local.toString;\n return format;\n };\n d3_time_format.multi = d3_time_format.utc.multi = d3_time_formatMulti;\n var d3_time_periodLookup = d3.map(), d3_time_dayRe = d3_time_formatRe(locale_days), d3_time_dayLookup = d3_time_formatLookup(locale_days), d3_time_dayAbbrevRe = d3_time_formatRe(locale_shortDays), d3_time_dayAbbrevLookup = d3_time_formatLookup(locale_shortDays), d3_time_monthRe = d3_time_formatRe(locale_months), d3_time_monthLookup = d3_time_formatLookup(locale_months), d3_time_monthAbbrevRe = d3_time_formatRe(locale_shortMonths), d3_time_monthAbbrevLookup = d3_time_formatLookup(locale_shortMonths);\n locale_periods.forEach(function(p, i) {\n d3_time_periodLookup.set(p.toLowerCase(), i);\n });\n var d3_time_formats = {\n a: function(d) {\n return locale_shortDays[d.getDay()];\n },\n A: function(d) {\n return locale_days[d.getDay()];\n },\n b: function(d) {\n return locale_shortMonths[d.getMonth()];\n },\n B: function(d) {\n return locale_months[d.getMonth()];\n },\n c: d3_time_format(locale_dateTime),\n d: function(d, p) {\n return d3_time_formatPad(d.getDate(), p, 2);\n },\n e: function(d, p) {\n return d3_time_formatPad(d.getDate(), p, 2);\n },\n H: function(d, p) {\n return d3_time_formatPad(d.getHours(), p, 2);\n },\n I: function(d, p) {\n return d3_time_formatPad(d.getHours() % 12 || 12, p, 2);\n },\n j: function(d, p) {\n return d3_time_formatPad(1 + d3_time.dayOfYear(d), p, 3);\n },\n L: function(d, p) {\n return d3_time_formatPad(d.getMilliseconds(), p, 3);\n },\n m: function(d, p) {\n return d3_time_formatPad(d.getMonth() + 1, p, 2);\n },\n M: function(d, p) {\n return d3_time_formatPad(d.getMinutes(), p, 2);\n },\n p: function(d) {\n return locale_periods[+(d.getHours() >= 12)];\n },\n S: function(d, p) {\n return d3_time_formatPad(d.getSeconds(), p, 2);\n },\n U: function(d, p) {\n return d3_time_formatPad(d3_time.sundayOfYear(d), p, 2);\n },\n w: function(d) {\n return d.getDay();\n },\n W: function(d, p) {\n return d3_time_formatPad(d3_time.mondayOfYear(d), p, 2);\n },\n x: d3_time_format(locale_date),\n X: d3_time_format(locale_time),\n y: function(d, p) {\n return d3_time_formatPad(d.getFullYear() % 100, p, 2);\n },\n Y: function(d, p) {\n return d3_time_formatPad(d.getFullYear() % 1e4, p, 4);\n },\n Z: d3_time_zone,\n \"%\": function() {\n return \"%\";\n }\n };\n var d3_time_parsers = {\n a: d3_time_parseWeekdayAbbrev,\n A: d3_time_parseWeekday,\n b: d3_time_parseMonthAbbrev,\n B: d3_time_parseMonth,\n c: d3_time_parseLocaleFull,\n d: d3_time_parseDay,\n e: d3_time_parseDay,\n H: d3_time_parseHour24,\n I: d3_time_parseHour24,\n j: d3_time_parseDayOfYear,\n L: d3_time_parseMilliseconds,\n m: d3_time_parseMonthNumber,\n M: d3_time_parseMinutes,\n p: d3_time_parseAmPm,\n S: d3_time_parseSeconds,\n U: d3_time_parseWeekNumberSunday,\n w: d3_time_parseWeekdayNumber,\n W: d3_time_parseWeekNumberMonday,\n x: d3_time_parseLocaleDate,\n X: d3_time_parseLocaleTime,\n y: d3_time_parseYear,\n Y: d3_time_parseFullYear,\n Z: d3_time_parseZone,\n \"%\": d3_time_parseLiteralPercent\n };\n function d3_time_parseWeekdayAbbrev(date, string, i) {\n d3_time_dayAbbrevRe.lastIndex = 0;\n var n = d3_time_dayAbbrevRe.exec(string.slice(i));\n return n ? (date.w = d3_time_dayAbbrevLookup.get(n[0].toLowerCase()), i + n[0].length) : -1;\n }\n function d3_time_parseWeekday(date, string, i) {\n d3_time_dayRe.lastIndex = 0;\n var n = d3_time_dayRe.exec(string.slice(i));\n return n ? (date.w = d3_time_dayLookup.get(n[0].toLowerCase()), i + n[0].length) : -1;\n }\n function d3_time_parseMonthAbbrev(date, string, i) {\n d3_time_monthAbbrevRe.lastIndex = 0;\n var n = d3_time_monthAbbrevRe.exec(string.slice(i));\n return n ? (date.m = d3_time_monthAbbrevLookup.get(n[0].toLowerCase()), i + n[0].length) : -1;\n }\n function d3_time_parseMonth(date, string, i) {\n d3_time_monthRe.lastIndex = 0;\n var n = d3_time_monthRe.exec(string.slice(i));\n return n ? (date.m = d3_time_monthLookup.get(n[0].toLowerCase()), i + n[0].length) : -1;\n }\n function d3_time_parseLocaleFull(date, string, i) {\n return d3_time_parse(date, d3_time_formats.c.toString(), string, i);\n }\n function d3_time_parseLocaleDate(date, string, i) {\n return d3_time_parse(date, d3_time_formats.x.toString(), string, i);\n }\n function d3_time_parseLocaleTime(date, string, i) {\n return d3_time_parse(date, d3_time_formats.X.toString(), string, i);\n }\n function d3_time_parseAmPm(date, string, i) {\n var n = d3_time_periodLookup.get(string.slice(i, i += 2).toLowerCase());\n return n == null ? -1 : (date.p = n, i);\n }\n return d3_time_format;\n }\n var d3_time_formatPads = {\n \"-\": \"\",\n _: \" \",\n \"0\": \"0\"\n }, d3_time_numberRe = /^\\s*\\d+/, d3_time_percentRe = /^%/;\n function d3_time_formatPad(value, fill, width) {\n var sign = value < 0 ? \"-\" : \"\", string = (sign ? -value : value) + \"\", length = string.length;\n return sign + (length < width ? new Array(width - length + 1).join(fill) + string : string);\n }\n function d3_time_formatRe(names) {\n return new RegExp(\"^(?:\" + names.map(d3.requote).join(\"|\") + \")\", \"i\");\n }\n function d3_time_formatLookup(names) {\n var map = new d3_Map(), i = -1, n = names.length;\n while (++i < n) map.set(names[i].toLowerCase(), i);\n return map;\n }\n function d3_time_parseWeekdayNumber(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 1));\n return n ? (date.w = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseWeekNumberSunday(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i));\n return n ? (date.U = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseWeekNumberMonday(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i));\n return n ? (date.W = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseFullYear(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 4));\n return n ? (date.y = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseYear(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.y = d3_time_expandYear(+n[0]), i + n[0].length) : -1;\n }\n function d3_time_parseZone(date, string, i) {\n return /^[+-]\\d{4}$/.test(string = string.slice(i, i + 5)) ? (date.Z = -string, \n i + 5) : -1;\n }\n function d3_time_expandYear(d) {\n return d + (d > 68 ? 1900 : 2e3);\n }\n function d3_time_parseMonthNumber(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.m = n[0] - 1, i + n[0].length) : -1;\n }\n function d3_time_parseDay(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.d = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseDayOfYear(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 3));\n return n ? (date.j = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseHour24(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.H = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseMinutes(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.M = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseSeconds(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 2));\n return n ? (date.S = +n[0], i + n[0].length) : -1;\n }\n function d3_time_parseMilliseconds(date, string, i) {\n d3_time_numberRe.lastIndex = 0;\n var n = d3_time_numberRe.exec(string.slice(i, i + 3));\n return n ? (date.L = +n[0], i + n[0].length) : -1;\n }\n function d3_time_zone(d) {\n var z = d.getTimezoneOffset(), zs = z > 0 ? \"-\" : \"+\", zh = abs(z) / 60 | 0, zm = abs(z) % 60;\n return zs + d3_time_formatPad(zh, \"0\", 2) + d3_time_formatPad(zm, \"0\", 2);\n }\n function d3_time_parseLiteralPercent(date, string, i) {\n d3_time_percentRe.lastIndex = 0;\n var n = d3_time_percentRe.exec(string.slice(i, i + 1));\n return n ? i + n[0].length : -1;\n }\n function d3_time_formatMulti(formats) {\n var n = formats.length, i = -1;\n while (++i < n) formats[i][0] = this(formats[i][0]);\n return function(date) {\n var i = 0, f = formats[i];\n while (!f[1](date)) f = formats[++i];\n return f[0](date);\n };\n }\n d3.locale = function(locale) {\n return {\n numberFormat: d3_locale_numberFormat(locale),\n timeFormat: d3_locale_timeFormat(locale)\n };\n };\n var d3_locale_enUS = d3.locale({\n decimal: \".\",\n thousands: \",\",\n grouping: [ 3 ],\n currency: [ \"$\", \"\" ],\n dateTime: \"%a %b %e %X %Y\",\n date: \"%m/%d/%Y\",\n time: \"%H:%M:%S\",\n periods: [ \"AM\", \"PM\" ],\n days: [ \"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\" ],\n shortDays: [ \"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\" ],\n months: [ \"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\" ],\n shortMonths: [ \"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\" ]\n });\n d3.format = d3_locale_enUS.numberFormat;\n d3.geo = {};\n function d3_adder() {}\n d3_adder.prototype = {\n s: 0,\n t: 0,\n add: function(y) {\n d3_adderSum(y, this.t, d3_adderTemp);\n d3_adderSum(d3_adderTemp.s, this.s, this);\n if (this.s) this.t += d3_adderTemp.t; else this.s = d3_adderTemp.t;\n },\n reset: function() {\n this.s = this.t = 0;\n },\n valueOf: function() {\n return this.s;\n }\n };\n var d3_adderTemp = new d3_adder();\n function d3_adderSum(a, b, o) {\n var x = o.s = a + b, bv = x - a, av = x - bv;\n o.t = a - av + (b - bv);\n }\n d3.geo.stream = function(object, listener) {\n if (object && d3_geo_streamObjectType.hasOwnProperty(object.type)) {\n d3_geo_streamObjectType[object.type](object, listener);\n } else {\n d3_geo_streamGeometry(object, listener);\n }\n };\n function d3_geo_streamGeometry(geometry, listener) {\n if (geometry && d3_geo_streamGeometryType.hasOwnProperty(geometry.type)) {\n d3_geo_streamGeometryType[geometry.type](geometry, listener);\n }\n }\n var d3_geo_streamObjectType = {\n Feature: function(feature, listener) {\n d3_geo_streamGeometry(feature.geometry, listener);\n },\n FeatureCollection: function(object, listener) {\n var features = object.features, i = -1, n = features.length;\n while (++i < n) d3_geo_streamGeometry(features[i].geometry, listener);\n }\n };\n var d3_geo_streamGeometryType = {\n Sphere: function(object, listener) {\n listener.sphere();\n },\n Point: function(object, listener) {\n object = object.coordinates;\n listener.point(object[0], object[1], object[2]);\n },\n MultiPoint: function(object, listener) {\n var coordinates = object.coordinates, i = -1, n = coordinates.length;\n while (++i < n) object = coordinates[i], listener.point(object[0], object[1], object[2]);\n },\n LineString: function(object, listener) {\n d3_geo_streamLine(object.coordinates, listener, 0);\n },\n MultiLineString: function(object, listener) {\n var coordinates = object.coordinates, i = -1, n = coordinates.length;\n while (++i < n) d3_geo_streamLine(coordinates[i], listener, 0);\n },\n Polygon: function(object, listener) {\n d3_geo_streamPolygon(object.coordinates, listener);\n },\n MultiPolygon: function(object, listener) {\n var coordinates = object.coordinates, i = -1, n = coordinates.length;\n while (++i < n) d3_geo_streamPolygon(coordinates[i], listener);\n },\n GeometryCollection: function(object, listener) {\n var geometries = object.geometries, i = -1, n = geometries.length;\n while (++i < n) d3_geo_streamGeometry(geometries[i], listener);\n }\n };\n function d3_geo_streamLine(coordinates, listener, closed) {\n var i = -1, n = coordinates.length - closed, coordinate;\n listener.lineStart();\n while (++i < n) coordinate = coordinates[i], listener.point(coordinate[0], coordinate[1], coordinate[2]);\n listener.lineEnd();\n }\n function d3_geo_streamPolygon(coordinates, listener) {\n var i = -1, n = coordinates.length;\n listener.polygonStart();\n while (++i < n) d3_geo_streamLine(coordinates[i], listener, 1);\n listener.polygonEnd();\n }\n d3.geo.area = function(object) {\n d3_geo_areaSum = 0;\n d3.geo.stream(object, d3_geo_area);\n return d3_geo_areaSum;\n };\n var d3_geo_areaSum, d3_geo_areaRingSum = new d3_adder();\n var d3_geo_area = {\n sphere: function() {\n d3_geo_areaSum += 4 * π;\n },\n point: d3_noop,\n lineStart: d3_noop,\n lineEnd: d3_noop,\n polygonStart: function() {\n d3_geo_areaRingSum.reset();\n d3_geo_area.lineStart = d3_geo_areaRingStart;\n },\n polygonEnd: function() {\n var area = 2 * d3_geo_areaRingSum;\n d3_geo_areaSum += area < 0 ? 4 * π + area : area;\n d3_geo_area.lineStart = d3_geo_area.lineEnd = d3_geo_area.point = d3_noop;\n }\n };\n function d3_geo_areaRingStart() {\n var λ00, φ00, λ0, cosφ0, sinφ0;\n d3_geo_area.point = function(λ, φ) {\n d3_geo_area.point = nextPoint;\n λ0 = (λ00 = λ) * d3_radians, cosφ0 = Math.cos(φ = (φ00 = φ) * d3_radians / 2 + π / 4), \n sinφ0 = Math.sin(φ);\n };\n function nextPoint(λ, φ) {\n λ *= d3_radians;\n φ = φ * d3_radians / 2 + π / 4;\n var dλ = λ - λ0, sdλ = dλ >= 0 ? 1 : -1, adλ = sdλ * dλ, cosφ = Math.cos(φ), sinφ = Math.sin(φ), k = sinφ0 * sinφ, u = cosφ0 * cosφ + k * Math.cos(adλ), v = k * sdλ * Math.sin(adλ);\n d3_geo_areaRingSum.add(Math.atan2(v, u));\n λ0 = λ, cosφ0 = cosφ, sinφ0 = sinφ;\n }\n d3_geo_area.lineEnd = function() {\n nextPoint(λ00, φ00);\n };\n }\n function d3_geo_cartesian(spherical) {\n var λ = spherical[0], φ = spherical[1], cosφ = Math.cos(φ);\n return [ cosφ * Math.cos(λ), cosφ * Math.sin(λ), Math.sin(φ) ];\n }\n function d3_geo_cartesianDot(a, b) {\n return a[0] * b[0] + a[1] * b[1] + a[2] * b[2];\n }\n function d3_geo_cartesianCross(a, b) {\n return [ a[1] * b[2] - a[2] * b[1], a[2] * b[0] - a[0] * b[2], a[0] * b[1] - a[1] * b[0] ];\n }\n function d3_geo_cartesianAdd(a, b) {\n a[0] += b[0];\n a[1] += b[1];\n a[2] += b[2];\n }\n function d3_geo_cartesianScale(vector, k) {\n return [ vector[0] * k, vector[1] * k, vector[2] * k ];\n }\n function d3_geo_cartesianNormalize(d) {\n var l = Math.sqrt(d[0] * d[0] + d[1] * d[1] + d[2] * d[2]);\n d[0] /= l;\n d[1] /= l;\n d[2] /= l;\n }\n function d3_geo_spherical(cartesian) {\n return [ Math.atan2(cartesian[1], cartesian[0]), d3_asin(cartesian[2]) ];\n }\n function d3_geo_sphericalEqual(a, b) {\n return abs(a[0] - b[0]) < ε && abs(a[1] - b[1]) < ε;\n }\n d3.geo.bounds = function() {\n var λ0, φ0, λ1, φ1, λ_, λ__, φ__, p0, dλSum, ranges, range;\n var bound = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n bound.point = ringPoint;\n bound.lineStart = ringStart;\n bound.lineEnd = ringEnd;\n dλSum = 0;\n d3_geo_area.polygonStart();\n },\n polygonEnd: function() {\n d3_geo_area.polygonEnd();\n bound.point = point;\n bound.lineStart = lineStart;\n bound.lineEnd = lineEnd;\n if (d3_geo_areaRingSum < 0) λ0 = -(λ1 = 180), φ0 = -(φ1 = 90); else if (dλSum > ε) φ1 = 90; else if (dλSum < -ε) φ0 = -90;\n range[0] = λ0, range[1] = λ1;\n }\n };\n function point(λ, φ) {\n ranges.push(range = [ λ0 = λ, λ1 = λ ]);\n if (φ < φ0) φ0 = φ;\n if (φ > φ1) φ1 = φ;\n }\n function linePoint(λ, φ) {\n var p = d3_geo_cartesian([ λ * d3_radians, φ * d3_radians ]);\n if (p0) {\n var normal = d3_geo_cartesianCross(p0, p), equatorial = [ normal[1], -normal[0], 0 ], inflection = d3_geo_cartesianCross(equatorial, normal);\n d3_geo_cartesianNormalize(inflection);\n inflection = d3_geo_spherical(inflection);\n var dλ = λ - λ_, s = dλ > 0 ? 1 : -1, λi = inflection[0] * d3_degrees * s, antimeridian = abs(dλ) > 180;\n if (antimeridian ^ (s * λ_ < λi && λi < s * λ)) {\n var φi = inflection[1] * d3_degrees;\n if (φi > φ1) φ1 = φi;\n } else if (λi = (λi + 360) % 360 - 180, antimeridian ^ (s * λ_ < λi && λi < s * λ)) {\n var φi = -inflection[1] * d3_degrees;\n if (φi < φ0) φ0 = φi;\n } else {\n if (φ < φ0) φ0 = φ;\n if (φ > φ1) φ1 = φ;\n }\n if (antimeridian) {\n if (λ < λ_) {\n if (angle(λ0, λ) > angle(λ0, λ1)) λ1 = λ;\n } else {\n if (angle(λ, λ1) > angle(λ0, λ1)) λ0 = λ;\n }\n } else {\n if (λ1 >= λ0) {\n if (λ < λ0) λ0 = λ;\n if (λ > λ1) λ1 = λ;\n } else {\n if (λ > λ_) {\n if (angle(λ0, λ) > angle(λ0, λ1)) λ1 = λ;\n } else {\n if (angle(λ, λ1) > angle(λ0, λ1)) λ0 = λ;\n }\n }\n }\n } else {\n point(λ, φ);\n }\n p0 = p, λ_ = λ;\n }\n function lineStart() {\n bound.point = linePoint;\n }\n function lineEnd() {\n range[0] = λ0, range[1] = λ1;\n bound.point = point;\n p0 = null;\n }\n function ringPoint(λ, φ) {\n if (p0) {\n var dλ = λ - λ_;\n dλSum += abs(dλ) > 180 ? dλ + (dλ > 0 ? 360 : -360) : dλ;\n } else λ__ = λ, φ__ = φ;\n d3_geo_area.point(λ, φ);\n linePoint(λ, φ);\n }\n function ringStart() {\n d3_geo_area.lineStart();\n }\n function ringEnd() {\n ringPoint(λ__, φ__);\n d3_geo_area.lineEnd();\n if (abs(dλSum) > ε) λ0 = -(λ1 = 180);\n range[0] = λ0, range[1] = λ1;\n p0 = null;\n }\n function angle(λ0, λ1) {\n return (λ1 -= λ0) < 0 ? λ1 + 360 : λ1;\n }\n function compareRanges(a, b) {\n return a[0] - b[0];\n }\n function withinRange(x, range) {\n return range[0] <= range[1] ? range[0] <= x && x <= range[1] : x < range[0] || range[1] < x;\n }\n return function(feature) {\n φ1 = λ1 = -(λ0 = φ0 = Infinity);\n ranges = [];\n d3.geo.stream(feature, bound);\n var n = ranges.length;\n if (n) {\n ranges.sort(compareRanges);\n for (var i = 1, a = ranges[0], b, merged = [ a ]; i < n; ++i) {\n b = ranges[i];\n if (withinRange(b[0], a) || withinRange(b[1], a)) {\n if (angle(a[0], b[1]) > angle(a[0], a[1])) a[1] = b[1];\n if (angle(b[0], a[1]) > angle(a[0], a[1])) a[0] = b[0];\n } else {\n merged.push(a = b);\n }\n }\n var best = -Infinity, dλ;\n for (var n = merged.length - 1, i = 0, a = merged[n], b; i <= n; a = b, ++i) {\n b = merged[i];\n if ((dλ = angle(a[1], b[0])) > best) best = dλ, λ0 = b[0], λ1 = a[1];\n }\n }\n ranges = range = null;\n return λ0 === Infinity || φ0 === Infinity ? [ [ NaN, NaN ], [ NaN, NaN ] ] : [ [ λ0, φ0 ], [ λ1, φ1 ] ];\n };\n }();\n d3.geo.centroid = function(object) {\n d3_geo_centroidW0 = d3_geo_centroidW1 = d3_geo_centroidX0 = d3_geo_centroidY0 = d3_geo_centroidZ0 = d3_geo_centroidX1 = d3_geo_centroidY1 = d3_geo_centroidZ1 = d3_geo_centroidX2 = d3_geo_centroidY2 = d3_geo_centroidZ2 = 0;\n d3.geo.stream(object, d3_geo_centroid);\n var x = d3_geo_centroidX2, y = d3_geo_centroidY2, z = d3_geo_centroidZ2, m = x * x + y * y + z * z;\n if (m < ε2) {\n x = d3_geo_centroidX1, y = d3_geo_centroidY1, z = d3_geo_centroidZ1;\n if (d3_geo_centroidW1 < ε) x = d3_geo_centroidX0, y = d3_geo_centroidY0, z = d3_geo_centroidZ0;\n m = x * x + y * y + z * z;\n if (m < ε2) return [ NaN, NaN ];\n }\n return [ Math.atan2(y, x) * d3_degrees, d3_asin(z / Math.sqrt(m)) * d3_degrees ];\n };\n var d3_geo_centroidW0, d3_geo_centroidW1, d3_geo_centroidX0, d3_geo_centroidY0, d3_geo_centroidZ0, d3_geo_centroidX1, d3_geo_centroidY1, d3_geo_centroidZ1, d3_geo_centroidX2, d3_geo_centroidY2, d3_geo_centroidZ2;\n var d3_geo_centroid = {\n sphere: d3_noop,\n point: d3_geo_centroidPoint,\n lineStart: d3_geo_centroidLineStart,\n lineEnd: d3_geo_centroidLineEnd,\n polygonStart: function() {\n d3_geo_centroid.lineStart = d3_geo_centroidRingStart;\n },\n polygonEnd: function() {\n d3_geo_centroid.lineStart = d3_geo_centroidLineStart;\n }\n };\n function d3_geo_centroidPoint(λ, φ) {\n λ *= d3_radians;\n var cosφ = Math.cos(φ *= d3_radians);\n d3_geo_centroidPointXYZ(cosφ * Math.cos(λ), cosφ * Math.sin(λ), Math.sin(φ));\n }\n function d3_geo_centroidPointXYZ(x, y, z) {\n ++d3_geo_centroidW0;\n d3_geo_centroidX0 += (x - d3_geo_centroidX0) / d3_geo_centroidW0;\n d3_geo_centroidY0 += (y - d3_geo_centroidY0) / d3_geo_centroidW0;\n d3_geo_centroidZ0 += (z - d3_geo_centroidZ0) / d3_geo_centroidW0;\n }\n function d3_geo_centroidLineStart() {\n var x0, y0, z0;\n d3_geo_centroid.point = function(λ, φ) {\n λ *= d3_radians;\n var cosφ = Math.cos(φ *= d3_radians);\n x0 = cosφ * Math.cos(λ);\n y0 = cosφ * Math.sin(λ);\n z0 = Math.sin(φ);\n d3_geo_centroid.point = nextPoint;\n d3_geo_centroidPointXYZ(x0, y0, z0);\n };\n function nextPoint(λ, φ) {\n λ *= d3_radians;\n var cosφ = Math.cos(φ *= d3_radians), x = cosφ * Math.cos(λ), y = cosφ * Math.sin(λ), z = Math.sin(φ), w = Math.atan2(Math.sqrt((w = y0 * z - z0 * y) * w + (w = z0 * x - x0 * z) * w + (w = x0 * y - y0 * x) * w), x0 * x + y0 * y + z0 * z);\n d3_geo_centroidW1 += w;\n d3_geo_centroidX1 += w * (x0 + (x0 = x));\n d3_geo_centroidY1 += w * (y0 + (y0 = y));\n d3_geo_centroidZ1 += w * (z0 + (z0 = z));\n d3_geo_centroidPointXYZ(x0, y0, z0);\n }\n }\n function d3_geo_centroidLineEnd() {\n d3_geo_centroid.point = d3_geo_centroidPoint;\n }\n function d3_geo_centroidRingStart() {\n var λ00, φ00, x0, y0, z0;\n d3_geo_centroid.point = function(λ, φ) {\n λ00 = λ, φ00 = φ;\n d3_geo_centroid.point = nextPoint;\n λ *= d3_radians;\n var cosφ = Math.cos(φ *= d3_radians);\n x0 = cosφ * Math.cos(λ);\n y0 = cosφ * Math.sin(λ);\n z0 = Math.sin(φ);\n d3_geo_centroidPointXYZ(x0, y0, z0);\n };\n d3_geo_centroid.lineEnd = function() {\n nextPoint(λ00, φ00);\n d3_geo_centroid.lineEnd = d3_geo_centroidLineEnd;\n d3_geo_centroid.point = d3_geo_centroidPoint;\n };\n function nextPoint(λ, φ) {\n λ *= d3_radians;\n var cosφ = Math.cos(φ *= d3_radians), x = cosφ * Math.cos(λ), y = cosφ * Math.sin(λ), z = Math.sin(φ), cx = y0 * z - z0 * y, cy = z0 * x - x0 * z, cz = x0 * y - y0 * x, m = Math.sqrt(cx * cx + cy * cy + cz * cz), u = x0 * x + y0 * y + z0 * z, v = m && -d3_acos(u) / m, w = Math.atan2(m, u);\n d3_geo_centroidX2 += v * cx;\n d3_geo_centroidY2 += v * cy;\n d3_geo_centroidZ2 += v * cz;\n d3_geo_centroidW1 += w;\n d3_geo_centroidX1 += w * (x0 + (x0 = x));\n d3_geo_centroidY1 += w * (y0 + (y0 = y));\n d3_geo_centroidZ1 += w * (z0 + (z0 = z));\n d3_geo_centroidPointXYZ(x0, y0, z0);\n }\n }\n function d3_geo_compose(a, b) {\n function compose(x, y) {\n return x = a(x, y), b(x[0], x[1]);\n }\n if (a.invert && b.invert) compose.invert = function(x, y) {\n return x = b.invert(x, y), x && a.invert(x[0], x[1]);\n };\n return compose;\n }\n function d3_true() {\n return true;\n }\n function d3_geo_clipPolygon(segments, compare, clipStartInside, interpolate, listener) {\n var subject = [], clip = [];\n segments.forEach(function(segment) {\n if ((n = segment.length - 1) <= 0) return;\n var n, p0 = segment[0], p1 = segment[n];\n if (d3_geo_sphericalEqual(p0, p1)) {\n listener.lineStart();\n for (var i = 0; i < n; ++i) listener.point((p0 = segment[i])[0], p0[1]);\n listener.lineEnd();\n return;\n }\n var a = new d3_geo_clipPolygonIntersection(p0, segment, null, true), b = new d3_geo_clipPolygonIntersection(p0, null, a, false);\n a.o = b;\n subject.push(a);\n clip.push(b);\n a = new d3_geo_clipPolygonIntersection(p1, segment, null, false);\n b = new d3_geo_clipPolygonIntersection(p1, null, a, true);\n a.o = b;\n subject.push(a);\n clip.push(b);\n });\n clip.sort(compare);\n d3_geo_clipPolygonLinkCircular(subject);\n d3_geo_clipPolygonLinkCircular(clip);\n if (!subject.length) return;\n for (var i = 0, entry = clipStartInside, n = clip.length; i < n; ++i) {\n clip[i].e = entry = !entry;\n }\n var start = subject[0], points, point;\n while (1) {\n var current = start, isSubject = true;\n while (current.v) if ((current = current.n) === start) return;\n points = current.z;\n listener.lineStart();\n do {\n current.v = current.o.v = true;\n if (current.e) {\n if (isSubject) {\n for (var i = 0, n = points.length; i < n; ++i) listener.point((point = points[i])[0], point[1]);\n } else {\n interpolate(current.x, current.n.x, 1, listener);\n }\n current = current.n;\n } else {\n if (isSubject) {\n points = current.p.z;\n for (var i = points.length - 1; i >= 0; --i) listener.point((point = points[i])[0], point[1]);\n } else {\n interpolate(current.x, current.p.x, -1, listener);\n }\n current = current.p;\n }\n current = current.o;\n points = current.z;\n isSubject = !isSubject;\n } while (!current.v);\n listener.lineEnd();\n }\n }\n function d3_geo_clipPolygonLinkCircular(array) {\n if (!(n = array.length)) return;\n var n, i = 0, a = array[0], b;\n while (++i < n) {\n a.n = b = array[i];\n b.p = a;\n a = b;\n }\n a.n = b = array[0];\n b.p = a;\n }\n function d3_geo_clipPolygonIntersection(point, points, other, entry) {\n this.x = point;\n this.z = points;\n this.o = other;\n this.e = entry;\n this.v = false;\n this.n = this.p = null;\n }\n function d3_geo_clip(pointVisible, clipLine, interpolate, clipStart) {\n return function(rotate, listener) {\n var line = clipLine(listener), rotatedClipStart = rotate.invert(clipStart[0], clipStart[1]);\n var clip = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n clip.point = pointRing;\n clip.lineStart = ringStart;\n clip.lineEnd = ringEnd;\n segments = [];\n polygon = [];\n },\n polygonEnd: function() {\n clip.point = point;\n clip.lineStart = lineStart;\n clip.lineEnd = lineEnd;\n segments = d3.merge(segments);\n var clipStartInside = d3_geo_pointInPolygon(rotatedClipStart, polygon);\n if (segments.length) {\n if (!polygonStarted) listener.polygonStart(), polygonStarted = true;\n d3_geo_clipPolygon(segments, d3_geo_clipSort, clipStartInside, interpolate, listener);\n } else if (clipStartInside) {\n if (!polygonStarted) listener.polygonStart(), polygonStarted = true;\n listener.lineStart();\n interpolate(null, null, 1, listener);\n listener.lineEnd();\n }\n if (polygonStarted) listener.polygonEnd(), polygonStarted = false;\n segments = polygon = null;\n },\n sphere: function() {\n listener.polygonStart();\n listener.lineStart();\n interpolate(null, null, 1, listener);\n listener.lineEnd();\n listener.polygonEnd();\n }\n };\n function point(λ, φ) {\n var point = rotate(λ, φ);\n if (pointVisible(λ = point[0], φ = point[1])) listener.point(λ, φ);\n }\n function pointLine(λ, φ) {\n var point = rotate(λ, φ);\n line.point(point[0], point[1]);\n }\n function lineStart() {\n clip.point = pointLine;\n line.lineStart();\n }\n function lineEnd() {\n clip.point = point;\n line.lineEnd();\n }\n var segments;\n var buffer = d3_geo_clipBufferListener(), ringListener = clipLine(buffer), polygonStarted = false, polygon, ring;\n function pointRing(λ, φ) {\n ring.push([ λ, φ ]);\n var point = rotate(λ, φ);\n ringListener.point(point[0], point[1]);\n }\n function ringStart() {\n ringListener.lineStart();\n ring = [];\n }\n function ringEnd() {\n pointRing(ring[0][0], ring[0][1]);\n ringListener.lineEnd();\n var clean = ringListener.clean(), ringSegments = buffer.buffer(), segment, n = ringSegments.length;\n ring.pop();\n polygon.push(ring);\n ring = null;\n if (!n) return;\n if (clean & 1) {\n segment = ringSegments[0];\n var n = segment.length - 1, i = -1, point;\n if (n > 0) {\n if (!polygonStarted) listener.polygonStart(), polygonStarted = true;\n listener.lineStart();\n while (++i < n) listener.point((point = segment[i])[0], point[1]);\n listener.lineEnd();\n }\n return;\n }\n if (n > 1 && clean & 2) ringSegments.push(ringSegments.pop().concat(ringSegments.shift()));\n segments.push(ringSegments.filter(d3_geo_clipSegmentLength1));\n }\n return clip;\n };\n }\n function d3_geo_clipSegmentLength1(segment) {\n return segment.length > 1;\n }\n function d3_geo_clipBufferListener() {\n var lines = [], line;\n return {\n lineStart: function() {\n lines.push(line = []);\n },\n point: function(λ, φ) {\n line.push([ λ, φ ]);\n },\n lineEnd: d3_noop,\n buffer: function() {\n var buffer = lines;\n lines = [];\n line = null;\n return buffer;\n },\n rejoin: function() {\n if (lines.length > 1) lines.push(lines.pop().concat(lines.shift()));\n }\n };\n }\n function d3_geo_clipSort(a, b) {\n return ((a = a.x)[0] < 0 ? a[1] - halfπ - ε : halfπ - a[1]) - ((b = b.x)[0] < 0 ? b[1] - halfπ - ε : halfπ - b[1]);\n }\n var d3_geo_clipAntimeridian = d3_geo_clip(d3_true, d3_geo_clipAntimeridianLine, d3_geo_clipAntimeridianInterpolate, [ -π, -π / 2 ]);\n function d3_geo_clipAntimeridianLine(listener) {\n var λ0 = NaN, φ0 = NaN, sλ0 = NaN, clean;\n return {\n lineStart: function() {\n listener.lineStart();\n clean = 1;\n },\n point: function(λ1, φ1) {\n var sλ1 = λ1 > 0 ? π : -π, dλ = abs(λ1 - λ0);\n if (abs(dλ - π) < ε) {\n listener.point(λ0, φ0 = (φ0 + φ1) / 2 > 0 ? halfπ : -halfπ);\n listener.point(sλ0, φ0);\n listener.lineEnd();\n listener.lineStart();\n listener.point(sλ1, φ0);\n listener.point(λ1, φ0);\n clean = 0;\n } else if (sλ0 !== sλ1 && dλ >= π) {\n if (abs(λ0 - sλ0) < ε) λ0 -= sλ0 * ε;\n if (abs(λ1 - sλ1) < ε) λ1 -= sλ1 * ε;\n φ0 = d3_geo_clipAntimeridianIntersect(λ0, φ0, λ1, φ1);\n listener.point(sλ0, φ0);\n listener.lineEnd();\n listener.lineStart();\n listener.point(sλ1, φ0);\n clean = 0;\n }\n listener.point(λ0 = λ1, φ0 = φ1);\n sλ0 = sλ1;\n },\n lineEnd: function() {\n listener.lineEnd();\n λ0 = φ0 = NaN;\n },\n clean: function() {\n return 2 - clean;\n }\n };\n }\n function d3_geo_clipAntimeridianIntersect(λ0, φ0, λ1, φ1) {\n var cosφ0, cosφ1, sinλ0_λ1 = Math.sin(λ0 - λ1);\n return abs(sinλ0_λ1) > ε ? Math.atan((Math.sin(φ0) * (cosφ1 = Math.cos(φ1)) * Math.sin(λ1) - Math.sin(φ1) * (cosφ0 = Math.cos(φ0)) * Math.sin(λ0)) / (cosφ0 * cosφ1 * sinλ0_λ1)) : (φ0 + φ1) / 2;\n }\n function d3_geo_clipAntimeridianInterpolate(from, to, direction, listener) {\n var φ;\n if (from == null) {\n φ = direction * halfπ;\n listener.point(-π, φ);\n listener.point(0, φ);\n listener.point(π, φ);\n listener.point(π, 0);\n listener.point(π, -φ);\n listener.point(0, -φ);\n listener.point(-π, -φ);\n listener.point(-π, 0);\n listener.point(-π, φ);\n } else if (abs(from[0] - to[0]) > ε) {\n var s = from[0] < to[0] ? π : -π;\n φ = direction * s / 2;\n listener.point(-s, φ);\n listener.point(0, φ);\n listener.point(s, φ);\n } else {\n listener.point(to[0], to[1]);\n }\n }\n function d3_geo_pointInPolygon(point, polygon) {\n var meridian = point[0], parallel = point[1], meridianNormal = [ Math.sin(meridian), -Math.cos(meridian), 0 ], polarAngle = 0, winding = 0;\n d3_geo_areaRingSum.reset();\n for (var i = 0, n = polygon.length; i < n; ++i) {\n var ring = polygon[i], m = ring.length;\n if (!m) continue;\n var point0 = ring[0], λ0 = point0[0], φ0 = point0[1] / 2 + π / 4, sinφ0 = Math.sin(φ0), cosφ0 = Math.cos(φ0), j = 1;\n while (true) {\n if (j === m) j = 0;\n point = ring[j];\n var λ = point[0], φ = point[1] / 2 + π / 4, sinφ = Math.sin(φ), cosφ = Math.cos(φ), dλ = λ - λ0, sdλ = dλ >= 0 ? 1 : -1, adλ = sdλ * dλ, antimeridian = adλ > π, k = sinφ0 * sinφ;\n d3_geo_areaRingSum.add(Math.atan2(k * sdλ * Math.sin(adλ), cosφ0 * cosφ + k * Math.cos(adλ)));\n polarAngle += antimeridian ? dλ + sdλ * τ : dλ;\n if (antimeridian ^ λ0 >= meridian ^ λ >= meridian) {\n var arc = d3_geo_cartesianCross(d3_geo_cartesian(point0), d3_geo_cartesian(point));\n d3_geo_cartesianNormalize(arc);\n var intersection = d3_geo_cartesianCross(meridianNormal, arc);\n d3_geo_cartesianNormalize(intersection);\n var φarc = (antimeridian ^ dλ >= 0 ? -1 : 1) * d3_asin(intersection[2]);\n if (parallel > φarc || parallel === φarc && (arc[0] || arc[1])) {\n winding += antimeridian ^ dλ >= 0 ? 1 : -1;\n }\n }\n if (!j++) break;\n λ0 = λ, sinφ0 = sinφ, cosφ0 = cosφ, point0 = point;\n }\n }\n return (polarAngle < -ε || polarAngle < ε && d3_geo_areaRingSum < -ε) ^ winding & 1;\n }\n function d3_geo_clipCircle(radius) {\n var cr = Math.cos(radius), smallRadius = cr > 0, notHemisphere = abs(cr) > ε, interpolate = d3_geo_circleInterpolate(radius, 6 * d3_radians);\n return d3_geo_clip(visible, clipLine, interpolate, smallRadius ? [ 0, -radius ] : [ -π, radius - π ]);\n function visible(λ, φ) {\n return Math.cos(λ) * Math.cos(φ) > cr;\n }\n function clipLine(listener) {\n var point0, c0, v0, v00, clean;\n return {\n lineStart: function() {\n v00 = v0 = false;\n clean = 1;\n },\n point: function(λ, φ) {\n var point1 = [ λ, φ ], point2, v = visible(λ, φ), c = smallRadius ? v ? 0 : code(λ, φ) : v ? code(λ + (λ < 0 ? π : -π), φ) : 0;\n if (!point0 && (v00 = v0 = v)) listener.lineStart();\n if (v !== v0) {\n point2 = intersect(point0, point1);\n if (d3_geo_sphericalEqual(point0, point2) || d3_geo_sphericalEqual(point1, point2)) {\n point1[0] += ε;\n point1[1] += ε;\n v = visible(point1[0], point1[1]);\n }\n }\n if (v !== v0) {\n clean = 0;\n if (v) {\n listener.lineStart();\n point2 = intersect(point1, point0);\n listener.point(point2[0], point2[1]);\n } else {\n point2 = intersect(point0, point1);\n listener.point(point2[0], point2[1]);\n listener.lineEnd();\n }\n point0 = point2;\n } else if (notHemisphere && point0 && smallRadius ^ v) {\n var t;\n if (!(c & c0) && (t = intersect(point1, point0, true))) {\n clean = 0;\n if (smallRadius) {\n listener.lineStart();\n listener.point(t[0][0], t[0][1]);\n listener.point(t[1][0], t[1][1]);\n listener.lineEnd();\n } else {\n listener.point(t[1][0], t[1][1]);\n listener.lineEnd();\n listener.lineStart();\n listener.point(t[0][0], t[0][1]);\n }\n }\n }\n if (v && (!point0 || !d3_geo_sphericalEqual(point0, point1))) {\n listener.point(point1[0], point1[1]);\n }\n point0 = point1, v0 = v, c0 = c;\n },\n lineEnd: function() {\n if (v0) listener.lineEnd();\n point0 = null;\n },\n clean: function() {\n return clean | (v00 && v0) << 1;\n }\n };\n }\n function intersect(a, b, two) {\n var pa = d3_geo_cartesian(a), pb = d3_geo_cartesian(b);\n var n1 = [ 1, 0, 0 ], n2 = d3_geo_cartesianCross(pa, pb), n2n2 = d3_geo_cartesianDot(n2, n2), n1n2 = n2[0], determinant = n2n2 - n1n2 * n1n2;\n if (!determinant) return !two && a;\n var c1 = cr * n2n2 / determinant, c2 = -cr * n1n2 / determinant, n1xn2 = d3_geo_cartesianCross(n1, n2), A = d3_geo_cartesianScale(n1, c1), B = d3_geo_cartesianScale(n2, c2);\n d3_geo_cartesianAdd(A, B);\n var u = n1xn2, w = d3_geo_cartesianDot(A, u), uu = d3_geo_cartesianDot(u, u), t2 = w * w - uu * (d3_geo_cartesianDot(A, A) - 1);\n if (t2 < 0) return;\n var t = Math.sqrt(t2), q = d3_geo_cartesianScale(u, (-w - t) / uu);\n d3_geo_cartesianAdd(q, A);\n q = d3_geo_spherical(q);\n if (!two) return q;\n var λ0 = a[0], λ1 = b[0], φ0 = a[1], φ1 = b[1], z;\n if (λ1 < λ0) z = λ0, λ0 = λ1, λ1 = z;\n var δλ = λ1 - λ0, polar = abs(δλ - π) < ε, meridian = polar || δλ < ε;\n if (!polar && φ1 < φ0) z = φ0, φ0 = φ1, φ1 = z;\n if (meridian ? polar ? φ0 + φ1 > 0 ^ q[1] < (abs(q[0] - λ0) < ε ? φ0 : φ1) : φ0 <= q[1] && q[1] <= φ1 : δλ > π ^ (λ0 <= q[0] && q[0] <= λ1)) {\n var q1 = d3_geo_cartesianScale(u, (-w + t) / uu);\n d3_geo_cartesianAdd(q1, A);\n return [ q, d3_geo_spherical(q1) ];\n }\n }\n function code(λ, φ) {\n var r = smallRadius ? radius : π - radius, code = 0;\n if (λ < -r) code |= 1; else if (λ > r) code |= 2;\n if (φ < -r) code |= 4; else if (φ > r) code |= 8;\n return code;\n }\n }\n function d3_geom_clipLine(x0, y0, x1, y1) {\n return function(line) {\n var a = line.a, b = line.b, ax = a.x, ay = a.y, bx = b.x, by = b.y, t0 = 0, t1 = 1, dx = bx - ax, dy = by - ay, r;\n r = x0 - ax;\n if (!dx && r > 0) return;\n r /= dx;\n if (dx < 0) {\n if (r < t0) return;\n if (r < t1) t1 = r;\n } else if (dx > 0) {\n if (r > t1) return;\n if (r > t0) t0 = r;\n }\n r = x1 - ax;\n if (!dx && r < 0) return;\n r /= dx;\n if (dx < 0) {\n if (r > t1) return;\n if (r > t0) t0 = r;\n } else if (dx > 0) {\n if (r < t0) return;\n if (r < t1) t1 = r;\n }\n r = y0 - ay;\n if (!dy && r > 0) return;\n r /= dy;\n if (dy < 0) {\n if (r < t0) return;\n if (r < t1) t1 = r;\n } else if (dy > 0) {\n if (r > t1) return;\n if (r > t0) t0 = r;\n }\n r = y1 - ay;\n if (!dy && r < 0) return;\n r /= dy;\n if (dy < 0) {\n if (r > t1) return;\n if (r > t0) t0 = r;\n } else if (dy > 0) {\n if (r < t0) return;\n if (r < t1) t1 = r;\n }\n if (t0 > 0) line.a = {\n x: ax + t0 * dx,\n y: ay + t0 * dy\n };\n if (t1 < 1) line.b = {\n x: ax + t1 * dx,\n y: ay + t1 * dy\n };\n return line;\n };\n }\n var d3_geo_clipExtentMAX = 1e9;\n d3.geo.clipExtent = function() {\n var x0, y0, x1, y1, stream, clip, clipExtent = {\n stream: function(output) {\n if (stream) stream.valid = false;\n stream = clip(output);\n stream.valid = true;\n return stream;\n },\n extent: function(_) {\n if (!arguments.length) return [ [ x0, y0 ], [ x1, y1 ] ];\n clip = d3_geo_clipExtent(x0 = +_[0][0], y0 = +_[0][1], x1 = +_[1][0], y1 = +_[1][1]);\n if (stream) stream.valid = false, stream = null;\n return clipExtent;\n }\n };\n return clipExtent.extent([ [ 0, 0 ], [ 960, 500 ] ]);\n };\n function d3_geo_clipExtent(x0, y0, x1, y1) {\n return function(listener) {\n var listener_ = listener, bufferListener = d3_geo_clipBufferListener(), clipLine = d3_geom_clipLine(x0, y0, x1, y1), segments, polygon, ring;\n var clip = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n listener = bufferListener;\n segments = [];\n polygon = [];\n clean = true;\n },\n polygonEnd: function() {\n listener = listener_;\n segments = d3.merge(segments);\n var clipStartInside = insidePolygon([ x0, y1 ]), inside = clean && clipStartInside, visible = segments.length;\n if (inside || visible) {\n listener.polygonStart();\n if (inside) {\n listener.lineStart();\n interpolate(null, null, 1, listener);\n listener.lineEnd();\n }\n if (visible) {\n d3_geo_clipPolygon(segments, compare, clipStartInside, interpolate, listener);\n }\n listener.polygonEnd();\n }\n segments = polygon = ring = null;\n }\n };\n function insidePolygon(p) {\n var wn = 0, n = polygon.length, y = p[1];\n for (var i = 0; i < n; ++i) {\n for (var j = 1, v = polygon[i], m = v.length, a = v[0], b; j < m; ++j) {\n b = v[j];\n if (a[1] <= y) {\n if (b[1] > y && d3_cross2d(a, b, p) > 0) ++wn;\n } else {\n if (b[1] <= y && d3_cross2d(a, b, p) < 0) --wn;\n }\n a = b;\n }\n }\n return wn !== 0;\n }\n function interpolate(from, to, direction, listener) {\n var a = 0, a1 = 0;\n if (from == null || (a = corner(from, direction)) !== (a1 = corner(to, direction)) || comparePoints(from, to) < 0 ^ direction > 0) {\n do {\n listener.point(a === 0 || a === 3 ? x0 : x1, a > 1 ? y1 : y0);\n } while ((a = (a + direction + 4) % 4) !== a1);\n } else {\n listener.point(to[0], to[1]);\n }\n }\n function pointVisible(x, y) {\n return x0 <= x && x <= x1 && y0 <= y && y <= y1;\n }\n function point(x, y) {\n if (pointVisible(x, y)) listener.point(x, y);\n }\n var x__, y__, v__, x_, y_, v_, first, clean;\n function lineStart() {\n clip.point = linePoint;\n if (polygon) polygon.push(ring = []);\n first = true;\n v_ = false;\n x_ = y_ = NaN;\n }\n function lineEnd() {\n if (segments) {\n linePoint(x__, y__);\n if (v__ && v_) bufferListener.rejoin();\n segments.push(bufferListener.buffer());\n }\n clip.point = point;\n if (v_) listener.lineEnd();\n }\n function linePoint(x, y) {\n x = Math.max(-d3_geo_clipExtentMAX, Math.min(d3_geo_clipExtentMAX, x));\n y = Math.max(-d3_geo_clipExtentMAX, Math.min(d3_geo_clipExtentMAX, y));\n var v = pointVisible(x, y);\n if (polygon) ring.push([ x, y ]);\n if (first) {\n x__ = x, y__ = y, v__ = v;\n first = false;\n if (v) {\n listener.lineStart();\n listener.point(x, y);\n }\n } else {\n if (v && v_) listener.point(x, y); else {\n var l = {\n a: {\n x: x_,\n y: y_\n },\n b: {\n x: x,\n y: y\n }\n };\n if (clipLine(l)) {\n if (!v_) {\n listener.lineStart();\n listener.point(l.a.x, l.a.y);\n }\n listener.point(l.b.x, l.b.y);\n if (!v) listener.lineEnd();\n clean = false;\n } else if (v) {\n listener.lineStart();\n listener.point(x, y);\n clean = false;\n }\n }\n }\n x_ = x, y_ = y, v_ = v;\n }\n return clip;\n };\n function corner(p, direction) {\n return abs(p[0] - x0) < ε ? direction > 0 ? 0 : 3 : abs(p[0] - x1) < ε ? direction > 0 ? 2 : 1 : abs(p[1] - y0) < ε ? direction > 0 ? 1 : 0 : direction > 0 ? 3 : 2;\n }\n function compare(a, b) {\n return comparePoints(a.x, b.x);\n }\n function comparePoints(a, b) {\n var ca = corner(a, 1), cb = corner(b, 1);\n return ca !== cb ? ca - cb : ca === 0 ? b[1] - a[1] : ca === 1 ? a[0] - b[0] : ca === 2 ? a[1] - b[1] : b[0] - a[0];\n }\n }\n function d3_geo_conic(projectAt) {\n var φ0 = 0, φ1 = π / 3, m = d3_geo_projectionMutator(projectAt), p = m(φ0, φ1);\n p.parallels = function(_) {\n if (!arguments.length) return [ φ0 / π * 180, φ1 / π * 180 ];\n return m(φ0 = _[0] * π / 180, φ1 = _[1] * π / 180);\n };\n return p;\n }\n function d3_geo_conicEqualArea(φ0, φ1) {\n var sinφ0 = Math.sin(φ0), n = (sinφ0 + Math.sin(φ1)) / 2, C = 1 + sinφ0 * (2 * n - sinφ0), ρ0 = Math.sqrt(C) / n;\n function forward(λ, φ) {\n var ρ = Math.sqrt(C - 2 * n * Math.sin(φ)) / n;\n return [ ρ * Math.sin(λ *= n), ρ0 - ρ * Math.cos(λ) ];\n }\n forward.invert = function(x, y) {\n var ρ0_y = ρ0 - y;\n return [ Math.atan2(x, ρ0_y) / n, d3_asin((C - (x * x + ρ0_y * ρ0_y) * n * n) / (2 * n)) ];\n };\n return forward;\n }\n (d3.geo.conicEqualArea = function() {\n return d3_geo_conic(d3_geo_conicEqualArea);\n }).raw = d3_geo_conicEqualArea;\n d3.geo.albers = function() {\n return d3.geo.conicEqualArea().rotate([ 96, 0 ]).center([ -.6, 38.7 ]).parallels([ 29.5, 45.5 ]).scale(1070);\n };\n d3.geo.albersUsa = function() {\n var lower48 = d3.geo.albers();\n var alaska = d3.geo.conicEqualArea().rotate([ 154, 0 ]).center([ -2, 58.5 ]).parallels([ 55, 65 ]);\n var hawaii = d3.geo.conicEqualArea().rotate([ 157, 0 ]).center([ -3, 19.9 ]).parallels([ 8, 18 ]);\n var point, pointStream = {\n point: function(x, y) {\n point = [ x, y ];\n }\n }, lower48Point, alaskaPoint, hawaiiPoint;\n function albersUsa(coordinates) {\n var x = coordinates[0], y = coordinates[1];\n point = null;\n (lower48Point(x, y), point) || (alaskaPoint(x, y), point) || hawaiiPoint(x, y);\n return point;\n }\n albersUsa.invert = function(coordinates) {\n var k = lower48.scale(), t = lower48.translate(), x = (coordinates[0] - t[0]) / k, y = (coordinates[1] - t[1]) / k;\n return (y >= .12 && y < .234 && x >= -.425 && x < -.214 ? alaska : y >= .166 && y < .234 && x >= -.214 && x < -.115 ? hawaii : lower48).invert(coordinates);\n };\n albersUsa.stream = function(stream) {\n var lower48Stream = lower48.stream(stream), alaskaStream = alaska.stream(stream), hawaiiStream = hawaii.stream(stream);\n return {\n point: function(x, y) {\n lower48Stream.point(x, y);\n alaskaStream.point(x, y);\n hawaiiStream.point(x, y);\n },\n sphere: function() {\n lower48Stream.sphere();\n alaskaStream.sphere();\n hawaiiStream.sphere();\n },\n lineStart: function() {\n lower48Stream.lineStart();\n alaskaStream.lineStart();\n hawaiiStream.lineStart();\n },\n lineEnd: function() {\n lower48Stream.lineEnd();\n alaskaStream.lineEnd();\n hawaiiStream.lineEnd();\n },\n polygonStart: function() {\n lower48Stream.polygonStart();\n alaskaStream.polygonStart();\n hawaiiStream.polygonStart();\n },\n polygonEnd: function() {\n lower48Stream.polygonEnd();\n alaskaStream.polygonEnd();\n hawaiiStream.polygonEnd();\n }\n };\n };\n albersUsa.precision = function(_) {\n if (!arguments.length) return lower48.precision();\n lower48.precision(_);\n alaska.precision(_);\n hawaii.precision(_);\n return albersUsa;\n };\n albersUsa.scale = function(_) {\n if (!arguments.length) return lower48.scale();\n lower48.scale(_);\n alaska.scale(_ * .35);\n hawaii.scale(_);\n return albersUsa.translate(lower48.translate());\n };\n albersUsa.translate = function(_) {\n if (!arguments.length) return lower48.translate();\n var k = lower48.scale(), x = +_[0], y = +_[1];\n lower48Point = lower48.translate(_).clipExtent([ [ x - .455 * k, y - .238 * k ], [ x + .455 * k, y + .238 * k ] ]).stream(pointStream).point;\n alaskaPoint = alaska.translate([ x - .307 * k, y + .201 * k ]).clipExtent([ [ x - .425 * k + ε, y + .12 * k + ε ], [ x - .214 * k - ε, y + .234 * k - ε ] ]).stream(pointStream).point;\n hawaiiPoint = hawaii.translate([ x - .205 * k, y + .212 * k ]).clipExtent([ [ x - .214 * k + ε, y + .166 * k + ε ], [ x - .115 * k - ε, y + .234 * k - ε ] ]).stream(pointStream).point;\n return albersUsa;\n };\n return albersUsa.scale(1070);\n };\n var d3_geo_pathAreaSum, d3_geo_pathAreaPolygon, d3_geo_pathArea = {\n point: d3_noop,\n lineStart: d3_noop,\n lineEnd: d3_noop,\n polygonStart: function() {\n d3_geo_pathAreaPolygon = 0;\n d3_geo_pathArea.lineStart = d3_geo_pathAreaRingStart;\n },\n polygonEnd: function() {\n d3_geo_pathArea.lineStart = d3_geo_pathArea.lineEnd = d3_geo_pathArea.point = d3_noop;\n d3_geo_pathAreaSum += abs(d3_geo_pathAreaPolygon / 2);\n }\n };\n function d3_geo_pathAreaRingStart() {\n var x00, y00, x0, y0;\n d3_geo_pathArea.point = function(x, y) {\n d3_geo_pathArea.point = nextPoint;\n x00 = x0 = x, y00 = y0 = y;\n };\n function nextPoint(x, y) {\n d3_geo_pathAreaPolygon += y0 * x - x0 * y;\n x0 = x, y0 = y;\n }\n d3_geo_pathArea.lineEnd = function() {\n nextPoint(x00, y00);\n };\n }\n var d3_geo_pathBoundsX0, d3_geo_pathBoundsY0, d3_geo_pathBoundsX1, d3_geo_pathBoundsY1;\n var d3_geo_pathBounds = {\n point: d3_geo_pathBoundsPoint,\n lineStart: d3_noop,\n lineEnd: d3_noop,\n polygonStart: d3_noop,\n polygonEnd: d3_noop\n };\n function d3_geo_pathBoundsPoint(x, y) {\n if (x < d3_geo_pathBoundsX0) d3_geo_pathBoundsX0 = x;\n if (x > d3_geo_pathBoundsX1) d3_geo_pathBoundsX1 = x;\n if (y < d3_geo_pathBoundsY0) d3_geo_pathBoundsY0 = y;\n if (y > d3_geo_pathBoundsY1) d3_geo_pathBoundsY1 = y;\n }\n function d3_geo_pathBuffer() {\n var pointCircle = d3_geo_pathBufferCircle(4.5), buffer = [];\n var stream = {\n point: point,\n lineStart: function() {\n stream.point = pointLineStart;\n },\n lineEnd: lineEnd,\n polygonStart: function() {\n stream.lineEnd = lineEndPolygon;\n },\n polygonEnd: function() {\n stream.lineEnd = lineEnd;\n stream.point = point;\n },\n pointRadius: function(_) {\n pointCircle = d3_geo_pathBufferCircle(_);\n return stream;\n },\n result: function() {\n if (buffer.length) {\n var result = buffer.join(\"\");\n buffer = [];\n return result;\n }\n }\n };\n function point(x, y) {\n buffer.push(\"M\", x, \",\", y, pointCircle);\n }\n function pointLineStart(x, y) {\n buffer.push(\"M\", x, \",\", y);\n stream.point = pointLine;\n }\n function pointLine(x, y) {\n buffer.push(\"L\", x, \",\", y);\n }\n function lineEnd() {\n stream.point = point;\n }\n function lineEndPolygon() {\n buffer.push(\"Z\");\n }\n return stream;\n }\n function d3_geo_pathBufferCircle(radius) {\n return \"m0,\" + radius + \"a\" + radius + \",\" + radius + \" 0 1,1 0,\" + -2 * radius + \"a\" + radius + \",\" + radius + \" 0 1,1 0,\" + 2 * radius + \"z\";\n }\n var d3_geo_pathCentroid = {\n point: d3_geo_pathCentroidPoint,\n lineStart: d3_geo_pathCentroidLineStart,\n lineEnd: d3_geo_pathCentroidLineEnd,\n polygonStart: function() {\n d3_geo_pathCentroid.lineStart = d3_geo_pathCentroidRingStart;\n },\n polygonEnd: function() {\n d3_geo_pathCentroid.point = d3_geo_pathCentroidPoint;\n d3_geo_pathCentroid.lineStart = d3_geo_pathCentroidLineStart;\n d3_geo_pathCentroid.lineEnd = d3_geo_pathCentroidLineEnd;\n }\n };\n function d3_geo_pathCentroidPoint(x, y) {\n d3_geo_centroidX0 += x;\n d3_geo_centroidY0 += y;\n ++d3_geo_centroidZ0;\n }\n function d3_geo_pathCentroidLineStart() {\n var x0, y0;\n d3_geo_pathCentroid.point = function(x, y) {\n d3_geo_pathCentroid.point = nextPoint;\n d3_geo_pathCentroidPoint(x0 = x, y0 = y);\n };\n function nextPoint(x, y) {\n var dx = x - x0, dy = y - y0, z = Math.sqrt(dx * dx + dy * dy);\n d3_geo_centroidX1 += z * (x0 + x) / 2;\n d3_geo_centroidY1 += z * (y0 + y) / 2;\n d3_geo_centroidZ1 += z;\n d3_geo_pathCentroidPoint(x0 = x, y0 = y);\n }\n }\n function d3_geo_pathCentroidLineEnd() {\n d3_geo_pathCentroid.point = d3_geo_pathCentroidPoint;\n }\n function d3_geo_pathCentroidRingStart() {\n var x00, y00, x0, y0;\n d3_geo_pathCentroid.point = function(x, y) {\n d3_geo_pathCentroid.point = nextPoint;\n d3_geo_pathCentroidPoint(x00 = x0 = x, y00 = y0 = y);\n };\n function nextPoint(x, y) {\n var dx = x - x0, dy = y - y0, z = Math.sqrt(dx * dx + dy * dy);\n d3_geo_centroidX1 += z * (x0 + x) / 2;\n d3_geo_centroidY1 += z * (y0 + y) / 2;\n d3_geo_centroidZ1 += z;\n z = y0 * x - x0 * y;\n d3_geo_centroidX2 += z * (x0 + x);\n d3_geo_centroidY2 += z * (y0 + y);\n d3_geo_centroidZ2 += z * 3;\n d3_geo_pathCentroidPoint(x0 = x, y0 = y);\n }\n d3_geo_pathCentroid.lineEnd = function() {\n nextPoint(x00, y00);\n };\n }\n function d3_geo_pathContext(context) {\n var pointRadius = 4.5;\n var stream = {\n point: point,\n lineStart: function() {\n stream.point = pointLineStart;\n },\n lineEnd: lineEnd,\n polygonStart: function() {\n stream.lineEnd = lineEndPolygon;\n },\n polygonEnd: function() {\n stream.lineEnd = lineEnd;\n stream.point = point;\n },\n pointRadius: function(_) {\n pointRadius = _;\n return stream;\n },\n result: d3_noop\n };\n function point(x, y) {\n context.moveTo(x + pointRadius, y);\n context.arc(x, y, pointRadius, 0, τ);\n }\n function pointLineStart(x, y) {\n context.moveTo(x, y);\n stream.point = pointLine;\n }\n function pointLine(x, y) {\n context.lineTo(x, y);\n }\n function lineEnd() {\n stream.point = point;\n }\n function lineEndPolygon() {\n context.closePath();\n }\n return stream;\n }\n function d3_geo_resample(project) {\n var δ2 = .5, cosMinDistance = Math.cos(30 * d3_radians), maxDepth = 16;\n function resample(stream) {\n return (maxDepth ? resampleRecursive : resampleNone)(stream);\n }\n function resampleNone(stream) {\n return d3_geo_transformPoint(stream, function(x, y) {\n x = project(x, y);\n stream.point(x[0], x[1]);\n });\n }\n function resampleRecursive(stream) {\n var λ00, φ00, x00, y00, a00, b00, c00, λ0, x0, y0, a0, b0, c0;\n var resample = {\n point: point,\n lineStart: lineStart,\n lineEnd: lineEnd,\n polygonStart: function() {\n stream.polygonStart();\n resample.lineStart = ringStart;\n },\n polygonEnd: function() {\n stream.polygonEnd();\n resample.lineStart = lineStart;\n }\n };\n function point(x, y) {\n x = project(x, y);\n stream.point(x[0], x[1]);\n }\n function lineStart() {\n x0 = NaN;\n resample.point = linePoint;\n stream.lineStart();\n }\n function linePoint(λ, φ) {\n var c = d3_geo_cartesian([ λ, φ ]), p = project(λ, φ);\n resampleLineTo(x0, y0, λ0, a0, b0, c0, x0 = p[0], y0 = p[1], λ0 = λ, a0 = c[0], b0 = c[1], c0 = c[2], maxDepth, stream);\n stream.point(x0, y0);\n }\n function lineEnd() {\n resample.point = point;\n stream.lineEnd();\n }\n function ringStart() {\n lineStart();\n resample.point = ringPoint;\n resample.lineEnd = ringEnd;\n }\n function ringPoint(λ, φ) {\n linePoint(λ00 = λ, φ00 = φ), x00 = x0, y00 = y0, a00 = a0, b00 = b0, c00 = c0;\n resample.point = linePoint;\n }\n function ringEnd() {\n resampleLineTo(x0, y0, λ0, a0, b0, c0, x00, y00, λ00, a00, b00, c00, maxDepth, stream);\n resample.lineEnd = lineEnd;\n lineEnd();\n }\n return resample;\n }\n function resampleLineTo(x0, y0, λ0, a0, b0, c0, x1, y1, λ1, a1, b1, c1, depth, stream) {\n var dx = x1 - x0, dy = y1 - y0, d2 = dx * dx + dy * dy;\n if (d2 > 4 * δ2 && depth--) {\n var a = a0 + a1, b = b0 + b1, c = c0 + c1, m = Math.sqrt(a * a + b * b + c * c), φ2 = Math.asin(c /= m), λ2 = abs(abs(c) - 1) < ε || abs(λ0 - λ1) < ε ? (λ0 + λ1) / 2 : Math.atan2(b, a), p = project(λ2, φ2), x2 = p[0], y2 = p[1], dx2 = x2 - x0, dy2 = y2 - y0, dz = dy * dx2 - dx * dy2;\n if (dz * dz / d2 > δ2 || abs((dx * dx2 + dy * dy2) / d2 - .5) > .3 || a0 * a1 + b0 * b1 + c0 * c1 < cosMinDistance) {\n resampleLineTo(x0, y0, λ0, a0, b0, c0, x2, y2, λ2, a /= m, b /= m, c, depth, stream);\n stream.point(x2, y2);\n resampleLineTo(x2, y2, λ2, a, b, c, x1, y1, λ1, a1, b1, c1, depth, stream);\n }\n }\n }\n resample.precision = function(_) {\n if (!arguments.length) return Math.sqrt(δ2);\n maxDepth = (δ2 = _ * _) > 0 && 16;\n return resample;\n };\n return resample;\n }\n d3.geo.path = function() {\n var pointRadius = 4.5, projection, context, projectStream, contextStream, cacheStream;\n function path(object) {\n if (object) {\n if (typeof pointRadius === \"function\") contextStream.pointRadius(+pointRadius.apply(this, arguments));\n if (!cacheStream || !cacheStream.valid) cacheStream = projectStream(contextStream);\n d3.geo.stream(object, cacheStream);\n }\n return contextStream.result();\n }\n path.area = function(object) {\n d3_geo_pathAreaSum = 0;\n d3.geo.stream(object, projectStream(d3_geo_pathArea));\n return d3_geo_pathAreaSum;\n };\n path.centroid = function(object) {\n d3_geo_centroidX0 = d3_geo_centroidY0 = d3_geo_centroidZ0 = d3_geo_centroidX1 = d3_geo_centroidY1 = d3_geo_centroidZ1 = d3_geo_centroidX2 = d3_geo_centroidY2 = d3_geo_centroidZ2 = 0;\n d3.geo.stream(object, projectStream(d3_geo_pathCentroid));\n return d3_geo_centroidZ2 ? [ d3_geo_centroidX2 / d3_geo_centroidZ2, d3_geo_centroidY2 / d3_geo_centroidZ2 ] : d3_geo_centroidZ1 ? [ d3_geo_centroidX1 / d3_geo_centroidZ1, d3_geo_centroidY1 / d3_geo_centroidZ1 ] : d3_geo_centroidZ0 ? [ d3_geo_centroidX0 / d3_geo_centroidZ0, d3_geo_centroidY0 / d3_geo_centroidZ0 ] : [ NaN, NaN ];\n };\n path.bounds = function(object) {\n d3_geo_pathBoundsX1 = d3_geo_pathBoundsY1 = -(d3_geo_pathBoundsX0 = d3_geo_pathBoundsY0 = Infinity);\n d3.geo.stream(object, projectStream(d3_geo_pathBounds));\n return [ [ d3_geo_pathBoundsX0, d3_geo_pathBoundsY0 ], [ d3_geo_pathBoundsX1, d3_geo_pathBoundsY1 ] ];\n };\n path.projection = function(_) {\n if (!arguments.length) return projection;\n projectStream = (projection = _) ? _.stream || d3_geo_pathProjectStream(_) : d3_identity;\n return reset();\n };\n path.context = function(_) {\n if (!arguments.length) return context;\n contextStream = (context = _) == null ? new d3_geo_pathBuffer() : new d3_geo_pathContext(_);\n if (typeof pointRadius !== \"function\") contextStream.pointRadius(pointRadius);\n return reset();\n };\n path.pointRadius = function(_) {\n if (!arguments.length) return pointRadius;\n pointRadius = typeof _ === \"function\" ? _ : (contextStream.pointRadius(+_), +_);\n return path;\n };\n function reset() {\n cacheStream = null;\n return path;\n }\n return path.projection(d3.geo.albersUsa()).context(null);\n };\n function d3_geo_pathProjectStream(project) {\n var resample = d3_geo_resample(function(x, y) {\n return project([ x * d3_degrees, y * d3_degrees ]);\n });\n return function(stream) {\n return d3_geo_projectionRadians(resample(stream));\n };\n }\n d3.geo.transform = function(methods) {\n return {\n stream: function(stream) {\n var transform = new d3_geo_transform(stream);\n for (var k in methods) transform[k] = methods[k];\n return transform;\n }\n };\n };\n function d3_geo_transform(stream) {\n this.stream = stream;\n }\n d3_geo_transform.prototype = {\n point: function(x, y) {\n this.stream.point(x, y);\n },\n sphere: function() {\n this.stream.sphere();\n },\n lineStart: function() {\n this.stream.lineStart();\n },\n lineEnd: function() {\n this.stream.lineEnd();\n },\n polygonStart: function() {\n this.stream.polygonStart();\n },\n polygonEnd: function() {\n this.stream.polygonEnd();\n }\n };\n function d3_geo_transformPoint(stream, point) {\n return {\n point: point,\n sphere: function() {\n stream.sphere();\n },\n lineStart: function() {\n stream.lineStart();\n },\n lineEnd: function() {\n stream.lineEnd();\n },\n polygonStart: function() {\n stream.polygonStart();\n },\n polygonEnd: function() {\n stream.polygonEnd();\n }\n };\n }\n d3.geo.projection = d3_geo_projection;\n d3.geo.projectionMutator = d3_geo_projectionMutator;\n function d3_geo_projection(project) {\n return d3_geo_projectionMutator(function() {\n return project;\n })();\n }\n function d3_geo_projectionMutator(projectAt) {\n var project, rotate, projectRotate, projectResample = d3_geo_resample(function(x, y) {\n x = project(x, y);\n return [ x[0] * k + δx, δy - x[1] * k ];\n }), k = 150, x = 480, y = 250, λ = 0, φ = 0, δλ = 0, δφ = 0, δγ = 0, δx, δy, preclip = d3_geo_clipAntimeridian, postclip = d3_identity, clipAngle = null, clipExtent = null, stream;\n function projection(point) {\n point = projectRotate(point[0] * d3_radians, point[1] * d3_radians);\n return [ point[0] * k + δx, δy - point[1] * k ];\n }\n function invert(point) {\n point = projectRotate.invert((point[0] - δx) / k, (δy - point[1]) / k);\n return point && [ point[0] * d3_degrees, point[1] * d3_degrees ];\n }\n projection.stream = function(output) {\n if (stream) stream.valid = false;\n stream = d3_geo_projectionRadians(preclip(rotate, projectResample(postclip(output))));\n stream.valid = true;\n return stream;\n };\n projection.clipAngle = function(_) {\n if (!arguments.length) return clipAngle;\n preclip = _ == null ? (clipAngle = _, d3_geo_clipAntimeridian) : d3_geo_clipCircle((clipAngle = +_) * d3_radians);\n return invalidate();\n };\n projection.clipExtent = function(_) {\n if (!arguments.length) return clipExtent;\n clipExtent = _;\n postclip = _ ? d3_geo_clipExtent(_[0][0], _[0][1], _[1][0], _[1][1]) : d3_identity;\n return invalidate();\n };\n projection.scale = function(_) {\n if (!arguments.length) return k;\n k = +_;\n return reset();\n };\n projection.translate = function(_) {\n if (!arguments.length) return [ x, y ];\n x = +_[0];\n y = +_[1];\n return reset();\n };\n projection.center = function(_) {\n if (!arguments.length) return [ λ * d3_degrees, φ * d3_degrees ];\n λ = _[0] % 360 * d3_radians;\n φ = _[1] % 360 * d3_radians;\n return reset();\n };\n projection.rotate = function(_) {\n if (!arguments.length) return [ δλ * d3_degrees, δφ * d3_degrees, δγ * d3_degrees ];\n δλ = _[0] % 360 * d3_radians;\n δφ = _[1] % 360 * d3_radians;\n δγ = _.length > 2 ? _[2] % 360 * d3_radians : 0;\n return reset();\n };\n d3.rebind(projection, projectResample, \"precision\");\n function reset() {\n projectRotate = d3_geo_compose(rotate = d3_geo_rotation(δλ, δφ, δγ), project);\n var center = project(λ, φ);\n δx = x - center[0] * k;\n δy = y + center[1] * k;\n return invalidate();\n }\n function invalidate() {\n if (stream) stream.valid = false, stream = null;\n return projection;\n }\n return function() {\n project = projectAt.apply(this, arguments);\n projection.invert = project.invert && invert;\n return reset();\n };\n }\n function d3_geo_projectionRadians(stream) {\n return d3_geo_transformPoint(stream, function(x, y) {\n stream.point(x * d3_radians, y * d3_radians);\n });\n }\n function d3_geo_equirectangular(λ, φ) {\n return [ λ, φ ];\n }\n (d3.geo.equirectangular = function() {\n return d3_geo_projection(d3_geo_equirectangular);\n }).raw = d3_geo_equirectangular.invert = d3_geo_equirectangular;\n d3.geo.rotation = function(rotate) {\n rotate = d3_geo_rotation(rotate[0] % 360 * d3_radians, rotate[1] * d3_radians, rotate.length > 2 ? rotate[2] * d3_radians : 0);\n function forward(coordinates) {\n coordinates = rotate(coordinates[0] * d3_radians, coordinates[1] * d3_radians);\n return coordinates[0] *= d3_degrees, coordinates[1] *= d3_degrees, coordinates;\n }\n forward.invert = function(coordinates) {\n coordinates = rotate.invert(coordinates[0] * d3_radians, coordinates[1] * d3_radians);\n return coordinates[0] *= d3_degrees, coordinates[1] *= d3_degrees, coordinates;\n };\n return forward;\n };\n function d3_geo_identityRotation(λ, φ) {\n return [ λ > π ? λ - τ : λ < -π ? λ + τ : λ, φ ];\n }\n d3_geo_identityRotation.invert = d3_geo_equirectangular;\n function d3_geo_rotation(δλ, δφ, δγ) {\n return δλ ? δφ || δγ ? d3_geo_compose(d3_geo_rotationλ(δλ), d3_geo_rotationφγ(δφ, δγ)) : d3_geo_rotationλ(δλ) : δφ || δγ ? d3_geo_rotationφγ(δφ, δγ) : d3_geo_identityRotation;\n }\n function d3_geo_forwardRotationλ(δλ) {\n return function(λ, φ) {\n return λ += δλ, [ λ > π ? λ - τ : λ < -π ? λ + τ : λ, φ ];\n };\n }\n function d3_geo_rotationλ(δλ) {\n var rotation = d3_geo_forwardRotationλ(δλ);\n rotation.invert = d3_geo_forwardRotationλ(-δλ);\n return rotation;\n }\n function d3_geo_rotationφγ(δφ, δγ) {\n var cosδφ = Math.cos(δφ), sinδφ = Math.sin(δφ), cosδγ = Math.cos(δγ), sinδγ = Math.sin(δγ);\n function rotation(λ, φ) {\n var cosφ = Math.cos(φ), x = Math.cos(λ) * cosφ, y = Math.sin(λ) * cosφ, z = Math.sin(φ), k = z * cosδφ + x * sinδφ;\n return [ Math.atan2(y * cosδγ - k * sinδγ, x * cosδφ - z * sinδφ), d3_asin(k * cosδγ + y * sinδγ) ];\n }\n rotation.invert = function(λ, φ) {\n var cosφ = Math.cos(φ), x = Math.cos(λ) * cosφ, y = Math.sin(λ) * cosφ, z = Math.sin(φ), k = z * cosδγ - y * sinδγ;\n return [ Math.atan2(y * cosδγ + z * sinδγ, x * cosδφ + k * sinδφ), d3_asin(k * cosδφ - x * sinδφ) ];\n };\n return rotation;\n }\n d3.geo.circle = function() {\n var origin = [ 0, 0 ], angle, precision = 6, interpolate;\n function circle() {\n var center = typeof origin === \"function\" ? origin.apply(this, arguments) : origin, rotate = d3_geo_rotation(-center[0] * d3_radians, -center[1] * d3_radians, 0).invert, ring = [];\n interpolate(null, null, 1, {\n point: function(x, y) {\n ring.push(x = rotate(x, y));\n x[0] *= d3_degrees, x[1] *= d3_degrees;\n }\n });\n return {\n type: \"Polygon\",\n coordinates: [ ring ]\n };\n }\n circle.origin = function(x) {\n if (!arguments.length) return origin;\n origin = x;\n return circle;\n };\n circle.angle = function(x) {\n if (!arguments.length) return angle;\n interpolate = d3_geo_circleInterpolate((angle = +x) * d3_radians, precision * d3_radians);\n return circle;\n };\n circle.precision = function(_) {\n if (!arguments.length) return precision;\n interpolate = d3_geo_circleInterpolate(angle * d3_radians, (precision = +_) * d3_radians);\n return circle;\n };\n return circle.angle(90);\n };\n function d3_geo_circleInterpolate(radius, precision) {\n var cr = Math.cos(radius), sr = Math.sin(radius);\n return function(from, to, direction, listener) {\n var step = direction * precision;\n if (from != null) {\n from = d3_geo_circleAngle(cr, from);\n to = d3_geo_circleAngle(cr, to);\n if (direction > 0 ? from < to : from > to) from += direction * τ;\n } else {\n from = radius + direction * τ;\n to = radius - .5 * step;\n }\n for (var point, t = from; direction > 0 ? t > to : t < to; t -= step) {\n listener.point((point = d3_geo_spherical([ cr, -sr * Math.cos(t), -sr * Math.sin(t) ]))[0], point[1]);\n }\n };\n }\n function d3_geo_circleAngle(cr, point) {\n var a = d3_geo_cartesian(point);\n a[0] -= cr;\n d3_geo_cartesianNormalize(a);\n var angle = d3_acos(-a[1]);\n return ((-a[2] < 0 ? -angle : angle) + 2 * Math.PI - ε) % (2 * Math.PI);\n }\n d3.geo.distance = function(a, b) {\n var Δλ = (b[0] - a[0]) * d3_radians, φ0 = a[1] * d3_radians, φ1 = b[1] * d3_radians, sinΔλ = Math.sin(Δλ), cosΔλ = Math.cos(Δλ), sinφ0 = Math.sin(φ0), cosφ0 = Math.cos(φ0), sinφ1 = Math.sin(φ1), cosφ1 = Math.cos(φ1), t;\n return Math.atan2(Math.sqrt((t = cosφ1 * sinΔλ) * t + (t = cosφ0 * sinφ1 - sinφ0 * cosφ1 * cosΔλ) * t), sinφ0 * sinφ1 + cosφ0 * cosφ1 * cosΔλ);\n };\n d3.geo.graticule = function() {\n var x1, x0, X1, X0, y1, y0, Y1, Y0, dx = 10, dy = dx, DX = 90, DY = 360, x, y, X, Y, precision = 2.5;\n function graticule() {\n return {\n type: \"MultiLineString\",\n coordinates: lines()\n };\n }\n function lines() {\n return d3.range(Math.ceil(X0 / DX) * DX, X1, DX).map(X).concat(d3.range(Math.ceil(Y0 / DY) * DY, Y1, DY).map(Y)).concat(d3.range(Math.ceil(x0 / dx) * dx, x1, dx).filter(function(x) {\n return abs(x % DX) > ε;\n }).map(x)).concat(d3.range(Math.ceil(y0 / dy) * dy, y1, dy).filter(function(y) {\n return abs(y % DY) > ε;\n }).map(y));\n }\n graticule.lines = function() {\n return lines().map(function(coordinates) {\n return {\n type: \"LineString\",\n coordinates: coordinates\n };\n });\n };\n graticule.outline = function() {\n return {\n type: \"Polygon\",\n coordinates: [ X(X0).concat(Y(Y1).slice(1), X(X1).reverse().slice(1), Y(Y0).reverse().slice(1)) ]\n };\n };\n graticule.extent = function(_) {\n if (!arguments.length) return graticule.minorExtent();\n return graticule.majorExtent(_).minorExtent(_);\n };\n graticule.majorExtent = function(_) {\n if (!arguments.length) return [ [ X0, Y0 ], [ X1, Y1 ] ];\n X0 = +_[0][0], X1 = +_[1][0];\n Y0 = +_[0][1], Y1 = +_[1][1];\n if (X0 > X1) _ = X0, X0 = X1, X1 = _;\n if (Y0 > Y1) _ = Y0, Y0 = Y1, Y1 = _;\n return graticule.precision(precision);\n };\n graticule.minorExtent = function(_) {\n if (!arguments.length) return [ [ x0, y0 ], [ x1, y1 ] ];\n x0 = +_[0][0], x1 = +_[1][0];\n y0 = +_[0][1], y1 = +_[1][1];\n if (x0 > x1) _ = x0, x0 = x1, x1 = _;\n if (y0 > y1) _ = y0, y0 = y1, y1 = _;\n return graticule.precision(precision);\n };\n graticule.step = function(_) {\n if (!arguments.length) return graticule.minorStep();\n return graticule.majorStep(_).minorStep(_);\n };\n graticule.majorStep = function(_) {\n if (!arguments.length) return [ DX, DY ];\n DX = +_[0], DY = +_[1];\n return graticule;\n };\n graticule.minorStep = function(_) {\n if (!arguments.length) return [ dx, dy ];\n dx = +_[0], dy = +_[1];\n return graticule;\n };\n graticule.precision = function(_) {\n if (!arguments.length) return precision;\n precision = +_;\n x = d3_geo_graticuleX(y0, y1, 90);\n y = d3_geo_graticuleY(x0, x1, precision);\n X = d3_geo_graticuleX(Y0, Y1, 90);\n Y = d3_geo_graticuleY(X0, X1, precision);\n return graticule;\n };\n return graticule.majorExtent([ [ -180, -90 + ε ], [ 180, 90 - ε ] ]).minorExtent([ [ -180, -80 - ε ], [ 180, 80 + ε ] ]);\n };\n function d3_geo_graticuleX(y0, y1, dy) {\n var y = d3.range(y0, y1 - ε, dy).concat(y1);\n return function(x) {\n return y.map(function(y) {\n return [ x, y ];\n });\n };\n }\n function d3_geo_graticuleY(x0, x1, dx) {\n var x = d3.range(x0, x1 - ε, dx).concat(x1);\n return function(y) {\n return x.map(function(x) {\n return [ x, y ];\n });\n };\n }\n function d3_source(d) {\n return d.source;\n }\n function d3_target(d) {\n return d.target;\n }\n d3.geo.greatArc = function() {\n var source = d3_source, source_, target = d3_target, target_;\n function greatArc() {\n return {\n type: \"LineString\",\n coordinates: [ source_ || source.apply(this, arguments), target_ || target.apply(this, arguments) ]\n };\n }\n greatArc.distance = function() {\n return d3.geo.distance(source_ || source.apply(this, arguments), target_ || target.apply(this, arguments));\n };\n greatArc.source = function(_) {\n if (!arguments.length) return source;\n source = _, source_ = typeof _ === \"function\" ? null : _;\n return greatArc;\n };\n greatArc.target = function(_) {\n if (!arguments.length) return target;\n target = _, target_ = typeof _ === \"function\" ? null : _;\n return greatArc;\n };\n greatArc.precision = function() {\n return arguments.length ? greatArc : 0;\n };\n return greatArc;\n };\n d3.geo.interpolate = function(source, target) {\n return d3_geo_interpolate(source[0] * d3_radians, source[1] * d3_radians, target[0] * d3_radians, target[1] * d3_radians);\n };\n function d3_geo_interpolate(x0, y0, x1, y1) {\n var cy0 = Math.cos(y0), sy0 = Math.sin(y0), cy1 = Math.cos(y1), sy1 = Math.sin(y1), kx0 = cy0 * Math.cos(x0), ky0 = cy0 * Math.sin(x0), kx1 = cy1 * Math.cos(x1), ky1 = cy1 * Math.sin(x1), d = 2 * Math.asin(Math.sqrt(d3_haversin(y1 - y0) + cy0 * cy1 * d3_haversin(x1 - x0))), k = 1 / Math.sin(d);\n var interpolate = d ? function(t) {\n var B = Math.sin(t *= d) * k, A = Math.sin(d - t) * k, x = A * kx0 + B * kx1, y = A * ky0 + B * ky1, z = A * sy0 + B * sy1;\n return [ Math.atan2(y, x) * d3_degrees, Math.atan2(z, Math.sqrt(x * x + y * y)) * d3_degrees ];\n } : function() {\n return [ x0 * d3_degrees, y0 * d3_degrees ];\n };\n interpolate.distance = d;\n return interpolate;\n }\n d3.geo.length = function(object) {\n d3_geo_lengthSum = 0;\n d3.geo.stream(object, d3_geo_length);\n return d3_geo_lengthSum;\n };\n var d3_geo_lengthSum;\n var d3_geo_length = {\n sphere: d3_noop,\n point: d3_noop,\n lineStart: d3_geo_lengthLineStart,\n lineEnd: d3_noop,\n polygonStart: d3_noop,\n polygonEnd: d3_noop\n };\n function d3_geo_lengthLineStart() {\n var λ0, sinφ0, cosφ0;\n d3_geo_length.point = function(λ, φ) {\n λ0 = λ * d3_radians, sinφ0 = Math.sin(φ *= d3_radians), cosφ0 = Math.cos(φ);\n d3_geo_length.point = nextPoint;\n };\n d3_geo_length.lineEnd = function() {\n d3_geo_length.point = d3_geo_length.lineEnd = d3_noop;\n };\n function nextPoint(λ, φ) {\n var sinφ = Math.sin(φ *= d3_radians), cosφ = Math.cos(φ), t = abs((λ *= d3_radians) - λ0), cosΔλ = Math.cos(t);\n d3_geo_lengthSum += Math.atan2(Math.sqrt((t = cosφ * Math.sin(t)) * t + (t = cosφ0 * sinφ - sinφ0 * cosφ * cosΔλ) * t), sinφ0 * sinφ + cosφ0 * cosφ * cosΔλ);\n λ0 = λ, sinφ0 = sinφ, cosφ0 = cosφ;\n }\n }\n function d3_geo_azimuthal(scale, angle) {\n function azimuthal(λ, φ) {\n var cosλ = Math.cos(λ), cosφ = Math.cos(φ), k = scale(cosλ * cosφ);\n return [ k * cosφ * Math.sin(λ), k * Math.sin(φ) ];\n }\n azimuthal.invert = function(x, y) {\n var ρ = Math.sqrt(x * x + y * y), c = angle(ρ), sinc = Math.sin(c), cosc = Math.cos(c);\n return [ Math.atan2(x * sinc, ρ * cosc), Math.asin(ρ && y * sinc / ρ) ];\n };\n return azimuthal;\n }\n var d3_geo_azimuthalEqualArea = d3_geo_azimuthal(function(cosλcosφ) {\n return Math.sqrt(2 / (1 + cosλcosφ));\n }, function(ρ) {\n return 2 * Math.asin(ρ / 2);\n });\n (d3.geo.azimuthalEqualArea = function() {\n return d3_geo_projection(d3_geo_azimuthalEqualArea);\n }).raw = d3_geo_azimuthalEqualArea;\n var d3_geo_azimuthalEquidistant = d3_geo_azimuthal(function(cosλcosφ) {\n var c = Math.acos(cosλcosφ);\n return c && c / Math.sin(c);\n }, d3_identity);\n (d3.geo.azimuthalEquidistant = function() {\n return d3_geo_projection(d3_geo_azimuthalEquidistant);\n }).raw = d3_geo_azimuthalEquidistant;\n function d3_geo_conicConformal(φ0, φ1) {\n var cosφ0 = Math.cos(φ0), t = function(φ) {\n return Math.tan(π / 4 + φ / 2);\n }, n = φ0 === φ1 ? Math.sin(φ0) : Math.log(cosφ0 / Math.cos(φ1)) / Math.log(t(φ1) / t(φ0)), F = cosφ0 * Math.pow(t(φ0), n) / n;\n if (!n) return d3_geo_mercator;\n function forward(λ, φ) {\n if (F > 0) {\n if (φ < -halfπ + ε) φ = -halfπ + ε;\n } else {\n if (φ > halfπ - ε) φ = halfπ - ε;\n }\n var ρ = F / Math.pow(t(φ), n);\n return [ ρ * Math.sin(n * λ), F - ρ * Math.cos(n * λ) ];\n }\n forward.invert = function(x, y) {\n var ρ0_y = F - y, ρ = d3_sgn(n) * Math.sqrt(x * x + ρ0_y * ρ0_y);\n return [ Math.atan2(x, ρ0_y) / n, 2 * Math.atan(Math.pow(F / ρ, 1 / n)) - halfπ ];\n };\n return forward;\n }\n (d3.geo.conicConformal = function() {\n return d3_geo_conic(d3_geo_conicConformal);\n }).raw = d3_geo_conicConformal;\n function d3_geo_conicEquidistant(φ0, φ1) {\n var cosφ0 = Math.cos(φ0), n = φ0 === φ1 ? Math.sin(φ0) : (cosφ0 - Math.cos(φ1)) / (φ1 - φ0), G = cosφ0 / n + φ0;\n if (abs(n) < ε) return d3_geo_equirectangular;\n function forward(λ, φ) {\n var ρ = G - φ;\n return [ ρ * Math.sin(n * λ), G - ρ * Math.cos(n * λ) ];\n }\n forward.invert = function(x, y) {\n var ρ0_y = G - y;\n return [ Math.atan2(x, ρ0_y) / n, G - d3_sgn(n) * Math.sqrt(x * x + ρ0_y * ρ0_y) ];\n };\n return forward;\n }\n (d3.geo.conicEquidistant = function() {\n return d3_geo_conic(d3_geo_conicEquidistant);\n }).raw = d3_geo_conicEquidistant;\n var d3_geo_gnomonic = d3_geo_azimuthal(function(cosλcosφ) {\n return 1 / cosλcosφ;\n }, Math.atan);\n (d3.geo.gnomonic = function() {\n return d3_geo_projection(d3_geo_gnomonic);\n }).raw = d3_geo_gnomonic;\n function d3_geo_mercator(λ, φ) {\n return [ λ, Math.log(Math.tan(π / 4 + φ / 2)) ];\n }\n d3_geo_mercator.invert = function(x, y) {\n return [ x, 2 * Math.atan(Math.exp(y)) - halfπ ];\n };\n function d3_geo_mercatorProjection(project) {\n var m = d3_geo_projection(project), scale = m.scale, translate = m.translate, clipExtent = m.clipExtent, clipAuto;\n m.scale = function() {\n var v = scale.apply(m, arguments);\n return v === m ? clipAuto ? m.clipExtent(null) : m : v;\n };\n m.translate = function() {\n var v = translate.apply(m, arguments);\n return v === m ? clipAuto ? m.clipExtent(null) : m : v;\n };\n m.clipExtent = function(_) {\n var v = clipExtent.apply(m, arguments);\n if (v === m) {\n if (clipAuto = _ == null) {\n var k = π * scale(), t = translate();\n clipExtent([ [ t[0] - k, t[1] - k ], [ t[0] + k, t[1] + k ] ]);\n }\n } else if (clipAuto) {\n v = null;\n }\n return v;\n };\n return m.clipExtent(null);\n }\n (d3.geo.mercator = function() {\n return d3_geo_mercatorProjection(d3_geo_mercator);\n }).raw = d3_geo_mercator;\n var d3_geo_orthographic = d3_geo_azimuthal(function() {\n return 1;\n }, Math.asin);\n (d3.geo.orthographic = function() {\n return d3_geo_projection(d3_geo_orthographic);\n }).raw = d3_geo_orthographic;\n var d3_geo_stereographic = d3_geo_azimuthal(function(cosλcosφ) {\n return 1 / (1 + cosλcosφ);\n }, function(ρ) {\n return 2 * Math.atan(ρ);\n });\n (d3.geo.stereographic = function() {\n return d3_geo_projection(d3_geo_stereographic);\n }).raw = d3_geo_stereographic;\n function d3_geo_transverseMercator(λ, φ) {\n return [ Math.log(Math.tan(π / 4 + φ / 2)), -λ ];\n }\n d3_geo_transverseMercator.invert = function(x, y) {\n return [ -y, 2 * Math.atan(Math.exp(x)) - halfπ ];\n };\n (d3.geo.transverseMercator = function() {\n var projection = d3_geo_mercatorProjection(d3_geo_transverseMercator), center = projection.center, rotate = projection.rotate;\n projection.center = function(_) {\n return _ ? center([ -_[1], _[0] ]) : (_ = center(), [ _[1], -_[0] ]);\n };\n projection.rotate = function(_) {\n return _ ? rotate([ _[0], _[1], _.length > 2 ? _[2] + 90 : 90 ]) : (_ = rotate(), \n [ _[0], _[1], _[2] - 90 ]);\n };\n return rotate([ 0, 0, 90 ]);\n }).raw = d3_geo_transverseMercator;\n d3.geom = {};\n function d3_geom_pointX(d) {\n return d[0];\n }\n function d3_geom_pointY(d) {\n return d[1];\n }\n d3.geom.hull = function(vertices) {\n var x = d3_geom_pointX, y = d3_geom_pointY;\n if (arguments.length) return hull(vertices);\n function hull(data) {\n if (data.length < 3) return [];\n var fx = d3_functor(x), fy = d3_functor(y), i, n = data.length, points = [], flippedPoints = [];\n for (i = 0; i < n; i++) {\n points.push([ +fx.call(this, data[i], i), +fy.call(this, data[i], i), i ]);\n }\n points.sort(d3_geom_hullOrder);\n for (i = 0; i < n; i++) flippedPoints.push([ points[i][0], -points[i][1] ]);\n var upper = d3_geom_hullUpper(points), lower = d3_geom_hullUpper(flippedPoints);\n var skipLeft = lower[0] === upper[0], skipRight = lower[lower.length - 1] === upper[upper.length - 1], polygon = [];\n for (i = upper.length - 1; i >= 0; --i) polygon.push(data[points[upper[i]][2]]);\n for (i = +skipLeft; i < lower.length - skipRight; ++i) polygon.push(data[points[lower[i]][2]]);\n return polygon;\n }\n hull.x = function(_) {\n return arguments.length ? (x = _, hull) : x;\n };\n hull.y = function(_) {\n return arguments.length ? (y = _, hull) : y;\n };\n return hull;\n };\n function d3_geom_hullUpper(points) {\n var n = points.length, hull = [ 0, 1 ], hs = 2;\n for (var i = 2; i < n; i++) {\n while (hs > 1 && d3_cross2d(points[hull[hs - 2]], points[hull[hs - 1]], points[i]) <= 0) --hs;\n hull[hs++] = i;\n }\n return hull.slice(0, hs);\n }\n function d3_geom_hullOrder(a, b) {\n return a[0] - b[0] || a[1] - b[1];\n }\n d3.geom.polygon = function(coordinates) {\n d3_subclass(coordinates, d3_geom_polygonPrototype);\n return coordinates;\n };\n var d3_geom_polygonPrototype = d3.geom.polygon.prototype = [];\n d3_geom_polygonPrototype.area = function() {\n var i = -1, n = this.length, a, b = this[n - 1], area = 0;\n while (++i < n) {\n a = b;\n b = this[i];\n area += a[1] * b[0] - a[0] * b[1];\n }\n return area * .5;\n };\n d3_geom_polygonPrototype.centroid = function(k) {\n var i = -1, n = this.length, x = 0, y = 0, a, b = this[n - 1], c;\n if (!arguments.length) k = -1 / (6 * this.area());\n while (++i < n) {\n a = b;\n b = this[i];\n c = a[0] * b[1] - b[0] * a[1];\n x += (a[0] + b[0]) * c;\n y += (a[1] + b[1]) * c;\n }\n return [ x * k, y * k ];\n };\n d3_geom_polygonPrototype.clip = function(subject) {\n var input, closed = d3_geom_polygonClosed(subject), i = -1, n = this.length - d3_geom_polygonClosed(this), j, m, a = this[n - 1], b, c, d;\n while (++i < n) {\n input = subject.slice();\n subject.length = 0;\n b = this[i];\n c = input[(m = input.length - closed) - 1];\n j = -1;\n while (++j < m) {\n d = input[j];\n if (d3_geom_polygonInside(d, a, b)) {\n if (!d3_geom_polygonInside(c, a, b)) {\n subject.push(d3_geom_polygonIntersect(c, d, a, b));\n }\n subject.push(d);\n } else if (d3_geom_polygonInside(c, a, b)) {\n subject.push(d3_geom_polygonIntersect(c, d, a, b));\n }\n c = d;\n }\n if (closed) subject.push(subject[0]);\n a = b;\n }\n return subject;\n };\n function d3_geom_polygonInside(p, a, b) {\n return (b[0] - a[0]) * (p[1] - a[1]) < (b[1] - a[1]) * (p[0] - a[0]);\n }\n function d3_geom_polygonIntersect(c, d, a, b) {\n var x1 = c[0], x3 = a[0], x21 = d[0] - x1, x43 = b[0] - x3, y1 = c[1], y3 = a[1], y21 = d[1] - y1, y43 = b[1] - y3, ua = (x43 * (y1 - y3) - y43 * (x1 - x3)) / (y43 * x21 - x43 * y21);\n return [ x1 + ua * x21, y1 + ua * y21 ];\n }\n function d3_geom_polygonClosed(coordinates) {\n var a = coordinates[0], b = coordinates[coordinates.length - 1];\n return !(a[0] - b[0] || a[1] - b[1]);\n }\n var d3_geom_voronoiEdges, d3_geom_voronoiCells, d3_geom_voronoiBeaches, d3_geom_voronoiBeachPool = [], d3_geom_voronoiFirstCircle, d3_geom_voronoiCircles, d3_geom_voronoiCirclePool = [];\n function d3_geom_voronoiBeach() {\n d3_geom_voronoiRedBlackNode(this);\n this.edge = this.site = this.circle = null;\n }\n function d3_geom_voronoiCreateBeach(site) {\n var beach = d3_geom_voronoiBeachPool.pop() || new d3_geom_voronoiBeach();\n beach.site = site;\n return beach;\n }\n function d3_geom_voronoiDetachBeach(beach) {\n d3_geom_voronoiDetachCircle(beach);\n d3_geom_voronoiBeaches.remove(beach);\n d3_geom_voronoiBeachPool.push(beach);\n d3_geom_voronoiRedBlackNode(beach);\n }\n function d3_geom_voronoiRemoveBeach(beach) {\n var circle = beach.circle, x = circle.x, y = circle.cy, vertex = {\n x: x,\n y: y\n }, previous = beach.P, next = beach.N, disappearing = [ beach ];\n d3_geom_voronoiDetachBeach(beach);\n var lArc = previous;\n while (lArc.circle && abs(x - lArc.circle.x) < ε && abs(y - lArc.circle.cy) < ε) {\n previous = lArc.P;\n disappearing.unshift(lArc);\n d3_geom_voronoiDetachBeach(lArc);\n lArc = previous;\n }\n disappearing.unshift(lArc);\n d3_geom_voronoiDetachCircle(lArc);\n var rArc = next;\n while (rArc.circle && abs(x - rArc.circle.x) < ε && abs(y - rArc.circle.cy) < ε) {\n next = rArc.N;\n disappearing.push(rArc);\n d3_geom_voronoiDetachBeach(rArc);\n rArc = next;\n }\n disappearing.push(rArc);\n d3_geom_voronoiDetachCircle(rArc);\n var nArcs = disappearing.length, iArc;\n for (iArc = 1; iArc < nArcs; ++iArc) {\n rArc = disappearing[iArc];\n lArc = disappearing[iArc - 1];\n d3_geom_voronoiSetEdgeEnd(rArc.edge, lArc.site, rArc.site, vertex);\n }\n lArc = disappearing[0];\n rArc = disappearing[nArcs - 1];\n rArc.edge = d3_geom_voronoiCreateEdge(lArc.site, rArc.site, null, vertex);\n d3_geom_voronoiAttachCircle(lArc);\n d3_geom_voronoiAttachCircle(rArc);\n }\n function d3_geom_voronoiAddBeach(site) {\n var x = site.x, directrix = site.y, lArc, rArc, dxl, dxr, node = d3_geom_voronoiBeaches._;\n while (node) {\n dxl = d3_geom_voronoiLeftBreakPoint(node, directrix) - x;\n if (dxl > ε) node = node.L; else {\n dxr = x - d3_geom_voronoiRightBreakPoint(node, directrix);\n if (dxr > ε) {\n if (!node.R) {\n lArc = node;\n break;\n }\n node = node.R;\n } else {\n if (dxl > -ε) {\n lArc = node.P;\n rArc = node;\n } else if (dxr > -ε) {\n lArc = node;\n rArc = node.N;\n } else {\n lArc = rArc = node;\n }\n break;\n }\n }\n }\n var newArc = d3_geom_voronoiCreateBeach(site);\n d3_geom_voronoiBeaches.insert(lArc, newArc);\n if (!lArc && !rArc) return;\n if (lArc === rArc) {\n d3_geom_voronoiDetachCircle(lArc);\n rArc = d3_geom_voronoiCreateBeach(lArc.site);\n d3_geom_voronoiBeaches.insert(newArc, rArc);\n newArc.edge = rArc.edge = d3_geom_voronoiCreateEdge(lArc.site, newArc.site);\n d3_geom_voronoiAttachCircle(lArc);\n d3_geom_voronoiAttachCircle(rArc);\n return;\n }\n if (!rArc) {\n newArc.edge = d3_geom_voronoiCreateEdge(lArc.site, newArc.site);\n return;\n }\n d3_geom_voronoiDetachCircle(lArc);\n d3_geom_voronoiDetachCircle(rArc);\n var lSite = lArc.site, ax = lSite.x, ay = lSite.y, bx = site.x - ax, by = site.y - ay, rSite = rArc.site, cx = rSite.x - ax, cy = rSite.y - ay, d = 2 * (bx * cy - by * cx), hb = bx * bx + by * by, hc = cx * cx + cy * cy, vertex = {\n x: (cy * hb - by * hc) / d + ax,\n y: (bx * hc - cx * hb) / d + ay\n };\n d3_geom_voronoiSetEdgeEnd(rArc.edge, lSite, rSite, vertex);\n newArc.edge = d3_geom_voronoiCreateEdge(lSite, site, null, vertex);\n rArc.edge = d3_geom_voronoiCreateEdge(site, rSite, null, vertex);\n d3_geom_voronoiAttachCircle(lArc);\n d3_geom_voronoiAttachCircle(rArc);\n }\n function d3_geom_voronoiLeftBreakPoint(arc, directrix) {\n var site = arc.site, rfocx = site.x, rfocy = site.y, pby2 = rfocy - directrix;\n if (!pby2) return rfocx;\n var lArc = arc.P;\n if (!lArc) return -Infinity;\n site = lArc.site;\n var lfocx = site.x, lfocy = site.y, plby2 = lfocy - directrix;\n if (!plby2) return lfocx;\n var hl = lfocx - rfocx, aby2 = 1 / pby2 - 1 / plby2, b = hl / plby2;\n if (aby2) return (-b + Math.sqrt(b * b - 2 * aby2 * (hl * hl / (-2 * plby2) - lfocy + plby2 / 2 + rfocy - pby2 / 2))) / aby2 + rfocx;\n return (rfocx + lfocx) / 2;\n }\n function d3_geom_voronoiRightBreakPoint(arc, directrix) {\n var rArc = arc.N;\n if (rArc) return d3_geom_voronoiLeftBreakPoint(rArc, directrix);\n var site = arc.site;\n return site.y === directrix ? site.x : Infinity;\n }\n function d3_geom_voronoiCell(site) {\n this.site = site;\n this.edges = [];\n }\n d3_geom_voronoiCell.prototype.prepare = function() {\n var halfEdges = this.edges, iHalfEdge = halfEdges.length, edge;\n while (iHalfEdge--) {\n edge = halfEdges[iHalfEdge].edge;\n if (!edge.b || !edge.a) halfEdges.splice(iHalfEdge, 1);\n }\n halfEdges.sort(d3_geom_voronoiHalfEdgeOrder);\n return halfEdges.length;\n };\n function d3_geom_voronoiCloseCells(extent) {\n var x0 = extent[0][0], x1 = extent[1][0], y0 = extent[0][1], y1 = extent[1][1], x2, y2, x3, y3, cells = d3_geom_voronoiCells, iCell = cells.length, cell, iHalfEdge, halfEdges, nHalfEdges, start, end;\n while (iCell--) {\n cell = cells[iCell];\n if (!cell || !cell.prepare()) continue;\n halfEdges = cell.edges;\n nHalfEdges = halfEdges.length;\n iHalfEdge = 0;\n while (iHalfEdge < nHalfEdges) {\n end = halfEdges[iHalfEdge].end(), x3 = end.x, y3 = end.y;\n start = halfEdges[++iHalfEdge % nHalfEdges].start(), x2 = start.x, y2 = start.y;\n if (abs(x3 - x2) > ε || abs(y3 - y2) > ε) {\n halfEdges.splice(iHalfEdge, 0, new d3_geom_voronoiHalfEdge(d3_geom_voronoiCreateBorderEdge(cell.site, end, abs(x3 - x0) < ε && y1 - y3 > ε ? {\n x: x0,\n y: abs(x2 - x0) < ε ? y2 : y1\n } : abs(y3 - y1) < ε && x1 - x3 > ε ? {\n x: abs(y2 - y1) < ε ? x2 : x1,\n y: y1\n } : abs(x3 - x1) < ε && y3 - y0 > ε ? {\n x: x1,\n y: abs(x2 - x1) < ε ? y2 : y0\n } : abs(y3 - y0) < ε && x3 - x0 > ε ? {\n x: abs(y2 - y0) < ε ? x2 : x0,\n y: y0\n } : null), cell.site, null));\n ++nHalfEdges;\n }\n }\n }\n }\n function d3_geom_voronoiHalfEdgeOrder(a, b) {\n return b.angle - a.angle;\n }\n function d3_geom_voronoiCircle() {\n d3_geom_voronoiRedBlackNode(this);\n this.x = this.y = this.arc = this.site = this.cy = null;\n }\n function d3_geom_voronoiAttachCircle(arc) {\n var lArc = arc.P, rArc = arc.N;\n if (!lArc || !rArc) return;\n var lSite = lArc.site, cSite = arc.site, rSite = rArc.site;\n if (lSite === rSite) return;\n var bx = cSite.x, by = cSite.y, ax = lSite.x - bx, ay = lSite.y - by, cx = rSite.x - bx, cy = rSite.y - by;\n var d = 2 * (ax * cy - ay * cx);\n if (d >= -ε2) return;\n var ha = ax * ax + ay * ay, hc = cx * cx + cy * cy, x = (cy * ha - ay * hc) / d, y = (ax * hc - cx * ha) / d, cy = y + by;\n var circle = d3_geom_voronoiCirclePool.pop() || new d3_geom_voronoiCircle();\n circle.arc = arc;\n circle.site = cSite;\n circle.x = x + bx;\n circle.y = cy + Math.sqrt(x * x + y * y);\n circle.cy = cy;\n arc.circle = circle;\n var before = null, node = d3_geom_voronoiCircles._;\n while (node) {\n if (circle.y < node.y || circle.y === node.y && circle.x <= node.x) {\n if (node.L) node = node.L; else {\n before = node.P;\n break;\n }\n } else {\n if (node.R) node = node.R; else {\n before = node;\n break;\n }\n }\n }\n d3_geom_voronoiCircles.insert(before, circle);\n if (!before) d3_geom_voronoiFirstCircle = circle;\n }\n function d3_geom_voronoiDetachCircle(arc) {\n var circle = arc.circle;\n if (circle) {\n if (!circle.P) d3_geom_voronoiFirstCircle = circle.N;\n d3_geom_voronoiCircles.remove(circle);\n d3_geom_voronoiCirclePool.push(circle);\n d3_geom_voronoiRedBlackNode(circle);\n arc.circle = null;\n }\n }\n function d3_geom_voronoiClipEdges(extent) {\n var edges = d3_geom_voronoiEdges, clip = d3_geom_clipLine(extent[0][0], extent[0][1], extent[1][0], extent[1][1]), i = edges.length, e;\n while (i--) {\n e = edges[i];\n if (!d3_geom_voronoiConnectEdge(e, extent) || !clip(e) || abs(e.a.x - e.b.x) < ε && abs(e.a.y - e.b.y) < ε) {\n e.a = e.b = null;\n edges.splice(i, 1);\n }\n }\n }\n function d3_geom_voronoiConnectEdge(edge, extent) {\n var vb = edge.b;\n if (vb) return true;\n var va = edge.a, x0 = extent[0][0], x1 = extent[1][0], y0 = extent[0][1], y1 = extent[1][1], lSite = edge.l, rSite = edge.r, lx = lSite.x, ly = lSite.y, rx = rSite.x, ry = rSite.y, fx = (lx + rx) / 2, fy = (ly + ry) / 2, fm, fb;\n if (ry === ly) {\n if (fx < x0 || fx >= x1) return;\n if (lx > rx) {\n if (!va) va = {\n x: fx,\n y: y0\n }; else if (va.y >= y1) return;\n vb = {\n x: fx,\n y: y1\n };\n } else {\n if (!va) va = {\n x: fx,\n y: y1\n }; else if (va.y < y0) return;\n vb = {\n x: fx,\n y: y0\n };\n }\n } else {\n fm = (lx - rx) / (ry - ly);\n fb = fy - fm * fx;\n if (fm < -1 || fm > 1) {\n if (lx > rx) {\n if (!va) va = {\n x: (y0 - fb) / fm,\n y: y0\n }; else if (va.y >= y1) return;\n vb = {\n x: (y1 - fb) / fm,\n y: y1\n };\n } else {\n if (!va) va = {\n x: (y1 - fb) / fm,\n y: y1\n }; else if (va.y < y0) return;\n vb = {\n x: (y0 - fb) / fm,\n y: y0\n };\n }\n } else {\n if (ly < ry) {\n if (!va) va = {\n x: x0,\n y: fm * x0 + fb\n }; else if (va.x >= x1) return;\n vb = {\n x: x1,\n y: fm * x1 + fb\n };\n } else {\n if (!va) va = {\n x: x1,\n y: fm * x1 + fb\n }; else if (va.x < x0) return;\n vb = {\n x: x0,\n y: fm * x0 + fb\n };\n }\n }\n }\n edge.a = va;\n edge.b = vb;\n return true;\n }\n function d3_geom_voronoiEdge(lSite, rSite) {\n this.l = lSite;\n this.r = rSite;\n this.a = this.b = null;\n }\n function d3_geom_voronoiCreateEdge(lSite, rSite, va, vb) {\n var edge = new d3_geom_voronoiEdge(lSite, rSite);\n d3_geom_voronoiEdges.push(edge);\n if (va) d3_geom_voronoiSetEdgeEnd(edge, lSite, rSite, va);\n if (vb) d3_geom_voronoiSetEdgeEnd(edge, rSite, lSite, vb);\n d3_geom_voronoiCells[lSite.i].edges.push(new d3_geom_voronoiHalfEdge(edge, lSite, rSite));\n d3_geom_voronoiCells[rSite.i].edges.push(new d3_geom_voronoiHalfEdge(edge, rSite, lSite));\n return edge;\n }\n function d3_geom_voronoiCreateBorderEdge(lSite, va, vb) {\n var edge = new d3_geom_voronoiEdge(lSite, null);\n edge.a = va;\n edge.b = vb;\n d3_geom_voronoiEdges.push(edge);\n return edge;\n }\n function d3_geom_voronoiSetEdgeEnd(edge, lSite, rSite, vertex) {\n if (!edge.a && !edge.b) {\n edge.a = vertex;\n edge.l = lSite;\n edge.r = rSite;\n } else if (edge.l === rSite) {\n edge.b = vertex;\n } else {\n edge.a = vertex;\n }\n }\n function d3_geom_voronoiHalfEdge(edge, lSite, rSite) {\n var va = edge.a, vb = edge.b;\n this.edge = edge;\n this.site = lSite;\n this.angle = rSite ? Math.atan2(rSite.y - lSite.y, rSite.x - lSite.x) : edge.l === lSite ? Math.atan2(vb.x - va.x, va.y - vb.y) : Math.atan2(va.x - vb.x, vb.y - va.y);\n }\n d3_geom_voronoiHalfEdge.prototype = {\n start: function() {\n return this.edge.l === this.site ? this.edge.a : this.edge.b;\n },\n end: function() {\n return this.edge.l === this.site ? this.edge.b : this.edge.a;\n }\n };\n function d3_geom_voronoiRedBlackTree() {\n this._ = null;\n }\n function d3_geom_voronoiRedBlackNode(node) {\n node.U = node.C = node.L = node.R = node.P = node.N = null;\n }\n d3_geom_voronoiRedBlackTree.prototype = {\n insert: function(after, node) {\n var parent, grandpa, uncle;\n if (after) {\n node.P = after;\n node.N = after.N;\n if (after.N) after.N.P = node;\n after.N = node;\n if (after.R) {\n after = after.R;\n while (after.L) after = after.L;\n after.L = node;\n } else {\n after.R = node;\n }\n parent = after;\n } else if (this._) {\n after = d3_geom_voronoiRedBlackFirst(this._);\n node.P = null;\n node.N = after;\n after.P = after.L = node;\n parent = after;\n } else {\n node.P = node.N = null;\n this._ = node;\n parent = null;\n }\n node.L = node.R = null;\n node.U = parent;\n node.C = true;\n after = node;\n while (parent && parent.C) {\n grandpa = parent.U;\n if (parent === grandpa.L) {\n uncle = grandpa.R;\n if (uncle && uncle.C) {\n parent.C = uncle.C = false;\n grandpa.C = true;\n after = grandpa;\n } else {\n if (after === parent.R) {\n d3_geom_voronoiRedBlackRotateLeft(this, parent);\n after = parent;\n parent = after.U;\n }\n parent.C = false;\n grandpa.C = true;\n d3_geom_voronoiRedBlackRotateRight(this, grandpa);\n }\n } else {\n uncle = grandpa.L;\n if (uncle && uncle.C) {\n parent.C = uncle.C = false;\n grandpa.C = true;\n after = grandpa;\n } else {\n if (after === parent.L) {\n d3_geom_voronoiRedBlackRotateRight(this, parent);\n after = parent;\n parent = after.U;\n }\n parent.C = false;\n grandpa.C = true;\n d3_geom_voronoiRedBlackRotateLeft(this, grandpa);\n }\n }\n parent = after.U;\n }\n this._.C = false;\n },\n remove: function(node) {\n if (node.N) node.N.P = node.P;\n if (node.P) node.P.N = node.N;\n node.N = node.P = null;\n var parent = node.U, sibling, left = node.L, right = node.R, next, red;\n if (!left) next = right; else if (!right) next = left; else next = d3_geom_voronoiRedBlackFirst(right);\n if (parent) {\n if (parent.L === node) parent.L = next; else parent.R = next;\n } else {\n this._ = next;\n }\n if (left && right) {\n red = next.C;\n next.C = node.C;\n next.L = left;\n left.U = next;\n if (next !== right) {\n parent = next.U;\n next.U = node.U;\n node = next.R;\n parent.L = node;\n next.R = right;\n right.U = next;\n } else {\n next.U = parent;\n parent = next;\n node = next.R;\n }\n } else {\n red = node.C;\n node = next;\n }\n if (node) node.U = parent;\n if (red) return;\n if (node && node.C) {\n node.C = false;\n return;\n }\n do {\n if (node === this._) break;\n if (node === parent.L) {\n sibling = parent.R;\n if (sibling.C) {\n sibling.C = false;\n parent.C = true;\n d3_geom_voronoiRedBlackRotateLeft(this, parent);\n sibling = parent.R;\n }\n if (sibling.L && sibling.L.C || sibling.R && sibling.R.C) {\n if (!sibling.R || !sibling.R.C) {\n sibling.L.C = false;\n sibling.C = true;\n d3_geom_voronoiRedBlackRotateRight(this, sibling);\n sibling = parent.R;\n }\n sibling.C = parent.C;\n parent.C = sibling.R.C = false;\n d3_geom_voronoiRedBlackRotateLeft(this, parent);\n node = this._;\n break;\n }\n } else {\n sibling = parent.L;\n if (sibling.C) {\n sibling.C = false;\n parent.C = true;\n d3_geom_voronoiRedBlackRotateRight(this, parent);\n sibling = parent.L;\n }\n if (sibling.L && sibling.L.C || sibling.R && sibling.R.C) {\n if (!sibling.L || !sibling.L.C) {\n sibling.R.C = false;\n sibling.C = true;\n d3_geom_voronoiRedBlackRotateLeft(this, sibling);\n sibling = parent.L;\n }\n sibling.C = parent.C;\n parent.C = sibling.L.C = false;\n d3_geom_voronoiRedBlackRotateRight(this, parent);\n node = this._;\n break;\n }\n }\n sibling.C = true;\n node = parent;\n parent = parent.U;\n } while (!node.C);\n if (node) node.C = false;\n }\n };\n function d3_geom_voronoiRedBlackRotateLeft(tree, node) {\n var p = node, q = node.R, parent = p.U;\n if (parent) {\n if (parent.L === p) parent.L = q; else parent.R = q;\n } else {\n tree._ = q;\n }\n q.U = parent;\n p.U = q;\n p.R = q.L;\n if (p.R) p.R.U = p;\n q.L = p;\n }\n function d3_geom_voronoiRedBlackRotateRight(tree, node) {\n var p = node, q = node.L, parent = p.U;\n if (parent) {\n if (parent.L === p) parent.L = q; else parent.R = q;\n } else {\n tree._ = q;\n }\n q.U = parent;\n p.U = q;\n p.L = q.R;\n if (p.L) p.L.U = p;\n q.R = p;\n }\n function d3_geom_voronoiRedBlackFirst(node) {\n while (node.L) node = node.L;\n return node;\n }\n function d3_geom_voronoi(sites, bbox) {\n var site = sites.sort(d3_geom_voronoiVertexOrder).pop(), x0, y0, circle;\n d3_geom_voronoiEdges = [];\n d3_geom_voronoiCells = new Array(sites.length);\n d3_geom_voronoiBeaches = new d3_geom_voronoiRedBlackTree();\n d3_geom_voronoiCircles = new d3_geom_voronoiRedBlackTree();\n while (true) {\n circle = d3_geom_voronoiFirstCircle;\n if (site && (!circle || site.y < circle.y || site.y === circle.y && site.x < circle.x)) {\n if (site.x !== x0 || site.y !== y0) {\n d3_geom_voronoiCells[site.i] = new d3_geom_voronoiCell(site);\n d3_geom_voronoiAddBeach(site);\n x0 = site.x, y0 = site.y;\n }\n site = sites.pop();\n } else if (circle) {\n d3_geom_voronoiRemoveBeach(circle.arc);\n } else {\n break;\n }\n }\n if (bbox) d3_geom_voronoiClipEdges(bbox), d3_geom_voronoiCloseCells(bbox);\n var diagram = {\n cells: d3_geom_voronoiCells,\n edges: d3_geom_voronoiEdges\n };\n d3_geom_voronoiBeaches = d3_geom_voronoiCircles = d3_geom_voronoiEdges = d3_geom_voronoiCells = null;\n return diagram;\n }\n function d3_geom_voronoiVertexOrder(a, b) {\n return b.y - a.y || b.x - a.x;\n }\n d3.geom.voronoi = function(points) {\n var x = d3_geom_pointX, y = d3_geom_pointY, fx = x, fy = y, clipExtent = d3_geom_voronoiClipExtent;\n if (points) return voronoi(points);\n function voronoi(data) {\n var polygons = new Array(data.length), x0 = clipExtent[0][0], y0 = clipExtent[0][1], x1 = clipExtent[1][0], y1 = clipExtent[1][1];\n d3_geom_voronoi(sites(data), clipExtent).cells.forEach(function(cell, i) {\n var edges = cell.edges, site = cell.site, polygon = polygons[i] = edges.length ? edges.map(function(e) {\n var s = e.start();\n return [ s.x, s.y ];\n }) : site.x >= x0 && site.x <= x1 && site.y >= y0 && site.y <= y1 ? [ [ x0, y1 ], [ x1, y1 ], [ x1, y0 ], [ x0, y0 ] ] : [];\n polygon.point = data[i];\n });\n return polygons;\n }\n function sites(data) {\n return data.map(function(d, i) {\n return {\n x: Math.round(fx(d, i) / ε) * ε,\n y: Math.round(fy(d, i) / ε) * ε,\n i: i\n };\n });\n }\n voronoi.links = function(data) {\n return d3_geom_voronoi(sites(data)).edges.filter(function(edge) {\n return edge.l && edge.r;\n }).map(function(edge) {\n return {\n source: data[edge.l.i],\n target: data[edge.r.i]\n };\n });\n };\n voronoi.triangles = function(data) {\n var triangles = [];\n d3_geom_voronoi(sites(data)).cells.forEach(function(cell, i) {\n var site = cell.site, edges = cell.edges.sort(d3_geom_voronoiHalfEdgeOrder), j = -1, m = edges.length, e0, s0, e1 = edges[m - 1].edge, s1 = e1.l === site ? e1.r : e1.l;\n while (++j < m) {\n e0 = e1;\n s0 = s1;\n e1 = edges[j].edge;\n s1 = e1.l === site ? e1.r : e1.l;\n if (i < s0.i && i < s1.i && d3_geom_voronoiTriangleArea(site, s0, s1) < 0) {\n triangles.push([ data[i], data[s0.i], data[s1.i] ]);\n }\n }\n });\n return triangles;\n };\n voronoi.x = function(_) {\n return arguments.length ? (fx = d3_functor(x = _), voronoi) : x;\n };\n voronoi.y = function(_) {\n return arguments.length ? (fy = d3_functor(y = _), voronoi) : y;\n };\n voronoi.clipExtent = function(_) {\n if (!arguments.length) return clipExtent === d3_geom_voronoiClipExtent ? null : clipExtent;\n clipExtent = _ == null ? d3_geom_voronoiClipExtent : _;\n return voronoi;\n };\n voronoi.size = function(_) {\n if (!arguments.length) return clipExtent === d3_geom_voronoiClipExtent ? null : clipExtent && clipExtent[1];\n return voronoi.clipExtent(_ && [ [ 0, 0 ], _ ]);\n };\n return voronoi;\n };\n var d3_geom_voronoiClipExtent = [ [ -1e6, -1e6 ], [ 1e6, 1e6 ] ];\n function d3_geom_voronoiTriangleArea(a, b, c) {\n return (a.x - c.x) * (b.y - a.y) - (a.x - b.x) * (c.y - a.y);\n }\n d3.geom.delaunay = function(vertices) {\n return d3.geom.voronoi().triangles(vertices);\n };\n d3.geom.quadtree = function(points, x1, y1, x2, y2) {\n var x = d3_geom_pointX, y = d3_geom_pointY, compat;\n if (compat = arguments.length) {\n x = d3_geom_quadtreeCompatX;\n y = d3_geom_quadtreeCompatY;\n if (compat === 3) {\n y2 = y1;\n x2 = x1;\n y1 = x1 = 0;\n }\n return quadtree(points);\n }\n function quadtree(data) {\n var d, fx = d3_functor(x), fy = d3_functor(y), xs, ys, i, n, x1_, y1_, x2_, y2_;\n if (x1 != null) {\n x1_ = x1, y1_ = y1, x2_ = x2, y2_ = y2;\n } else {\n x2_ = y2_ = -(x1_ = y1_ = Infinity);\n xs = [], ys = [];\n n = data.length;\n if (compat) for (i = 0; i < n; ++i) {\n d = data[i];\n if (d.x < x1_) x1_ = d.x;\n if (d.y < y1_) y1_ = d.y;\n if (d.x > x2_) x2_ = d.x;\n if (d.y > y2_) y2_ = d.y;\n xs.push(d.x);\n ys.push(d.y);\n } else for (i = 0; i < n; ++i) {\n var x_ = +fx(d = data[i], i), y_ = +fy(d, i);\n if (x_ < x1_) x1_ = x_;\n if (y_ < y1_) y1_ = y_;\n if (x_ > x2_) x2_ = x_;\n if (y_ > y2_) y2_ = y_;\n xs.push(x_);\n ys.push(y_);\n }\n }\n var dx = x2_ - x1_, dy = y2_ - y1_;\n if (dx > dy) y2_ = y1_ + dx; else x2_ = x1_ + dy;\n function insert(n, d, x, y, x1, y1, x2, y2) {\n if (isNaN(x) || isNaN(y)) return;\n if (n.leaf) {\n var nx = n.x, ny = n.y;\n if (nx != null) {\n if (abs(nx - x) + abs(ny - y) < .01) {\n insertChild(n, d, x, y, x1, y1, x2, y2);\n } else {\n var nPoint = n.point;\n n.x = n.y = n.point = null;\n insertChild(n, nPoint, nx, ny, x1, y1, x2, y2);\n insertChild(n, d, x, y, x1, y1, x2, y2);\n }\n } else {\n n.x = x, n.y = y, n.point = d;\n }\n } else {\n insertChild(n, d, x, y, x1, y1, x2, y2);\n }\n }\n function insertChild(n, d, x, y, x1, y1, x2, y2) {\n var xm = (x1 + x2) * .5, ym = (y1 + y2) * .5, right = x >= xm, below = y >= ym, i = below << 1 | right;\n n.leaf = false;\n n = n.nodes[i] || (n.nodes[i] = d3_geom_quadtreeNode());\n if (right) x1 = xm; else x2 = xm;\n if (below) y1 = ym; else y2 = ym;\n insert(n, d, x, y, x1, y1, x2, y2);\n }\n var root = d3_geom_quadtreeNode();\n root.add = function(d) {\n insert(root, d, +fx(d, ++i), +fy(d, i), x1_, y1_, x2_, y2_);\n };\n root.visit = function(f) {\n d3_geom_quadtreeVisit(f, root, x1_, y1_, x2_, y2_);\n };\n root.find = function(point) {\n return d3_geom_quadtreeFind(root, point[0], point[1], x1_, y1_, x2_, y2_);\n };\n i = -1;\n if (x1 == null) {\n while (++i < n) {\n insert(root, data[i], xs[i], ys[i], x1_, y1_, x2_, y2_);\n }\n --i;\n } else data.forEach(root.add);\n xs = ys = data = d = null;\n return root;\n }\n quadtree.x = function(_) {\n return arguments.length ? (x = _, quadtree) : x;\n };\n quadtree.y = function(_) {\n return arguments.length ? (y = _, quadtree) : y;\n };\n quadtree.extent = function(_) {\n if (!arguments.length) return x1 == null ? null : [ [ x1, y1 ], [ x2, y2 ] ];\n if (_ == null) x1 = y1 = x2 = y2 = null; else x1 = +_[0][0], y1 = +_[0][1], x2 = +_[1][0], \n y2 = +_[1][1];\n return quadtree;\n };\n quadtree.size = function(_) {\n if (!arguments.length) return x1 == null ? null : [ x2 - x1, y2 - y1 ];\n if (_ == null) x1 = y1 = x2 = y2 = null; else x1 = y1 = 0, x2 = +_[0], y2 = +_[1];\n return quadtree;\n };\n return quadtree;\n };\n function d3_geom_quadtreeCompatX(d) {\n return d.x;\n }\n function d3_geom_quadtreeCompatY(d) {\n return d.y;\n }\n function d3_geom_quadtreeNode() {\n return {\n leaf: true,\n nodes: [],\n point: null,\n x: null,\n y: null\n };\n }\n function d3_geom_quadtreeVisit(f, node, x1, y1, x2, y2) {\n if (!f(node, x1, y1, x2, y2)) {\n var sx = (x1 + x2) * .5, sy = (y1 + y2) * .5, children = node.nodes;\n if (children[0]) d3_geom_quadtreeVisit(f, children[0], x1, y1, sx, sy);\n if (children[1]) d3_geom_quadtreeVisit(f, children[1], sx, y1, x2, sy);\n if (children[2]) d3_geom_quadtreeVisit(f, children[2], x1, sy, sx, y2);\n if (children[3]) d3_geom_quadtreeVisit(f, children[3], sx, sy, x2, y2);\n }\n }\n function d3_geom_quadtreeFind(root, x, y, x0, y0, x3, y3) {\n var minDistance2 = Infinity, closestPoint;\n (function find(node, x1, y1, x2, y2) {\n if (x1 > x3 || y1 > y3 || x2 < x0 || y2 < y0) return;\n if (point = node.point) {\n var point, dx = x - node.x, dy = y - node.y, distance2 = dx * dx + dy * dy;\n if (distance2 < minDistance2) {\n var distance = Math.sqrt(minDistance2 = distance2);\n x0 = x - distance, y0 = y - distance;\n x3 = x + distance, y3 = y + distance;\n closestPoint = point;\n }\n }\n var children = node.nodes, xm = (x1 + x2) * .5, ym = (y1 + y2) * .5, right = x >= xm, below = y >= ym;\n for (var i = below << 1 | right, j = i + 4; i < j; ++i) {\n if (node = children[i & 3]) switch (i & 3) {\n case 0:\n find(node, x1, y1, xm, ym);\n break;\n\n case 1:\n find(node, xm, y1, x2, ym);\n break;\n\n case 2:\n find(node, x1, ym, xm, y2);\n break;\n\n case 3:\n find(node, xm, ym, x2, y2);\n break;\n }\n }\n })(root, x0, y0, x3, y3);\n return closestPoint;\n }\n d3.interpolateRgb = d3_interpolateRgb;\n function d3_interpolateRgb(a, b) {\n a = d3.rgb(a);\n b = d3.rgb(b);\n var ar = a.r, ag = a.g, ab = a.b, br = b.r - ar, bg = b.g - ag, bb = b.b - ab;\n return function(t) {\n return \"#\" + d3_rgb_hex(Math.round(ar + br * t)) + d3_rgb_hex(Math.round(ag + bg * t)) + d3_rgb_hex(Math.round(ab + bb * t));\n };\n }\n d3.interpolateObject = d3_interpolateObject;\n function d3_interpolateObject(a, b) {\n var i = {}, c = {}, k;\n for (k in a) {\n if (k in b) {\n i[k] = d3_interpolate(a[k], b[k]);\n } else {\n c[k] = a[k];\n }\n }\n for (k in b) {\n if (!(k in a)) {\n c[k] = b[k];\n }\n }\n return function(t) {\n for (k in i) c[k] = i[k](t);\n return c;\n };\n }\n d3.interpolateNumber = d3_interpolateNumber;\n function d3_interpolateNumber(a, b) {\n a = +a, b = +b;\n return function(t) {\n return a * (1 - t) + b * t;\n };\n }\n d3.interpolateString = d3_interpolateString;\n function d3_interpolateString(a, b) {\n var bi = d3_interpolate_numberA.lastIndex = d3_interpolate_numberB.lastIndex = 0, am, bm, bs, i = -1, s = [], q = [];\n a = a + \"\", b = b + \"\";\n while ((am = d3_interpolate_numberA.exec(a)) && (bm = d3_interpolate_numberB.exec(b))) {\n if ((bs = bm.index) > bi) {\n bs = b.slice(bi, bs);\n if (s[i]) s[i] += bs; else s[++i] = bs;\n }\n if ((am = am[0]) === (bm = bm[0])) {\n if (s[i]) s[i] += bm; else s[++i] = bm;\n } else {\n s[++i] = null;\n q.push({\n i: i,\n x: d3_interpolateNumber(am, bm)\n });\n }\n bi = d3_interpolate_numberB.lastIndex;\n }\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) s[i] += bs; else s[++i] = bs;\n }\n return s.length < 2 ? q[0] ? (b = q[0].x, function(t) {\n return b(t) + \"\";\n }) : function() {\n return b;\n } : (b = q.length, function(t) {\n for (var i = 0, o; i < b; ++i) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n });\n }\n var d3_interpolate_numberA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g, d3_interpolate_numberB = new RegExp(d3_interpolate_numberA.source, \"g\");\n d3.interpolate = d3_interpolate;\n function d3_interpolate(a, b) {\n var i = d3.interpolators.length, f;\n while (--i >= 0 && !(f = d3.interpolators[i](a, b))) ;\n return f;\n }\n d3.interpolators = [ function(a, b) {\n var t = typeof b;\n return (t === \"string\" ? d3_rgb_names.has(b.toLowerCase()) || /^(#|rgb\\(|hsl\\()/i.test(b) ? d3_interpolateRgb : d3_interpolateString : b instanceof d3_color ? d3_interpolateRgb : Array.isArray(b) ? d3_interpolateArray : t === \"object\" && isNaN(b) ? d3_interpolateObject : d3_interpolateNumber)(a, b);\n } ];\n d3.interpolateArray = d3_interpolateArray;\n function d3_interpolateArray(a, b) {\n var x = [], c = [], na = a.length, nb = b.length, n0 = Math.min(a.length, b.length), i;\n for (i = 0; i < n0; ++i) x.push(d3_interpolate(a[i], b[i]));\n for (;i < na; ++i) c[i] = a[i];\n for (;i < nb; ++i) c[i] = b[i];\n return function(t) {\n for (i = 0; i < n0; ++i) c[i] = x[i](t);\n return c;\n };\n }\n var d3_ease_default = function() {\n return d3_identity;\n };\n var d3_ease = d3.map({\n linear: d3_ease_default,\n poly: d3_ease_poly,\n quad: function() {\n return d3_ease_quad;\n },\n cubic: function() {\n return d3_ease_cubic;\n },\n sin: function() {\n return d3_ease_sin;\n },\n exp: function() {\n return d3_ease_exp;\n },\n circle: function() {\n return d3_ease_circle;\n },\n elastic: d3_ease_elastic,\n back: d3_ease_back,\n bounce: function() {\n return d3_ease_bounce;\n }\n });\n var d3_ease_mode = d3.map({\n \"in\": d3_identity,\n out: d3_ease_reverse,\n \"in-out\": d3_ease_reflect,\n \"out-in\": function(f) {\n return d3_ease_reflect(d3_ease_reverse(f));\n }\n });\n d3.ease = function(name) {\n var i = name.indexOf(\"-\"), t = i >= 0 ? name.slice(0, i) : name, m = i >= 0 ? name.slice(i + 1) : \"in\";\n t = d3_ease.get(t) || d3_ease_default;\n m = d3_ease_mode.get(m) || d3_identity;\n return d3_ease_clamp(m(t.apply(null, d3_arraySlice.call(arguments, 1))));\n };\n function d3_ease_clamp(f) {\n return function(t) {\n return t <= 0 ? 0 : t >= 1 ? 1 : f(t);\n };\n }\n function d3_ease_reverse(f) {\n return function(t) {\n return 1 - f(1 - t);\n };\n }\n function d3_ease_reflect(f) {\n return function(t) {\n return .5 * (t < .5 ? f(2 * t) : 2 - f(2 - 2 * t));\n };\n }\n function d3_ease_quad(t) {\n return t * t;\n }\n function d3_ease_cubic(t) {\n return t * t * t;\n }\n function d3_ease_cubicInOut(t) {\n if (t <= 0) return 0;\n if (t >= 1) return 1;\n var t2 = t * t, t3 = t2 * t;\n return 4 * (t < .5 ? t3 : 3 * (t - t2) + t3 - .75);\n }\n function d3_ease_poly(e) {\n return function(t) {\n return Math.pow(t, e);\n };\n }\n function d3_ease_sin(t) {\n return 1 - Math.cos(t * halfπ);\n }\n function d3_ease_exp(t) {\n return Math.pow(2, 10 * (t - 1));\n }\n function d3_ease_circle(t) {\n return 1 - Math.sqrt(1 - t * t);\n }\n function d3_ease_elastic(a, p) {\n var s;\n if (arguments.length < 2) p = .45;\n if (arguments.length) s = p / τ * Math.asin(1 / a); else a = 1, s = p / 4;\n return function(t) {\n return 1 + a * Math.pow(2, -10 * t) * Math.sin((t - s) * τ / p);\n };\n }\n function d3_ease_back(s) {\n if (!s) s = 1.70158;\n return function(t) {\n return t * t * ((s + 1) * t - s);\n };\n }\n function d3_ease_bounce(t) {\n return t < 1 / 2.75 ? 7.5625 * t * t : t < 2 / 2.75 ? 7.5625 * (t -= 1.5 / 2.75) * t + .75 : t < 2.5 / 2.75 ? 7.5625 * (t -= 2.25 / 2.75) * t + .9375 : 7.5625 * (t -= 2.625 / 2.75) * t + .984375;\n }\n d3.interpolateHcl = d3_interpolateHcl;\n function d3_interpolateHcl(a, b) {\n a = d3.hcl(a);\n b = d3.hcl(b);\n var ah = a.h, ac = a.c, al = a.l, bh = b.h - ah, bc = b.c - ac, bl = b.l - al;\n if (isNaN(bc)) bc = 0, ac = isNaN(ac) ? b.c : ac;\n if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360;\n return function(t) {\n return d3_hcl_lab(ah + bh * t, ac + bc * t, al + bl * t) + \"\";\n };\n }\n d3.interpolateHsl = d3_interpolateHsl;\n function d3_interpolateHsl(a, b) {\n a = d3.hsl(a);\n b = d3.hsl(b);\n var ah = a.h, as = a.s, al = a.l, bh = b.h - ah, bs = b.s - as, bl = b.l - al;\n if (isNaN(bs)) bs = 0, as = isNaN(as) ? b.s : as;\n if (isNaN(bh)) bh = 0, ah = isNaN(ah) ? b.h : ah; else if (bh > 180) bh -= 360; else if (bh < -180) bh += 360;\n return function(t) {\n return d3_hsl_rgb(ah + bh * t, as + bs * t, al + bl * t) + \"\";\n };\n }\n d3.interpolateLab = d3_interpolateLab;\n function d3_interpolateLab(a, b) {\n a = d3.lab(a);\n b = d3.lab(b);\n var al = a.l, aa = a.a, ab = a.b, bl = b.l - al, ba = b.a - aa, bb = b.b - ab;\n return function(t) {\n return d3_lab_rgb(al + bl * t, aa + ba * t, ab + bb * t) + \"\";\n };\n }\n d3.interpolateRound = d3_interpolateRound;\n function d3_interpolateRound(a, b) {\n b -= a;\n return function(t) {\n return Math.round(a + b * t);\n };\n }\n d3.transform = function(string) {\n var g = d3_document.createElementNS(d3.ns.prefix.svg, \"g\");\n return (d3.transform = function(string) {\n if (string != null) {\n g.setAttribute(\"transform\", string);\n var t = g.transform.baseVal.consolidate();\n }\n return new d3_transform(t ? t.matrix : d3_transformIdentity);\n })(string);\n };\n function d3_transform(m) {\n var r0 = [ m.a, m.b ], r1 = [ m.c, m.d ], kx = d3_transformNormalize(r0), kz = d3_transformDot(r0, r1), ky = d3_transformNormalize(d3_transformCombine(r1, r0, -kz)) || 0;\n if (r0[0] * r1[1] < r1[0] * r0[1]) {\n r0[0] *= -1;\n r0[1] *= -1;\n kx *= -1;\n kz *= -1;\n }\n this.rotate = (kx ? Math.atan2(r0[1], r0[0]) : Math.atan2(-r1[0], r1[1])) * d3_degrees;\n this.translate = [ m.e, m.f ];\n this.scale = [ kx, ky ];\n this.skew = ky ? Math.atan2(kz, ky) * d3_degrees : 0;\n }\n d3_transform.prototype.toString = function() {\n return \"translate(\" + this.translate + \")rotate(\" + this.rotate + \")skewX(\" + this.skew + \")scale(\" + this.scale + \")\";\n };\n function d3_transformDot(a, b) {\n return a[0] * b[0] + a[1] * b[1];\n }\n function d3_transformNormalize(a) {\n var k = Math.sqrt(d3_transformDot(a, a));\n if (k) {\n a[0] /= k;\n a[1] /= k;\n }\n return k;\n }\n function d3_transformCombine(a, b, k) {\n a[0] += k * b[0];\n a[1] += k * b[1];\n return a;\n }\n var d3_transformIdentity = {\n a: 1,\n b: 0,\n c: 0,\n d: 1,\n e: 0,\n f: 0\n };\n d3.interpolateTransform = d3_interpolateTransform;\n function d3_interpolateTransformPop(s) {\n return s.length ? s.pop() + \",\" : \"\";\n }\n function d3_interpolateTranslate(ta, tb, s, q) {\n if (ta[0] !== tb[0] || ta[1] !== tb[1]) {\n var i = s.push(\"translate(\", null, \",\", null, \")\");\n q.push({\n i: i - 4,\n x: d3_interpolateNumber(ta[0], tb[0])\n }, {\n i: i - 2,\n x: d3_interpolateNumber(ta[1], tb[1])\n });\n } else if (tb[0] || tb[1]) {\n s.push(\"translate(\" + tb + \")\");\n }\n }\n function d3_interpolateRotate(ra, rb, s, q) {\n if (ra !== rb) {\n if (ra - rb > 180) rb += 360; else if (rb - ra > 180) ra += 360;\n q.push({\n i: s.push(d3_interpolateTransformPop(s) + \"rotate(\", null, \")\") - 2,\n x: d3_interpolateNumber(ra, rb)\n });\n } else if (rb) {\n s.push(d3_interpolateTransformPop(s) + \"rotate(\" + rb + \")\");\n }\n }\n function d3_interpolateSkew(wa, wb, s, q) {\n if (wa !== wb) {\n q.push({\n i: s.push(d3_interpolateTransformPop(s) + \"skewX(\", null, \")\") - 2,\n x: d3_interpolateNumber(wa, wb)\n });\n } else if (wb) {\n s.push(d3_interpolateTransformPop(s) + \"skewX(\" + wb + \")\");\n }\n }\n function d3_interpolateScale(ka, kb, s, q) {\n if (ka[0] !== kb[0] || ka[1] !== kb[1]) {\n var i = s.push(d3_interpolateTransformPop(s) + \"scale(\", null, \",\", null, \")\");\n q.push({\n i: i - 4,\n x: d3_interpolateNumber(ka[0], kb[0])\n }, {\n i: i - 2,\n x: d3_interpolateNumber(ka[1], kb[1])\n });\n } else if (kb[0] !== 1 || kb[1] !== 1) {\n s.push(d3_interpolateTransformPop(s) + \"scale(\" + kb + \")\");\n }\n }\n function d3_interpolateTransform(a, b) {\n var s = [], q = [];\n a = d3.transform(a), b = d3.transform(b);\n d3_interpolateTranslate(a.translate, b.translate, s, q);\n d3_interpolateRotate(a.rotate, b.rotate, s, q);\n d3_interpolateSkew(a.skew, b.skew, s, q);\n d3_interpolateScale(a.scale, b.scale, s, q);\n a = b = null;\n return function(t) {\n var i = -1, n = q.length, o;\n while (++i < n) s[(o = q[i]).i] = o.x(t);\n return s.join(\"\");\n };\n }\n function d3_uninterpolateNumber(a, b) {\n b = (b -= a = +a) || 1 / b;\n return function(x) {\n return (x - a) / b;\n };\n }\n function d3_uninterpolateClamp(a, b) {\n b = (b -= a = +a) || 1 / b;\n return function(x) {\n return Math.max(0, Math.min(1, (x - a) / b));\n };\n }\n d3.layout = {};\n d3.layout.bundle = function() {\n return function(links) {\n var paths = [], i = -1, n = links.length;\n while (++i < n) paths.push(d3_layout_bundlePath(links[i]));\n return paths;\n };\n };\n function d3_layout_bundlePath(link) {\n var start = link.source, end = link.target, lca = d3_layout_bundleLeastCommonAncestor(start, end), points = [ start ];\n while (start !== lca) {\n start = start.parent;\n points.push(start);\n }\n var k = points.length;\n while (end !== lca) {\n points.splice(k, 0, end);\n end = end.parent;\n }\n return points;\n }\n function d3_layout_bundleAncestors(node) {\n var ancestors = [], parent = node.parent;\n while (parent != null) {\n ancestors.push(node);\n node = parent;\n parent = parent.parent;\n }\n ancestors.push(node);\n return ancestors;\n }\n function d3_layout_bundleLeastCommonAncestor(a, b) {\n if (a === b) return a;\n var aNodes = d3_layout_bundleAncestors(a), bNodes = d3_layout_bundleAncestors(b), aNode = aNodes.pop(), bNode = bNodes.pop(), sharedNode = null;\n while (aNode === bNode) {\n sharedNode = aNode;\n aNode = aNodes.pop();\n bNode = bNodes.pop();\n }\n return sharedNode;\n }\n d3.layout.chord = function() {\n var chord = {}, chords, groups, matrix, n, padding = 0, sortGroups, sortSubgroups, sortChords;\n function relayout() {\n var subgroups = {}, groupSums = [], groupIndex = d3.range(n), subgroupIndex = [], k, x, x0, i, j;\n chords = [];\n groups = [];\n k = 0, i = -1;\n while (++i < n) {\n x = 0, j = -1;\n while (++j < n) {\n x += matrix[i][j];\n }\n groupSums.push(x);\n subgroupIndex.push(d3.range(n));\n k += x;\n }\n if (sortGroups) {\n groupIndex.sort(function(a, b) {\n return sortGroups(groupSums[a], groupSums[b]);\n });\n }\n if (sortSubgroups) {\n subgroupIndex.forEach(function(d, i) {\n d.sort(function(a, b) {\n return sortSubgroups(matrix[i][a], matrix[i][b]);\n });\n });\n }\n k = (τ - padding * n) / k;\n x = 0, i = -1;\n while (++i < n) {\n x0 = x, j = -1;\n while (++j < n) {\n var di = groupIndex[i], dj = subgroupIndex[di][j], v = matrix[di][dj], a0 = x, a1 = x += v * k;\n subgroups[di + \"-\" + dj] = {\n index: di,\n subindex: dj,\n startAngle: a0,\n endAngle: a1,\n value: v\n };\n }\n groups[di] = {\n index: di,\n startAngle: x0,\n endAngle: x,\n value: groupSums[di]\n };\n x += padding;\n }\n i = -1;\n while (++i < n) {\n j = i - 1;\n while (++j < n) {\n var source = subgroups[i + \"-\" + j], target = subgroups[j + \"-\" + i];\n if (source.value || target.value) {\n chords.push(source.value < target.value ? {\n source: target,\n target: source\n } : {\n source: source,\n target: target\n });\n }\n }\n }\n if (sortChords) resort();\n }\n function resort() {\n chords.sort(function(a, b) {\n return sortChords((a.source.value + a.target.value) / 2, (b.source.value + b.target.value) / 2);\n });\n }\n chord.matrix = function(x) {\n if (!arguments.length) return matrix;\n n = (matrix = x) && matrix.length;\n chords = groups = null;\n return chord;\n };\n chord.padding = function(x) {\n if (!arguments.length) return padding;\n padding = x;\n chords = groups = null;\n return chord;\n };\n chord.sortGroups = function(x) {\n if (!arguments.length) return sortGroups;\n sortGroups = x;\n chords = groups = null;\n return chord;\n };\n chord.sortSubgroups = function(x) {\n if (!arguments.length) return sortSubgroups;\n sortSubgroups = x;\n chords = null;\n return chord;\n };\n chord.sortChords = function(x) {\n if (!arguments.length) return sortChords;\n sortChords = x;\n if (chords) resort();\n return chord;\n };\n chord.chords = function() {\n if (!chords) relayout();\n return chords;\n };\n chord.groups = function() {\n if (!groups) relayout();\n return groups;\n };\n return chord;\n };\n d3.layout.force = function() {\n var force = {}, event = d3.dispatch(\"start\", \"tick\", \"end\"), timer, size = [ 1, 1 ], drag, alpha, friction = .9, linkDistance = d3_layout_forceLinkDistance, linkStrength = d3_layout_forceLinkStrength, charge = -30, chargeDistance2 = d3_layout_forceChargeDistance2, gravity = .1, theta2 = .64, nodes = [], links = [], distances, strengths, charges;\n function repulse(node) {\n return function(quad, x1, _, x2) {\n if (quad.point !== node) {\n var dx = quad.cx - node.x, dy = quad.cy - node.y, dw = x2 - x1, dn = dx * dx + dy * dy;\n if (dw * dw / theta2 < dn) {\n if (dn < chargeDistance2) {\n var k = quad.charge / dn;\n node.px -= dx * k;\n node.py -= dy * k;\n }\n return true;\n }\n if (quad.point && dn && dn < chargeDistance2) {\n var k = quad.pointCharge / dn;\n node.px -= dx * k;\n node.py -= dy * k;\n }\n }\n return !quad.charge;\n };\n }\n force.tick = function() {\n if ((alpha *= .99) < .005) {\n timer = null;\n event.end({\n type: \"end\",\n alpha: alpha = 0\n });\n return true;\n }\n var n = nodes.length, m = links.length, q, i, o, s, t, l, k, x, y;\n for (i = 0; i < m; ++i) {\n o = links[i];\n s = o.source;\n t = o.target;\n x = t.x - s.x;\n y = t.y - s.y;\n if (l = x * x + y * y) {\n l = alpha * strengths[i] * ((l = Math.sqrt(l)) - distances[i]) / l;\n x *= l;\n y *= l;\n t.x -= x * (k = s.weight + t.weight ? s.weight / (s.weight + t.weight) : .5);\n t.y -= y * k;\n s.x += x * (k = 1 - k);\n s.y += y * k;\n }\n }\n if (k = alpha * gravity) {\n x = size[0] / 2;\n y = size[1] / 2;\n i = -1;\n if (k) while (++i < n) {\n o = nodes[i];\n o.x += (x - o.x) * k;\n o.y += (y - o.y) * k;\n }\n }\n if (charge) {\n d3_layout_forceAccumulate(q = d3.geom.quadtree(nodes), alpha, charges);\n i = -1;\n while (++i < n) {\n if (!(o = nodes[i]).fixed) {\n q.visit(repulse(o));\n }\n }\n }\n i = -1;\n while (++i < n) {\n o = nodes[i];\n if (o.fixed) {\n o.x = o.px;\n o.y = o.py;\n } else {\n o.x -= (o.px - (o.px = o.x)) * friction;\n o.y -= (o.py - (o.py = o.y)) * friction;\n }\n }\n event.tick({\n type: \"tick\",\n alpha: alpha\n });\n };\n force.nodes = function(x) {\n if (!arguments.length) return nodes;\n nodes = x;\n return force;\n };\n force.links = function(x) {\n if (!arguments.length) return links;\n links = x;\n return force;\n };\n force.size = function(x) {\n if (!arguments.length) return size;\n size = x;\n return force;\n };\n force.linkDistance = function(x) {\n if (!arguments.length) return linkDistance;\n linkDistance = typeof x === \"function\" ? x : +x;\n return force;\n };\n force.distance = force.linkDistance;\n force.linkStrength = function(x) {\n if (!arguments.length) return linkStrength;\n linkStrength = typeof x === \"function\" ? x : +x;\n return force;\n };\n force.friction = function(x) {\n if (!arguments.length) return friction;\n friction = +x;\n return force;\n };\n force.charge = function(x) {\n if (!arguments.length) return charge;\n charge = typeof x === \"function\" ? x : +x;\n return force;\n };\n force.chargeDistance = function(x) {\n if (!arguments.length) return Math.sqrt(chargeDistance2);\n chargeDistance2 = x * x;\n return force;\n };\n force.gravity = function(x) {\n if (!arguments.length) return gravity;\n gravity = +x;\n return force;\n };\n force.theta = function(x) {\n if (!arguments.length) return Math.sqrt(theta2);\n theta2 = x * x;\n return force;\n };\n force.alpha = function(x) {\n if (!arguments.length) return alpha;\n x = +x;\n if (alpha) {\n if (x > 0) {\n alpha = x;\n } else {\n timer.c = null, timer.t = NaN, timer = null;\n event.end({\n type: \"end\",\n alpha: alpha = 0\n });\n }\n } else if (x > 0) {\n event.start({\n type: \"start\",\n alpha: alpha = x\n });\n timer = d3_timer(force.tick);\n }\n return force;\n };\n force.start = function() {\n var i, n = nodes.length, m = links.length, w = size[0], h = size[1], neighbors, o;\n for (i = 0; i < n; ++i) {\n (o = nodes[i]).index = i;\n o.weight = 0;\n }\n for (i = 0; i < m; ++i) {\n o = links[i];\n if (typeof o.source == \"number\") o.source = nodes[o.source];\n if (typeof o.target == \"number\") o.target = nodes[o.target];\n ++o.source.weight;\n ++o.target.weight;\n }\n for (i = 0; i < n; ++i) {\n o = nodes[i];\n if (isNaN(o.x)) o.x = position(\"x\", w);\n if (isNaN(o.y)) o.y = position(\"y\", h);\n if (isNaN(o.px)) o.px = o.x;\n if (isNaN(o.py)) o.py = o.y;\n }\n distances = [];\n if (typeof linkDistance === \"function\") for (i = 0; i < m; ++i) distances[i] = +linkDistance.call(this, links[i], i); else for (i = 0; i < m; ++i) distances[i] = linkDistance;\n strengths = [];\n if (typeof linkStrength === \"function\") for (i = 0; i < m; ++i) strengths[i] = +linkStrength.call(this, links[i], i); else for (i = 0; i < m; ++i) strengths[i] = linkStrength;\n charges = [];\n if (typeof charge === \"function\") for (i = 0; i < n; ++i) charges[i] = +charge.call(this, nodes[i], i); else for (i = 0; i < n; ++i) charges[i] = charge;\n function position(dimension, size) {\n if (!neighbors) {\n neighbors = new Array(n);\n for (j = 0; j < n; ++j) {\n neighbors[j] = [];\n }\n for (j = 0; j < m; ++j) {\n var o = links[j];\n neighbors[o.source.index].push(o.target);\n neighbors[o.target.index].push(o.source);\n }\n }\n var candidates = neighbors[i], j = -1, l = candidates.length, x;\n while (++j < l) if (!isNaN(x = candidates[j][dimension])) return x;\n return Math.random() * size;\n }\n return force.resume();\n };\n force.resume = function() {\n return force.alpha(.1);\n };\n force.stop = function() {\n return force.alpha(0);\n };\n force.drag = function() {\n if (!drag) drag = d3.behavior.drag().origin(d3_identity).on(\"dragstart.force\", d3_layout_forceDragstart).on(\"drag.force\", dragmove).on(\"dragend.force\", d3_layout_forceDragend);\n if (!arguments.length) return drag;\n this.on(\"mouseover.force\", d3_layout_forceMouseover).on(\"mouseout.force\", d3_layout_forceMouseout).call(drag);\n };\n function dragmove(d) {\n d.px = d3.event.x, d.py = d3.event.y;\n force.resume();\n }\n return d3.rebind(force, event, \"on\");\n };\n function d3_layout_forceDragstart(d) {\n d.fixed |= 2;\n }\n function d3_layout_forceDragend(d) {\n d.fixed &= ~6;\n }\n function d3_layout_forceMouseover(d) {\n d.fixed |= 4;\n d.px = d.x, d.py = d.y;\n }\n function d3_layout_forceMouseout(d) {\n d.fixed &= ~4;\n }\n function d3_layout_forceAccumulate(quad, alpha, charges) {\n var cx = 0, cy = 0;\n quad.charge = 0;\n if (!quad.leaf) {\n var nodes = quad.nodes, n = nodes.length, i = -1, c;\n while (++i < n) {\n c = nodes[i];\n if (c == null) continue;\n d3_layout_forceAccumulate(c, alpha, charges);\n quad.charge += c.charge;\n cx += c.charge * c.cx;\n cy += c.charge * c.cy;\n }\n }\n if (quad.point) {\n if (!quad.leaf) {\n quad.point.x += Math.random() - .5;\n quad.point.y += Math.random() - .5;\n }\n var k = alpha * charges[quad.point.index];\n quad.charge += quad.pointCharge = k;\n cx += k * quad.point.x;\n cy += k * quad.point.y;\n }\n quad.cx = cx / quad.charge;\n quad.cy = cy / quad.charge;\n }\n var d3_layout_forceLinkDistance = 20, d3_layout_forceLinkStrength = 1, d3_layout_forceChargeDistance2 = Infinity;\n d3.layout.hierarchy = function() {\n var sort = d3_layout_hierarchySort, children = d3_layout_hierarchyChildren, value = d3_layout_hierarchyValue;\n function hierarchy(root) {\n var stack = [ root ], nodes = [], node;\n root.depth = 0;\n while ((node = stack.pop()) != null) {\n nodes.push(node);\n if ((childs = children.call(hierarchy, node, node.depth)) && (n = childs.length)) {\n var n, childs, child;\n while (--n >= 0) {\n stack.push(child = childs[n]);\n child.parent = node;\n child.depth = node.depth + 1;\n }\n if (value) node.value = 0;\n node.children = childs;\n } else {\n if (value) node.value = +value.call(hierarchy, node, node.depth) || 0;\n delete node.children;\n }\n }\n d3_layout_hierarchyVisitAfter(root, function(node) {\n var childs, parent;\n if (sort && (childs = node.children)) childs.sort(sort);\n if (value && (parent = node.parent)) parent.value += node.value;\n });\n return nodes;\n }\n hierarchy.sort = function(x) {\n if (!arguments.length) return sort;\n sort = x;\n return hierarchy;\n };\n hierarchy.children = function(x) {\n if (!arguments.length) return children;\n children = x;\n return hierarchy;\n };\n hierarchy.value = function(x) {\n if (!arguments.length) return value;\n value = x;\n return hierarchy;\n };\n hierarchy.revalue = function(root) {\n if (value) {\n d3_layout_hierarchyVisitBefore(root, function(node) {\n if (node.children) node.value = 0;\n });\n d3_layout_hierarchyVisitAfter(root, function(node) {\n var parent;\n if (!node.children) node.value = +value.call(hierarchy, node, node.depth) || 0;\n if (parent = node.parent) parent.value += node.value;\n });\n }\n return root;\n };\n return hierarchy;\n };\n function d3_layout_hierarchyRebind(object, hierarchy) {\n d3.rebind(object, hierarchy, \"sort\", \"children\", \"value\");\n object.nodes = object;\n object.links = d3_layout_hierarchyLinks;\n return object;\n }\n function d3_layout_hierarchyVisitBefore(node, callback) {\n var nodes = [ node ];\n while ((node = nodes.pop()) != null) {\n callback(node);\n if ((children = node.children) && (n = children.length)) {\n var n, children;\n while (--n >= 0) nodes.push(children[n]);\n }\n }\n }\n function d3_layout_hierarchyVisitAfter(node, callback) {\n var nodes = [ node ], nodes2 = [];\n while ((node = nodes.pop()) != null) {\n nodes2.push(node);\n if ((children = node.children) && (n = children.length)) {\n var i = -1, n, children;\n while (++i < n) nodes.push(children[i]);\n }\n }\n while ((node = nodes2.pop()) != null) {\n callback(node);\n }\n }\n function d3_layout_hierarchyChildren(d) {\n return d.children;\n }\n function d3_layout_hierarchyValue(d) {\n return d.value;\n }\n function d3_layout_hierarchySort(a, b) {\n return b.value - a.value;\n }\n function d3_layout_hierarchyLinks(nodes) {\n return d3.merge(nodes.map(function(parent) {\n return (parent.children || []).map(function(child) {\n return {\n source: parent,\n target: child\n };\n });\n }));\n }\n d3.layout.partition = function() {\n var hierarchy = d3.layout.hierarchy(), size = [ 1, 1 ];\n function position(node, x, dx, dy) {\n var children = node.children;\n node.x = x;\n node.y = node.depth * dy;\n node.dx = dx;\n node.dy = dy;\n if (children && (n = children.length)) {\n var i = -1, n, c, d;\n dx = node.value ? dx / node.value : 0;\n while (++i < n) {\n position(c = children[i], x, d = c.value * dx, dy);\n x += d;\n }\n }\n }\n function depth(node) {\n var children = node.children, d = 0;\n if (children && (n = children.length)) {\n var i = -1, n;\n while (++i < n) d = Math.max(d, depth(children[i]));\n }\n return 1 + d;\n }\n function partition(d, i) {\n var nodes = hierarchy.call(this, d, i);\n position(nodes[0], 0, size[0], size[1] / depth(nodes[0]));\n return nodes;\n }\n partition.size = function(x) {\n if (!arguments.length) return size;\n size = x;\n return partition;\n };\n return d3_layout_hierarchyRebind(partition, hierarchy);\n };\n d3.layout.pie = function() {\n var value = Number, sort = d3_layout_pieSortByValue, startAngle = 0, endAngle = τ, padAngle = 0;\n function pie(data) {\n var n = data.length, values = data.map(function(d, i) {\n return +value.call(pie, d, i);\n }), a = +(typeof startAngle === \"function\" ? startAngle.apply(this, arguments) : startAngle), da = (typeof endAngle === \"function\" ? endAngle.apply(this, arguments) : endAngle) - a, p = Math.min(Math.abs(da) / n, +(typeof padAngle === \"function\" ? padAngle.apply(this, arguments) : padAngle)), pa = p * (da < 0 ? -1 : 1), sum = d3.sum(values), k = sum ? (da - n * pa) / sum : 0, index = d3.range(n), arcs = [], v;\n if (sort != null) index.sort(sort === d3_layout_pieSortByValue ? function(i, j) {\n return values[j] - values[i];\n } : function(i, j) {\n return sort(data[i], data[j]);\n });\n index.forEach(function(i) {\n arcs[i] = {\n data: data[i],\n value: v = values[i],\n startAngle: a,\n endAngle: a += v * k + pa,\n padAngle: p\n };\n });\n return arcs;\n }\n pie.value = function(_) {\n if (!arguments.length) return value;\n value = _;\n return pie;\n };\n pie.sort = function(_) {\n if (!arguments.length) return sort;\n sort = _;\n return pie;\n };\n pie.startAngle = function(_) {\n if (!arguments.length) return startAngle;\n startAngle = _;\n return pie;\n };\n pie.endAngle = function(_) {\n if (!arguments.length) return endAngle;\n endAngle = _;\n return pie;\n };\n pie.padAngle = function(_) {\n if (!arguments.length) return padAngle;\n padAngle = _;\n return pie;\n };\n return pie;\n };\n var d3_layout_pieSortByValue = {};\n d3.layout.stack = function() {\n var values = d3_identity, order = d3_layout_stackOrderDefault, offset = d3_layout_stackOffsetZero, out = d3_layout_stackOut, x = d3_layout_stackX, y = d3_layout_stackY;\n function stack(data, index) {\n if (!(n = data.length)) return data;\n var series = data.map(function(d, i) {\n return values.call(stack, d, i);\n });\n var points = series.map(function(d) {\n return d.map(function(v, i) {\n return [ x.call(stack, v, i), y.call(stack, v, i) ];\n });\n });\n var orders = order.call(stack, points, index);\n series = d3.permute(series, orders);\n points = d3.permute(points, orders);\n var offsets = offset.call(stack, points, index);\n var m = series[0].length, n, i, j, o;\n for (j = 0; j < m; ++j) {\n out.call(stack, series[0][j], o = offsets[j], points[0][j][1]);\n for (i = 1; i < n; ++i) {\n out.call(stack, series[i][j], o += points[i - 1][j][1], points[i][j][1]);\n }\n }\n return data;\n }\n stack.values = function(x) {\n if (!arguments.length) return values;\n values = x;\n return stack;\n };\n stack.order = function(x) {\n if (!arguments.length) return order;\n order = typeof x === \"function\" ? x : d3_layout_stackOrders.get(x) || d3_layout_stackOrderDefault;\n return stack;\n };\n stack.offset = function(x) {\n if (!arguments.length) return offset;\n offset = typeof x === \"function\" ? x : d3_layout_stackOffsets.get(x) || d3_layout_stackOffsetZero;\n return stack;\n };\n stack.x = function(z) {\n if (!arguments.length) return x;\n x = z;\n return stack;\n };\n stack.y = function(z) {\n if (!arguments.length) return y;\n y = z;\n return stack;\n };\n stack.out = function(z) {\n if (!arguments.length) return out;\n out = z;\n return stack;\n };\n return stack;\n };\n function d3_layout_stackX(d) {\n return d.x;\n }\n function d3_layout_stackY(d) {\n return d.y;\n }\n function d3_layout_stackOut(d, y0, y) {\n d.y0 = y0;\n d.y = y;\n }\n var d3_layout_stackOrders = d3.map({\n \"inside-out\": function(data) {\n var n = data.length, i, j, max = data.map(d3_layout_stackMaxIndex), sums = data.map(d3_layout_stackReduceSum), index = d3.range(n).sort(function(a, b) {\n return max[a] - max[b];\n }), top = 0, bottom = 0, tops = [], bottoms = [];\n for (i = 0; i < n; ++i) {\n j = index[i];\n if (top < bottom) {\n top += sums[j];\n tops.push(j);\n } else {\n bottom += sums[j];\n bottoms.push(j);\n }\n }\n return bottoms.reverse().concat(tops);\n },\n reverse: function(data) {\n return d3.range(data.length).reverse();\n },\n \"default\": d3_layout_stackOrderDefault\n });\n var d3_layout_stackOffsets = d3.map({\n silhouette: function(data) {\n var n = data.length, m = data[0].length, sums = [], max = 0, i, j, o, y0 = [];\n for (j = 0; j < m; ++j) {\n for (i = 0, o = 0; i < n; i++) o += data[i][j][1];\n if (o > max) max = o;\n sums.push(o);\n }\n for (j = 0; j < m; ++j) {\n y0[j] = (max - sums[j]) / 2;\n }\n return y0;\n },\n wiggle: function(data) {\n var n = data.length, x = data[0], m = x.length, i, j, k, s1, s2, s3, dx, o, o0, y0 = [];\n y0[0] = o = o0 = 0;\n for (j = 1; j < m; ++j) {\n for (i = 0, s1 = 0; i < n; ++i) s1 += data[i][j][1];\n for (i = 0, s2 = 0, dx = x[j][0] - x[j - 1][0]; i < n; ++i) {\n for (k = 0, s3 = (data[i][j][1] - data[i][j - 1][1]) / (2 * dx); k < i; ++k) {\n s3 += (data[k][j][1] - data[k][j - 1][1]) / dx;\n }\n s2 += s3 * data[i][j][1];\n }\n y0[j] = o -= s1 ? s2 / s1 * dx : 0;\n if (o < o0) o0 = o;\n }\n for (j = 0; j < m; ++j) y0[j] -= o0;\n return y0;\n },\n expand: function(data) {\n var n = data.length, m = data[0].length, k = 1 / n, i, j, o, y0 = [];\n for (j = 0; j < m; ++j) {\n for (i = 0, o = 0; i < n; i++) o += data[i][j][1];\n if (o) for (i = 0; i < n; i++) data[i][j][1] /= o; else for (i = 0; i < n; i++) data[i][j][1] = k;\n }\n for (j = 0; j < m; ++j) y0[j] = 0;\n return y0;\n },\n zero: d3_layout_stackOffsetZero\n });\n function d3_layout_stackOrderDefault(data) {\n return d3.range(data.length);\n }\n function d3_layout_stackOffsetZero(data) {\n var j = -1, m = data[0].length, y0 = [];\n while (++j < m) y0[j] = 0;\n return y0;\n }\n function d3_layout_stackMaxIndex(array) {\n var i = 1, j = 0, v = array[0][1], k, n = array.length;\n for (;i < n; ++i) {\n if ((k = array[i][1]) > v) {\n j = i;\n v = k;\n }\n }\n return j;\n }\n function d3_layout_stackReduceSum(d) {\n return d.reduce(d3_layout_stackSum, 0);\n }\n function d3_layout_stackSum(p, d) {\n return p + d[1];\n }\n d3.layout.histogram = function() {\n var frequency = true, valuer = Number, ranger = d3_layout_histogramRange, binner = d3_layout_histogramBinSturges;\n function histogram(data, i) {\n var bins = [], values = data.map(valuer, this), range = ranger.call(this, values, i), thresholds = binner.call(this, range, values, i), bin, i = -1, n = values.length, m = thresholds.length - 1, k = frequency ? 1 : 1 / n, x;\n while (++i < m) {\n bin = bins[i] = [];\n bin.dx = thresholds[i + 1] - (bin.x = thresholds[i]);\n bin.y = 0;\n }\n if (m > 0) {\n i = -1;\n while (++i < n) {\n x = values[i];\n if (x >= range[0] && x <= range[1]) {\n bin = bins[d3.bisect(thresholds, x, 1, m) - 1];\n bin.y += k;\n bin.push(data[i]);\n }\n }\n }\n return bins;\n }\n histogram.value = function(x) {\n if (!arguments.length) return valuer;\n valuer = x;\n return histogram;\n };\n histogram.range = function(x) {\n if (!arguments.length) return ranger;\n ranger = d3_functor(x);\n return histogram;\n };\n histogram.bins = function(x) {\n if (!arguments.length) return binner;\n binner = typeof x === \"number\" ? function(range) {\n return d3_layout_histogramBinFixed(range, x);\n } : d3_functor(x);\n return histogram;\n };\n histogram.frequency = function(x) {\n if (!arguments.length) return frequency;\n frequency = !!x;\n return histogram;\n };\n return histogram;\n };\n function d3_layout_histogramBinSturges(range, values) {\n return d3_layout_histogramBinFixed(range, Math.ceil(Math.log(values.length) / Math.LN2 + 1));\n }\n function d3_layout_histogramBinFixed(range, n) {\n var x = -1, b = +range[0], m = (range[1] - b) / n, f = [];\n while (++x <= n) f[x] = m * x + b;\n return f;\n }\n function d3_layout_histogramRange(values) {\n return [ d3.min(values), d3.max(values) ];\n }\n d3.layout.pack = function() {\n var hierarchy = d3.layout.hierarchy().sort(d3_layout_packSort), padding = 0, size = [ 1, 1 ], radius;\n function pack(d, i) {\n var nodes = hierarchy.call(this, d, i), root = nodes[0], w = size[0], h = size[1], r = radius == null ? Math.sqrt : typeof radius === \"function\" ? radius : function() {\n return radius;\n };\n root.x = root.y = 0;\n d3_layout_hierarchyVisitAfter(root, function(d) {\n d.r = +r(d.value);\n });\n d3_layout_hierarchyVisitAfter(root, d3_layout_packSiblings);\n if (padding) {\n var dr = padding * (radius ? 1 : Math.max(2 * root.r / w, 2 * root.r / h)) / 2;\n d3_layout_hierarchyVisitAfter(root, function(d) {\n d.r += dr;\n });\n d3_layout_hierarchyVisitAfter(root, d3_layout_packSiblings);\n d3_layout_hierarchyVisitAfter(root, function(d) {\n d.r -= dr;\n });\n }\n d3_layout_packTransform(root, w / 2, h / 2, radius ? 1 : 1 / Math.max(2 * root.r / w, 2 * root.r / h));\n return nodes;\n }\n pack.size = function(_) {\n if (!arguments.length) return size;\n size = _;\n return pack;\n };\n pack.radius = function(_) {\n if (!arguments.length) return radius;\n radius = _ == null || typeof _ === \"function\" ? _ : +_;\n return pack;\n };\n pack.padding = function(_) {\n if (!arguments.length) return padding;\n padding = +_;\n return pack;\n };\n return d3_layout_hierarchyRebind(pack, hierarchy);\n };\n function d3_layout_packSort(a, b) {\n return a.value - b.value;\n }\n function d3_layout_packInsert(a, b) {\n var c = a._pack_next;\n a._pack_next = b;\n b._pack_prev = a;\n b._pack_next = c;\n c._pack_prev = b;\n }\n function d3_layout_packSplice(a, b) {\n a._pack_next = b;\n b._pack_prev = a;\n }\n function d3_layout_packIntersects(a, b) {\n var dx = b.x - a.x, dy = b.y - a.y, dr = a.r + b.r;\n return .999 * dr * dr > dx * dx + dy * dy;\n }\n function d3_layout_packSiblings(node) {\n if (!(nodes = node.children) || !(n = nodes.length)) return;\n var nodes, xMin = Infinity, xMax = -Infinity, yMin = Infinity, yMax = -Infinity, a, b, c, i, j, k, n;\n function bound(node) {\n xMin = Math.min(node.x - node.r, xMin);\n xMax = Math.max(node.x + node.r, xMax);\n yMin = Math.min(node.y - node.r, yMin);\n yMax = Math.max(node.y + node.r, yMax);\n }\n nodes.forEach(d3_layout_packLink);\n a = nodes[0];\n a.x = -a.r;\n a.y = 0;\n bound(a);\n if (n > 1) {\n b = nodes[1];\n b.x = b.r;\n b.y = 0;\n bound(b);\n if (n > 2) {\n c = nodes[2];\n d3_layout_packPlace(a, b, c);\n bound(c);\n d3_layout_packInsert(a, c);\n a._pack_prev = c;\n d3_layout_packInsert(c, b);\n b = a._pack_next;\n for (i = 3; i < n; i++) {\n d3_layout_packPlace(a, b, c = nodes[i]);\n var isect = 0, s1 = 1, s2 = 1;\n for (j = b._pack_next; j !== b; j = j._pack_next, s1++) {\n if (d3_layout_packIntersects(j, c)) {\n isect = 1;\n break;\n }\n }\n if (isect == 1) {\n for (k = a._pack_prev; k !== j._pack_prev; k = k._pack_prev, s2++) {\n if (d3_layout_packIntersects(k, c)) {\n break;\n }\n }\n }\n if (isect) {\n if (s1 < s2 || s1 == s2 && b.r < a.r) d3_layout_packSplice(a, b = j); else d3_layout_packSplice(a = k, b);\n i--;\n } else {\n d3_layout_packInsert(a, c);\n b = c;\n bound(c);\n }\n }\n }\n }\n var cx = (xMin + xMax) / 2, cy = (yMin + yMax) / 2, cr = 0;\n for (i = 0; i < n; i++) {\n c = nodes[i];\n c.x -= cx;\n c.y -= cy;\n cr = Math.max(cr, c.r + Math.sqrt(c.x * c.x + c.y * c.y));\n }\n node.r = cr;\n nodes.forEach(d3_layout_packUnlink);\n }\n function d3_layout_packLink(node) {\n node._pack_next = node._pack_prev = node;\n }\n function d3_layout_packUnlink(node) {\n delete node._pack_next;\n delete node._pack_prev;\n }\n function d3_layout_packTransform(node, x, y, k) {\n var children = node.children;\n node.x = x += k * node.x;\n node.y = y += k * node.y;\n node.r *= k;\n if (children) {\n var i = -1, n = children.length;\n while (++i < n) d3_layout_packTransform(children[i], x, y, k);\n }\n }\n function d3_layout_packPlace(a, b, c) {\n var db = a.r + c.r, dx = b.x - a.x, dy = b.y - a.y;\n if (db && (dx || dy)) {\n var da = b.r + c.r, dc = dx * dx + dy * dy;\n da *= da;\n db *= db;\n var x = .5 + (db - da) / (2 * dc), y = Math.sqrt(Math.max(0, 2 * da * (db + dc) - (db -= dc) * db - da * da)) / (2 * dc);\n c.x = a.x + x * dx + y * dy;\n c.y = a.y + x * dy - y * dx;\n } else {\n c.x = a.x + db;\n c.y = a.y;\n }\n }\n d3.layout.tree = function() {\n var hierarchy = d3.layout.hierarchy().sort(null).value(null), separation = d3_layout_treeSeparation, size = [ 1, 1 ], nodeSize = null;\n function tree(d, i) {\n var nodes = hierarchy.call(this, d, i), root0 = nodes[0], root1 = wrapTree(root0);\n d3_layout_hierarchyVisitAfter(root1, firstWalk), root1.parent.m = -root1.z;\n d3_layout_hierarchyVisitBefore(root1, secondWalk);\n if (nodeSize) d3_layout_hierarchyVisitBefore(root0, sizeNode); else {\n var left = root0, right = root0, bottom = root0;\n d3_layout_hierarchyVisitBefore(root0, function(node) {\n if (node.x < left.x) left = node;\n if (node.x > right.x) right = node;\n if (node.depth > bottom.depth) bottom = node;\n });\n var tx = separation(left, right) / 2 - left.x, kx = size[0] / (right.x + separation(right, left) / 2 + tx), ky = size[1] / (bottom.depth || 1);\n d3_layout_hierarchyVisitBefore(root0, function(node) {\n node.x = (node.x + tx) * kx;\n node.y = node.depth * ky;\n });\n }\n return nodes;\n }\n function wrapTree(root0) {\n var root1 = {\n A: null,\n children: [ root0 ]\n }, queue = [ root1 ], node1;\n while ((node1 = queue.pop()) != null) {\n for (var children = node1.children, child, i = 0, n = children.length; i < n; ++i) {\n queue.push((children[i] = child = {\n _: children[i],\n parent: node1,\n children: (child = children[i].children) && child.slice() || [],\n A: null,\n a: null,\n z: 0,\n m: 0,\n c: 0,\n s: 0,\n t: null,\n i: i\n }).a = child);\n }\n }\n return root1.children[0];\n }\n function firstWalk(v) {\n var children = v.children, siblings = v.parent.children, w = v.i ? siblings[v.i - 1] : null;\n if (children.length) {\n d3_layout_treeShift(v);\n var midpoint = (children[0].z + children[children.length - 1].z) / 2;\n if (w) {\n v.z = w.z + separation(v._, w._);\n v.m = v.z - midpoint;\n } else {\n v.z = midpoint;\n }\n } else if (w) {\n v.z = w.z + separation(v._, w._);\n }\n v.parent.A = apportion(v, w, v.parent.A || siblings[0]);\n }\n function secondWalk(v) {\n v._.x = v.z + v.parent.m;\n v.m += v.parent.m;\n }\n function apportion(v, w, ancestor) {\n if (w) {\n var vip = v, vop = v, vim = w, vom = vip.parent.children[0], sip = vip.m, sop = vop.m, sim = vim.m, som = vom.m, shift;\n while (vim = d3_layout_treeRight(vim), vip = d3_layout_treeLeft(vip), vim && vip) {\n vom = d3_layout_treeLeft(vom);\n vop = d3_layout_treeRight(vop);\n vop.a = v;\n shift = vim.z + sim - vip.z - sip + separation(vim._, vip._);\n if (shift > 0) {\n d3_layout_treeMove(d3_layout_treeAncestor(vim, v, ancestor), v, shift);\n sip += shift;\n sop += shift;\n }\n sim += vim.m;\n sip += vip.m;\n som += vom.m;\n sop += vop.m;\n }\n if (vim && !d3_layout_treeRight(vop)) {\n vop.t = vim;\n vop.m += sim - sop;\n }\n if (vip && !d3_layout_treeLeft(vom)) {\n vom.t = vip;\n vom.m += sip - som;\n ancestor = v;\n }\n }\n return ancestor;\n }\n function sizeNode(node) {\n node.x *= size[0];\n node.y = node.depth * size[1];\n }\n tree.separation = function(x) {\n if (!arguments.length) return separation;\n separation = x;\n return tree;\n };\n tree.size = function(x) {\n if (!arguments.length) return nodeSize ? null : size;\n nodeSize = (size = x) == null ? sizeNode : null;\n return tree;\n };\n tree.nodeSize = function(x) {\n if (!arguments.length) return nodeSize ? size : null;\n nodeSize = (size = x) == null ? null : sizeNode;\n return tree;\n };\n return d3_layout_hierarchyRebind(tree, hierarchy);\n };\n function d3_layout_treeSeparation(a, b) {\n return a.parent == b.parent ? 1 : 2;\n }\n function d3_layout_treeLeft(v) {\n var children = v.children;\n return children.length ? children[0] : v.t;\n }\n function d3_layout_treeRight(v) {\n var children = v.children, n;\n return (n = children.length) ? children[n - 1] : v.t;\n }\n function d3_layout_treeMove(wm, wp, shift) {\n var change = shift / (wp.i - wm.i);\n wp.c -= change;\n wp.s += shift;\n wm.c += change;\n wp.z += shift;\n wp.m += shift;\n }\n function d3_layout_treeShift(v) {\n var shift = 0, change = 0, children = v.children, i = children.length, w;\n while (--i >= 0) {\n w = children[i];\n w.z += shift;\n w.m += shift;\n shift += w.s + (change += w.c);\n }\n }\n function d3_layout_treeAncestor(vim, v, ancestor) {\n return vim.a.parent === v.parent ? vim.a : ancestor;\n }\n d3.layout.cluster = function() {\n var hierarchy = d3.layout.hierarchy().sort(null).value(null), separation = d3_layout_treeSeparation, size = [ 1, 1 ], nodeSize = false;\n function cluster(d, i) {\n var nodes = hierarchy.call(this, d, i), root = nodes[0], previousNode, x = 0;\n d3_layout_hierarchyVisitAfter(root, function(node) {\n var children = node.children;\n if (children && children.length) {\n node.x = d3_layout_clusterX(children);\n node.y = d3_layout_clusterY(children);\n } else {\n node.x = previousNode ? x += separation(node, previousNode) : 0;\n node.y = 0;\n previousNode = node;\n }\n });\n var left = d3_layout_clusterLeft(root), right = d3_layout_clusterRight(root), x0 = left.x - separation(left, right) / 2, x1 = right.x + separation(right, left) / 2;\n d3_layout_hierarchyVisitAfter(root, nodeSize ? function(node) {\n node.x = (node.x - root.x) * size[0];\n node.y = (root.y - node.y) * size[1];\n } : function(node) {\n node.x = (node.x - x0) / (x1 - x0) * size[0];\n node.y = (1 - (root.y ? node.y / root.y : 1)) * size[1];\n });\n return nodes;\n }\n cluster.separation = function(x) {\n if (!arguments.length) return separation;\n separation = x;\n return cluster;\n };\n cluster.size = function(x) {\n if (!arguments.length) return nodeSize ? null : size;\n nodeSize = (size = x) == null;\n return cluster;\n };\n cluster.nodeSize = function(x) {\n if (!arguments.length) return nodeSize ? size : null;\n nodeSize = (size = x) != null;\n return cluster;\n };\n return d3_layout_hierarchyRebind(cluster, hierarchy);\n };\n function d3_layout_clusterY(children) {\n return 1 + d3.max(children, function(child) {\n return child.y;\n });\n }\n function d3_layout_clusterX(children) {\n return children.reduce(function(x, child) {\n return x + child.x;\n }, 0) / children.length;\n }\n function d3_layout_clusterLeft(node) {\n var children = node.children;\n return children && children.length ? d3_layout_clusterLeft(children[0]) : node;\n }\n function d3_layout_clusterRight(node) {\n var children = node.children, n;\n return children && (n = children.length) ? d3_layout_clusterRight(children[n - 1]) : node;\n }\n d3.layout.treemap = function() {\n var hierarchy = d3.layout.hierarchy(), round = Math.round, size = [ 1, 1 ], padding = null, pad = d3_layout_treemapPadNull, sticky = false, stickies, mode = \"squarify\", ratio = .5 * (1 + Math.sqrt(5));\n function scale(children, k) {\n var i = -1, n = children.length, child, area;\n while (++i < n) {\n area = (child = children[i]).value * (k < 0 ? 0 : k);\n child.area = isNaN(area) || area <= 0 ? 0 : area;\n }\n }\n function squarify(node) {\n var children = node.children;\n if (children && children.length) {\n var rect = pad(node), row = [], remaining = children.slice(), child, best = Infinity, score, u = mode === \"slice\" ? rect.dx : mode === \"dice\" ? rect.dy : mode === \"slice-dice\" ? node.depth & 1 ? rect.dy : rect.dx : Math.min(rect.dx, rect.dy), n;\n scale(remaining, rect.dx * rect.dy / node.value);\n row.area = 0;\n while ((n = remaining.length) > 0) {\n row.push(child = remaining[n - 1]);\n row.area += child.area;\n if (mode !== \"squarify\" || (score = worst(row, u)) <= best) {\n remaining.pop();\n best = score;\n } else {\n row.area -= row.pop().area;\n position(row, u, rect, false);\n u = Math.min(rect.dx, rect.dy);\n row.length = row.area = 0;\n best = Infinity;\n }\n }\n if (row.length) {\n position(row, u, rect, true);\n row.length = row.area = 0;\n }\n children.forEach(squarify);\n }\n }\n function stickify(node) {\n var children = node.children;\n if (children && children.length) {\n var rect = pad(node), remaining = children.slice(), child, row = [];\n scale(remaining, rect.dx * rect.dy / node.value);\n row.area = 0;\n while (child = remaining.pop()) {\n row.push(child);\n row.area += child.area;\n if (child.z != null) {\n position(row, child.z ? rect.dx : rect.dy, rect, !remaining.length);\n row.length = row.area = 0;\n }\n }\n children.forEach(stickify);\n }\n }\n function worst(row, u) {\n var s = row.area, r, rmax = 0, rmin = Infinity, i = -1, n = row.length;\n while (++i < n) {\n if (!(r = row[i].area)) continue;\n if (r < rmin) rmin = r;\n if (r > rmax) rmax = r;\n }\n s *= s;\n u *= u;\n return s ? Math.max(u * rmax * ratio / s, s / (u * rmin * ratio)) : Infinity;\n }\n function position(row, u, rect, flush) {\n var i = -1, n = row.length, x = rect.x, y = rect.y, v = u ? round(row.area / u) : 0, o;\n if (u == rect.dx) {\n if (flush || v > rect.dy) v = rect.dy;\n while (++i < n) {\n o = row[i];\n o.x = x;\n o.y = y;\n o.dy = v;\n x += o.dx = Math.min(rect.x + rect.dx - x, v ? round(o.area / v) : 0);\n }\n o.z = true;\n o.dx += rect.x + rect.dx - x;\n rect.y += v;\n rect.dy -= v;\n } else {\n if (flush || v > rect.dx) v = rect.dx;\n while (++i < n) {\n o = row[i];\n o.x = x;\n o.y = y;\n o.dx = v;\n y += o.dy = Math.min(rect.y + rect.dy - y, v ? round(o.area / v) : 0);\n }\n o.z = false;\n o.dy += rect.y + rect.dy - y;\n rect.x += v;\n rect.dx -= v;\n }\n }\n function treemap(d) {\n var nodes = stickies || hierarchy(d), root = nodes[0];\n root.x = root.y = 0;\n if (root.value) root.dx = size[0], root.dy = size[1]; else root.dx = root.dy = 0;\n if (stickies) hierarchy.revalue(root);\n scale([ root ], root.dx * root.dy / root.value);\n (stickies ? stickify : squarify)(root);\n if (sticky) stickies = nodes;\n return nodes;\n }\n treemap.size = function(x) {\n if (!arguments.length) return size;\n size = x;\n return treemap;\n };\n treemap.padding = function(x) {\n if (!arguments.length) return padding;\n function padFunction(node) {\n var p = x.call(treemap, node, node.depth);\n return p == null ? d3_layout_treemapPadNull(node) : d3_layout_treemapPad(node, typeof p === \"number\" ? [ p, p, p, p ] : p);\n }\n function padConstant(node) {\n return d3_layout_treemapPad(node, x);\n }\n var type;\n pad = (padding = x) == null ? d3_layout_treemapPadNull : (type = typeof x) === \"function\" ? padFunction : type === \"number\" ? (x = [ x, x, x, x ], \n padConstant) : padConstant;\n return treemap;\n };\n treemap.round = function(x) {\n if (!arguments.length) return round != Number;\n round = x ? Math.round : Number;\n return treemap;\n };\n treemap.sticky = function(x) {\n if (!arguments.length) return sticky;\n sticky = x;\n stickies = null;\n return treemap;\n };\n treemap.ratio = function(x) {\n if (!arguments.length) return ratio;\n ratio = x;\n return treemap;\n };\n treemap.mode = function(x) {\n if (!arguments.length) return mode;\n mode = x + \"\";\n return treemap;\n };\n return d3_layout_hierarchyRebind(treemap, hierarchy);\n };\n function d3_layout_treemapPadNull(node) {\n return {\n x: node.x,\n y: node.y,\n dx: node.dx,\n dy: node.dy\n };\n }\n function d3_layout_treemapPad(node, padding) {\n var x = node.x + padding[3], y = node.y + padding[0], dx = node.dx - padding[1] - padding[3], dy = node.dy - padding[0] - padding[2];\n if (dx < 0) {\n x += dx / 2;\n dx = 0;\n }\n if (dy < 0) {\n y += dy / 2;\n dy = 0;\n }\n return {\n x: x,\n y: y,\n dx: dx,\n dy: dy\n };\n }\n d3.random = {\n normal: function(µ, σ) {\n var n = arguments.length;\n if (n < 2) σ = 1;\n if (n < 1) µ = 0;\n return function() {\n var x, y, r;\n do {\n x = Math.random() * 2 - 1;\n y = Math.random() * 2 - 1;\n r = x * x + y * y;\n } while (!r || r > 1);\n return µ + σ * x * Math.sqrt(-2 * Math.log(r) / r);\n };\n },\n logNormal: function() {\n var random = d3.random.normal.apply(d3, arguments);\n return function() {\n return Math.exp(random());\n };\n },\n bates: function(m) {\n var random = d3.random.irwinHall(m);\n return function() {\n return random() / m;\n };\n },\n irwinHall: function(m) {\n return function() {\n for (var s = 0, j = 0; j < m; j++) s += Math.random();\n return s;\n };\n }\n };\n d3.scale = {};\n function d3_scaleExtent(domain) {\n var start = domain[0], stop = domain[domain.length - 1];\n return start < stop ? [ start, stop ] : [ stop, start ];\n }\n function d3_scaleRange(scale) {\n return scale.rangeExtent ? scale.rangeExtent() : d3_scaleExtent(scale.range());\n }\n function d3_scale_bilinear(domain, range, uninterpolate, interpolate) {\n var u = uninterpolate(domain[0], domain[1]), i = interpolate(range[0], range[1]);\n return function(x) {\n return i(u(x));\n };\n }\n function d3_scale_nice(domain, nice) {\n var i0 = 0, i1 = domain.length - 1, x0 = domain[i0], x1 = domain[i1], dx;\n if (x1 < x0) {\n dx = i0, i0 = i1, i1 = dx;\n dx = x0, x0 = x1, x1 = dx;\n }\n domain[i0] = nice.floor(x0);\n domain[i1] = nice.ceil(x1);\n return domain;\n }\n function d3_scale_niceStep(step) {\n return step ? {\n floor: function(x) {\n return Math.floor(x / step) * step;\n },\n ceil: function(x) {\n return Math.ceil(x / step) * step;\n }\n } : d3_scale_niceIdentity;\n }\n var d3_scale_niceIdentity = {\n floor: d3_identity,\n ceil: d3_identity\n };\n function d3_scale_polylinear(domain, range, uninterpolate, interpolate) {\n var u = [], i = [], j = 0, k = Math.min(domain.length, range.length) - 1;\n if (domain[k] < domain[0]) {\n domain = domain.slice().reverse();\n range = range.slice().reverse();\n }\n while (++j <= k) {\n u.push(uninterpolate(domain[j - 1], domain[j]));\n i.push(interpolate(range[j - 1], range[j]));\n }\n return function(x) {\n var j = d3.bisect(domain, x, 1, k) - 1;\n return i[j](u[j](x));\n };\n }\n d3.scale.linear = function() {\n return d3_scale_linear([ 0, 1 ], [ 0, 1 ], d3_interpolate, false);\n };\n function d3_scale_linear(domain, range, interpolate, clamp) {\n var output, input;\n function rescale() {\n var linear = Math.min(domain.length, range.length) > 2 ? d3_scale_polylinear : d3_scale_bilinear, uninterpolate = clamp ? d3_uninterpolateClamp : d3_uninterpolateNumber;\n output = linear(domain, range, uninterpolate, interpolate);\n input = linear(range, domain, uninterpolate, d3_interpolate);\n return scale;\n }\n function scale(x) {\n return output(x);\n }\n scale.invert = function(y) {\n return input(y);\n };\n scale.domain = function(x) {\n if (!arguments.length) return domain;\n domain = x.map(Number);\n return rescale();\n };\n scale.range = function(x) {\n if (!arguments.length) return range;\n range = x;\n return rescale();\n };\n scale.rangeRound = function(x) {\n return scale.range(x).interpolate(d3_interpolateRound);\n };\n scale.clamp = function(x) {\n if (!arguments.length) return clamp;\n clamp = x;\n return rescale();\n };\n scale.interpolate = function(x) {\n if (!arguments.length) return interpolate;\n interpolate = x;\n return rescale();\n };\n scale.ticks = function(m) {\n return d3_scale_linearTicks(domain, m);\n };\n scale.tickFormat = function(m, format) {\n return d3_scale_linearTickFormat(domain, m, format);\n };\n scale.nice = function(m) {\n d3_scale_linearNice(domain, m);\n return rescale();\n };\n scale.copy = function() {\n return d3_scale_linear(domain, range, interpolate, clamp);\n };\n return rescale();\n }\n function d3_scale_linearRebind(scale, linear) {\n return d3.rebind(scale, linear, \"range\", \"rangeRound\", \"interpolate\", \"clamp\");\n }\n function d3_scale_linearNice(domain, m) {\n d3_scale_nice(domain, d3_scale_niceStep(d3_scale_linearTickRange(domain, m)[2]));\n d3_scale_nice(domain, d3_scale_niceStep(d3_scale_linearTickRange(domain, m)[2]));\n return domain;\n }\n function d3_scale_linearTickRange(domain, m) {\n if (m == null) m = 10;\n var extent = d3_scaleExtent(domain), span = extent[1] - extent[0], step = Math.pow(10, Math.floor(Math.log(span / m) / Math.LN10)), err = m / span * step;\n if (err <= .15) step *= 10; else if (err <= .35) step *= 5; else if (err <= .75) step *= 2;\n extent[0] = Math.ceil(extent[0] / step) * step;\n extent[1] = Math.floor(extent[1] / step) * step + step * .5;\n extent[2] = step;\n return extent;\n }\n function d3_scale_linearTicks(domain, m) {\n return d3.range.apply(d3, d3_scale_linearTickRange(domain, m));\n }\n function d3_scale_linearTickFormat(domain, m, format) {\n var range = d3_scale_linearTickRange(domain, m);\n if (format) {\n var match = d3_format_re.exec(format);\n match.shift();\n if (match[8] === \"s\") {\n var prefix = d3.formatPrefix(Math.max(abs(range[0]), abs(range[1])));\n if (!match[7]) match[7] = \".\" + d3_scale_linearPrecision(prefix.scale(range[2]));\n match[8] = \"f\";\n format = d3.format(match.join(\"\"));\n return function(d) {\n return format(prefix.scale(d)) + prefix.symbol;\n };\n }\n if (!match[7]) match[7] = \".\" + d3_scale_linearFormatPrecision(match[8], range);\n format = match.join(\"\");\n } else {\n format = \",.\" + d3_scale_linearPrecision(range[2]) + \"f\";\n }\n return d3.format(format);\n }\n var d3_scale_linearFormatSignificant = {\n s: 1,\n g: 1,\n p: 1,\n r: 1,\n e: 1\n };\n function d3_scale_linearPrecision(value) {\n return -Math.floor(Math.log(value) / Math.LN10 + .01);\n }\n function d3_scale_linearFormatPrecision(type, range) {\n var p = d3_scale_linearPrecision(range[2]);\n return type in d3_scale_linearFormatSignificant ? Math.abs(p - d3_scale_linearPrecision(Math.max(abs(range[0]), abs(range[1])))) + +(type !== \"e\") : p - (type === \"%\") * 2;\n }\n d3.scale.log = function() {\n return d3_scale_log(d3.scale.linear().domain([ 0, 1 ]), 10, true, [ 1, 10 ]);\n };\n function d3_scale_log(linear, base, positive, domain) {\n function log(x) {\n return (positive ? Math.log(x < 0 ? 0 : x) : -Math.log(x > 0 ? 0 : -x)) / Math.log(base);\n }\n function pow(x) {\n return positive ? Math.pow(base, x) : -Math.pow(base, -x);\n }\n function scale(x) {\n return linear(log(x));\n }\n scale.invert = function(x) {\n return pow(linear.invert(x));\n };\n scale.domain = function(x) {\n if (!arguments.length) return domain;\n positive = x[0] >= 0;\n linear.domain((domain = x.map(Number)).map(log));\n return scale;\n };\n scale.base = function(_) {\n if (!arguments.length) return base;\n base = +_;\n linear.domain(domain.map(log));\n return scale;\n };\n scale.nice = function() {\n var niced = d3_scale_nice(domain.map(log), positive ? Math : d3_scale_logNiceNegative);\n linear.domain(niced);\n domain = niced.map(pow);\n return scale;\n };\n scale.ticks = function() {\n var extent = d3_scaleExtent(domain), ticks = [], u = extent[0], v = extent[1], i = Math.floor(log(u)), j = Math.ceil(log(v)), n = base % 1 ? 2 : base;\n if (isFinite(j - i)) {\n if (positive) {\n for (;i < j; i++) for (var k = 1; k < n; k++) ticks.push(pow(i) * k);\n ticks.push(pow(i));\n } else {\n ticks.push(pow(i));\n for (;i++ < j; ) for (var k = n - 1; k > 0; k--) ticks.push(pow(i) * k);\n }\n for (i = 0; ticks[i] < u; i++) {}\n for (j = ticks.length; ticks[j - 1] > v; j--) {}\n ticks = ticks.slice(i, j);\n }\n return ticks;\n };\n scale.tickFormat = function(n, format) {\n if (!arguments.length) return d3_scale_logFormat;\n if (arguments.length < 2) format = d3_scale_logFormat; else if (typeof format !== \"function\") format = d3.format(format);\n var k = Math.max(1, base * n / scale.ticks().length);\n return function(d) {\n var i = d / pow(Math.round(log(d)));\n if (i * base < base - .5) i *= base;\n return i <= k ? format(d) : \"\";\n };\n };\n scale.copy = function() {\n return d3_scale_log(linear.copy(), base, positive, domain);\n };\n return d3_scale_linearRebind(scale, linear);\n }\n var d3_scale_logFormat = d3.format(\".0e\"), d3_scale_logNiceNegative = {\n floor: function(x) {\n return -Math.ceil(-x);\n },\n ceil: function(x) {\n return -Math.floor(-x);\n }\n };\n d3.scale.pow = function() {\n return d3_scale_pow(d3.scale.linear(), 1, [ 0, 1 ]);\n };\n function d3_scale_pow(linear, exponent, domain) {\n var powp = d3_scale_powPow(exponent), powb = d3_scale_powPow(1 / exponent);\n function scale(x) {\n return linear(powp(x));\n }\n scale.invert = function(x) {\n return powb(linear.invert(x));\n };\n scale.domain = function(x) {\n if (!arguments.length) return domain;\n linear.domain((domain = x.map(Number)).map(powp));\n return scale;\n };\n scale.ticks = function(m) {\n return d3_scale_linearTicks(domain, m);\n };\n scale.tickFormat = function(m, format) {\n return d3_scale_linearTickFormat(domain, m, format);\n };\n scale.nice = function(m) {\n return scale.domain(d3_scale_linearNice(domain, m));\n };\n scale.exponent = function(x) {\n if (!arguments.length) return exponent;\n powp = d3_scale_powPow(exponent = x);\n powb = d3_scale_powPow(1 / exponent);\n linear.domain(domain.map(powp));\n return scale;\n };\n scale.copy = function() {\n return d3_scale_pow(linear.copy(), exponent, domain);\n };\n return d3_scale_linearRebind(scale, linear);\n }\n function d3_scale_powPow(e) {\n return function(x) {\n return x < 0 ? -Math.pow(-x, e) : Math.pow(x, e);\n };\n }\n d3.scale.sqrt = function() {\n return d3.scale.pow().exponent(.5);\n };\n d3.scale.ordinal = function() {\n return d3_scale_ordinal([], {\n t: \"range\",\n a: [ [] ]\n });\n };\n function d3_scale_ordinal(domain, ranger) {\n var index, range, rangeBand;\n function scale(x) {\n return range[((index.get(x) || (ranger.t === \"range\" ? index.set(x, domain.push(x)) : NaN)) - 1) % range.length];\n }\n function steps(start, step) {\n return d3.range(domain.length).map(function(i) {\n return start + step * i;\n });\n }\n scale.domain = function(x) {\n if (!arguments.length) return domain;\n domain = [];\n index = new d3_Map();\n var i = -1, n = x.length, xi;\n while (++i < n) if (!index.has(xi = x[i])) index.set(xi, domain.push(xi));\n return scale[ranger.t].apply(scale, ranger.a);\n };\n scale.range = function(x) {\n if (!arguments.length) return range;\n range = x;\n rangeBand = 0;\n ranger = {\n t: \"range\",\n a: arguments\n };\n return scale;\n };\n scale.rangePoints = function(x, padding) {\n if (arguments.length < 2) padding = 0;\n var start = x[0], stop = x[1], step = domain.length < 2 ? (start = (start + stop) / 2, \n 0) : (stop - start) / (domain.length - 1 + padding);\n range = steps(start + step * padding / 2, step);\n rangeBand = 0;\n ranger = {\n t: \"rangePoints\",\n a: arguments\n };\n return scale;\n };\n scale.rangeRoundPoints = function(x, padding) {\n if (arguments.length < 2) padding = 0;\n var start = x[0], stop = x[1], step = domain.length < 2 ? (start = stop = Math.round((start + stop) / 2), \n 0) : (stop - start) / (domain.length - 1 + padding) | 0;\n range = steps(start + Math.round(step * padding / 2 + (stop - start - (domain.length - 1 + padding) * step) / 2), step);\n rangeBand = 0;\n ranger = {\n t: \"rangeRoundPoints\",\n a: arguments\n };\n return scale;\n };\n scale.rangeBands = function(x, padding, outerPadding) {\n if (arguments.length < 2) padding = 0;\n if (arguments.length < 3) outerPadding = padding;\n var reverse = x[1] < x[0], start = x[reverse - 0], stop = x[1 - reverse], step = (stop - start) / (domain.length - padding + 2 * outerPadding);\n range = steps(start + step * outerPadding, step);\n if (reverse) range.reverse();\n rangeBand = step * (1 - padding);\n ranger = {\n t: \"rangeBands\",\n a: arguments\n };\n return scale;\n };\n scale.rangeRoundBands = function(x, padding, outerPadding) {\n if (arguments.length < 2) padding = 0;\n if (arguments.length < 3) outerPadding = padding;\n var reverse = x[1] < x[0], start = x[reverse - 0], stop = x[1 - reverse], step = Math.floor((stop - start) / (domain.length - padding + 2 * outerPadding));\n range = steps(start + Math.round((stop - start - (domain.length - padding) * step) / 2), step);\n if (reverse) range.reverse();\n rangeBand = Math.round(step * (1 - padding));\n ranger = {\n t: \"rangeRoundBands\",\n a: arguments\n };\n return scale;\n };\n scale.rangeBand = function() {\n return rangeBand;\n };\n scale.rangeExtent = function() {\n return d3_scaleExtent(ranger.a[0]);\n };\n scale.copy = function() {\n return d3_scale_ordinal(domain, ranger);\n };\n return scale.domain(domain);\n }\n d3.scale.category10 = function() {\n return d3.scale.ordinal().range(d3_category10);\n };\n d3.scale.category20 = function() {\n return d3.scale.ordinal().range(d3_category20);\n };\n d3.scale.category20b = function() {\n return d3.scale.ordinal().range(d3_category20b);\n };\n d3.scale.category20c = function() {\n return d3.scale.ordinal().range(d3_category20c);\n };\n var d3_category10 = [ 2062260, 16744206, 2924588, 14034728, 9725885, 9197131, 14907330, 8355711, 12369186, 1556175 ].map(d3_rgbString);\n var d3_category20 = [ 2062260, 11454440, 16744206, 16759672, 2924588, 10018698, 14034728, 16750742, 9725885, 12955861, 9197131, 12885140, 14907330, 16234194, 8355711, 13092807, 12369186, 14408589, 1556175, 10410725 ].map(d3_rgbString);\n var d3_category20b = [ 3750777, 5395619, 7040719, 10264286, 6519097, 9216594, 11915115, 13556636, 9202993, 12426809, 15186514, 15190932, 8666169, 11356490, 14049643, 15177372, 8077683, 10834324, 13528509, 14589654 ].map(d3_rgbString);\n var d3_category20c = [ 3244733, 7057110, 10406625, 13032431, 15095053, 16616764, 16625259, 16634018, 3253076, 7652470, 10607003, 13101504, 7695281, 10394312, 12369372, 14342891, 6513507, 9868950, 12434877, 14277081 ].map(d3_rgbString);\n d3.scale.quantile = function() {\n return d3_scale_quantile([], []);\n };\n function d3_scale_quantile(domain, range) {\n var thresholds;\n function rescale() {\n var k = 0, q = range.length;\n thresholds = [];\n while (++k < q) thresholds[k - 1] = d3.quantile(domain, k / q);\n return scale;\n }\n function scale(x) {\n if (!isNaN(x = +x)) return range[d3.bisect(thresholds, x)];\n }\n scale.domain = function(x) {\n if (!arguments.length) return domain;\n domain = x.map(d3_number).filter(d3_numeric).sort(d3_ascending);\n return rescale();\n };\n scale.range = function(x) {\n if (!arguments.length) return range;\n range = x;\n return rescale();\n };\n scale.quantiles = function() {\n return thresholds;\n };\n scale.invertExtent = function(y) {\n y = range.indexOf(y);\n return y < 0 ? [ NaN, NaN ] : [ y > 0 ? thresholds[y - 1] : domain[0], y < thresholds.length ? thresholds[y] : domain[domain.length - 1] ];\n };\n scale.copy = function() {\n return d3_scale_quantile(domain, range);\n };\n return rescale();\n }\n d3.scale.quantize = function() {\n return d3_scale_quantize(0, 1, [ 0, 1 ]);\n };\n function d3_scale_quantize(x0, x1, range) {\n var kx, i;\n function scale(x) {\n return range[Math.max(0, Math.min(i, Math.floor(kx * (x - x0))))];\n }\n function rescale() {\n kx = range.length / (x1 - x0);\n i = range.length - 1;\n return scale;\n }\n scale.domain = function(x) {\n if (!arguments.length) return [ x0, x1 ];\n x0 = +x[0];\n x1 = +x[x.length - 1];\n return rescale();\n };\n scale.range = function(x) {\n if (!arguments.length) return range;\n range = x;\n return rescale();\n };\n scale.invertExtent = function(y) {\n y = range.indexOf(y);\n y = y < 0 ? NaN : y / kx + x0;\n return [ y, y + 1 / kx ];\n };\n scale.copy = function() {\n return d3_scale_quantize(x0, x1, range);\n };\n return rescale();\n }\n d3.scale.threshold = function() {\n return d3_scale_threshold([ .5 ], [ 0, 1 ]);\n };\n function d3_scale_threshold(domain, range) {\n function scale(x) {\n if (x <= x) return range[d3.bisect(domain, x)];\n }\n scale.domain = function(_) {\n if (!arguments.length) return domain;\n domain = _;\n return scale;\n };\n scale.range = function(_) {\n if (!arguments.length) return range;\n range = _;\n return scale;\n };\n scale.invertExtent = function(y) {\n y = range.indexOf(y);\n return [ domain[y - 1], domain[y] ];\n };\n scale.copy = function() {\n return d3_scale_threshold(domain, range);\n };\n return scale;\n }\n d3.scale.identity = function() {\n return d3_scale_identity([ 0, 1 ]);\n };\n function d3_scale_identity(domain) {\n function identity(x) {\n return +x;\n }\n identity.invert = identity;\n identity.domain = identity.range = function(x) {\n if (!arguments.length) return domain;\n domain = x.map(identity);\n return identity;\n };\n identity.ticks = function(m) {\n return d3_scale_linearTicks(domain, m);\n };\n identity.tickFormat = function(m, format) {\n return d3_scale_linearTickFormat(domain, m, format);\n };\n identity.copy = function() {\n return d3_scale_identity(domain);\n };\n return identity;\n }\n d3.svg = {};\n function d3_zero() {\n return 0;\n }\n d3.svg.arc = function() {\n var innerRadius = d3_svg_arcInnerRadius, outerRadius = d3_svg_arcOuterRadius, cornerRadius = d3_zero, padRadius = d3_svg_arcAuto, startAngle = d3_svg_arcStartAngle, endAngle = d3_svg_arcEndAngle, padAngle = d3_svg_arcPadAngle;\n function arc() {\n var r0 = Math.max(0, +innerRadius.apply(this, arguments)), r1 = Math.max(0, +outerRadius.apply(this, arguments)), a0 = startAngle.apply(this, arguments) - halfπ, a1 = endAngle.apply(this, arguments) - halfπ, da = Math.abs(a1 - a0), cw = a0 > a1 ? 0 : 1;\n if (r1 < r0) rc = r1, r1 = r0, r0 = rc;\n if (da >= τε) return circleSegment(r1, cw) + (r0 ? circleSegment(r0, 1 - cw) : \"\") + \"Z\";\n var rc, cr, rp, ap, p0 = 0, p1 = 0, x0, y0, x1, y1, x2, y2, x3, y3, path = [];\n if (ap = (+padAngle.apply(this, arguments) || 0) / 2) {\n rp = padRadius === d3_svg_arcAuto ? Math.sqrt(r0 * r0 + r1 * r1) : +padRadius.apply(this, arguments);\n if (!cw) p1 *= -1;\n if (r1) p1 = d3_asin(rp / r1 * Math.sin(ap));\n if (r0) p0 = d3_asin(rp / r0 * Math.sin(ap));\n }\n if (r1) {\n x0 = r1 * Math.cos(a0 + p1);\n y0 = r1 * Math.sin(a0 + p1);\n x1 = r1 * Math.cos(a1 - p1);\n y1 = r1 * Math.sin(a1 - p1);\n var l1 = Math.abs(a1 - a0 - 2 * p1) <= π ? 0 : 1;\n if (p1 && d3_svg_arcSweep(x0, y0, x1, y1) === cw ^ l1) {\n var h1 = (a0 + a1) / 2;\n x0 = r1 * Math.cos(h1);\n y0 = r1 * Math.sin(h1);\n x1 = y1 = null;\n }\n } else {\n x0 = y0 = 0;\n }\n if (r0) {\n x2 = r0 * Math.cos(a1 - p0);\n y2 = r0 * Math.sin(a1 - p0);\n x3 = r0 * Math.cos(a0 + p0);\n y3 = r0 * Math.sin(a0 + p0);\n var l0 = Math.abs(a0 - a1 + 2 * p0) <= π ? 0 : 1;\n if (p0 && d3_svg_arcSweep(x2, y2, x3, y3) === 1 - cw ^ l0) {\n var h0 = (a0 + a1) / 2;\n x2 = r0 * Math.cos(h0);\n y2 = r0 * Math.sin(h0);\n x3 = y3 = null;\n }\n } else {\n x2 = y2 = 0;\n }\n if (da > ε && (rc = Math.min(Math.abs(r1 - r0) / 2, +cornerRadius.apply(this, arguments))) > .001) {\n cr = r0 < r1 ^ cw ? 0 : 1;\n var rc1 = rc, rc0 = rc;\n if (da < π) {\n var oc = x3 == null ? [ x2, y2 ] : x1 == null ? [ x0, y0 ] : d3_geom_polygonIntersect([ x0, y0 ], [ x3, y3 ], [ x1, y1 ], [ x2, y2 ]), ax = x0 - oc[0], ay = y0 - oc[1], bx = x1 - oc[0], by = y1 - oc[1], kc = 1 / Math.sin(Math.acos((ax * bx + ay * by) / (Math.sqrt(ax * ax + ay * ay) * Math.sqrt(bx * bx + by * by))) / 2), lc = Math.sqrt(oc[0] * oc[0] + oc[1] * oc[1]);\n rc0 = Math.min(rc, (r0 - lc) / (kc - 1));\n rc1 = Math.min(rc, (r1 - lc) / (kc + 1));\n }\n if (x1 != null) {\n var t30 = d3_svg_arcCornerTangents(x3 == null ? [ x2, y2 ] : [ x3, y3 ], [ x0, y0 ], r1, rc1, cw), t12 = d3_svg_arcCornerTangents([ x1, y1 ], [ x2, y2 ], r1, rc1, cw);\n if (rc === rc1) {\n path.push(\"M\", t30[0], \"A\", rc1, \",\", rc1, \" 0 0,\", cr, \" \", t30[1], \"A\", r1, \",\", r1, \" 0 \", 1 - cw ^ d3_svg_arcSweep(t30[1][0], t30[1][1], t12[1][0], t12[1][1]), \",\", cw, \" \", t12[1], \"A\", rc1, \",\", rc1, \" 0 0,\", cr, \" \", t12[0]);\n } else {\n path.push(\"M\", t30[0], \"A\", rc1, \",\", rc1, \" 0 1,\", cr, \" \", t12[0]);\n }\n } else {\n path.push(\"M\", x0, \",\", y0);\n }\n if (x3 != null) {\n var t03 = d3_svg_arcCornerTangents([ x0, y0 ], [ x3, y3 ], r0, -rc0, cw), t21 = d3_svg_arcCornerTangents([ x2, y2 ], x1 == null ? [ x0, y0 ] : [ x1, y1 ], r0, -rc0, cw);\n if (rc === rc0) {\n path.push(\"L\", t21[0], \"A\", rc0, \",\", rc0, \" 0 0,\", cr, \" \", t21[1], \"A\", r0, \",\", r0, \" 0 \", cw ^ d3_svg_arcSweep(t21[1][0], t21[1][1], t03[1][0], t03[1][1]), \",\", 1 - cw, \" \", t03[1], \"A\", rc0, \",\", rc0, \" 0 0,\", cr, \" \", t03[0]);\n } else {\n path.push(\"L\", t21[0], \"A\", rc0, \",\", rc0, \" 0 0,\", cr, \" \", t03[0]);\n }\n } else {\n path.push(\"L\", x2, \",\", y2);\n }\n } else {\n path.push(\"M\", x0, \",\", y0);\n if (x1 != null) path.push(\"A\", r1, \",\", r1, \" 0 \", l1, \",\", cw, \" \", x1, \",\", y1);\n path.push(\"L\", x2, \",\", y2);\n if (x3 != null) path.push(\"A\", r0, \",\", r0, \" 0 \", l0, \",\", 1 - cw, \" \", x3, \",\", y3);\n }\n path.push(\"Z\");\n return path.join(\"\");\n }\n function circleSegment(r1, cw) {\n return \"M0,\" + r1 + \"A\" + r1 + \",\" + r1 + \" 0 1,\" + cw + \" 0,\" + -r1 + \"A\" + r1 + \",\" + r1 + \" 0 1,\" + cw + \" 0,\" + r1;\n }\n arc.innerRadius = function(v) {\n if (!arguments.length) return innerRadius;\n innerRadius = d3_functor(v);\n return arc;\n };\n arc.outerRadius = function(v) {\n if (!arguments.length) return outerRadius;\n outerRadius = d3_functor(v);\n return arc;\n };\n arc.cornerRadius = function(v) {\n if (!arguments.length) return cornerRadius;\n cornerRadius = d3_functor(v);\n return arc;\n };\n arc.padRadius = function(v) {\n if (!arguments.length) return padRadius;\n padRadius = v == d3_svg_arcAuto ? d3_svg_arcAuto : d3_functor(v);\n return arc;\n };\n arc.startAngle = function(v) {\n if (!arguments.length) return startAngle;\n startAngle = d3_functor(v);\n return arc;\n };\n arc.endAngle = function(v) {\n if (!arguments.length) return endAngle;\n endAngle = d3_functor(v);\n return arc;\n };\n arc.padAngle = function(v) {\n if (!arguments.length) return padAngle;\n padAngle = d3_functor(v);\n return arc;\n };\n arc.centroid = function() {\n var r = (+innerRadius.apply(this, arguments) + +outerRadius.apply(this, arguments)) / 2, a = (+startAngle.apply(this, arguments) + +endAngle.apply(this, arguments)) / 2 - halfπ;\n return [ Math.cos(a) * r, Math.sin(a) * r ];\n };\n return arc;\n };\n var d3_svg_arcAuto = \"auto\";\n function d3_svg_arcInnerRadius(d) {\n return d.innerRadius;\n }\n function d3_svg_arcOuterRadius(d) {\n return d.outerRadius;\n }\n function d3_svg_arcStartAngle(d) {\n return d.startAngle;\n }\n function d3_svg_arcEndAngle(d) {\n return d.endAngle;\n }\n function d3_svg_arcPadAngle(d) {\n return d && d.padAngle;\n }\n function d3_svg_arcSweep(x0, y0, x1, y1) {\n return (x0 - x1) * y0 - (y0 - y1) * x0 > 0 ? 0 : 1;\n }\n function d3_svg_arcCornerTangents(p0, p1, r1, rc, cw) {\n var x01 = p0[0] - p1[0], y01 = p0[1] - p1[1], lo = (cw ? rc : -rc) / Math.sqrt(x01 * x01 + y01 * y01), ox = lo * y01, oy = -lo * x01, x1 = p0[0] + ox, y1 = p0[1] + oy, x2 = p1[0] + ox, y2 = p1[1] + oy, x3 = (x1 + x2) / 2, y3 = (y1 + y2) / 2, dx = x2 - x1, dy = y2 - y1, d2 = dx * dx + dy * dy, r = r1 - rc, D = x1 * y2 - x2 * y1, d = (dy < 0 ? -1 : 1) * Math.sqrt(Math.max(0, r * r * d2 - D * D)), cx0 = (D * dy - dx * d) / d2, cy0 = (-D * dx - dy * d) / d2, cx1 = (D * dy + dx * d) / d2, cy1 = (-D * dx + dy * d) / d2, dx0 = cx0 - x3, dy0 = cy0 - y3, dx1 = cx1 - x3, dy1 = cy1 - y3;\n if (dx0 * dx0 + dy0 * dy0 > dx1 * dx1 + dy1 * dy1) cx0 = cx1, cy0 = cy1;\n return [ [ cx0 - ox, cy0 - oy ], [ cx0 * r1 / r, cy0 * r1 / r ] ];\n }\n function d3_svg_line(projection) {\n var x = d3_geom_pointX, y = d3_geom_pointY, defined = d3_true, interpolate = d3_svg_lineLinear, interpolateKey = interpolate.key, tension = .7;\n function line(data) {\n var segments = [], points = [], i = -1, n = data.length, d, fx = d3_functor(x), fy = d3_functor(y);\n function segment() {\n segments.push(\"M\", interpolate(projection(points), tension));\n }\n while (++i < n) {\n if (defined.call(this, d = data[i], i)) {\n points.push([ +fx.call(this, d, i), +fy.call(this, d, i) ]);\n } else if (points.length) {\n segment();\n points = [];\n }\n }\n if (points.length) segment();\n return segments.length ? segments.join(\"\") : null;\n }\n line.x = function(_) {\n if (!arguments.length) return x;\n x = _;\n return line;\n };\n line.y = function(_) {\n if (!arguments.length) return y;\n y = _;\n return line;\n };\n line.defined = function(_) {\n if (!arguments.length) return defined;\n defined = _;\n return line;\n };\n line.interpolate = function(_) {\n if (!arguments.length) return interpolateKey;\n if (typeof _ === \"function\") interpolateKey = interpolate = _; else interpolateKey = (interpolate = d3_svg_lineInterpolators.get(_) || d3_svg_lineLinear).key;\n return line;\n };\n line.tension = function(_) {\n if (!arguments.length) return tension;\n tension = _;\n return line;\n };\n return line;\n }\n d3.svg.line = function() {\n return d3_svg_line(d3_identity);\n };\n var d3_svg_lineInterpolators = d3.map({\n linear: d3_svg_lineLinear,\n \"linear-closed\": d3_svg_lineLinearClosed,\n step: d3_svg_lineStep,\n \"step-before\": d3_svg_lineStepBefore,\n \"step-after\": d3_svg_lineStepAfter,\n basis: d3_svg_lineBasis,\n \"basis-open\": d3_svg_lineBasisOpen,\n \"basis-closed\": d3_svg_lineBasisClosed,\n bundle: d3_svg_lineBundle,\n cardinal: d3_svg_lineCardinal,\n \"cardinal-open\": d3_svg_lineCardinalOpen,\n \"cardinal-closed\": d3_svg_lineCardinalClosed,\n monotone: d3_svg_lineMonotone\n });\n d3_svg_lineInterpolators.forEach(function(key, value) {\n value.key = key;\n value.closed = /-closed$/.test(key);\n });\n function d3_svg_lineLinear(points) {\n return points.length > 1 ? points.join(\"L\") : points + \"Z\";\n }\n function d3_svg_lineLinearClosed(points) {\n return points.join(\"L\") + \"Z\";\n }\n function d3_svg_lineStep(points) {\n var i = 0, n = points.length, p = points[0], path = [ p[0], \",\", p[1] ];\n while (++i < n) path.push(\"H\", (p[0] + (p = points[i])[0]) / 2, \"V\", p[1]);\n if (n > 1) path.push(\"H\", p[0]);\n return path.join(\"\");\n }\n function d3_svg_lineStepBefore(points) {\n var i = 0, n = points.length, p = points[0], path = [ p[0], \",\", p[1] ];\n while (++i < n) path.push(\"V\", (p = points[i])[1], \"H\", p[0]);\n return path.join(\"\");\n }\n function d3_svg_lineStepAfter(points) {\n var i = 0, n = points.length, p = points[0], path = [ p[0], \",\", p[1] ];\n while (++i < n) path.push(\"H\", (p = points[i])[0], \"V\", p[1]);\n return path.join(\"\");\n }\n function d3_svg_lineCardinalOpen(points, tension) {\n return points.length < 4 ? d3_svg_lineLinear(points) : points[1] + d3_svg_lineHermite(points.slice(1, -1), d3_svg_lineCardinalTangents(points, tension));\n }\n function d3_svg_lineCardinalClosed(points, tension) {\n return points.length < 3 ? d3_svg_lineLinearClosed(points) : points[0] + d3_svg_lineHermite((points.push(points[0]), \n points), d3_svg_lineCardinalTangents([ points[points.length - 2] ].concat(points, [ points[1] ]), tension));\n }\n function d3_svg_lineCardinal(points, tension) {\n return points.length < 3 ? d3_svg_lineLinear(points) : points[0] + d3_svg_lineHermite(points, d3_svg_lineCardinalTangents(points, tension));\n }\n function d3_svg_lineHermite(points, tangents) {\n if (tangents.length < 1 || points.length != tangents.length && points.length != tangents.length + 2) {\n return d3_svg_lineLinear(points);\n }\n var quad = points.length != tangents.length, path = \"\", p0 = points[0], p = points[1], t0 = tangents[0], t = t0, pi = 1;\n if (quad) {\n path += \"Q\" + (p[0] - t0[0] * 2 / 3) + \",\" + (p[1] - t0[1] * 2 / 3) + \",\" + p[0] + \",\" + p[1];\n p0 = points[1];\n pi = 2;\n }\n if (tangents.length > 1) {\n t = tangents[1];\n p = points[pi];\n pi++;\n path += \"C\" + (p0[0] + t0[0]) + \",\" + (p0[1] + t0[1]) + \",\" + (p[0] - t[0]) + \",\" + (p[1] - t[1]) + \",\" + p[0] + \",\" + p[1];\n for (var i = 2; i < tangents.length; i++, pi++) {\n p = points[pi];\n t = tangents[i];\n path += \"S\" + (p[0] - t[0]) + \",\" + (p[1] - t[1]) + \",\" + p[0] + \",\" + p[1];\n }\n }\n if (quad) {\n var lp = points[pi];\n path += \"Q\" + (p[0] + t[0] * 2 / 3) + \",\" + (p[1] + t[1] * 2 / 3) + \",\" + lp[0] + \",\" + lp[1];\n }\n return path;\n }\n function d3_svg_lineCardinalTangents(points, tension) {\n var tangents = [], a = (1 - tension) / 2, p0, p1 = points[0], p2 = points[1], i = 1, n = points.length;\n while (++i < n) {\n p0 = p1;\n p1 = p2;\n p2 = points[i];\n tangents.push([ a * (p2[0] - p0[0]), a * (p2[1] - p0[1]) ]);\n }\n return tangents;\n }\n function d3_svg_lineBasis(points) {\n if (points.length < 3) return d3_svg_lineLinear(points);\n var i = 1, n = points.length, pi = points[0], x0 = pi[0], y0 = pi[1], px = [ x0, x0, x0, (pi = points[1])[0] ], py = [ y0, y0, y0, pi[1] ], path = [ x0, \",\", y0, \"L\", d3_svg_lineDot4(d3_svg_lineBasisBezier3, px), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier3, py) ];\n points.push(points[n - 1]);\n while (++i <= n) {\n pi = points[i];\n px.shift();\n px.push(pi[0]);\n py.shift();\n py.push(pi[1]);\n d3_svg_lineBasisBezier(path, px, py);\n }\n points.pop();\n path.push(\"L\", pi);\n return path.join(\"\");\n }\n function d3_svg_lineBasisOpen(points) {\n if (points.length < 4) return d3_svg_lineLinear(points);\n var path = [], i = -1, n = points.length, pi, px = [ 0 ], py = [ 0 ];\n while (++i < 3) {\n pi = points[i];\n px.push(pi[0]);\n py.push(pi[1]);\n }\n path.push(d3_svg_lineDot4(d3_svg_lineBasisBezier3, px) + \",\" + d3_svg_lineDot4(d3_svg_lineBasisBezier3, py));\n --i;\n while (++i < n) {\n pi = points[i];\n px.shift();\n px.push(pi[0]);\n py.shift();\n py.push(pi[1]);\n d3_svg_lineBasisBezier(path, px, py);\n }\n return path.join(\"\");\n }\n function d3_svg_lineBasisClosed(points) {\n var path, i = -1, n = points.length, m = n + 4, pi, px = [], py = [];\n while (++i < 4) {\n pi = points[i % n];\n px.push(pi[0]);\n py.push(pi[1]);\n }\n path = [ d3_svg_lineDot4(d3_svg_lineBasisBezier3, px), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier3, py) ];\n --i;\n while (++i < m) {\n pi = points[i % n];\n px.shift();\n px.push(pi[0]);\n py.shift();\n py.push(pi[1]);\n d3_svg_lineBasisBezier(path, px, py);\n }\n return path.join(\"\");\n }\n function d3_svg_lineBundle(points, tension) {\n var n = points.length - 1;\n if (n) {\n var x0 = points[0][0], y0 = points[0][1], dx = points[n][0] - x0, dy = points[n][1] - y0, i = -1, p, t;\n while (++i <= n) {\n p = points[i];\n t = i / n;\n p[0] = tension * p[0] + (1 - tension) * (x0 + t * dx);\n p[1] = tension * p[1] + (1 - tension) * (y0 + t * dy);\n }\n }\n return d3_svg_lineBasis(points);\n }\n function d3_svg_lineDot4(a, b) {\n return a[0] * b[0] + a[1] * b[1] + a[2] * b[2] + a[3] * b[3];\n }\n var d3_svg_lineBasisBezier1 = [ 0, 2 / 3, 1 / 3, 0 ], d3_svg_lineBasisBezier2 = [ 0, 1 / 3, 2 / 3, 0 ], d3_svg_lineBasisBezier3 = [ 0, 1 / 6, 2 / 3, 1 / 6 ];\n function d3_svg_lineBasisBezier(path, x, y) {\n path.push(\"C\", d3_svg_lineDot4(d3_svg_lineBasisBezier1, x), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier1, y), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier2, x), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier2, y), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier3, x), \",\", d3_svg_lineDot4(d3_svg_lineBasisBezier3, y));\n }\n function d3_svg_lineSlope(p0, p1) {\n return (p1[1] - p0[1]) / (p1[0] - p0[0]);\n }\n function d3_svg_lineFiniteDifferences(points) {\n var i = 0, j = points.length - 1, m = [], p0 = points[0], p1 = points[1], d = m[0] = d3_svg_lineSlope(p0, p1);\n while (++i < j) {\n m[i] = (d + (d = d3_svg_lineSlope(p0 = p1, p1 = points[i + 1]))) / 2;\n }\n m[i] = d;\n return m;\n }\n function d3_svg_lineMonotoneTangents(points) {\n var tangents = [], d, a, b, s, m = d3_svg_lineFiniteDifferences(points), i = -1, j = points.length - 1;\n while (++i < j) {\n d = d3_svg_lineSlope(points[i], points[i + 1]);\n if (abs(d) < ε) {\n m[i] = m[i + 1] = 0;\n } else {\n a = m[i] / d;\n b = m[i + 1] / d;\n s = a * a + b * b;\n if (s > 9) {\n s = d * 3 / Math.sqrt(s);\n m[i] = s * a;\n m[i + 1] = s * b;\n }\n }\n }\n i = -1;\n while (++i <= j) {\n s = (points[Math.min(j, i + 1)][0] - points[Math.max(0, i - 1)][0]) / (6 * (1 + m[i] * m[i]));\n tangents.push([ s || 0, m[i] * s || 0 ]);\n }\n return tangents;\n }\n function d3_svg_lineMonotone(points) {\n return points.length < 3 ? d3_svg_lineLinear(points) : points[0] + d3_svg_lineHermite(points, d3_svg_lineMonotoneTangents(points));\n }\n d3.svg.line.radial = function() {\n var line = d3_svg_line(d3_svg_lineRadial);\n line.radius = line.x, delete line.x;\n line.angle = line.y, delete line.y;\n return line;\n };\n function d3_svg_lineRadial(points) {\n var point, i = -1, n = points.length, r, a;\n while (++i < n) {\n point = points[i];\n r = point[0];\n a = point[1] - halfπ;\n point[0] = r * Math.cos(a);\n point[1] = r * Math.sin(a);\n }\n return points;\n }\n function d3_svg_area(projection) {\n var x0 = d3_geom_pointX, x1 = d3_geom_pointX, y0 = 0, y1 = d3_geom_pointY, defined = d3_true, interpolate = d3_svg_lineLinear, interpolateKey = interpolate.key, interpolateReverse = interpolate, L = \"L\", tension = .7;\n function area(data) {\n var segments = [], points0 = [], points1 = [], i = -1, n = data.length, d, fx0 = d3_functor(x0), fy0 = d3_functor(y0), fx1 = x0 === x1 ? function() {\n return x;\n } : d3_functor(x1), fy1 = y0 === y1 ? function() {\n return y;\n } : d3_functor(y1), x, y;\n function segment() {\n segments.push(\"M\", interpolate(projection(points1), tension), L, interpolateReverse(projection(points0.reverse()), tension), \"Z\");\n }\n while (++i < n) {\n if (defined.call(this, d = data[i], i)) {\n points0.push([ x = +fx0.call(this, d, i), y = +fy0.call(this, d, i) ]);\n points1.push([ +fx1.call(this, d, i), +fy1.call(this, d, i) ]);\n } else if (points0.length) {\n segment();\n points0 = [];\n points1 = [];\n }\n }\n if (points0.length) segment();\n return segments.length ? segments.join(\"\") : null;\n }\n area.x = function(_) {\n if (!arguments.length) return x1;\n x0 = x1 = _;\n return area;\n };\n area.x0 = function(_) {\n if (!arguments.length) return x0;\n x0 = _;\n return area;\n };\n area.x1 = function(_) {\n if (!arguments.length) return x1;\n x1 = _;\n return area;\n };\n area.y = function(_) {\n if (!arguments.length) return y1;\n y0 = y1 = _;\n return area;\n };\n area.y0 = function(_) {\n if (!arguments.length) return y0;\n y0 = _;\n return area;\n };\n area.y1 = function(_) {\n if (!arguments.length) return y1;\n y1 = _;\n return area;\n };\n area.defined = function(_) {\n if (!arguments.length) return defined;\n defined = _;\n return area;\n };\n area.interpolate = function(_) {\n if (!arguments.length) return interpolateKey;\n if (typeof _ === \"function\") interpolateKey = interpolate = _; else interpolateKey = (interpolate = d3_svg_lineInterpolators.get(_) || d3_svg_lineLinear).key;\n interpolateReverse = interpolate.reverse || interpolate;\n L = interpolate.closed ? \"M\" : \"L\";\n return area;\n };\n area.tension = function(_) {\n if (!arguments.length) return tension;\n tension = _;\n return area;\n };\n return area;\n }\n d3_svg_lineStepBefore.reverse = d3_svg_lineStepAfter;\n d3_svg_lineStepAfter.reverse = d3_svg_lineStepBefore;\n d3.svg.area = function() {\n return d3_svg_area(d3_identity);\n };\n d3.svg.area.radial = function() {\n var area = d3_svg_area(d3_svg_lineRadial);\n area.radius = area.x, delete area.x;\n area.innerRadius = area.x0, delete area.x0;\n area.outerRadius = area.x1, delete area.x1;\n area.angle = area.y, delete area.y;\n area.startAngle = area.y0, delete area.y0;\n area.endAngle = area.y1, delete area.y1;\n return area;\n };\n d3.svg.chord = function() {\n var source = d3_source, target = d3_target, radius = d3_svg_chordRadius, startAngle = d3_svg_arcStartAngle, endAngle = d3_svg_arcEndAngle;\n function chord(d, i) {\n var s = subgroup(this, source, d, i), t = subgroup(this, target, d, i);\n return \"M\" + s.p0 + arc(s.r, s.p1, s.a1 - s.a0) + (equals(s, t) ? curve(s.r, s.p1, s.r, s.p0) : curve(s.r, s.p1, t.r, t.p0) + arc(t.r, t.p1, t.a1 - t.a0) + curve(t.r, t.p1, s.r, s.p0)) + \"Z\";\n }\n function subgroup(self, f, d, i) {\n var subgroup = f.call(self, d, i), r = radius.call(self, subgroup, i), a0 = startAngle.call(self, subgroup, i) - halfπ, a1 = endAngle.call(self, subgroup, i) - halfπ;\n return {\n r: r,\n a0: a0,\n a1: a1,\n p0: [ r * Math.cos(a0), r * Math.sin(a0) ],\n p1: [ r * Math.cos(a1), r * Math.sin(a1) ]\n };\n }\n function equals(a, b) {\n return a.a0 == b.a0 && a.a1 == b.a1;\n }\n function arc(r, p, a) {\n return \"A\" + r + \",\" + r + \" 0 \" + +(a > π) + \",1 \" + p;\n }\n function curve(r0, p0, r1, p1) {\n return \"Q 0,0 \" + p1;\n }\n chord.radius = function(v) {\n if (!arguments.length) return radius;\n radius = d3_functor(v);\n return chord;\n };\n chord.source = function(v) {\n if (!arguments.length) return source;\n source = d3_functor(v);\n return chord;\n };\n chord.target = function(v) {\n if (!arguments.length) return target;\n target = d3_functor(v);\n return chord;\n };\n chord.startAngle = function(v) {\n if (!arguments.length) return startAngle;\n startAngle = d3_functor(v);\n return chord;\n };\n chord.endAngle = function(v) {\n if (!arguments.length) return endAngle;\n endAngle = d3_functor(v);\n return chord;\n };\n return chord;\n };\n function d3_svg_chordRadius(d) {\n return d.radius;\n }\n d3.svg.diagonal = function() {\n var source = d3_source, target = d3_target, projection = d3_svg_diagonalProjection;\n function diagonal(d, i) {\n var p0 = source.call(this, d, i), p3 = target.call(this, d, i), m = (p0.y + p3.y) / 2, p = [ p0, {\n x: p0.x,\n y: m\n }, {\n x: p3.x,\n y: m\n }, p3 ];\n p = p.map(projection);\n return \"M\" + p[0] + \"C\" + p[1] + \" \" + p[2] + \" \" + p[3];\n }\n diagonal.source = function(x) {\n if (!arguments.length) return source;\n source = d3_functor(x);\n return diagonal;\n };\n diagonal.target = function(x) {\n if (!arguments.length) return target;\n target = d3_functor(x);\n return diagonal;\n };\n diagonal.projection = function(x) {\n if (!arguments.length) return projection;\n projection = x;\n return diagonal;\n };\n return diagonal;\n };\n function d3_svg_diagonalProjection(d) {\n return [ d.x, d.y ];\n }\n d3.svg.diagonal.radial = function() {\n var diagonal = d3.svg.diagonal(), projection = d3_svg_diagonalProjection, projection_ = diagonal.projection;\n diagonal.projection = function(x) {\n return arguments.length ? projection_(d3_svg_diagonalRadialProjection(projection = x)) : projection;\n };\n return diagonal;\n };\n function d3_svg_diagonalRadialProjection(projection) {\n return function() {\n var d = projection.apply(this, arguments), r = d[0], a = d[1] - halfπ;\n return [ r * Math.cos(a), r * Math.sin(a) ];\n };\n }\n d3.svg.symbol = function() {\n var type = d3_svg_symbolType, size = d3_svg_symbolSize;\n function symbol(d, i) {\n return (d3_svg_symbols.get(type.call(this, d, i)) || d3_svg_symbolCircle)(size.call(this, d, i));\n }\n symbol.type = function(x) {\n if (!arguments.length) return type;\n type = d3_functor(x);\n return symbol;\n };\n symbol.size = function(x) {\n if (!arguments.length) return size;\n size = d3_functor(x);\n return symbol;\n };\n return symbol;\n };\n function d3_svg_symbolSize() {\n return 64;\n }\n function d3_svg_symbolType() {\n return \"circle\";\n }\n function d3_svg_symbolCircle(size) {\n var r = Math.sqrt(size / π);\n return \"M0,\" + r + \"A\" + r + \",\" + r + \" 0 1,1 0,\" + -r + \"A\" + r + \",\" + r + \" 0 1,1 0,\" + r + \"Z\";\n }\n var d3_svg_symbols = d3.map({\n circle: d3_svg_symbolCircle,\n cross: function(size) {\n var r = Math.sqrt(size / 5) / 2;\n return \"M\" + -3 * r + \",\" + -r + \"H\" + -r + \"V\" + -3 * r + \"H\" + r + \"V\" + -r + \"H\" + 3 * r + \"V\" + r + \"H\" + r + \"V\" + 3 * r + \"H\" + -r + \"V\" + r + \"H\" + -3 * r + \"Z\";\n },\n diamond: function(size) {\n var ry = Math.sqrt(size / (2 * d3_svg_symbolTan30)), rx = ry * d3_svg_symbolTan30;\n return \"M0,\" + -ry + \"L\" + rx + \",0\" + \" 0,\" + ry + \" \" + -rx + \",0\" + \"Z\";\n },\n square: function(size) {\n var r = Math.sqrt(size) / 2;\n return \"M\" + -r + \",\" + -r + \"L\" + r + \",\" + -r + \" \" + r + \",\" + r + \" \" + -r + \",\" + r + \"Z\";\n },\n \"triangle-down\": function(size) {\n var rx = Math.sqrt(size / d3_svg_symbolSqrt3), ry = rx * d3_svg_symbolSqrt3 / 2;\n return \"M0,\" + ry + \"L\" + rx + \",\" + -ry + \" \" + -rx + \",\" + -ry + \"Z\";\n },\n \"triangle-up\": function(size) {\n var rx = Math.sqrt(size / d3_svg_symbolSqrt3), ry = rx * d3_svg_symbolSqrt3 / 2;\n return \"M0,\" + -ry + \"L\" + rx + \",\" + ry + \" \" + -rx + \",\" + ry + \"Z\";\n }\n });\n d3.svg.symbolTypes = d3_svg_symbols.keys();\n var d3_svg_symbolSqrt3 = Math.sqrt(3), d3_svg_symbolTan30 = Math.tan(30 * d3_radians);\n d3_selectionPrototype.transition = function(name) {\n var id = d3_transitionInheritId || ++d3_transitionId, ns = d3_transitionNamespace(name), subgroups = [], subgroup, node, transition = d3_transitionInherit || {\n time: Date.now(),\n ease: d3_ease_cubicInOut,\n delay: 0,\n duration: 250\n };\n for (var j = -1, m = this.length; ++j < m; ) {\n subgroups.push(subgroup = []);\n for (var group = this[j], i = -1, n = group.length; ++i < n; ) {\n if (node = group[i]) d3_transitionNode(node, i, ns, id, transition);\n subgroup.push(node);\n }\n }\n return d3_transition(subgroups, ns, id);\n };\n d3_selectionPrototype.interrupt = function(name) {\n return this.each(name == null ? d3_selection_interrupt : d3_selection_interruptNS(d3_transitionNamespace(name)));\n };\n var d3_selection_interrupt = d3_selection_interruptNS(d3_transitionNamespace());\n function d3_selection_interruptNS(ns) {\n return function() {\n var lock, activeId, active;\n if ((lock = this[ns]) && (active = lock[activeId = lock.active])) {\n active.timer.c = null;\n active.timer.t = NaN;\n if (--lock.count) delete lock[activeId]; else delete this[ns];\n lock.active += .5;\n active.event && active.event.interrupt.call(this, this.__data__, active.index);\n }\n };\n }\n function d3_transition(groups, ns, id) {\n d3_subclass(groups, d3_transitionPrototype);\n groups.namespace = ns;\n groups.id = id;\n return groups;\n }\n var d3_transitionPrototype = [], d3_transitionId = 0, d3_transitionInheritId, d3_transitionInherit;\n d3_transitionPrototype.call = d3_selectionPrototype.call;\n d3_transitionPrototype.empty = d3_selectionPrototype.empty;\n d3_transitionPrototype.node = d3_selectionPrototype.node;\n d3_transitionPrototype.size = d3_selectionPrototype.size;\n d3.transition = function(selection, name) {\n return selection && selection.transition ? d3_transitionInheritId ? selection.transition(name) : selection : d3.selection().transition(selection);\n };\n d3.transition.prototype = d3_transitionPrototype;\n d3_transitionPrototype.select = function(selector) {\n var id = this.id, ns = this.namespace, subgroups = [], subgroup, subnode, node;\n selector = d3_selection_selector(selector);\n for (var j = -1, m = this.length; ++j < m; ) {\n subgroups.push(subgroup = []);\n for (var group = this[j], i = -1, n = group.length; ++i < n; ) {\n if ((node = group[i]) && (subnode = selector.call(node, node.__data__, i, j))) {\n if (\"__data__\" in node) subnode.__data__ = node.__data__;\n d3_transitionNode(subnode, i, ns, id, node[ns][id]);\n subgroup.push(subnode);\n } else {\n subgroup.push(null);\n }\n }\n }\n return d3_transition(subgroups, ns, id);\n };\n d3_transitionPrototype.selectAll = function(selector) {\n var id = this.id, ns = this.namespace, subgroups = [], subgroup, subnodes, node, subnode, transition;\n selector = d3_selection_selectorAll(selector);\n for (var j = -1, m = this.length; ++j < m; ) {\n for (var group = this[j], i = -1, n = group.length; ++i < n; ) {\n if (node = group[i]) {\n transition = node[ns][id];\n subnodes = selector.call(node, node.__data__, i, j);\n subgroups.push(subgroup = []);\n for (var k = -1, o = subnodes.length; ++k < o; ) {\n if (subnode = subnodes[k]) d3_transitionNode(subnode, k, ns, id, transition);\n subgroup.push(subnode);\n }\n }\n }\n }\n return d3_transition(subgroups, ns, id);\n };\n d3_transitionPrototype.filter = function(filter) {\n var subgroups = [], subgroup, group, node;\n if (typeof filter !== \"function\") filter = d3_selection_filter(filter);\n for (var j = 0, m = this.length; j < m; j++) {\n subgroups.push(subgroup = []);\n for (var group = this[j], i = 0, n = group.length; i < n; i++) {\n if ((node = group[i]) && filter.call(node, node.__data__, i, j)) {\n subgroup.push(node);\n }\n }\n }\n return d3_transition(subgroups, this.namespace, this.id);\n };\n d3_transitionPrototype.tween = function(name, tween) {\n var id = this.id, ns = this.namespace;\n if (arguments.length < 2) return this.node()[ns][id].tween.get(name);\n return d3_selection_each(this, tween == null ? function(node) {\n node[ns][id].tween.remove(name);\n } : function(node) {\n node[ns][id].tween.set(name, tween);\n });\n };\n function d3_transition_tween(groups, name, value, tween) {\n var id = groups.id, ns = groups.namespace;\n return d3_selection_each(groups, typeof value === \"function\" ? function(node, i, j) {\n node[ns][id].tween.set(name, tween(value.call(node, node.__data__, i, j)));\n } : (value = tween(value), function(node) {\n node[ns][id].tween.set(name, value);\n }));\n }\n d3_transitionPrototype.attr = function(nameNS, value) {\n if (arguments.length < 2) {\n for (value in nameNS) this.attr(value, nameNS[value]);\n return this;\n }\n var interpolate = nameNS == \"transform\" ? d3_interpolateTransform : d3_interpolate, name = d3.ns.qualify(nameNS);\n function attrNull() {\n this.removeAttribute(name);\n }\n function attrNullNS() {\n this.removeAttributeNS(name.space, name.local);\n }\n function attrTween(b) {\n return b == null ? attrNull : (b += \"\", function() {\n var a = this.getAttribute(name), i;\n return a !== b && (i = interpolate(a, b), function(t) {\n this.setAttribute(name, i(t));\n });\n });\n }\n function attrTweenNS(b) {\n return b == null ? attrNullNS : (b += \"\", function() {\n var a = this.getAttributeNS(name.space, name.local), i;\n return a !== b && (i = interpolate(a, b), function(t) {\n this.setAttributeNS(name.space, name.local, i(t));\n });\n });\n }\n return d3_transition_tween(this, \"attr.\" + nameNS, value, name.local ? attrTweenNS : attrTween);\n };\n d3_transitionPrototype.attrTween = function(nameNS, tween) {\n var name = d3.ns.qualify(nameNS);\n function attrTween(d, i) {\n var f = tween.call(this, d, i, this.getAttribute(name));\n return f && function(t) {\n this.setAttribute(name, f(t));\n };\n }\n function attrTweenNS(d, i) {\n var f = tween.call(this, d, i, this.getAttributeNS(name.space, name.local));\n return f && function(t) {\n this.setAttributeNS(name.space, name.local, f(t));\n };\n }\n return this.tween(\"attr.\" + nameNS, name.local ? attrTweenNS : attrTween);\n };\n d3_transitionPrototype.style = function(name, value, priority) {\n var n = arguments.length;\n if (n < 3) {\n if (typeof name !== \"string\") {\n if (n < 2) value = \"\";\n for (priority in name) this.style(priority, name[priority], value);\n return this;\n }\n priority = \"\";\n }\n function styleNull() {\n this.style.removeProperty(name);\n }\n function styleString(b) {\n return b == null ? styleNull : (b += \"\", function() {\n var a = d3_window(this).getComputedStyle(this, null).getPropertyValue(name), i;\n return a !== b && (i = d3_interpolate(a, b), function(t) {\n this.style.setProperty(name, i(t), priority);\n });\n });\n }\n return d3_transition_tween(this, \"style.\" + name, value, styleString);\n };\n d3_transitionPrototype.styleTween = function(name, tween, priority) {\n if (arguments.length < 3) priority = \"\";\n function styleTween(d, i) {\n var f = tween.call(this, d, i, d3_window(this).getComputedStyle(this, null).getPropertyValue(name));\n return f && function(t) {\n this.style.setProperty(name, f(t), priority);\n };\n }\n return this.tween(\"style.\" + name, styleTween);\n };\n d3_transitionPrototype.text = function(value) {\n return d3_transition_tween(this, \"text\", value, d3_transition_text);\n };\n function d3_transition_text(b) {\n if (b == null) b = \"\";\n return function() {\n this.textContent = b;\n };\n }\n d3_transitionPrototype.remove = function() {\n var ns = this.namespace;\n return this.each(\"end.transition\", function() {\n var p;\n if (this[ns].count < 2 && (p = this.parentNode)) p.removeChild(this);\n });\n };\n d3_transitionPrototype.ease = function(value) {\n var id = this.id, ns = this.namespace;\n if (arguments.length < 1) return this.node()[ns][id].ease;\n if (typeof value !== \"function\") value = d3.ease.apply(d3, arguments);\n return d3_selection_each(this, function(node) {\n node[ns][id].ease = value;\n });\n };\n d3_transitionPrototype.delay = function(value) {\n var id = this.id, ns = this.namespace;\n if (arguments.length < 1) return this.node()[ns][id].delay;\n return d3_selection_each(this, typeof value === \"function\" ? function(node, i, j) {\n node[ns][id].delay = +value.call(node, node.__data__, i, j);\n } : (value = +value, function(node) {\n node[ns][id].delay = value;\n }));\n };\n d3_transitionPrototype.duration = function(value) {\n var id = this.id, ns = this.namespace;\n if (arguments.length < 1) return this.node()[ns][id].duration;\n return d3_selection_each(this, typeof value === \"function\" ? function(node, i, j) {\n node[ns][id].duration = Math.max(1, value.call(node, node.__data__, i, j));\n } : (value = Math.max(1, value), function(node) {\n node[ns][id].duration = value;\n }));\n };\n d3_transitionPrototype.each = function(type, listener) {\n var id = this.id, ns = this.namespace;\n if (arguments.length < 2) {\n var inherit = d3_transitionInherit, inheritId = d3_transitionInheritId;\n try {\n d3_transitionInheritId = id;\n d3_selection_each(this, function(node, i, j) {\n d3_transitionInherit = node[ns][id];\n type.call(node, node.__data__, i, j);\n });\n } finally {\n d3_transitionInherit = inherit;\n d3_transitionInheritId = inheritId;\n }\n } else {\n d3_selection_each(this, function(node) {\n var transition = node[ns][id];\n (transition.event || (transition.event = d3.dispatch(\"start\", \"end\", \"interrupt\"))).on(type, listener);\n });\n }\n return this;\n };\n d3_transitionPrototype.transition = function() {\n var id0 = this.id, id1 = ++d3_transitionId, ns = this.namespace, subgroups = [], subgroup, group, node, transition;\n for (var j = 0, m = this.length; j < m; j++) {\n subgroups.push(subgroup = []);\n for (var group = this[j], i = 0, n = group.length; i < n; i++) {\n if (node = group[i]) {\n transition = node[ns][id0];\n d3_transitionNode(node, i, ns, id1, {\n time: transition.time,\n ease: transition.ease,\n delay: transition.delay + transition.duration,\n duration: transition.duration\n });\n }\n subgroup.push(node);\n }\n }\n return d3_transition(subgroups, ns, id1);\n };\n function d3_transitionNamespace(name) {\n return name == null ? \"__transition__\" : \"__transition_\" + name + \"__\";\n }\n function d3_transitionNode(node, i, ns, id, inherit) {\n var lock = node[ns] || (node[ns] = {\n active: 0,\n count: 0\n }), transition = lock[id], time, timer, duration, ease, tweens;\n function schedule(elapsed) {\n var delay = transition.delay;\n timer.t = delay + time;\n if (delay <= elapsed) return start(elapsed - delay);\n timer.c = start;\n }\n function start(elapsed) {\n var activeId = lock.active, active = lock[activeId];\n if (active) {\n active.timer.c = null;\n active.timer.t = NaN;\n --lock.count;\n delete lock[activeId];\n active.event && active.event.interrupt.call(node, node.__data__, active.index);\n }\n for (var cancelId in lock) {\n if (+cancelId < id) {\n var cancel = lock[cancelId];\n cancel.timer.c = null;\n cancel.timer.t = NaN;\n --lock.count;\n delete lock[cancelId];\n }\n }\n timer.c = tick;\n d3_timer(function() {\n if (timer.c && tick(elapsed || 1)) {\n timer.c = null;\n timer.t = NaN;\n }\n return 1;\n }, 0, time);\n lock.active = id;\n transition.event && transition.event.start.call(node, node.__data__, i);\n tweens = [];\n transition.tween.forEach(function(key, value) {\n if (value = value.call(node, node.__data__, i)) {\n tweens.push(value);\n }\n });\n ease = transition.ease;\n duration = transition.duration;\n }\n function tick(elapsed) {\n var t = elapsed / duration, e = ease(t), n = tweens.length;\n while (n > 0) {\n tweens[--n].call(node, e);\n }\n if (t >= 1) {\n transition.event && transition.event.end.call(node, node.__data__, i);\n if (--lock.count) delete lock[id]; else delete node[ns];\n return 1;\n }\n }\n if (!transition) {\n time = inherit.time;\n timer = d3_timer(schedule, 0, time);\n transition = lock[id] = {\n tween: new d3_Map(),\n time: time,\n timer: timer,\n delay: inherit.delay,\n duration: inherit.duration,\n ease: inherit.ease,\n index: i\n };\n inherit = null;\n ++lock.count;\n }\n }\n d3.svg.axis = function() {\n var scale = d3.scale.linear(), orient = d3_svg_axisDefaultOrient, innerTickSize = 6, outerTickSize = 6, tickPadding = 3, tickArguments_ = [ 10 ], tickValues = null, tickFormat_;\n function axis(g) {\n g.each(function() {\n var g = d3.select(this);\n var scale0 = this.__chart__ || scale, scale1 = this.__chart__ = scale.copy();\n var ticks = tickValues == null ? scale1.ticks ? scale1.ticks.apply(scale1, tickArguments_) : scale1.domain() : tickValues, tickFormat = tickFormat_ == null ? scale1.tickFormat ? scale1.tickFormat.apply(scale1, tickArguments_) : d3_identity : tickFormat_, tick = g.selectAll(\".tick\").data(ticks, scale1), tickEnter = tick.enter().insert(\"g\", \".domain\").attr(\"class\", \"tick\").style(\"opacity\", ε), tickExit = d3.transition(tick.exit()).style(\"opacity\", ε).remove(), tickUpdate = d3.transition(tick.order()).style(\"opacity\", 1), tickSpacing = Math.max(innerTickSize, 0) + tickPadding, tickTransform;\n var range = d3_scaleRange(scale1), path = g.selectAll(\".domain\").data([ 0 ]), pathUpdate = (path.enter().append(\"path\").attr(\"class\", \"domain\"), \n d3.transition(path));\n tickEnter.append(\"line\");\n tickEnter.append(\"text\");\n var lineEnter = tickEnter.select(\"line\"), lineUpdate = tickUpdate.select(\"line\"), text = tick.select(\"text\").text(tickFormat), textEnter = tickEnter.select(\"text\"), textUpdate = tickUpdate.select(\"text\"), sign = orient === \"top\" || orient === \"left\" ? -1 : 1, x1, x2, y1, y2;\n if (orient === \"bottom\" || orient === \"top\") {\n tickTransform = d3_svg_axisX, x1 = \"x\", y1 = \"y\", x2 = \"x2\", y2 = \"y2\";\n text.attr(\"dy\", sign < 0 ? \"0em\" : \".71em\").style(\"text-anchor\", \"middle\");\n pathUpdate.attr(\"d\", \"M\" + range[0] + \",\" + sign * outerTickSize + \"V0H\" + range[1] + \"V\" + sign * outerTickSize);\n } else {\n tickTransform = d3_svg_axisY, x1 = \"y\", y1 = \"x\", x2 = \"y2\", y2 = \"x2\";\n text.attr(\"dy\", \".32em\").style(\"text-anchor\", sign < 0 ? \"end\" : \"start\");\n pathUpdate.attr(\"d\", \"M\" + sign * outerTickSize + \",\" + range[0] + \"H0V\" + range[1] + \"H\" + sign * outerTickSize);\n }\n lineEnter.attr(y2, sign * innerTickSize);\n textEnter.attr(y1, sign * tickSpacing);\n lineUpdate.attr(x2, 0).attr(y2, sign * innerTickSize);\n textUpdate.attr(x1, 0).attr(y1, sign * tickSpacing);\n if (scale1.rangeBand) {\n var x = scale1, dx = x.rangeBand() / 2;\n scale0 = scale1 = function(d) {\n return x(d) + dx;\n };\n } else if (scale0.rangeBand) {\n scale0 = scale1;\n } else {\n tickExit.call(tickTransform, scale1, scale0);\n }\n tickEnter.call(tickTransform, scale0, scale1);\n tickUpdate.call(tickTransform, scale1, scale1);\n });\n }\n axis.scale = function(x) {\n if (!arguments.length) return scale;\n scale = x;\n return axis;\n };\n axis.orient = function(x) {\n if (!arguments.length) return orient;\n orient = x in d3_svg_axisOrients ? x + \"\" : d3_svg_axisDefaultOrient;\n return axis;\n };\n axis.ticks = function() {\n if (!arguments.length) return tickArguments_;\n tickArguments_ = d3_array(arguments);\n return axis;\n };\n axis.tickValues = function(x) {\n if (!arguments.length) return tickValues;\n tickValues = x;\n return axis;\n };\n axis.tickFormat = function(x) {\n if (!arguments.length) return tickFormat_;\n tickFormat_ = x;\n return axis;\n };\n axis.tickSize = function(x) {\n var n = arguments.length;\n if (!n) return innerTickSize;\n innerTickSize = +x;\n outerTickSize = +arguments[n - 1];\n return axis;\n };\n axis.innerTickSize = function(x) {\n if (!arguments.length) return innerTickSize;\n innerTickSize = +x;\n return axis;\n };\n axis.outerTickSize = function(x) {\n if (!arguments.length) return outerTickSize;\n outerTickSize = +x;\n return axis;\n };\n axis.tickPadding = function(x) {\n if (!arguments.length) return tickPadding;\n tickPadding = +x;\n return axis;\n };\n axis.tickSubdivide = function() {\n return arguments.length && axis;\n };\n return axis;\n };\n var d3_svg_axisDefaultOrient = \"bottom\", d3_svg_axisOrients = {\n top: 1,\n right: 1,\n bottom: 1,\n left: 1\n };\n function d3_svg_axisX(selection, x0, x1) {\n selection.attr(\"transform\", function(d) {\n var v0 = x0(d);\n return \"translate(\" + (isFinite(v0) ? v0 : x1(d)) + \",0)\";\n });\n }\n function d3_svg_axisY(selection, y0, y1) {\n selection.attr(\"transform\", function(d) {\n var v0 = y0(d);\n return \"translate(0,\" + (isFinite(v0) ? v0 : y1(d)) + \")\";\n });\n }\n d3.svg.brush = function() {\n var event = d3_eventDispatch(brush, \"brushstart\", \"brush\", \"brushend\"), x = null, y = null, xExtent = [ 0, 0 ], yExtent = [ 0, 0 ], xExtentDomain, yExtentDomain, xClamp = true, yClamp = true, resizes = d3_svg_brushResizes[0];\n function brush(g) {\n g.each(function() {\n var g = d3.select(this).style(\"pointer-events\", \"all\").style(\"-webkit-tap-highlight-color\", \"rgba(0,0,0,0)\").on(\"mousedown.brush\", brushstart).on(\"touchstart.brush\", brushstart);\n var background = g.selectAll(\".background\").data([ 0 ]);\n background.enter().append(\"rect\").attr(\"class\", \"background\").style(\"visibility\", \"hidden\").style(\"cursor\", \"crosshair\");\n g.selectAll(\".extent\").data([ 0 ]).enter().append(\"rect\").attr(\"class\", \"extent\").style(\"cursor\", \"move\");\n var resize = g.selectAll(\".resize\").data(resizes, d3_identity);\n resize.exit().remove();\n resize.enter().append(\"g\").attr(\"class\", function(d) {\n return \"resize \" + d;\n }).style(\"cursor\", function(d) {\n return d3_svg_brushCursor[d];\n }).append(\"rect\").attr(\"x\", function(d) {\n return /[ew]$/.test(d) ? -3 : null;\n }).attr(\"y\", function(d) {\n return /^[ns]/.test(d) ? -3 : null;\n }).attr(\"width\", 6).attr(\"height\", 6).style(\"visibility\", \"hidden\");\n resize.style(\"display\", brush.empty() ? \"none\" : null);\n var gUpdate = d3.transition(g), backgroundUpdate = d3.transition(background), range;\n if (x) {\n range = d3_scaleRange(x);\n backgroundUpdate.attr(\"x\", range[0]).attr(\"width\", range[1] - range[0]);\n redrawX(gUpdate);\n }\n if (y) {\n range = d3_scaleRange(y);\n backgroundUpdate.attr(\"y\", range[0]).attr(\"height\", range[1] - range[0]);\n redrawY(gUpdate);\n }\n redraw(gUpdate);\n });\n }\n brush.event = function(g) {\n g.each(function() {\n var event_ = event.of(this, arguments), extent1 = {\n x: xExtent,\n y: yExtent,\n i: xExtentDomain,\n j: yExtentDomain\n }, extent0 = this.__chart__ || extent1;\n this.__chart__ = extent1;\n if (d3_transitionInheritId) {\n d3.select(this).transition().each(\"start.brush\", function() {\n xExtentDomain = extent0.i;\n yExtentDomain = extent0.j;\n xExtent = extent0.x;\n yExtent = extent0.y;\n event_({\n type: \"brushstart\"\n });\n }).tween(\"brush:brush\", function() {\n var xi = d3_interpolateArray(xExtent, extent1.x), yi = d3_interpolateArray(yExtent, extent1.y);\n xExtentDomain = yExtentDomain = null;\n return function(t) {\n xExtent = extent1.x = xi(t);\n yExtent = extent1.y = yi(t);\n event_({\n type: \"brush\",\n mode: \"resize\"\n });\n };\n }).each(\"end.brush\", function() {\n xExtentDomain = extent1.i;\n yExtentDomain = extent1.j;\n event_({\n type: \"brush\",\n mode: \"resize\"\n });\n event_({\n type: \"brushend\"\n });\n });\n } else {\n event_({\n type: \"brushstart\"\n });\n event_({\n type: \"brush\",\n mode: \"resize\"\n });\n event_({\n type: \"brushend\"\n });\n }\n });\n };\n function redraw(g) {\n g.selectAll(\".resize\").attr(\"transform\", function(d) {\n return \"translate(\" + xExtent[+/e$/.test(d)] + \",\" + yExtent[+/^s/.test(d)] + \")\";\n });\n }\n function redrawX(g) {\n g.select(\".extent\").attr(\"x\", xExtent[0]);\n g.selectAll(\".extent,.n>rect,.s>rect\").attr(\"width\", xExtent[1] - xExtent[0]);\n }\n function redrawY(g) {\n g.select(\".extent\").attr(\"y\", yExtent[0]);\n g.selectAll(\".extent,.e>rect,.w>rect\").attr(\"height\", yExtent[1] - yExtent[0]);\n }\n function brushstart() {\n var target = this, eventTarget = d3.select(d3.event.target), event_ = event.of(target, arguments), g = d3.select(target), resizing = eventTarget.datum(), resizingX = !/^(n|s)$/.test(resizing) && x, resizingY = !/^(e|w)$/.test(resizing) && y, dragging = eventTarget.classed(\"extent\"), dragRestore = d3_event_dragSuppress(target), center, origin = d3.mouse(target), offset;\n var w = d3.select(d3_window(target)).on(\"keydown.brush\", keydown).on(\"keyup.brush\", keyup);\n if (d3.event.changedTouches) {\n w.on(\"touchmove.brush\", brushmove).on(\"touchend.brush\", brushend);\n } else {\n w.on(\"mousemove.brush\", brushmove).on(\"mouseup.brush\", brushend);\n }\n g.interrupt().selectAll(\"*\").interrupt();\n if (dragging) {\n origin[0] = xExtent[0] - origin[0];\n origin[1] = yExtent[0] - origin[1];\n } else if (resizing) {\n var ex = +/w$/.test(resizing), ey = +/^n/.test(resizing);\n offset = [ xExtent[1 - ex] - origin[0], yExtent[1 - ey] - origin[1] ];\n origin[0] = xExtent[ex];\n origin[1] = yExtent[ey];\n } else if (d3.event.altKey) center = origin.slice();\n g.style(\"pointer-events\", \"none\").selectAll(\".resize\").style(\"display\", null);\n d3.select(\"body\").style(\"cursor\", eventTarget.style(\"cursor\"));\n event_({\n type: \"brushstart\"\n });\n brushmove();\n function keydown() {\n if (d3.event.keyCode == 32) {\n if (!dragging) {\n center = null;\n origin[0] -= xExtent[1];\n origin[1] -= yExtent[1];\n dragging = 2;\n }\n d3_eventPreventDefault();\n }\n }\n function keyup() {\n if (d3.event.keyCode == 32 && dragging == 2) {\n origin[0] += xExtent[1];\n origin[1] += yExtent[1];\n dragging = 0;\n d3_eventPreventDefault();\n }\n }\n function brushmove() {\n var point = d3.mouse(target), moved = false;\n if (offset) {\n point[0] += offset[0];\n point[1] += offset[1];\n }\n if (!dragging) {\n if (d3.event.altKey) {\n if (!center) center = [ (xExtent[0] + xExtent[1]) / 2, (yExtent[0] + yExtent[1]) / 2 ];\n origin[0] = xExtent[+(point[0] < center[0])];\n origin[1] = yExtent[+(point[1] < center[1])];\n } else center = null;\n }\n if (resizingX && move1(point, x, 0)) {\n redrawX(g);\n moved = true;\n }\n if (resizingY && move1(point, y, 1)) {\n redrawY(g);\n moved = true;\n }\n if (moved) {\n redraw(g);\n event_({\n type: \"brush\",\n mode: dragging ? \"move\" : \"resize\"\n });\n }\n }\n function move1(point, scale, i) {\n var range = d3_scaleRange(scale), r0 = range[0], r1 = range[1], position = origin[i], extent = i ? yExtent : xExtent, size = extent[1] - extent[0], min, max;\n if (dragging) {\n r0 -= position;\n r1 -= size + position;\n }\n min = (i ? yClamp : xClamp) ? Math.max(r0, Math.min(r1, point[i])) : point[i];\n if (dragging) {\n max = (min += position) + size;\n } else {\n if (center) position = Math.max(r0, Math.min(r1, 2 * center[i] - min));\n if (position < min) {\n max = min;\n min = position;\n } else {\n max = position;\n }\n }\n if (extent[0] != min || extent[1] != max) {\n if (i) yExtentDomain = null; else xExtentDomain = null;\n extent[0] = min;\n extent[1] = max;\n return true;\n }\n }\n function brushend() {\n brushmove();\n g.style(\"pointer-events\", \"all\").selectAll(\".resize\").style(\"display\", brush.empty() ? \"none\" : null);\n d3.select(\"body\").style(\"cursor\", null);\n w.on(\"mousemove.brush\", null).on(\"mouseup.brush\", null).on(\"touchmove.brush\", null).on(\"touchend.brush\", null).on(\"keydown.brush\", null).on(\"keyup.brush\", null);\n dragRestore();\n event_({\n type: \"brushend\"\n });\n }\n }\n brush.x = function(z) {\n if (!arguments.length) return x;\n x = z;\n resizes = d3_svg_brushResizes[!x << 1 | !y];\n return brush;\n };\n brush.y = function(z) {\n if (!arguments.length) return y;\n y = z;\n resizes = d3_svg_brushResizes[!x << 1 | !y];\n return brush;\n };\n brush.clamp = function(z) {\n if (!arguments.length) return x && y ? [ xClamp, yClamp ] : x ? xClamp : y ? yClamp : null;\n if (x && y) xClamp = !!z[0], yClamp = !!z[1]; else if (x) xClamp = !!z; else if (y) yClamp = !!z;\n return brush;\n };\n brush.extent = function(z) {\n var x0, x1, y0, y1, t;\n if (!arguments.length) {\n if (x) {\n if (xExtentDomain) {\n x0 = xExtentDomain[0], x1 = xExtentDomain[1];\n } else {\n x0 = xExtent[0], x1 = xExtent[1];\n if (x.invert) x0 = x.invert(x0), x1 = x.invert(x1);\n if (x1 < x0) t = x0, x0 = x1, x1 = t;\n }\n }\n if (y) {\n if (yExtentDomain) {\n y0 = yExtentDomain[0], y1 = yExtentDomain[1];\n } else {\n y0 = yExtent[0], y1 = yExtent[1];\n if (y.invert) y0 = y.invert(y0), y1 = y.invert(y1);\n if (y1 < y0) t = y0, y0 = y1, y1 = t;\n }\n }\n return x && y ? [ [ x0, y0 ], [ x1, y1 ] ] : x ? [ x0, x1 ] : y && [ y0, y1 ];\n }\n if (x) {\n x0 = z[0], x1 = z[1];\n if (y) x0 = x0[0], x1 = x1[0];\n xExtentDomain = [ x0, x1 ];\n if (x.invert) x0 = x(x0), x1 = x(x1);\n if (x1 < x0) t = x0, x0 = x1, x1 = t;\n if (x0 != xExtent[0] || x1 != xExtent[1]) xExtent = [ x0, x1 ];\n }\n if (y) {\n y0 = z[0], y1 = z[1];\n if (x) y0 = y0[1], y1 = y1[1];\n yExtentDomain = [ y0, y1 ];\n if (y.invert) y0 = y(y0), y1 = y(y1);\n if (y1 < y0) t = y0, y0 = y1, y1 = t;\n if (y0 != yExtent[0] || y1 != yExtent[1]) yExtent = [ y0, y1 ];\n }\n return brush;\n };\n brush.clear = function() {\n if (!brush.empty()) {\n xExtent = [ 0, 0 ], yExtent = [ 0, 0 ];\n xExtentDomain = yExtentDomain = null;\n }\n return brush;\n };\n brush.empty = function() {\n return !!x && xExtent[0] == xExtent[1] || !!y && yExtent[0] == yExtent[1];\n };\n return d3.rebind(brush, event, \"on\");\n };\n var d3_svg_brushCursor = {\n n: \"ns-resize\",\n e: \"ew-resize\",\n s: \"ns-resize\",\n w: \"ew-resize\",\n nw: \"nwse-resize\",\n ne: \"nesw-resize\",\n se: \"nwse-resize\",\n sw: \"nesw-resize\"\n };\n var d3_svg_brushResizes = [ [ \"n\", \"e\", \"s\", \"w\", \"nw\", \"ne\", \"se\", \"sw\" ], [ \"e\", \"w\" ], [ \"n\", \"s\" ], [] ];\n var d3_time_format = d3_time.format = d3_locale_enUS.timeFormat;\n var d3_time_formatUtc = d3_time_format.utc;\n var d3_time_formatIso = d3_time_formatUtc(\"%Y-%m-%dT%H:%M:%S.%LZ\");\n d3_time_format.iso = Date.prototype.toISOString && +new Date(\"2000-01-01T00:00:00.000Z\") ? d3_time_formatIsoNative : d3_time_formatIso;\n function d3_time_formatIsoNative(date) {\n return date.toISOString();\n }\n d3_time_formatIsoNative.parse = function(string) {\n var date = new Date(string);\n return isNaN(date) ? null : date;\n };\n d3_time_formatIsoNative.toString = d3_time_formatIso.toString;\n d3_time.second = d3_time_interval(function(date) {\n return new d3_date(Math.floor(date / 1e3) * 1e3);\n }, function(date, offset) {\n date.setTime(date.getTime() + Math.floor(offset) * 1e3);\n }, function(date) {\n return date.getSeconds();\n });\n d3_time.seconds = d3_time.second.range;\n d3_time.seconds.utc = d3_time.second.utc.range;\n d3_time.minute = d3_time_interval(function(date) {\n return new d3_date(Math.floor(date / 6e4) * 6e4);\n }, function(date, offset) {\n date.setTime(date.getTime() + Math.floor(offset) * 6e4);\n }, function(date) {\n return date.getMinutes();\n });\n d3_time.minutes = d3_time.minute.range;\n d3_time.minutes.utc = d3_time.minute.utc.range;\n d3_time.hour = d3_time_interval(function(date) {\n var timezone = date.getTimezoneOffset() / 60;\n return new d3_date((Math.floor(date / 36e5 - timezone) + timezone) * 36e5);\n }, function(date, offset) {\n date.setTime(date.getTime() + Math.floor(offset) * 36e5);\n }, function(date) {\n return date.getHours();\n });\n d3_time.hours = d3_time.hour.range;\n d3_time.hours.utc = d3_time.hour.utc.range;\n d3_time.month = d3_time_interval(function(date) {\n date = d3_time.day(date);\n date.setDate(1);\n return date;\n }, function(date, offset) {\n date.setMonth(date.getMonth() + offset);\n }, function(date) {\n return date.getMonth();\n });\n d3_time.months = d3_time.month.range;\n d3_time.months.utc = d3_time.month.utc.range;\n function d3_time_scale(linear, methods, format) {\n function scale(x) {\n return linear(x);\n }\n scale.invert = function(x) {\n return d3_time_scaleDate(linear.invert(x));\n };\n scale.domain = function(x) {\n if (!arguments.length) return linear.domain().map(d3_time_scaleDate);\n linear.domain(x);\n return scale;\n };\n function tickMethod(extent, count) {\n var span = extent[1] - extent[0], target = span / count, i = d3.bisect(d3_time_scaleSteps, target);\n return i == d3_time_scaleSteps.length ? [ methods.year, d3_scale_linearTickRange(extent.map(function(d) {\n return d / 31536e6;\n }), count)[2] ] : !i ? [ d3_time_scaleMilliseconds, d3_scale_linearTickRange(extent, count)[2] ] : methods[target / d3_time_scaleSteps[i - 1] < d3_time_scaleSteps[i] / target ? i - 1 : i];\n }\n scale.nice = function(interval, skip) {\n var domain = scale.domain(), extent = d3_scaleExtent(domain), method = interval == null ? tickMethod(extent, 10) : typeof interval === \"number\" && tickMethod(extent, interval);\n if (method) interval = method[0], skip = method[1];\n function skipped(date) {\n return !isNaN(date) && !interval.range(date, d3_time_scaleDate(+date + 1), skip).length;\n }\n return scale.domain(d3_scale_nice(domain, skip > 1 ? {\n floor: function(date) {\n while (skipped(date = interval.floor(date))) date = d3_time_scaleDate(date - 1);\n return date;\n },\n ceil: function(date) {\n while (skipped(date = interval.ceil(date))) date = d3_time_scaleDate(+date + 1);\n return date;\n }\n } : interval));\n };\n scale.ticks = function(interval, skip) {\n var extent = d3_scaleExtent(scale.domain()), method = interval == null ? tickMethod(extent, 10) : typeof interval === \"number\" ? tickMethod(extent, interval) : !interval.range && [ {\n range: interval\n }, skip ];\n if (method) interval = method[0], skip = method[1];\n return interval.range(extent[0], d3_time_scaleDate(+extent[1] + 1), skip < 1 ? 1 : skip);\n };\n scale.tickFormat = function() {\n return format;\n };\n scale.copy = function() {\n return d3_time_scale(linear.copy(), methods, format);\n };\n return d3_scale_linearRebind(scale, linear);\n }\n function d3_time_scaleDate(t) {\n return new Date(t);\n }\n var d3_time_scaleSteps = [ 1e3, 5e3, 15e3, 3e4, 6e4, 3e5, 9e5, 18e5, 36e5, 108e5, 216e5, 432e5, 864e5, 1728e5, 6048e5, 2592e6, 7776e6, 31536e6 ];\n var d3_time_scaleLocalMethods = [ [ d3_time.second, 1 ], [ d3_time.second, 5 ], [ d3_time.second, 15 ], [ d3_time.second, 30 ], [ d3_time.minute, 1 ], [ d3_time.minute, 5 ], [ d3_time.minute, 15 ], [ d3_time.minute, 30 ], [ d3_time.hour, 1 ], [ d3_time.hour, 3 ], [ d3_time.hour, 6 ], [ d3_time.hour, 12 ], [ d3_time.day, 1 ], [ d3_time.day, 2 ], [ d3_time.week, 1 ], [ d3_time.month, 1 ], [ d3_time.month, 3 ], [ d3_time.year, 1 ] ];\n var d3_time_scaleLocalFormat = d3_time_format.multi([ [ \".%L\", function(d) {\n return d.getMilliseconds();\n } ], [ \":%S\", function(d) {\n return d.getSeconds();\n } ], [ \"%I:%M\", function(d) {\n return d.getMinutes();\n } ], [ \"%I %p\", function(d) {\n return d.getHours();\n } ], [ \"%a %d\", function(d) {\n return d.getDay() && d.getDate() != 1;\n } ], [ \"%b %d\", function(d) {\n return d.getDate() != 1;\n } ], [ \"%B\", function(d) {\n return d.getMonth();\n } ], [ \"%Y\", d3_true ] ]);\n var d3_time_scaleMilliseconds = {\n range: function(start, stop, step) {\n return d3.range(Math.ceil(start / step) * step, +stop, step).map(d3_time_scaleDate);\n },\n floor: d3_identity,\n ceil: d3_identity\n };\n d3_time_scaleLocalMethods.year = d3_time.year;\n d3_time.scale = function() {\n return d3_time_scale(d3.scale.linear(), d3_time_scaleLocalMethods, d3_time_scaleLocalFormat);\n };\n var d3_time_scaleUtcMethods = d3_time_scaleLocalMethods.map(function(m) {\n return [ m[0].utc, m[1] ];\n });\n var d3_time_scaleUtcFormat = d3_time_formatUtc.multi([ [ \".%L\", function(d) {\n return d.getUTCMilliseconds();\n } ], [ \":%S\", function(d) {\n return d.getUTCSeconds();\n } ], [ \"%I:%M\", function(d) {\n return d.getUTCMinutes();\n } ], [ \"%I %p\", function(d) {\n return d.getUTCHours();\n } ], [ \"%a %d\", function(d) {\n return d.getUTCDay() && d.getUTCDate() != 1;\n } ], [ \"%b %d\", function(d) {\n return d.getUTCDate() != 1;\n } ], [ \"%B\", function(d) {\n return d.getUTCMonth();\n } ], [ \"%Y\", d3_true ] ]);\n d3_time_scaleUtcMethods.year = d3_time.year.utc;\n d3_time.scale.utc = function() {\n return d3_time_scale(d3.scale.linear(), d3_time_scaleUtcMethods, d3_time_scaleUtcFormat);\n };\n d3.text = d3_xhrType(function(request) {\n return request.responseText;\n });\n d3.json = function(url, callback) {\n return d3_xhr(url, \"application/json\", d3_json, callback);\n };\n function d3_json(request) {\n return JSON.parse(request.responseText);\n }\n d3.html = function(url, callback) {\n return d3_xhr(url, \"text/html\", d3_html, callback);\n };\n function d3_html(request) {\n var range = d3_document.createRange();\n range.selectNode(d3_document.body);\n return range.createContextualFragment(request.responseText);\n }\n d3.xml = d3_xhrType(function(request) {\n return request.responseXML;\n });\n if (typeof define === \"function\" && define.amd) this.d3 = d3, define(d3); else if (typeof module === \"object\" && module.exports) module.exports = d3; else this.d3 = d3;\n}();","import { computed } from 'vue'\n\nimport { toJalaali } from '../../utils/private/date-persian.js'\nimport { pad } from '../../utils/format.js'\n\nconst calendars = [ 'gregorian', 'persian' ]\n\nexport const useDatetimeProps = {\n modelValue: {\n required: true\n },\n\n mask: {\n type: String\n },\n locale: Object,\n\n calendar: {\n type: String,\n validator: v => calendars.includes(v),\n default: 'gregorian'\n },\n\n landscape: Boolean,\n\n color: String,\n textColor: String,\n\n square: Boolean,\n flat: Boolean,\n bordered: Boolean,\n\n readonly: Boolean,\n disable: Boolean\n}\n\nexport const useDatetimeEmits = [ 'update:modelValue' ]\n\nexport function getDayHash (date) {\n return date.year + '/' + pad(date.month) + '/' + pad(date.day)\n}\n\nexport default function (props, $q) {\n const editable = computed(() => {\n return props.disable !== true && props.readonly !== true\n })\n\n const tabindex = computed(() => {\n return editable.value === true ? 0 : -1\n })\n\n const headerClass = computed(() => {\n const cls = []\n props.color !== void 0 && cls.push(`bg-${ props.color }`)\n props.textColor !== void 0 && cls.push(`text-${ props.textColor }`)\n return cls.join(' ')\n })\n\n function getLocale () {\n return props.locale !== void 0\n ? { ...$q.lang.date, ...props.locale }\n : $q.lang.date\n }\n\n function getCurrentDate (dateOnly) {\n const d = new Date()\n const timeFill = dateOnly === true ? null : 0\n\n if (props.calendar === 'persian') {\n const jDate = toJalaali(d)\n return {\n year: jDate.jy,\n month: jDate.jm,\n day: jDate.jd\n }\n }\n\n return {\n year: d.getFullYear(),\n month: d.getMonth() + 1,\n day: d.getDate(),\n hour: timeFill,\n minute: timeFill,\n second: timeFill,\n millisecond: timeFill\n }\n }\n\n return {\n editable,\n tabindex,\n headerClass,\n\n getLocale,\n getCurrentDate\n }\n}\n","module.exports = __webpack_public_path__ + \"img/total.2c89ca80.png\";","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CopyActions.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CopyActions.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribe.vue?vue&type=style&index=0&id=522fa4f7&lang=scss&scoped=true\"","import { render } from \"./ShareComponent.vue?vue&type=template&id=7a5873ae&scoped=true\"\nimport script from \"./ShareComponent.vue?vue&type=script&lang=js\"\nexport * from \"./ShareComponent.vue?vue&type=script&lang=js\"\n\nimport \"./ShareComponent.vue?vue&type=style&index=0&id=7a5873ae&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-7a5873ae\"]])\n\nexport default __exports__\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QIcon,QBtn,QDialog,QCard,QCardSection});\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CantSubsOnMission.vue?vue&type=style&index=0&id=4adb5f32&lang=scss\"","\n\n\n\n\n","import { render } from \"./MyVouchersComponent.vue?vue&type=template&id=4266120a&scoped=true\"\nimport script from \"./MyVouchersComponent.vue?vue&type=script&lang=js\"\nexport * from \"./MyVouchersComponent.vue?vue&type=script&lang=js\"\n\nimport \"./MyVouchersComponent.vue?vue&type=style&index=0&id=4266120a&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-4266120a\"]])\n\nexport default __exports__\nimport QScrollArea from 'quasar/src/components/scroll-area/QScrollArea.js';\nimport QList from 'quasar/src/components/item/QList.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QScrollArea,QList,QItem,QItemSection,QIcon,QItemLabel});\n","import script from \"./ClusterItemComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ClusterItemComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ClusterItemComponent.vue?vue&type=style&index=0&id=2c038724&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2c038724\"]])\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg});\n","import script from \"./CardFlipPartnerSubscribe.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CardFlipPartnerSubscribe.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CardFlipPartnerSubscribe.vue?vue&type=style&index=0&id=522fa4f7&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-522fa4f7\"]])\n\nexport default __exports__\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCard,QItemLabel,QCardActions,QBtn});qInstall(script, 'directives', {ClosePopup});\n","export const nativeShare = async ({ title, text /*files = null*/ }) => {\n try {\n await window.navigator.share({\n title: title,\n text: text,\n // files: files ? [files] : undefined\n });\n } catch (error) {\n console.log(error);\n alert(\"Erro ao compartilhar, sem suporte para o navegador\");\n }\n};\n\nexport const shareToSocialMedia = (platform, value) => {\n let url = \"\";\n switch (platform) {\n case \"facebook\":\n url = `https://www.facebook.com/sharer/sharer.php?u=${encodeURIComponent(\n value\n )}`;\n break;\n case \"whatsapp\":\n if (\n /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(\n navigator.userAgent\n )\n ) {\n url = `https://api.whatsapp.com/send?text=${encodeURIComponent(value)}`;\n } else {\n url = `https://web.whatsapp.com/send?text=${encodeURIComponent(value)}`;\n }\n break;\n default:\n console.error(\"Plataforma de compartilhamento não suportada\");\n return;\n }\n\n // Abre uma nova janela do navegador com a URL gerada para compartilhamento\n window.open(url, \"_blank\");\n};\n","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./SideTitleComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./SideTitleComponent.vue?vue&type=script&lang=js\"","import script from \"./CantSubsOnMission.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CantSubsOnMission.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CantSubsOnMission.vue?vue&type=style&index=0&id=4adb5f32&lang=scss\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QBar from 'quasar/src/components/bar/QBar.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QBtn,QDialog,QCard,QBar,QSpace,QTooltip,QCardSection,QIcon,QCardActions});qInstall(script, 'directives', {ClosePopup});\n","// extracted by mini-css-extract-plugin","import script from \"./drive.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./drive.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./drive.vue?vue&type=style&index=0&id=8a73a4c8&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-8a73a4c8\"]])\n\nexport default __exports__\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QIcon});\n","// extracted by mini-css-extract-plugin","import { render } from \"./CarouselMultiItensComponent.vue?vue&type=template&id=1ab9d98c&scoped=true\"\nimport script from \"./CarouselMultiItensComponent.vue?vue&type=script&lang=js\"\nexport * from \"./CarouselMultiItensComponent.vue?vue&type=script&lang=js\"\n\nimport \"./CarouselMultiItensComponent.vue?vue&type=style&index=0&id=1ab9d98c&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1ab9d98c\"]])\n\nexport default __exports__\nimport QCarousel from 'quasar/src/components/carousel/QCarousel.js';\nimport QCarouselSlide from 'quasar/src/components/carousel/QCarouselSlide.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCarousel,QCarouselSlide});\n","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterPartnerInfoDialog.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterPartnerInfoDialog.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./calendar.vue?vue&type=style&index=0&id=9c9facc0&lang=css\"","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import { h } from 'vue'\n\nexport default function (props, content) {\n return h('div', props, [\n h('table', { class: 'q-table' }, content)\n ])\n}\n","import { render } from \"./pending-docs.vue?vue&type=template&id=0a5479d2&scoped=true\"\nimport script from \"./pending-docs.vue?vue&type=script&lang=js\"\nexport * from \"./pending-docs.vue?vue&type=script&lang=js\"\n\nimport \"./pending-docs.vue?vue&type=style&index=0&id=0a5479d2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-0a5479d2\"]])\n\nexport default __exports__\nimport QCircularProgress from 'quasar/src/components/circular-progress/QCircularProgress.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCircularProgress});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareFlipnetComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareFlipnetComponent.vue?vue&type=script&setup=true&lang=js\"","import script from \"./CardPresentationSharingProducts.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CardPresentationSharingProducts.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CardPresentationSharingProducts.vue?vue&type=style&index=0&id=9b1f3b90&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-9b1f3b90\"]])\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QBtn,QIcon});\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./showUp.vue?vue&type=template&id=b7fcea06\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./lastPointsReleased.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./lastPointsReleased.vue?vue&type=script&lang=js\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ShareComponent.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widget.vue?vue&type=style&index=0&id=50a84df2&lang=scss&scoped=true\"","\n\n\n\n\n","export function sortDate (a, b) {\n return (new Date(a)) - (new Date(b))\n}\n\nexport function sortBoolean (a, b) {\n return a && !b\n ? -1\n : (!a && b ? 1 : 0)\n}\n","import { render } from \"./shareNow.vue?vue&type=template&id=520ba1cc&scoped=true\"\nimport script from \"./shareNow.vue?vue&type=script&lang=js\"\nexport * from \"./shareNow.vue?vue&type=script&lang=js\"\n\nimport \"./shareNow.vue?vue&type=style&index=0&id=520ba1cc&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-520ba1cc\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton,QBtn});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./firstAcessTutorial.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./firstAcessTutorial.vue?vue&type=script&lang=js\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyVouchersComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyVouchersComponent.vue?vue&type=script&lang=js\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleCompaniesComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleCompaniesComponent.vue?vue&type=script&setup=true&lang=js\"","import { render } from \"./lastPointsReleased.vue?vue&type=template&id=6a078528\"\nimport script from \"./lastPointsReleased.vue?vue&type=script&lang=js\"\nexport * from \"./lastPointsReleased.vue?vue&type=script&lang=js\"\n\nimport \"./lastPointsReleased.vue?vue&type=style&index=0&id=6a078528&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__\nimport QScrollArea from 'quasar/src/components/scroll-area/QScrollArea.js';\nimport QTable from 'quasar/src/components/table/QTable.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QScrollArea,QTable});\n","import { h, ref, computed, watch, onBeforeMount, onMounted, onBeforeUnmount, onActivated, onDeactivated } from 'vue'\n\nimport QList from '../item/QList.js'\nimport QMarkupTable from '../markup-table/QMarkupTable.js'\nimport getTableMiddle from '../table/get-table-middle.js'\n\nimport { useVirtualScroll, useVirtualScrollProps } from './use-virtual-scroll.js'\n\nimport { createComponent } from '../../utils/private/create.js'\nimport { getScrollTarget } from '../../utils/scroll.js'\nimport { listenOpts } from '../../utils/event.js'\nimport { hMergeSlot } from '../../utils/private/render.js'\n\nconst comps = {\n list: QList,\n table: QMarkupTable\n}\n\nconst typeOptions = [ 'list', 'table', '__qtable' ]\n\nexport default createComponent({\n name: 'QVirtualScroll',\n\n props: {\n ...useVirtualScrollProps,\n\n type: {\n type: String,\n default: 'list',\n validator: v => typeOptions.includes(v)\n },\n\n items: {\n type: Array,\n default: () => []\n },\n\n itemsFn: Function,\n itemsSize: Number,\n\n scrollTarget: {\n default: void 0\n }\n },\n\n setup (props, { slots, attrs }) {\n let localScrollTarget\n const rootRef = ref(null)\n\n const virtualScrollLength = computed(() => (\n props.itemsSize >= 0 && props.itemsFn !== void 0\n ? parseInt(props.itemsSize, 10)\n : (Array.isArray(props.items) ? props.items.length : 0)\n ))\n\n const {\n virtualScrollSliceRange,\n localResetVirtualScroll,\n padVirtualScroll,\n onVirtualScrollEvt\n } = useVirtualScroll({\n virtualScrollLength, getVirtualScrollTarget, getVirtualScrollEl\n })\n\n const virtualScrollScope = computed(() => {\n if (virtualScrollLength.value === 0) {\n return []\n }\n\n const mapFn = (item, i) => ({\n index: virtualScrollSliceRange.value.from + i,\n item\n })\n\n return props.itemsFn === void 0\n ? props.items.slice(virtualScrollSliceRange.value.from, virtualScrollSliceRange.value.to).map(mapFn)\n : props.itemsFn(virtualScrollSliceRange.value.from, virtualScrollSliceRange.value.to - virtualScrollSliceRange.value.from).map(mapFn)\n })\n\n const classes = computed(() =>\n 'q-virtual-scroll q-virtual-scroll' + (props.virtualScrollHorizontal === true ? '--horizontal' : '--vertical')\n + (props.scrollTarget !== void 0 ? '' : ' scroll')\n )\n\n const attributes = computed(() => (\n props.scrollTarget !== void 0 ? {} : { tabindex: 0 }\n ))\n\n watch(virtualScrollLength, () => {\n localResetVirtualScroll()\n })\n\n watch(() => props.scrollTarget, () => {\n unconfigureScrollTarget()\n configureScrollTarget()\n })\n\n function getVirtualScrollEl () {\n return rootRef.value.$el || rootRef.value\n }\n\n function getVirtualScrollTarget () {\n return localScrollTarget\n }\n\n function configureScrollTarget () {\n localScrollTarget = getScrollTarget(getVirtualScrollEl(), props.scrollTarget)\n localScrollTarget.addEventListener('scroll', onVirtualScrollEvt, listenOpts.passive)\n }\n\n function unconfigureScrollTarget () {\n if (localScrollTarget !== void 0) {\n localScrollTarget.removeEventListener('scroll', onVirtualScrollEvt, listenOpts.passive)\n localScrollTarget = void 0\n }\n }\n\n function __getVirtualChildren () {\n let child = padVirtualScroll(\n props.type === 'list' ? 'div' : 'tbody',\n virtualScrollScope.value.map(slots.default)\n )\n\n if (slots.before !== void 0) {\n child = slots.before().concat(child)\n }\n\n return hMergeSlot(slots.after, child)\n }\n\n onBeforeMount(() => {\n localResetVirtualScroll()\n })\n\n onMounted(() => {\n configureScrollTarget()\n })\n\n onActivated(() => {\n configureScrollTarget()\n })\n\n onDeactivated(() => {\n unconfigureScrollTarget()\n })\n\n onBeforeUnmount(() => {\n unconfigureScrollTarget()\n })\n\n return () => {\n if (slots.default === void 0) {\n console.error('QVirtualScroll: default scoped slot is required for rendering')\n return\n }\n\n return props.type === '__qtable'\n ? getTableMiddle(\n { ref: rootRef, class: 'q-table__middle ' + classes.value },\n __getVirtualChildren()\n )\n : h(comps[ props.type ], {\n ...attrs,\n ref: rootRef,\n class: [ attrs.class, classes.value ],\n ...attributes.value\n }, __getVirtualChildren)\n }\n }\n})\n","export { default } from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucherIcon.vue?vue&type=script&lang=js\"; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucherIcon.vue?vue&type=script&lang=js\"","export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucherIcon.vue?vue&type=template&id=a784dc30&scoped=true\"","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./invite.vue?vue&type=style&index=0&id=b5b78ea0&scoped=true&lang=css\"","import script from \"./CopyActions.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CopyActions.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CopyActions.vue?vue&type=style&index=0&id=27d9018e&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-27d9018e\"]])\n\nexport default __exports__\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QMenu from 'quasar/src/components/menu/QMenu.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QBtn,QIcon,QMenu});\n","\n\n\n\n\n\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./myStoreSkeleton.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./myStoreSkeleton.vue?vue&type=script&lang=js\"","// extracted by mini-css-extract-plugin","import script from \"./CardFlipPartnerMission.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CardFlipPartnerMission.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./CardFlipPartnerMission.vue?vue&type=style&index=0&id=2017d844&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-2017d844\"]])\n\nexport default __exports__\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QBadge from 'quasar/src/components/badge/QBadge.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCard,QItem,QItemSection,QItemLabel,QCardSection,QBadge,QIcon,QSpace});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./rickshawChart.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./rickshawChart.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DefaultDashboard.vue?vue&type=style&index=0&id=7e1980a2&lang=scss\"","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucher.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucher.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./products.vue?vue&type=style&index=0&id=241a078b&lang=scss&scoped=true\"","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./rickshawChart.vue?vue&type=style&index=0&id=6031efbf&lang=scss\"","module.exports = __webpack_public_path__ + \"img/total_sales.c7011bab.png\";","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./SideTitleComponent.vue?vue&type=style&index=0&id=078670a2&lang=scss&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./pending-docs.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./pending-docs.vue?vue&type=script&lang=js\"","import { render } from \"./myStoreSkeleton.vue?vue&type=template&id=43386ce2\"\nimport script from \"./myStoreSkeleton.vue?vue&type=script&lang=js\"\nexport * from \"./myStoreSkeleton.vue?vue&type=script&lang=js\"\n\nimport \"./myStoreSkeleton.vue?vue&type=style&index=0&id=43386ce2&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton});\n","// extracted by mini-css-extract-plugin","import { render } from \"./SideTitleComponent.vue?vue&type=template&id=078670a2&scoped=true\"\nimport script from \"./SideTitleComponent.vue?vue&type=script&lang=js\"\nexport * from \"./SideTitleComponent.vue?vue&type=script&lang=js\"\n\nimport \"./SideTitleComponent.vue?vue&type=style&index=0&id=078670a2&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-078670a2\"]])\n\nexport default __exports__\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QBtn});\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./visitorsBoxComponent.vue?vue&type=style&index=0&id=42bcf332&scoped=true&lang=scss\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClusterPartnerInfoDialog.vue?vue&type=style&index=0&id=ef395fc0&scoped=true&lang=scss\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklist.vue?vue&type=style&index=0&id=1c91985f&scoped=true&lang=scss\"","import { render } from \"./showUp.vue?vue&type=template&id=b7fcea06\"\nimport script from \"./showUp.vue?vue&type=script&lang=js\"\nexport * from \"./showUp.vue?vue&type=script&lang=js\"\n\nimport \"./showUp.vue?vue&type=style&index=0&id=b7fcea06&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render]])\n\nexport default __exports__\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QBar from 'quasar/src/components/bar/QBar.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QDialog,QCard,QBar,QSpace,QBtn,QTooltip,QCardSection,QCardActions});qInstall(script, 'directives', {ClosePopup});\n","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClustersAndShareComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./ClustersAndShareComponent.vue?vue&type=script&setup=true&lang=js\"","\n\n\n\n\n","\n\n\n","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widgetsContainer.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./widgetsContainer.vue?vue&type=script&setup=true&lang=js\"","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","\n\n\n\n\n","import { render } from \"./visitorsBoxComponent.vue?vue&type=template&id=42bcf332&scoped=true\"\nimport script from \"./visitorsBoxComponent.vue?vue&type=script&lang=js\"\nexport * from \"./visitorsBoxComponent.vue?vue&type=script&lang=js\"\n\nimport \"./visitorsBoxComponent.vue?vue&type=style&index=0&id=42bcf332&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-42bcf332\"]])\n\nexport default __exports__\nimport QSelect from 'quasar/src/components/select/QSelect.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSelect,QCard,QCardSection,QIcon});\n","/* eslint no-fallthrough: 0 */\n\nimport { isDate } from './is.js'\nimport { pad, capitalize } from './format.js'\nimport { jalaaliMonthLength } from './private/date-persian.js'\nimport lang, { defaultLang } from '../lang.js'\n\nconst\n MILLISECONDS_IN_DAY = 86400000,\n MILLISECONDS_IN_HOUR = 3600000,\n MILLISECONDS_IN_MINUTE = 60000,\n defaultMask = 'YYYY-MM-DDTHH:mm:ss.SSSZ',\n token = /\\[((?:[^\\]\\\\]|\\\\]|\\\\)*)\\]|d{1,4}|M{1,4}|m{1,2}|w{1,2}|Qo|Do|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]/g,\n reverseToken = /(\\[[^\\]]*\\])|d{1,4}|M{1,4}|m{1,2}|w{1,2}|Qo|Do|D{1,4}|YY(?:YY)?|H{1,2}|h{1,2}|s{1,2}|S{1,3}|Z{1,2}|a{1,2}|[AQExX]|([.*+:?^,\\s${}()|\\\\]+)/g,\n regexStore = {}\n\nfunction getRegexData (mask, dateLocale) {\n const\n days = '(' + dateLocale.days.join('|') + ')',\n key = mask + days\n\n if (regexStore[ key ] !== void 0) {\n return regexStore[ key ]\n }\n\n const\n daysShort = '(' + dateLocale.daysShort.join('|') + ')',\n months = '(' + dateLocale.months.join('|') + ')',\n monthsShort = '(' + dateLocale.monthsShort.join('|') + ')'\n\n const map = {}\n let index = 0\n\n const regexText = mask.replace(reverseToken, match => {\n index++\n switch (match) {\n case 'YY':\n map.YY = index\n return '(-?\\\\d{1,2})'\n case 'YYYY':\n map.YYYY = index\n return '(-?\\\\d{1,4})'\n case 'M':\n map.M = index\n return '(\\\\d{1,2})'\n case 'MM':\n map.M = index // bumping to M\n return '(\\\\d{2})'\n case 'MMM':\n map.MMM = index\n return monthsShort\n case 'MMMM':\n map.MMMM = index\n return months\n case 'D':\n map.D = index\n return '(\\\\d{1,2})'\n case 'Do':\n map.D = index++ // bumping to D\n return '(\\\\d{1,2}(st|nd|rd|th))'\n case 'DD':\n map.D = index // bumping to D\n return '(\\\\d{2})'\n case 'H':\n map.H = index\n return '(\\\\d{1,2})'\n case 'HH':\n map.H = index // bumping to H\n return '(\\\\d{2})'\n case 'h':\n map.h = index\n return '(\\\\d{1,2})'\n case 'hh':\n map.h = index // bumping to h\n return '(\\\\d{2})'\n case 'm':\n map.m = index\n return '(\\\\d{1,2})'\n case 'mm':\n map.m = index // bumping to m\n return '(\\\\d{2})'\n case 's':\n map.s = index\n return '(\\\\d{1,2})'\n case 'ss':\n map.s = index // bumping to s\n return '(\\\\d{2})'\n case 'S':\n map.S = index\n return '(\\\\d{1})'\n case 'SS':\n map.S = index // bump to S\n return '(\\\\d{2})'\n case 'SSS':\n map.S = index // bump to S\n return '(\\\\d{3})'\n case 'A':\n map.A = index\n return '(AM|PM)'\n case 'a':\n map.a = index\n return '(am|pm)'\n case 'aa':\n map.aa = index\n return '(a\\\\.m\\\\.|p\\\\.m\\\\.)'\n\n case 'ddd':\n return daysShort\n case 'dddd':\n return days\n case 'Q':\n case 'd':\n case 'E':\n return '(\\\\d{1})'\n case 'Qo':\n return '(1st|2nd|3rd|4th)'\n case 'DDD':\n case 'DDDD':\n return '(\\\\d{1,3})'\n case 'w':\n return '(\\\\d{1,2})'\n case 'ww':\n return '(\\\\d{2})'\n\n case 'Z': // to split: (?:(Z)()()|([+-])?(\\\\d{2}):?(\\\\d{2}))\n map.Z = index\n return '(Z|[+-]\\\\d{2}:\\\\d{2})'\n case 'ZZ':\n map.ZZ = index\n return '(Z|[+-]\\\\d{2}\\\\d{2})'\n\n case 'X':\n map.X = index\n return '(-?\\\\d+)'\n case 'x':\n map.x = index\n return '(-?\\\\d{4,})'\n\n default:\n index--\n if (match[ 0 ] === '[') {\n match = match.substring(1, match.length - 1)\n }\n return match.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\$&')\n }\n })\n\n const res = { map, regex: new RegExp('^' + regexText) }\n regexStore[ key ] = res\n\n return res\n}\n\nfunction getDateLocale (paramDateLocale, langProps) {\n return paramDateLocale !== void 0\n ? paramDateLocale\n : (\n langProps !== void 0\n ? langProps.date\n : defaultLang.date\n )\n}\n\nfunction formatTimezone (offset, delimeter = '') {\n const\n sign = offset > 0 ? '-' : '+',\n absOffset = Math.abs(offset),\n hours = Math.floor(absOffset / 60),\n minutes = absOffset % 60\n\n return sign + pad(hours) + delimeter + pad(minutes)\n}\n\nfunction applyYearMonthDayChange (date, mod, sign) {\n let\n year = date.getFullYear(),\n month = date.getMonth()\n\n const day = date.getDate()\n\n if (mod.year !== void 0) {\n year += sign * mod.year\n delete mod.year\n }\n\n if (mod.month !== void 0) {\n month += sign * mod.month\n delete mod.month\n }\n\n date.setDate(1)\n date.setMonth(2)\n\n date.setFullYear(year)\n date.setMonth(month)\n date.setDate(Math.min(day, daysInMonth(date)))\n\n if (mod.date !== void 0) {\n date.setDate(date.getDate() + sign * mod.date)\n delete mod.date\n }\n\n return date\n}\n\nfunction applyYearMonthDay (date, mod, middle) {\n const\n year = mod.year !== void 0 ? mod.year : date[ `get${ middle }FullYear` ](),\n month = mod.month !== void 0 ? mod.month - 1 : date[ `get${ middle }Month` ](),\n maxDay = (new Date(year, month + 1, 0)).getDate(),\n day = Math.min(maxDay, mod.date !== void 0 ? mod.date : date[ `get${ middle }Date` ]())\n\n date[ `set${ middle }Date` ](1)\n date[ `set${ middle }Month` ](2)\n\n date[ `set${ middle }FullYear` ](year)\n date[ `set${ middle }Month` ](month)\n date[ `set${ middle }Date` ](day)\n\n delete mod.year\n delete mod.month\n delete mod.date\n\n return date\n}\n\nfunction getChange (date, rawMod, sign) {\n const\n mod = normalizeMod(rawMod),\n d = new Date(date),\n t = mod.year !== void 0 || mod.month !== void 0 || mod.date !== void 0\n ? applyYearMonthDayChange(d, mod, sign) // removes year/month/day\n : d\n\n for (const key in mod) {\n const op = capitalize(key)\n t[ `set${ op }` ](t[ `get${ op }` ]() + sign * mod[ key ])\n }\n\n return t\n}\n\nfunction normalizeMod (mod) {\n const acc = { ...mod }\n\n if (mod.years !== void 0) {\n acc.year = mod.years\n delete acc.years\n }\n\n if (mod.months !== void 0) {\n acc.month = mod.months\n delete acc.months\n }\n\n if (mod.days !== void 0) {\n acc.date = mod.days\n delete acc.days\n }\n if (mod.day !== void 0) {\n acc.date = mod.day\n delete acc.day\n }\n\n if (mod.hour !== void 0) {\n acc.hours = mod.hour\n delete acc.hour\n }\n\n if (mod.minute !== void 0) {\n acc.minutes = mod.minute\n delete acc.minute\n }\n\n if (mod.second !== void 0) {\n acc.seconds = mod.second\n delete acc.second\n }\n\n if (mod.millisecond !== void 0) {\n acc.milliseconds = mod.millisecond\n delete acc.millisecond\n }\n\n return acc\n}\n\nexport function adjustDate (date, rawMod, utc) {\n const\n mod = normalizeMod(rawMod),\n middle = utc === true ? 'UTC' : '',\n d = new Date(date),\n t = mod.year !== void 0 || mod.month !== void 0 || mod.date !== void 0\n ? applyYearMonthDay(d, mod, middle) // removes year/month/day\n : d\n\n for (const key in mod) {\n const op = key.charAt(0).toUpperCase() + key.slice(1)\n t[ `set${ middle }${ op }` ](mod[ key ])\n }\n\n return t\n}\n\nexport function extractDate (str, mask, dateLocale) {\n const d = __splitDate(str, mask, dateLocale)\n\n const date = new Date(\n d.year,\n d.month === null ? null : d.month - 1,\n d.day === null ? 1 : d.day,\n d.hour,\n d.minute,\n d.second,\n d.millisecond\n )\n\n const tzOffset = date.getTimezoneOffset()\n\n return d.timezoneOffset === null || d.timezoneOffset === tzOffset\n ? date\n : getChange(date, { minutes: d.timezoneOffset - tzOffset }, 1)\n}\n\nexport function __splitDate (str, mask, dateLocale, calendar, defaultModel) {\n const date = {\n year: null,\n month: null,\n day: null,\n hour: null,\n minute: null,\n second: null,\n millisecond: null,\n timezoneOffset: null,\n dateHash: null,\n timeHash: null\n }\n\n defaultModel !== void 0 && Object.assign(date, defaultModel)\n\n if (\n str === void 0\n || str === null\n || str === ''\n || typeof str !== 'string'\n ) {\n return date\n }\n\n if (mask === void 0) {\n mask = defaultMask\n }\n\n const\n langOpts = getDateLocale(dateLocale, lang.props),\n months = langOpts.months,\n monthsShort = langOpts.monthsShort\n\n const { regex, map } = getRegexData(mask, langOpts)\n\n const match = str.match(regex)\n\n if (match === null) {\n return date\n }\n\n let tzString = ''\n\n if (map.X !== void 0 || map.x !== void 0) {\n const stamp = parseInt(match[ map.X !== void 0 ? map.X : map.x ], 10)\n\n if (isNaN(stamp) === true || stamp < 0) {\n return date\n }\n\n const d = new Date(stamp * (map.X !== void 0 ? 1000 : 1))\n\n date.year = d.getFullYear()\n date.month = d.getMonth() + 1\n date.day = d.getDate()\n date.hour = d.getHours()\n date.minute = d.getMinutes()\n date.second = d.getSeconds()\n date.millisecond = d.getMilliseconds()\n }\n else {\n if (map.YYYY !== void 0) {\n date.year = parseInt(match[ map.YYYY ], 10)\n }\n else if (map.YY !== void 0) {\n const y = parseInt(match[ map.YY ], 10)\n date.year = y < 0 ? y : 2000 + y\n }\n\n if (map.M !== void 0) {\n date.month = parseInt(match[ map.M ], 10)\n if (date.month < 1 || date.month > 12) {\n return date\n }\n }\n else if (map.MMM !== void 0) {\n date.month = monthsShort.indexOf(match[ map.MMM ]) + 1\n }\n else if (map.MMMM !== void 0) {\n date.month = months.indexOf(match[ map.MMMM ]) + 1\n }\n\n if (map.D !== void 0) {\n date.day = parseInt(match[ map.D ], 10)\n\n if (date.year === null || date.month === null || date.day < 1) {\n return date\n }\n\n const maxDay = calendar !== 'persian'\n ? (new Date(date.year, date.month, 0)).getDate()\n : jalaaliMonthLength(date.year, date.month)\n\n if (date.day > maxDay) {\n return date\n }\n }\n\n if (map.H !== void 0) {\n date.hour = parseInt(match[ map.H ], 10) % 24\n }\n else if (map.h !== void 0) {\n date.hour = parseInt(match[ map.h ], 10) % 12\n if (\n (map.A && match[ map.A ] === 'PM')\n || (map.a && match[ map.a ] === 'pm')\n || (map.aa && match[ map.aa ] === 'p.m.')\n ) {\n date.hour += 12\n }\n date.hour = date.hour % 24\n }\n\n if (map.m !== void 0) {\n date.minute = parseInt(match[ map.m ], 10) % 60\n }\n\n if (map.s !== void 0) {\n date.second = parseInt(match[ map.s ], 10) % 60\n }\n\n if (map.S !== void 0) {\n date.millisecond = parseInt(match[ map.S ], 10) * 10 ** (3 - match[ map.S ].length)\n }\n\n if (map.Z !== void 0 || map.ZZ !== void 0) {\n tzString = (map.Z !== void 0 ? match[ map.Z ].replace(':', '') : match[ map.ZZ ])\n date.timezoneOffset = (tzString[ 0 ] === '+' ? -1 : 1) * (60 * tzString.slice(1, 3) + 1 * tzString.slice(3, 5))\n }\n }\n\n date.dateHash = pad(date.year, 6) + '/' + pad(date.month) + '/' + pad(date.day)\n date.timeHash = pad(date.hour) + ':' + pad(date.minute) + ':' + pad(date.second) + tzString\n\n return date\n}\n\nexport function isValid (date) {\n return typeof date === 'number'\n ? true\n : isNaN(Date.parse(date)) === false\n}\n\nexport function buildDate (mod, utc) {\n return adjustDate(new Date(), mod, utc)\n}\n\nexport function getDayOfWeek (date) {\n const dow = new Date(date).getDay()\n return dow === 0 ? 7 : dow\n}\n\nexport function getWeekOfYear (date) {\n // Remove time components of date\n const thursday = new Date(date.getFullYear(), date.getMonth(), date.getDate())\n\n // Change date to Thursday same week\n thursday.setDate(thursday.getDate() - ((thursday.getDay() + 6) % 7) + 3)\n\n // Take January 4th as it is always in week 1 (see ISO 8601)\n const firstThursday = new Date(thursday.getFullYear(), 0, 4)\n\n // Change date to Thursday same week\n firstThursday.setDate(firstThursday.getDate() - ((firstThursday.getDay() + 6) % 7) + 3)\n\n // Check if daylight-saving-time-switch occurred and correct for it\n const ds = thursday.getTimezoneOffset() - firstThursday.getTimezoneOffset()\n thursday.setHours(thursday.getHours() - ds)\n\n // Number of weeks between target Thursday and first Thursday\n const weekDiff = (thursday - firstThursday) / (MILLISECONDS_IN_DAY * 7)\n return 1 + Math.floor(weekDiff)\n}\n\nfunction getDayIdentifier (date) {\n return date.getFullYear() * 10000 + date.getMonth() * 100 + date.getDate()\n}\n\nfunction getDateIdentifier (date, onlyDate /* = false */) {\n const d = new Date(date)\n return onlyDate === true ? getDayIdentifier(d) : d.getTime()\n}\n\nexport function isBetweenDates (date, from, to, opts = {}) {\n const\n d1 = getDateIdentifier(from, opts.onlyDate),\n d2 = getDateIdentifier(to, opts.onlyDate),\n cur = getDateIdentifier(date, opts.onlyDate)\n\n return (cur > d1 || (opts.inclusiveFrom === true && cur === d1))\n && (cur < d2 || (opts.inclusiveTo === true && cur === d2))\n}\n\nexport function addToDate (date, mod) {\n return getChange(date, mod, 1)\n}\nexport function subtractFromDate (date, mod) {\n return getChange(date, mod, -1)\n}\n\nexport function startOfDate (date, unit, utc) {\n const\n t = new Date(date),\n prefix = `set${ utc === true ? 'UTC' : '' }`\n\n switch (unit) {\n case 'year':\n case 'years':\n t[ `${ prefix }Month` ](0)\n case 'month':\n case 'months':\n t[ `${ prefix }Date` ](1)\n case 'day':\n case 'days':\n case 'date':\n t[ `${ prefix }Hours` ](0)\n case 'hour':\n case 'hours':\n t[ `${ prefix }Minutes` ](0)\n case 'minute':\n case 'minutes':\n t[ `${ prefix }Seconds` ](0)\n case 'second':\n case 'seconds':\n t[ `${ prefix }Milliseconds` ](0)\n }\n return t\n}\n\nexport function endOfDate (date, unit, utc) {\n const\n t = new Date(date),\n prefix = `set${ utc === true ? 'UTC' : '' }`\n\n switch (unit) {\n case 'year':\n case 'years':\n t[ `${ prefix }Month` ](11)\n case 'month':\n case 'months':\n t[ `${ prefix }Date` ](daysInMonth(t))\n case 'day':\n case 'days':\n case 'date':\n t[ `${ prefix }Hours` ](23)\n case 'hour':\n case 'hours':\n t[ `${ prefix }Minutes` ](59)\n case 'minute':\n case 'minutes':\n t[ `${ prefix }Seconds` ](59)\n case 'second':\n case 'seconds':\n t[ `${ prefix }Milliseconds` ](999)\n }\n return t\n}\n\nexport function getMaxDate (date /* , ...args */) {\n let t = new Date(date)\n Array.prototype.slice.call(arguments, 1).forEach(d => {\n t = Math.max(t, new Date(d))\n })\n return t\n}\n\nexport function getMinDate (date /*, ...args */) {\n let t = new Date(date)\n Array.prototype.slice.call(arguments, 1).forEach(d => {\n t = Math.min(t, new Date(d))\n })\n return t\n}\n\nfunction getDiff (t, sub, interval) {\n return (\n (t.getTime() - t.getTimezoneOffset() * MILLISECONDS_IN_MINUTE)\n - (sub.getTime() - sub.getTimezoneOffset() * MILLISECONDS_IN_MINUTE)\n ) / interval\n}\n\nexport function getDateDiff (date, subtract, unit = 'days') {\n const\n t = new Date(date),\n sub = new Date(subtract)\n\n switch (unit) {\n case 'years':\n case 'year':\n return (t.getFullYear() - sub.getFullYear())\n\n case 'months':\n case 'month':\n return (t.getFullYear() - sub.getFullYear()) * 12 + t.getMonth() - sub.getMonth()\n\n case 'days':\n case 'day':\n case 'date':\n return getDiff(startOfDate(t, 'day'), startOfDate(sub, 'day'), MILLISECONDS_IN_DAY)\n\n case 'hours':\n case 'hour':\n return getDiff(startOfDate(t, 'hour'), startOfDate(sub, 'hour'), MILLISECONDS_IN_HOUR)\n\n case 'minutes':\n case 'minute':\n return getDiff(startOfDate(t, 'minute'), startOfDate(sub, 'minute'), MILLISECONDS_IN_MINUTE)\n\n case 'seconds':\n case 'second':\n return getDiff(startOfDate(t, 'second'), startOfDate(sub, 'second'), 1000)\n }\n}\n\nexport function getDayOfYear (date) {\n return getDateDiff(date, startOfDate(date, 'year'), 'days') + 1\n}\n\nexport function inferDateFormat (date) {\n return isDate(date) === true\n ? 'date'\n : (typeof date === 'number' ? 'number' : 'string')\n}\n\nexport function getDateBetween (date, min, max) {\n const t = new Date(date)\n\n if (min) {\n const low = new Date(min)\n if (t < low) {\n return low\n }\n }\n\n if (max) {\n const high = new Date(max)\n if (t > high) {\n return high\n }\n }\n\n return t\n}\n\nexport function isSameDate (date, date2, unit) {\n const\n t = new Date(date),\n d = new Date(date2)\n\n if (unit === void 0) {\n return t.getTime() === d.getTime()\n }\n\n switch (unit) {\n case 'second':\n case 'seconds':\n if (t.getSeconds() !== d.getSeconds()) {\n return false\n }\n case 'minute': // intentional fall-through\n case 'minutes':\n if (t.getMinutes() !== d.getMinutes()) {\n return false\n }\n case 'hour': // intentional fall-through\n case 'hours':\n if (t.getHours() !== d.getHours()) {\n return false\n }\n case 'day': // intentional fall-through\n case 'days':\n case 'date':\n if (t.getDate() !== d.getDate()) {\n return false\n }\n case 'month': // intentional fall-through\n case 'months':\n if (t.getMonth() !== d.getMonth()) {\n return false\n }\n case 'year': // intentional fall-through\n case 'years':\n if (t.getFullYear() !== d.getFullYear()) {\n return false\n }\n break\n default:\n throw new Error(`date isSameDate unknown unit ${ unit }`)\n }\n\n return true\n}\n\nexport function daysInMonth (date) {\n return (new Date(date.getFullYear(), date.getMonth() + 1, 0)).getDate()\n}\n\nfunction getOrdinal (n) {\n if (n >= 11 && n <= 13) {\n return `${ n }th`\n }\n switch (n % 10) {\n case 1: return `${ n }st`\n case 2: return `${ n }nd`\n case 3: return `${ n }rd`\n }\n return `${ n }th`\n}\n\nconst formatter = {\n // Year: 00, 01, ..., 99\n YY (date, dateLocale, forcedYear) {\n // workaround for < 1900 with new Date()\n const y = this.YYYY(date, dateLocale, forcedYear) % 100\n return y >= 0\n ? pad(y)\n : '-' + pad(Math.abs(y))\n },\n\n // Year: 1900, 1901, ..., 2099\n YYYY (date, _dateLocale, forcedYear) {\n // workaround for < 1900 with new Date()\n return forcedYear !== void 0 && forcedYear !== null\n ? forcedYear\n : date.getFullYear()\n },\n\n // Month: 1, 2, ..., 12\n M (date) {\n return date.getMonth() + 1\n },\n\n // Month: 01, 02, ..., 12\n MM (date) {\n return pad(date.getMonth() + 1)\n },\n\n // Month Short Name: Jan, Feb, ...\n MMM (date, dateLocale) {\n return dateLocale.monthsShort[ date.getMonth() ]\n },\n\n // Month Name: January, February, ...\n MMMM (date, dateLocale) {\n return dateLocale.months[ date.getMonth() ]\n },\n\n // Quarter: 1, 2, 3, 4\n Q (date) {\n return Math.ceil((date.getMonth() + 1) / 3)\n },\n\n // Quarter: 1st, 2nd, 3rd, 4th\n Qo (date) {\n return getOrdinal(this.Q(date))\n },\n\n // Day of month: 1, 2, ..., 31\n D (date) {\n return date.getDate()\n },\n\n // Day of month: 1st, 2nd, ..., 31st\n Do (date) {\n return getOrdinal(date.getDate())\n },\n\n // Day of month: 01, 02, ..., 31\n DD (date) {\n return pad(date.getDate())\n },\n\n // Day of year: 1, 2, ..., 366\n DDD (date) {\n return getDayOfYear(date)\n },\n\n // Day of year: 001, 002, ..., 366\n DDDD (date) {\n return pad(getDayOfYear(date), 3)\n },\n\n // Day of week: 0, 1, ..., 6\n d (date) {\n return date.getDay()\n },\n\n // Day of week: Su, Mo, ...\n dd (date, dateLocale) {\n return this.dddd(date, dateLocale).slice(0, 2)\n },\n\n // Day of week: Sun, Mon, ...\n ddd (date, dateLocale) {\n return dateLocale.daysShort[ date.getDay() ]\n },\n\n // Day of week: Sunday, Monday, ...\n dddd (date, dateLocale) {\n return dateLocale.days[ date.getDay() ]\n },\n\n // Day of ISO week: 1, 2, ..., 7\n E (date) {\n return date.getDay() || 7\n },\n\n // Week of Year: 1 2 ... 52 53\n w (date) {\n return getWeekOfYear(date)\n },\n\n // Week of Year: 01 02 ... 52 53\n ww (date) {\n return pad(getWeekOfYear(date))\n },\n\n // Hour: 0, 1, ... 23\n H (date) {\n return date.getHours()\n },\n\n // Hour: 00, 01, ..., 23\n HH (date) {\n return pad(date.getHours())\n },\n\n // Hour: 1, 2, ..., 12\n h (date) {\n const hours = date.getHours()\n return hours === 0\n ? 12\n : (hours > 12 ? hours % 12 : hours)\n },\n\n // Hour: 01, 02, ..., 12\n hh (date) {\n return pad(this.h(date))\n },\n\n // Minute: 0, 1, ..., 59\n m (date) {\n return date.getMinutes()\n },\n\n // Minute: 00, 01, ..., 59\n mm (date) {\n return pad(date.getMinutes())\n },\n\n // Second: 0, 1, ..., 59\n s (date) {\n return date.getSeconds()\n },\n\n // Second: 00, 01, ..., 59\n ss (date) {\n return pad(date.getSeconds())\n },\n\n // 1/10 of second: 0, 1, ..., 9\n S (date) {\n return Math.floor(date.getMilliseconds() / 100)\n },\n\n // 1/100 of second: 00, 01, ..., 99\n SS (date) {\n return pad(Math.floor(date.getMilliseconds() / 10))\n },\n\n // Millisecond: 000, 001, ..., 999\n SSS (date) {\n return pad(date.getMilliseconds(), 3)\n },\n\n // Meridiem: AM, PM\n A (date) {\n return this.H(date) < 12 ? 'AM' : 'PM'\n },\n\n // Meridiem: am, pm\n a (date) {\n return this.H(date) < 12 ? 'am' : 'pm'\n },\n\n // Meridiem: a.m., p.m.\n aa (date) {\n return this.H(date) < 12 ? 'a.m.' : 'p.m.'\n },\n\n // Timezone: -01:00, +00:00, ... +12:00\n Z (date, _dateLocale, _forcedYear, forcedTimezoneOffset) {\n const tzOffset = forcedTimezoneOffset === void 0 || forcedTimezoneOffset === null\n ? date.getTimezoneOffset()\n : forcedTimezoneOffset\n\n return formatTimezone(tzOffset, ':')\n },\n\n // Timezone: -0100, +0000, ... +1200\n ZZ (date, _dateLocale, _forcedYear, forcedTimezoneOffset) {\n const tzOffset = forcedTimezoneOffset === void 0 || forcedTimezoneOffset === null\n ? date.getTimezoneOffset()\n : forcedTimezoneOffset\n\n return formatTimezone(tzOffset)\n },\n\n // Seconds timestamp: 512969520\n X (date) {\n return Math.floor(date.getTime() / 1000)\n },\n\n // Milliseconds timestamp: 512969520900\n x (date) {\n return date.getTime()\n }\n}\n\nexport function formatDate (val, mask, dateLocale, __forcedYear, __forcedTimezoneOffset) {\n if (\n (val !== 0 && !val)\n || val === Infinity\n || val === -Infinity\n ) {\n return\n }\n\n const date = new Date(val)\n\n if (isNaN(date)) {\n return\n }\n\n if (mask === void 0) {\n mask = defaultMask\n }\n\n const locale = getDateLocale(dateLocale, lang.props)\n\n return mask.replace(\n token,\n (match, text) => (\n match in formatter\n ? formatter[ match ](date, locale, __forcedYear, __forcedTimezoneOffset)\n : (text === void 0 ? match : text.split('\\\\]').join(']'))\n )\n )\n}\n\nexport function clone (date) {\n return isDate(date) === true\n ? new Date(date.getTime())\n : date\n}\n\nexport default {\n isValid,\n extractDate,\n buildDate,\n getDayOfWeek,\n getWeekOfYear,\n isBetweenDates,\n addToDate,\n subtractFromDate,\n adjustDate,\n startOfDate,\n endOfDate,\n getMaxDate,\n getMinDate,\n getDateDiff,\n getDayOfYear,\n inferDateFormat,\n getDateBetween,\n isSameDate,\n daysInMonth,\n formatDate,\n clone\n}\n","import script from \"./CardFlipPartnerActive.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./CardFlipPartnerActive.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QBadge from 'quasar/src/components/badge/QBadge.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCard,QCardSection,QBadge,QItemLabel,QCardActions,QBtn,QTooltip});\n","import { render } from \"./checklist.vue?vue&type=template&id=1c91985f&scoped=true\"\nimport script from \"./checklist.vue?vue&type=script&lang=js\"\nexport * from \"./checklist.vue?vue&type=script&lang=js\"\n\nimport \"./checklist.vue?vue&type=style&index=0&id=1c91985f&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1c91985f\"]])\n\nexport default __exports__\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport QCheckbox from 'quasar/src/components/checkbox/QCheckbox.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QImg from 'quasar/src/components/img/QImg.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QItemLabel,QCheckbox,QIcon,QTooltip,QDialog,QBtn,QImg});qInstall(script, 'directives', {ClosePopup});\n","module.exports = __webpack_public_path__ + \"img/rescued.070f10dc.png\";","\n\n\n\n\n","\n\n\n\n\n","export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./Home.vue?vue&type=style&index=0&id=6f833a65&lang=scss\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./voucher.vue?vue&type=style&index=0&id=36eee866&scoped=true&lang=css\"","export * from \"-!../../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerMissionSkeleton.vue?vue&type=style&index=0&id=39f04150&lang=scss&scoped=true\"","import { render } from \"./graph.vue?vue&type=template&id=1f4385c0&scoped=true\"\nimport script from \"./graph.vue?vue&type=script&lang=js\"\nexport * from \"./graph.vue?vue&type=script&lang=js\"\n\nimport \"./graph.vue?vue&type=style&index=0&id=1f4385c0&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-1f4385c0\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton});\n","// extracted by mini-css-extract-plugin","import { render } from \"./invite.vue?vue&type=template&id=b5b78ea0&scoped=true\"\nimport script from \"./invite.vue?vue&type=script&lang=js\"\nexport * from \"./invite.vue?vue&type=script&lang=js\"\n\nimport \"./invite.vue?vue&type=style&index=0&id=b5b78ea0&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-b5b78ea0\"]])\n\nexport default __exports__\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QKnob from 'quasar/src/components/knob/QKnob.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSkeleton,QKnob,QItemLabel});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./shareNow.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./shareNow.vue?vue&type=script&lang=js\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./visitorsBoxComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./visitorsBoxComponent.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./myStoreSkeleton.vue?vue&type=template&id=43386ce2\"","export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerSubscribeSkeleton.vue?vue&type=template&id=a86c4358&scoped=true\"","export { default } from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerMissionSkeleton.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerMissionSkeleton.vue?vue&type=script&lang=js\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardPresentationSharingProducts.vue?vue&type=style&index=0&id=9b1f3b90&scoped=true&lang=scss\"","// extracted by mini-css-extract-plugin","export { default } from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./Home.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./Home.vue?vue&type=script&setup=true&lang=js\"","export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklist.vue?vue&type=template&id=1c91985f&scoped=true\"","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./lastPointsReleased.vue?vue&type=template&id=6a078528\"","import script from \"./carouselFlipComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./carouselFlipComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./carouselFlipComponent.vue?vue&type=style&index=0&id=970aea50&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QBtn});\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardPresentationSharingProducts.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardPresentationSharingProducts.vue?vue&type=script&setup=true&lang=js\"","import script from \"./NewDashboard.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./NewDashboard.vue?vue&type=script&setup=true&lang=js\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QSelect from 'quasar/src/components/select/QSelect.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QSelect,QItem,QItemSection,QItemLabel});\n","\n\n\n\n\n","import { render } from \"./AvaibleMissionsComponent.vue?vue&type=template&id=11e66ef6&scoped=true\"\nimport script from \"./AvaibleMissionsComponent.vue?vue&type=script&lang=js\"\nexport * from \"./AvaibleMissionsComponent.vue?vue&type=script&lang=js\"\n\nimport \"./AvaibleMissionsComponent.vue?vue&type=style&index=0&id=11e66ef6&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-11e66ef6\"]])\n\nexport default __exports__\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QBtn});\n","export * from \"-!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerMissionSkeleton.vue?vue&type=template&id=39f04150&scoped=true\"","\n\n\n\n\n","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CreditDataComponent.vue?vue&type=style&index=0&id=28031f9c&scoped=true&lang=css\"","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","import script from \"./carouselComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./carouselComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./carouselComponent.vue?vue&type=style&index=0&id=07e187f8&lang=css\"\n\nconst __exports__ = script;\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QBtn});\n","import { computed } from 'vue'\n\nimport { sortDate } from '../../utils/private/sort.js'\nimport { isNumber, isDate, isObject } from '../../utils/is.js'\n\nexport const useTableSortProps = {\n sortMethod: Function,\n binaryStateSort: Boolean,\n columnSortOrder: {\n type: String,\n validator: v => v === 'ad' || v === 'da',\n default: 'ad'\n }\n}\n\nexport function useTableSort (props, computedPagination, colList, setPagination) {\n const columnToSort = computed(() => {\n const { sortBy } = computedPagination.value\n\n return sortBy\n ? colList.value.find(def => def.name === sortBy) || null\n : null\n })\n\n const computedSortMethod = computed(() => (\n props.sortMethod !== void 0\n ? props.sortMethod\n : (data, sortBy, descending) => {\n const col = colList.value.find(def => def.name === sortBy)\n if (col === void 0 || col.field === void 0) {\n return data\n }\n\n const\n dir = descending === true ? -1 : 1,\n val = typeof col.field === 'function'\n ? v => col.field(v)\n : v => v[ col.field ]\n\n return data.sort((a, b) => {\n let\n A = val(a),\n B = val(b)\n\n if (col.rawSort !== void 0) {\n return col.rawSort(A, B, a, b) * dir\n }\n if (A === null || A === void 0) {\n return -1 * dir\n }\n if (B === null || B === void 0) {\n return 1 * dir\n }\n if (col.sort !== void 0) {\n // gets called without rows that have null/undefined as value\n // due to the above two statements\n return col.sort(A, B, a, b) * dir\n }\n if (isNumber(A) === true && isNumber(B) === true) {\n return (A - B) * dir\n }\n if (isDate(A) === true && isDate(B) === true) {\n return sortDate(A, B) * dir\n }\n if (typeof A === 'boolean' && typeof B === 'boolean') {\n return (A - B) * dir\n }\n\n [ A, B ] = [ A, B ].map(s => (s + '').toLocaleString().toLowerCase())\n\n return A < B\n ? -1 * dir\n : (A === B ? 0 : dir)\n })\n }\n ))\n\n function sort (col /* String(col name) or Object(col definition) */) {\n let sortOrder = props.columnSortOrder\n\n if (isObject(col) === true) {\n if (col.sortOrder) {\n sortOrder = col.sortOrder\n }\n\n col = col.name\n }\n else {\n const def = colList.value.find(def => def.name === col)\n if (def !== void 0 && def.sortOrder) {\n sortOrder = def.sortOrder\n }\n }\n\n let { sortBy, descending } = computedPagination.value\n\n if (sortBy !== col) {\n sortBy = col\n descending = sortOrder === 'da'\n }\n else if (props.binaryStateSort === true) {\n descending = !descending\n }\n else if (descending === true) {\n if (sortOrder === 'ad') {\n sortBy = null\n }\n else {\n descending = false\n }\n }\n else { // ascending\n if (sortOrder === 'ad') {\n descending = true\n }\n else {\n sortBy = null\n }\n }\n\n setPagination({ sortBy, descending, page: 1 })\n }\n\n return {\n columnToSort,\n computedSortMethod,\n sort\n }\n}\n","// extracted by mini-css-extract-plugin","// taken from https://github.com/jalaali/jalaali-js\n\n/*\n Jalaali years starting the 33-year rule.\n*/\nconst breaks = [\n -61, 9, 38, 199, 426, 686, 756, 818, 1111, 1181, 1210,\n 1635, 2060, 2097, 2192, 2262, 2324, 2394, 2456, 3178\n]\n\n/*\n Converts a Gregorian date to Jalaali.\n*/\nexport function toJalaali (gy, gm, gd) {\n if (Object.prototype.toString.call(gy) === '[object Date]') {\n gd = gy.getDate()\n gm = gy.getMonth() + 1\n gy = gy.getFullYear()\n }\n return d2j(g2d(gy, gm, gd))\n}\n\n/*\n Converts a Jalaali date to Gregorian.\n*/\nexport function toGregorian (jy, jm, jd) {\n return d2g(j2d(jy, jm, jd))\n}\n\n/*\n Is this a leap year or not?\n*/\nfunction isLeapJalaaliYear (jy) {\n return jalCalLeap(jy) === 0\n}\n\n/*\n Number of days in a given month in a Jalaali year.\n*/\nexport function jalaaliMonthLength (jy, jm) {\n if (jm <= 6) return 31\n if (jm <= 11) return 30\n if (isLeapJalaaliYear(jy)) return 30\n return 29\n}\n\n/*\n This function determines if the Jalaali (Persian) year is\n leap (366-day long) or is the common year (365 days)\n\n @param jy Jalaali calendar year (-61 to 3177)\n @returns number of years since the last leap year (0 to 4)\n */\nfunction jalCalLeap (jy) {\n const bl = breaks.length\n let\n jp = breaks[ 0 ],\n jm,\n jump,\n leap,\n n,\n i\n\n if (jy < jp || jy >= breaks[ bl - 1 ]) { throw new Error('Invalid Jalaali year ' + jy) }\n\n for (i = 1; i < bl; i += 1) {\n jm = breaks[ i ]\n jump = jm - jp\n if (jy < jm) { break }\n jp = jm\n }\n n = jy - jp\n\n if (jump - n < 6) { n = n - jump + div(jump + 4, 33) * 33 }\n leap = mod(mod(n + 1, 33) - 1, 4)\n if (leap === -1) {\n leap = 4\n }\n\n return leap\n}\n\n/*\n This function determines if the Jalaali (Persian) year is\n leap (366-day long) or is the common year (365 days), and\n finds the day in March (Gregorian calendar) of the first\n day of the Jalaali year (jy).\n\n @param jy Jalaali calendar year (-61 to 3177)\n @param withoutLeap when don't need leap (true or false) default is false\n @return\n leap: number of years since the last leap year (0 to 4)\n gy: Gregorian year of the beginning of Jalaali year\n march: the March day of Farvardin the 1st (1st day of jy)\n @see: http://www.astro.uni.torun.pl/~kb/Papers/EMP/PersianC-EMP.htm\n @see: http://www.fourmilab.ch/documents/calendar/\n*/\nfunction jalCal (jy, withoutLeap) {\n const\n bl = breaks.length,\n gy = jy + 621\n let\n leapJ = -14,\n jp = breaks[ 0 ],\n jm,\n jump,\n leap,\n n,\n i\n\n if (jy < jp || jy >= breaks[ bl - 1 ]) { throw new Error('Invalid Jalaali year ' + jy) }\n\n // Find the limiting years for the Jalaali year jy.\n for (i = 1; i < bl; i += 1) {\n jm = breaks[ i ]\n jump = jm - jp\n if (jy < jm) { break }\n leapJ = leapJ + div(jump, 33) * 8 + div(mod(jump, 33), 4)\n jp = jm\n }\n n = jy - jp\n\n // Find the number of leap years from AD 621 to the beginning\n // of the current Jalaali year in the Persian calendar.\n leapJ = leapJ + div(n, 33) * 8 + div(mod(n, 33) + 3, 4)\n if (mod(jump, 33) === 4 && jump - n === 4) { leapJ += 1 }\n\n // And the same in the Gregorian calendar (until the year gy).\n const leapG = div(gy, 4) - div((div(gy, 100) + 1) * 3, 4) - 150\n\n // Determine the Gregorian date of Farvardin the 1st.\n const march = 20 + leapJ - leapG\n\n // Find how many years have passed since the last leap year.\n if (!withoutLeap) {\n if (jump - n < 6) { n = n - jump + div(jump + 4, 33) * 33 }\n leap = mod(mod(n + 1, 33) - 1, 4)\n if (leap === -1) {\n leap = 4\n }\n }\n\n return {\n leap,\n gy,\n march\n }\n}\n\n/*\n Converts a date of the Jalaali calendar to the Julian Day number.\n\n @param jy Jalaali year (1 to 3100)\n @param jm Jalaali month (1 to 12)\n @param jd Jalaali day (1 to 29/31)\n @return Julian Day number\n*/\nfunction j2d (jy, jm, jd) {\n const r = jalCal(jy, true)\n return g2d(r.gy, 3, r.march) + (jm - 1) * 31 - div(jm, 7) * (jm - 7) + jd - 1\n}\n\n/*\n Converts the Julian Day number to a date in the Jalaali calendar.\n\n @param jdn Julian Day number\n @return\n jy: Jalaali year (1 to 3100)\n jm: Jalaali month (1 to 12)\n jd: Jalaali day (1 to 29/31)\n*/\nfunction d2j (jdn) {\n const gy = d2g(jdn).gy // Calculate Gregorian year (gy).\n let\n jy = gy - 621,\n jd,\n jm,\n k\n const\n r = jalCal(jy, false),\n jdn1f = g2d(gy, 3, r.march)\n\n // Find number of days that passed since 1 Farvardin.\n k = jdn - jdn1f\n if (k >= 0) {\n if (k <= 185) {\n // The first 6 months.\n jm = 1 + div(k, 31)\n jd = mod(k, 31) + 1\n return {\n jy,\n jm,\n jd\n }\n }\n else {\n // The remaining months.\n k -= 186\n }\n }\n else {\n // Previous Jalaali year.\n jy -= 1\n k += 179\n if (r.leap === 1) { k += 1 }\n }\n jm = 7 + div(k, 30)\n jd = mod(k, 30) + 1\n return {\n jy,\n jm,\n jd\n }\n}\n\n/*\n Calculates the Julian Day number from Gregorian or Julian\n calendar dates. This integer number corresponds to the noon of\n the date (i.e. 12 hours of Universal Time).\n The procedure was tested to be good since 1 March, -100100 (of both\n calendars) up to a few million years into the future.\n\n @param gy Calendar year (years BC numbered 0, -1, -2, ...)\n @param gm Calendar month (1 to 12)\n @param gd Calendar day of the month (1 to 28/29/30/31)\n @return Julian Day number\n*/\nfunction g2d (gy, gm, gd) {\n let d = div((gy + div(gm - 8, 6) + 100100) * 1461, 4)\n + div(153 * mod(gm + 9, 12) + 2, 5)\n + gd - 34840408\n d = d - div(div(gy + 100100 + div(gm - 8, 6), 100) * 3, 4) + 752\n return d\n}\n\n/*\n Calculates Gregorian and Julian calendar dates from the Julian Day number\n (jdn) for the period since jdn=-34839655 (i.e. the year -100100 of both\n calendars) to some millions years ahead of the present.\n\n @param jdn Julian Day number\n @return\n gy: Calendar year (years BC numbered 0, -1, -2, ...)\n gm: Calendar month (1 to 12)\n gd: Calendar day of the month M (1 to 28/29/30/31)\n*/\nfunction d2g (jdn) {\n let j = 4 * jdn + 139361631\n j = j + div(div(4 * jdn + 183187720, 146097) * 3, 4) * 4 - 3908\n const\n i = div(mod(j, 1461), 4) * 5 + 308,\n gd = div(mod(i, 153), 5) + 1,\n gm = mod(div(i, 153), 12) + 1,\n gy = div(j, 1461) - 100100 + div(8 - gm, 6)\n return {\n gy,\n gm,\n gd\n }\n}\n\n/*\n Utility helper functions.\n*/\n\nfunction div (a, b) {\n return ~~(a / b)\n}\n\nfunction mod (a, b) {\n return a - ~~(a / b) * b\n}\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./TotalSalesComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./TotalSalesComponent.vue?vue&type=script&lang=js\"","\n\n\n\n\n","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./myStoreSkeleton.vue?vue&type=style&index=0&id=43386ce2&lang=scss\"","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./CardFlipPartnerMission.vue?vue&type=style&index=0&id=2017d844&lang=scss&scoped=true\"","(function (root, factory) {\n if (typeof define === 'function' && define.amd) {\n define(['d3'], function (d3) {\n return (root.Rickshaw = factory(d3));\n });\n } else if (typeof exports === 'object') {\n module.exports = factory(require('d3'));\n } else {\n root.Rickshaw = factory(d3);\n }\n}(this, function (d3) {\n/* jshint -W079 */\n\nvar Rickshaw = {\n\tversion: '1.7.1',\n\n\tnamespace: function(namespace, obj) {\n\n\t\tvar parts = namespace.split('.');\n\n\t\tvar parent = Rickshaw;\n\n\t\tfor(var i = 1, length = parts.length; i < length; i++) {\n\t\t\tvar currentPart = parts[i];\n\t\t\tparent[currentPart] = parent[currentPart] || {};\n\t\t\tparent = parent[currentPart];\n\t\t}\n\t\treturn parent;\n\t},\n\n\tkeys: function(obj) {\n\t\tvar keys = [];\n\t\tfor (var key in obj) keys.push(key);\n\t\treturn keys;\n\t},\n\n\textend: function(destination, source) {\n\n\t\tfor (var property in source) {\n\t\t\tdestination[property] = source[property];\n\t\t}\n\t\treturn destination;\n\t},\n\n\tclone: function(obj) {\n\t\treturn JSON.parse(JSON.stringify(obj));\n\t}\n};\n/* Adapted from https://github.com/Jakobo/PTClass */\n\n/*\nCopyright (c) 2005-2010 Sam Stephenson\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n*/\n/* Based on Alex Arnell's inheritance implementation. */\n/** section: Language\n * class Class\n *\n * Manages Prototype's class-based OOP system.\n *\n * Refer to Prototype's web site for a [tutorial on classes and\n * inheritance](http://prototypejs.org/learn/class-inheritance).\n**/\n(function(globalContext) {\n/* ------------------------------------ */\n/* Import from object.js */\n/* ------------------------------------ */\nvar _toString = Object.prototype.toString,\n NULL_TYPE = 'Null',\n UNDEFINED_TYPE = 'Undefined',\n BOOLEAN_TYPE = 'Boolean',\n NUMBER_TYPE = 'Number',\n STRING_TYPE = 'String',\n OBJECT_TYPE = 'Object',\n FUNCTION_CLASS = '[object Function]';\nfunction isFunction(object) {\n return _toString.call(object) === FUNCTION_CLASS;\n}\nfunction extend(destination, source) {\n for (var property in source) if (source.hasOwnProperty(property)) // modify protect primitive slaughter\n destination[property] = source[property];\n return destination;\n}\nfunction keys(object) {\n if (Type(object) !== OBJECT_TYPE) { throw new TypeError(); }\n var results = [];\n for (var property in object) {\n if (object.hasOwnProperty(property)) {\n results.push(property);\n }\n }\n return results;\n}\nfunction Type(o) {\n switch(o) {\n case null: return NULL_TYPE;\n case (void 0): return UNDEFINED_TYPE;\n }\n var type = typeof o;\n switch(type) {\n case 'boolean': return BOOLEAN_TYPE;\n case 'number': return NUMBER_TYPE;\n case 'string': return STRING_TYPE;\n }\n return OBJECT_TYPE;\n}\nfunction isUndefined(object) {\n return typeof object === \"undefined\";\n}\n/* ------------------------------------ */\n/* Import from Function.js */\n/* ------------------------------------ */\nvar slice = Array.prototype.slice;\nfunction argumentNames(fn) {\n var names = fn.toString().match(/^[\\s\\(]*function[^(]*\\(([^)]*)\\)/)[1]\n .replace(/\\/\\/.*?[\\r\\n]|\\/\\*(?:.|[\\r\\n])*?\\*\\//g, '')\n .replace(/\\s+/g, '').split(',');\n return names.length == 1 && !names[0] ? [] : names;\n}\nfunction wrap(fn, wrapper) {\n var __method = fn;\n return function() {\n var a = update([bind(__method, this)], arguments);\n return wrapper.apply(this, a);\n }\n}\nfunction update(array, args) {\n var arrayLength = array.length, length = args.length;\n while (length--) array[arrayLength + length] = args[length];\n return array;\n}\nfunction merge(array, args) {\n array = slice.call(array, 0);\n return update(array, args);\n}\nfunction bind(fn, context) {\n if (arguments.length < 2 && isUndefined(arguments[0])) return this;\n var __method = fn, args = slice.call(arguments, 2);\n return function() {\n var a = merge(args, arguments);\n return __method.apply(context, a);\n }\n}\n\n/* ------------------------------------ */\n/* Import from Prototype.js */\n/* ------------------------------------ */\nvar emptyFunction = function(){};\n\nvar Class = (function() {\n \n // Some versions of JScript fail to enumerate over properties, names of which \n // correspond to non-enumerable properties in the prototype chain\n var IS_DONTENUM_BUGGY = (function(){\n for (var p in { toString: 1 }) {\n // check actual property name, so that it works with augmented Object.prototype\n if (p === 'toString') return false;\n }\n return true;\n })();\n \n function subclass() {};\n function create() {\n var parent = null, properties = [].slice.apply(arguments);\n if (isFunction(properties[0]))\n parent = properties.shift();\n\n function klass() {\n this.initialize.apply(this, arguments);\n }\n\n extend(klass, Class.Methods);\n klass.superclass = parent;\n klass.subclasses = [];\n\n if (parent) {\n subclass.prototype = parent.prototype;\n klass.prototype = new subclass;\n try { parent.subclasses.push(klass) } catch(e) {}\n }\n\n for (var i = 0, length = properties.length; i < length; i++)\n klass.addMethods(properties[i]);\n\n if (!klass.prototype.initialize)\n klass.prototype.initialize = emptyFunction;\n\n klass.prototype.constructor = klass;\n return klass;\n }\n\n function addMethods(source) {\n var ancestor = this.superclass && this.superclass.prototype,\n properties = keys(source);\n\n // IE6 doesn't enumerate `toString` and `valueOf` (among other built-in `Object.prototype`) properties,\n // Force copy if they're not Object.prototype ones.\n // Do not copy other Object.prototype.* for performance reasons\n if (IS_DONTENUM_BUGGY) {\n if (source.toString != Object.prototype.toString)\n properties.push(\"toString\");\n if (source.valueOf != Object.prototype.valueOf)\n properties.push(\"valueOf\");\n }\n\n for (var i = 0, length = properties.length; i < length; i++) {\n var property = properties[i], value = source[property];\n if (ancestor && isFunction(value) &&\n argumentNames(value)[0] == \"$super\") {\n var method = value;\n value = wrap((function(m) {\n return function() { return ancestor[m].apply(this, arguments); };\n })(property), method);\n\n value.valueOf = bind(method.valueOf, method);\n value.toString = bind(method.toString, method);\n }\n this.prototype[property] = value;\n }\n\n return this;\n }\n\n return {\n create: create,\n Methods: {\n addMethods: addMethods\n }\n };\n})();\n\nif (globalContext.exports) {\n globalContext.exports.Class = Class;\n}\nelse {\n globalContext.Class = Class;\n}\n})(Rickshaw);\nRickshaw.namespace('Rickshaw.Compat.ClassList');\n\nRickshaw.Compat.ClassList = function() {\n\n\t/* adapted from http://purl.eligrey.com/github/classList.js/blob/master/classList.js */\n\n\tif (typeof document !== \"undefined\" && !(\"classList\" in document.createElement(\"a\"))) {\n\n\t(function (view) {\n\n\t\"use strict\";\n\n\tvar\n\t\t classListProp = \"classList\"\n\t\t, protoProp = \"prototype\"\n\t\t, elemCtrProto = (view.HTMLElement || view.Element)[protoProp]\n\t\t, objCtr = Object\n\t\t, strTrim = String[protoProp].trim || function () {\n\t\t\treturn this.replace(/^\\s+|\\s+$/g, \"\");\n\t\t}\n\t\t, arrIndexOf = Array[protoProp].indexOf || function (item) {\n\t\t\tvar\n\t\t\t\t i = 0\n\t\t\t\t, len = this.length\n\t\t\t;\n\t\t\tfor (; i < len; i++) {\n\t\t\t\tif (i in this && this[i] === item) {\n\t\t\t\t\treturn i;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn -1;\n\t\t}\n\t\t// Vendors: please allow content code to instantiate DOMExceptions\n\t\t, DOMEx = function (type, message) {\n\t\t\tthis.name = type;\n\t\t\tthis.code = DOMException[type];\n\t\t\tthis.message = message;\n\t\t}\n\t\t, checkTokenAndGetIndex = function (classList, token) {\n\t\t\tif (token === \"\") {\n\t\t\t\tthrow new DOMEx(\n\t\t\t\t\t \"SYNTAX_ERR\"\n\t\t\t\t\t, \"An invalid or illegal string was specified\"\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (/\\s/.test(token)) {\n\t\t\t\tthrow new DOMEx(\n\t\t\t\t\t \"INVALID_CHARACTER_ERR\"\n\t\t\t\t\t, \"String contains an invalid character\"\n\t\t\t\t);\n\t\t\t}\n\t\t\treturn arrIndexOf.call(classList, token);\n\t\t}\n\t\t, ClassList = function (elem) {\n\t\t\tvar\n\t\t\t\t trimmedClasses = strTrim.call(elem.className)\n\t\t\t\t, classes = trimmedClasses ? trimmedClasses.split(/\\s+/) : []\n\t\t\t\t, i = 0\n\t\t\t\t, len = classes.length\n\t\t\t;\n\t\t\tfor (; i < len; i++) {\n\t\t\t\tthis.push(classes[i]);\n\t\t\t}\n\t\t\tthis._updateClassName = function () {\n\t\t\t\telem.className = this.toString();\n\t\t\t};\n\t\t}\n\t\t, classListProto = ClassList[protoProp] = []\n\t\t, classListGetter = function () {\n\t\t\treturn new ClassList(this);\n\t\t}\n\t;\n\t// Most DOMException implementations don't allow calling DOMException's toString()\n\t// on non-DOMExceptions. Error's toString() is sufficient here.\n\tDOMEx[protoProp] = Error[protoProp];\n\tclassListProto.item = function (i) {\n\t\treturn this[i] || null;\n\t};\n\tclassListProto.contains = function (token) {\n\t\ttoken += \"\";\n\t\treturn checkTokenAndGetIndex(this, token) !== -1;\n\t};\n\tclassListProto.add = function (token) {\n\t\ttoken += \"\";\n\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\tthis.push(token);\n\t\t\tthis._updateClassName();\n\t\t}\n\t};\n\tclassListProto.remove = function (token) {\n\t\ttoken += \"\";\n\t\tvar index = checkTokenAndGetIndex(this, token);\n\t\tif (index !== -1) {\n\t\t\tthis.splice(index, 1);\n\t\t\tthis._updateClassName();\n\t\t}\n\t};\n\tclassListProto.toggle = function (token) {\n\t\ttoken += \"\";\n\t\tif (checkTokenAndGetIndex(this, token) === -1) {\n\t\t\tthis.add(token);\n\t\t} else {\n\t\t\tthis.remove(token);\n\t\t}\n\t};\n\tclassListProto.toString = function () {\n\t\treturn this.join(\" \");\n\t};\n\n\tif (objCtr.defineProperty) {\n\t\tvar classListPropDesc = {\n\t\t\t get: classListGetter\n\t\t\t, enumerable: true\n\t\t\t, configurable: true\n\t\t};\n\t\ttry {\n\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t} catch (ex) { // IE 8 doesn't support enumerable:true\n\t\t\tif (ex.number === -0x7FF5EC54) {\n\t\t\t\tclassListPropDesc.enumerable = false;\n\t\t\t\tobjCtr.defineProperty(elemCtrProto, classListProp, classListPropDesc);\n\t\t\t}\n\t\t}\n\t} else if (objCtr[protoProp].__defineGetter__) {\n\t\telemCtrProto.__defineGetter__(classListProp, classListGetter);\n\t}\n\n\t}(window));\n\n\t}\n};\n\nif ( (typeof RICKSHAW_NO_COMPAT !== \"undefined\" && !RICKSHAW_NO_COMPAT) || typeof RICKSHAW_NO_COMPAT === \"undefined\") {\n\tnew Rickshaw.Compat.ClassList();\n}\nRickshaw.namespace('Rickshaw.Graph');\n\nRickshaw.Graph = function(args) {\n\n\tvar self = this;\n\n\tthis.initialize = function(args) {\n\n\t\tif (!args.element) throw \"Rickshaw.Graph needs a reference to an element\";\n\t\tif (args.element.nodeType !== 1) throw \"Rickshaw.Graph element was defined but not an HTML element\";\n\n\t\tthis.element = args.element;\n\t\tthis.series = args.series;\n\t\tthis.window = {};\n\n\t\tthis.updateCallbacks = [];\n\t\tthis.configureCallbacks = [];\n\n\t\tthis.defaults = {\n\t\t\tinterpolation: 'cardinal',\n\t\t\toffset: 'zero',\n\t\t\tmin: undefined,\n\t\t\tmax: undefined,\n\t\t\tpreserve: false,\n\t\t\txScale: undefined,\n\t\t\tyScale: undefined,\n\t\t\tstack: true\n\t\t};\n\n\t\tthis._loadRenderers();\n\t\tthis.configure(args);\n\t\tthis.setSeries(args.series);\n\n\t\tthis.setSize({ width: args.width, height: args.height });\n\t\tthis.element.classList.add('rickshaw_graph');\n\n\t\tthis.vis = d3.select(this.element)\n\t\t\t.append(\"svg:svg\")\n\t\t\t.attr('width', this.width)\n\t\t\t.attr('height', this.height);\n\n\t\tthis.discoverRange();\n\t};\n\n\tthis._loadRenderers = function() {\n\n\t\tfor (var name in Rickshaw.Graph.Renderer) {\n\t\t\tif (!name || !Rickshaw.Graph.Renderer.hasOwnProperty(name)) continue;\n\t\t\tvar r = Rickshaw.Graph.Renderer[name];\n\t\t\tif (!r || !r.prototype || !r.prototype.render) continue;\n\t\t\tself.registerRenderer(new r( { graph: self } ));\n\t\t}\n\t};\n\n\tthis.validateSeries = function(series) {\n\n\t\tif (!Array.isArray(series) && !(series instanceof Rickshaw.Series)) {\n\t\t\tvar seriesSignature = Object.prototype.toString.apply(series);\n\t\t\tthrow \"series is not an array: \" + seriesSignature;\n\t\t}\n\n\t\tvar pointsCount;\n\n\t\tseries.forEach( function(s) {\n\n\t\t\tif (!(s instanceof Object)) {\n\t\t\t\tthrow \"series element is not an object: \" + s;\n\t\t\t}\n\t\t\tif (!(s.data)) {\n\t\t\t\tthrow \"series has no data: \" + JSON.stringify(s);\n\t\t\t}\n\t\t\tif (!Array.isArray(s.data)) {\n\t\t\t\tthrow \"series data is not an array: \" + JSON.stringify(s.data);\n\t\t\t}\n\n\t\t\tif (s.data.length > 0) {\n\t\t\t\tvar x = s.data[0].x;\n\t\t\t\tvar y = s.data[0].y;\n\n\t\t\t\tif (typeof x != 'number' || ( typeof y != 'number' && y !== null ) ) {\n\t\t\t\t\tthrow \"x and y properties of points should be numbers instead of \" +\n\t\t\t\t\t\t(typeof x) + \" and \" + (typeof y);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (s.data.length >= 3) {\n\t\t\t\t// probe to sanity check sort order\n\t\t\t\tif (s.data[2].x < s.data[1].x || s.data[1].x < s.data[0].x || s.data[s.data.length - 1].x < s.data[0].x) {\n\t\t\t\t\tthrow \"series data needs to be sorted on x values for series name: \" + s.name;\n\t\t\t\t}\n\t\t\t}\n\n\t\t}, this );\n\t};\n\n\tthis.setSeries = function(series) {\n\t\tthis.validateSeries(series);\n\t\tthis.series = series;\n\t\tthis.series.active = function() { return self.series.filter( function(s) { return !s.disabled } ) };\n\t};\n\n\tthis.dataDomain = function() {\n\n\t\tvar data = this.series.map( function(s) { return s.data } );\n\n\t\tvar min = d3.min( data.map( function(d) { return d[0].x } ) );\n\t\tvar max = d3.max( data.map( function(d) { return d[d.length - 1].x } ) );\n\n\t\treturn [min, max];\n\t};\n\n\tthis.discoverRange = function() {\n\n\t\tvar domain = this.renderer.domain();\n\n\t\t// this.*Scale is coming from the configuration dictionary\n\t\t// which may be referenced by the Graph creator, or shared\n\t\t// with other Graphs. We need to ensure we copy the scale\n\t\t// so that our mutations do not change the object given to us.\n\t\t// Hence the .copy()\n\t\tthis.x = (this.xScale || d3.scale.linear()).copy().domain(domain.x).range([0, this.width]);\n\t\tthis.y = (this.yScale || d3.scale.linear()).copy().domain(domain.y).range([this.height, 0]);\n\n\t\tthis.x.magnitude = d3.scale.linear()\n\t\t\t.domain([domain.x[0] - domain.x[0], domain.x[1] - domain.x[0]])\n\t\t\t.range([0, this.width]);\n\n\t\tthis.y.magnitude = d3.scale.linear()\n\t\t\t.domain([domain.y[0] - domain.y[0], domain.y[1] - domain.y[0]])\n\t\t\t.range([0, this.height]);\n\t};\n\n\tthis.render = function() {\n\n\t\tvar stackedData = this.stackData();\n\t\tthis.discoverRange();\n\n\t\tthis.renderer.render();\n\n\t\tthis.updateCallbacks.forEach( function(callback) {\n\t\t\tcallback();\n\t\t} );\n\n\t};\n\n\tthis.update = this.render;\n\n\tthis.stackData = function() {\n\n\t\tvar data = this.series.active()\n\t\t\t.map( function(d) { return d.data } )\n\t\t\t.map( function(d) { return d.filter( function(d) { return this._slice(d) }, this ) }, this);\n\n\t\tvar preserve = this.preserve;\n\t\tif (!preserve) {\n\t\t\tthis.series.forEach( function(series) {\n\t\t\t\tif (series.scale) {\n\t\t\t\t\t// data must be preserved when a scale is used\n\t\t\t\t\tpreserve = true;\n\t\t\t\t}\n\t\t\t} );\n\t\t}\n\n\t\tdata = preserve ? Rickshaw.clone(data) : data;\n\n\t\tthis.series.active().forEach( function(series, index) {\n\t\t\tif (series.scale) {\n\t\t\t\t// apply scale to each series\n\t\t\t\tvar seriesData = data[index];\n\t\t\t\tif(seriesData) {\n\t\t\t\t\tseriesData.forEach( function(d) {\n\t\t\t\t\t\td.y = series.scale(d.y);\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t}\n\t\t} );\n\n\t\tthis.stackData.hooks.data.forEach( function(entry) {\n\t\t\tdata = entry.f.apply(self, [data]);\n\t\t} );\n\n\t\tvar stackedData;\n\n\t\tif (!this.renderer.unstack) {\n\n\t\t\tthis._validateStackable();\n\n\t\t\tvar layout = d3.layout.stack();\n\t\t\tlayout.offset( self.offset );\n\t\t\tstackedData = layout(data);\n\t\t}\n\n\t\tstackedData = stackedData || data;\n\n\t\tif (this.renderer.unstack) {\n\t\t\tstackedData.forEach( function(seriesData) {\n\t\t\t\tseriesData.forEach( function(d) {\n\t\t\t\t\td.y0 = d.y0 === undefined ? 0 : d.y0;\n\t\t\t\t} );\n\t\t\t} );\n\t\t}\n\n\t\tthis.stackData.hooks.after.forEach( function(entry) {\n\t\t\tstackedData = entry.f.apply(self, [data]);\n\t\t} );\n\n\t\tvar i = 0;\n\t\tthis.series.forEach( function(series) {\n\t\t\tif (series.disabled) return;\n\t\t\tseries.stack = stackedData[i++];\n\t\t} );\n\n\t\tthis.stackedData = stackedData;\n\t\treturn stackedData;\n\t};\n\n\tthis._validateStackable = function() {\n\n\t\tvar series = this.series;\n\t\tvar pointsCount;\n\n\t\tseries.forEach( function(s) {\n\n\t\t\tpointsCount = pointsCount || s.data.length;\n\n\t\t\tif (pointsCount && s.data.length != pointsCount) {\n\t\t\t\tthrow \"stacked series cannot have differing numbers of points: \" +\n\t\t\t\t\tpointsCount + \" vs \" + s.data.length + \"; see Rickshaw.Series.fill()\";\n\t\t\t}\n\n\t\t}, this );\n\t};\n\n\tthis.stackData.hooks = { data: [], after: [] };\n\n\tthis._slice = function(d) {\n\n\t\tif (this.window.xMin || this.window.xMax) {\n\n\t\t\tvar isInRange = true;\n\n\t\t\tif (this.window.xMin && d.x < this.window.xMin) isInRange = false;\n\t\t\tif (this.window.xMax && d.x > this.window.xMax) isInRange = false;\n\n\t\t\treturn isInRange;\n\t\t}\n\n\t\treturn true;\n\t};\n\n\tthis.onUpdate = function(callback) {\n\t\tthis.updateCallbacks.push(callback);\n\t};\n\n\tthis.onConfigure = function(callback) {\n\t\tthis.configureCallbacks.push(callback);\n\t};\n\n\tthis.registerRenderer = function(renderer) {\n\t\tthis._renderers = this._renderers || {};\n\t\tthis._renderers[renderer.name] = renderer;\n\t};\n\n\tthis.configure = function(args) {\n\n\t\tthis.config = this.config || {};\n\n\t\tif (args.width || args.height) {\n\t\t\tthis.setSize(args);\n\t\t}\n\n\t\tRickshaw.keys(this.defaults).forEach( function(k) {\n\t\t\tthis.config[k] = k in args ? args[k]\n\t\t\t\t: k in this ? this[k]\n\t\t\t\t: this.defaults[k];\n\t\t}, this );\n\n\t\tRickshaw.keys(this.config).forEach( function(k) {\n\t\t\tthis[k] = this.config[k];\n\t\t}, this );\n\n\t\tif ('stack' in args) args.unstack = !args.stack;\n\n\t\tvar renderer = args.renderer || (this.renderer && this.renderer.name) || 'stack';\n\t\tthis.setRenderer(renderer, args);\n\n\t\tthis.configureCallbacks.forEach( function(callback) {\n\t\t\tcallback(args);\n\t\t} );\n\t};\n\n\tthis.setRenderer = function(r, args) {\n\t\tif (typeof r == 'function') {\n\t\t\tthis.renderer = new r( { graph: self } );\n\t\t\tthis.registerRenderer(this.renderer);\n\t\t} else {\n\t\t\tif (!this._renderers[r]) {\n\t\t\t\tthrow \"couldn't find renderer \" + r;\n\t\t\t}\n\t\t\tthis.renderer = this._renderers[r];\n\t\t}\n\n\t\tif (typeof args == 'object') {\n\t\t\tthis.renderer.configure(args);\n\t\t}\n\t};\n\n\tthis.setSize = function(args) {\n\n\t\targs = args || {};\n\n\t\tif (args.width && args.height) {\n\t\t\t// use explicitly specified size\n\t\t\tthis.width = args.width;\n\t\t\tthis.height = args.height;\n\t\t} else {\n\t\t\t// calc size (will cause layout reflow)\n\t\t\tif (typeof window !== 'undefined') {\n\t\t\t\tvar style = window.getComputedStyle(this.element, null);\n\t\t\t\tvar elementWidth = parseInt(style.getPropertyValue('width'), 10);\n\t\t\t\tvar elementHeight = parseInt(style.getPropertyValue('height'), 10);\n\t\t\t}\n\n\t\t\tthis.width = args.width || elementWidth || 400;\n\t\t\tthis.height = args.height || elementHeight || 250;\n\t\t}\n\n\t\tthis.vis && this.vis\n\t\t\t.attr('width', this.width)\n\t\t\t.attr('height', this.height);\n\t};\n\n\tthis.initialize(args);\n};\nRickshaw.namespace('Rickshaw.Fixtures.Color');\n\nRickshaw.Fixtures.Color = function() {\n\n\tthis.schemes = {};\n\n\tthis.schemes.spectrum14 = [\n\t\t'#ecb796',\n\t\t'#dc8f70',\n\t\t'#b2a470',\n\t\t'#92875a',\n\t\t'#716c49',\n\t\t'#d2ed82',\n\t\t'#bbe468',\n\t\t'#a1d05d',\n\t\t'#e7cbe6',\n\t\t'#d8aad6',\n\t\t'#a888c2',\n\t\t'#9dc2d3',\n\t\t'#649eb9',\n\t\t'#387aa3'\n\t].reverse();\n\n\tthis.schemes.spectrum2000 = [\n\t\t'#57306f',\n\t\t'#514c76',\n\t\t'#646583',\n\t\t'#738394',\n\t\t'#6b9c7d',\n\t\t'#84b665',\n\t\t'#a7ca50',\n\t\t'#bfe746',\n\t\t'#e2f528',\n\t\t'#fff726',\n\t\t'#ecdd00',\n\t\t'#d4b11d',\n\t\t'#de8800',\n\t\t'#de4800',\n\t\t'#c91515',\n\t\t'#9a0000',\n\t\t'#7b0429',\n\t\t'#580839',\n\t\t'#31082b'\n\t];\n\n\tthis.schemes.spectrum2001 = [\n\t\t'#2f243f',\n\t\t'#3c2c55',\n\t\t'#4a3768',\n\t\t'#565270',\n\t\t'#6b6b7c',\n\t\t'#72957f',\n\t\t'#86ad6e',\n\t\t'#a1bc5e',\n\t\t'#b8d954',\n\t\t'#d3e04e',\n\t\t'#ccad2a',\n\t\t'#cc8412',\n\t\t'#c1521d',\n\t\t'#ad3821',\n\t\t'#8a1010',\n\t\t'#681717',\n\t\t'#531e1e',\n\t\t'#3d1818',\n\t\t'#320a1b'\n\t];\n\n\tthis.schemes.classic9 = [\n\t\t'#423d4f',\n\t\t'#4a6860',\n\t\t'#848f39',\n\t\t'#a2b73c',\n\t\t'#ddcb53',\n\t\t'#c5a32f',\n\t\t'#7d5836',\n\t\t'#963b20',\n\t\t'#7c2626',\n\t\t'#491d37',\n\t\t'#2f254a'\n\t].reverse();\n\n\tthis.schemes.httpStatus = {\n\t\t503: '#ea5029',\n\t\t502: '#d23f14',\n\t\t500: '#bf3613',\n\t\t410: '#efacea',\n\t\t409: '#e291dc',\n\t\t403: '#f457e8',\n\t\t408: '#e121d2',\n\t\t401: '#b92dae',\n\t\t405: '#f47ceb',\n\t\t404: '#a82a9f',\n\t\t400: '#b263c6',\n\t\t301: '#6fa024',\n\t\t302: '#87c32b',\n\t\t307: '#a0d84c',\n\t\t304: '#28b55c',\n\t\t200: '#1a4f74',\n\t\t206: '#27839f',\n\t\t201: '#52adc9',\n\t\t202: '#7c979f',\n\t\t203: '#a5b8bd',\n\t\t204: '#c1cdd1'\n\t};\n\n\tthis.schemes.colorwheel = [\n\t\t'#b5b6a9',\n\t\t'#858772',\n\t\t'#785f43',\n\t\t'#96557e',\n\t\t'#4682b4',\n\t\t'#65b9ac',\n\t\t'#73c03a',\n\t\t'#cb513a'\n\t].reverse();\n\n\tthis.schemes.cool = [\n\t\t'#5e9d2f',\n\t\t'#73c03a',\n\t\t'#4682b4',\n\t\t'#7bc3b8',\n\t\t'#a9884e',\n\t\t'#c1b266',\n\t\t'#a47493',\n\t\t'#c09fb5'\n\t];\n\n\tthis.schemes.munin = [\n\t\t'#00cc00',\n\t\t'#0066b3',\n\t\t'#ff8000',\n\t\t'#ffcc00',\n\t\t'#330099',\n\t\t'#990099',\n\t\t'#ccff00',\n\t\t'#ff0000',\n\t\t'#808080',\n\t\t'#008f00',\n\t\t'#00487d',\n\t\t'#b35a00',\n\t\t'#b38f00',\n\t\t'#6b006b',\n\t\t'#8fb300',\n\t\t'#b30000',\n\t\t'#bebebe',\n\t\t'#80ff80',\n\t\t'#80c9ff',\n\t\t'#ffc080',\n\t\t'#ffe680',\n\t\t'#aa80ff',\n\t\t'#ee00cc',\n\t\t'#ff8080',\n\t\t'#666600',\n\t\t'#ffbfff',\n\t\t'#00ffcc',\n\t\t'#cc6699',\n\t\t'#999900'\n\t];\n};\nRickshaw.namespace('Rickshaw.Fixtures.RandomData');\n\nRickshaw.Fixtures.RandomData = function(timeInterval) {\n\n\tvar addData;\n\ttimeInterval = timeInterval || 1;\n\n\tvar lastRandomValue = 200;\n\n\tvar timeBase = Math.floor(new Date().getTime() / 1000);\n\n\tthis.addData = function(data) {\n\n\t\tvar randomValue = Math.random() * 100 + 15 + lastRandomValue;\n\t\tvar index = data[0].length;\n\n\t\tvar counter = 1;\n\n\t\tdata.forEach( function(series) {\n\t\t\tvar randomVariance = Math.random() * 20;\n\t\t\tvar v = randomValue / 25 + counter++ +\n\t\t\t\t(Math.cos((index * counter * 11) / 960) + 2) * 15 +\n\t\t\t\t(Math.cos(index / 7) + 2) * 7 +\n\t\t\t\t(Math.cos(index / 17) + 2) * 1;\n\n\t\t\tseries.push( { x: (index * timeInterval) + timeBase, y: v + randomVariance } );\n\t\t} );\n\n\t\tlastRandomValue = randomValue * 0.85;\n\t};\n\n\tthis.removeData = function(data) {\n\t\tdata.forEach( function(series) {\n\t\t\tseries.shift();\n\t\t} );\n\t\ttimeBase += timeInterval;\n\t};\n};\n\nRickshaw.namespace('Rickshaw.Fixtures.Time');\n\nRickshaw.Fixtures.Time = function() {\n\n\tvar self = this;\n\n\tthis.months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\n\n\tthis.units = [\n\t\t{\n\t\t\tname: 'decade',\n\t\t\tseconds: 86400 * 365.25 * 10,\n\t\t\tformatter: function(d) { return (parseInt(d.getUTCFullYear() / 10, 10) * 10) }\n\t\t}, {\n\t\t\tname: 'year',\n\t\t\tseconds: 86400 * 365.25,\n\t\t\tformatter: function(d) { return d.getUTCFullYear() }\n\t\t}, {\n\t\t\tname: 'month',\n\t\t\tseconds: 86400 * 30.5,\n\t\t\tformatter: function(d) { return self.months[d.getUTCMonth()] }\n\t\t}, {\n\t\t\tname: 'week',\n\t\t\tseconds: 86400 * 7,\n\t\t\tformatter: function(d) { return self.formatDate(d) }\n\t\t}, {\n\t\t\tname: 'day',\n\t\t\tseconds: 86400,\n\t\t\tformatter: function(d) { return d.getUTCDate() }\n\t\t}, {\n\t\t\tname: '6 hour',\n\t\t\tseconds: 3600 * 6,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: 'hour',\n\t\t\tseconds: 3600,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: '15 minute',\n\t\t\tseconds: 60 * 15,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: 'minute',\n\t\t\tseconds: 60,\n\t\t\tformatter: function(d) { return d.getUTCMinutes() + 'm' }\n\t\t}, {\n\t\t\tname: '15 second',\n\t\t\tseconds: 15,\n\t\t\tformatter: function(d) { return d.getUTCSeconds() + 's' }\n\t\t}, {\n\t\t\tname: 'second',\n\t\t\tseconds: 1,\n\t\t\tformatter: function(d) { return d.getUTCSeconds() + 's' }\n\t\t}, {\n\t\t\tname: 'decisecond',\n\t\t\tseconds: 1/10,\n\t\t\tformatter: function(d) { return d.getUTCMilliseconds() + 'ms' }\n\t\t}, {\n\t\t\tname: 'centisecond',\n\t\t\tseconds: 1/100,\n\t\t\tformatter: function(d) { return d.getUTCMilliseconds() + 'ms' }\n\t\t}\n\t];\n\n\tthis.unit = function(unitName) {\n\t\treturn this.units.filter( function(unit) { return unitName == unit.name } ).shift();\n\t};\n\n\tthis.formatDate = function(d) {\n\t\treturn d3.time.format('%b %e')(d);\n\t};\n\n\tthis.formatTime = function(d) {\n\t\treturn d.toUTCString().match(/(\\d+:\\d+):/)[1];\n\t};\n\n\tthis.ceil = function(time, unit) {\n\n\t\tvar date, floor, year;\n\n\t\tif (unit.name == 'month') {\n\n\t\t\tdate = new Date(time * 1000);\n\n\t\t\tfloor = Date.UTC(date.getUTCFullYear(), date.getUTCMonth()) / 1000;\n\t\t\tif (floor == time) return time;\n\n\t\t\tyear = date.getUTCFullYear();\n\t\t\tvar month = date.getUTCMonth();\n\n\t\t\tif (month == 11) {\n\t\t\t\tmonth = 0;\n\t\t\t\tyear = year + 1;\n\t\t\t} else {\n\t\t\t\tmonth += 1;\n\t\t\t}\n\n\t\t\treturn Date.UTC(year, month) / 1000;\n\t\t}\n\n\t\tif (unit.name == 'year') {\n\n\t\t\tdate = new Date(time * 1000);\n\n\t\t\tfloor = Date.UTC(date.getUTCFullYear(), 0) / 1000;\n\t\t\tif (floor == time) return time;\n\n\t\t\tyear = date.getUTCFullYear() + 1;\n\n\t\t\treturn Date.UTC(year, 0) / 1000;\n\t\t}\n\n\t\treturn Math.ceil(time / unit.seconds) * unit.seconds;\n\t};\n};\nRickshaw.namespace('Rickshaw.Fixtures.Time.Local');\n\nRickshaw.Fixtures.Time.Local = function() {\n\n\tvar self = this;\n\n\tthis.months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];\n\n\tthis.units = [\n\t\t{\n\t\t\tname: 'decade',\n\t\t\tseconds: 86400 * 365.25 * 10,\n\t\t\tformatter: function(d) { return (parseInt(d.getFullYear() / 10, 10) * 10) }\n\t\t}, {\n\t\t\tname: 'year',\n\t\t\tseconds: 86400 * 365.25,\n\t\t\tformatter: function(d) { return d.getFullYear() }\n\t\t}, {\n\t\t\tname: 'month',\n\t\t\tseconds: 86400 * 30.5,\n\t\t\tformatter: function(d) { return self.months[d.getMonth()] }\n\t\t}, {\n\t\t\tname: 'week',\n\t\t\tseconds: 86400 * 7,\n\t\t\tformatter: function(d) { return self.formatDate(d) }\n\t\t}, {\n\t\t\tname: 'day',\n\t\t\tseconds: 86400,\n\t\t\tformatter: function(d) { return d.getDate() }\n\t\t}, {\n\t\t\tname: '6 hour',\n\t\t\tseconds: 3600 * 6,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: 'hour',\n\t\t\tseconds: 3600,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: '15 minute',\n\t\t\tseconds: 60 * 15,\n\t\t\tformatter: function(d) { return self.formatTime(d) }\n\t\t}, {\n\t\t\tname: 'minute',\n\t\t\tseconds: 60,\n\t\t\tformatter: function(d) { return d.getMinutes() }\n\t\t}, {\n\t\t\tname: '15 second',\n\t\t\tseconds: 15,\n\t\t\tformatter: function(d) { return d.getSeconds() + 's' }\n\t\t}, {\n\t\t\tname: 'second',\n\t\t\tseconds: 1,\n\t\t\tformatter: function(d) { return d.getSeconds() + 's' }\n\t\t}, {\n\t\t\tname: 'decisecond',\n\t\t\tseconds: 1/10,\n\t\t\tformatter: function(d) { return d.getMilliseconds() + 'ms' }\n\t\t}, {\n\t\t\tname: 'centisecond',\n\t\t\tseconds: 1/100,\n\t\t\tformatter: function(d) { return d.getMilliseconds() + 'ms' }\n\t\t}\n\t];\n\n\tthis.unit = function(unitName) {\n\t\treturn this.units.filter( function(unit) { return unitName == unit.name } ).shift();\n\t};\n\n\tthis.formatDate = function(d) {\n\t\treturn d3.time.format('%b %e')(d);\n\t};\n\n\tthis.formatTime = function(d) {\n\t\treturn d.toString().match(/(\\d+:\\d+):/)[1];\n\t};\n\n\tthis.ceil = function(time, unit) {\n\n\t\tvar date, floor, year, offset;\n\n\t\tif (unit.name == 'day') {\n\n\t\t\tvar nearFuture = new Date((time + unit.seconds - 1) * 1000);\n\n\t\t\tvar rounded = new Date(0);\n\t\t\trounded.setFullYear(nearFuture.getFullYear());\n\t\t\trounded.setMonth(nearFuture.getMonth());\n\t\t\trounded.setDate(nearFuture.getDate());\n\t\t\trounded.setMilliseconds(0);\n\t\t\trounded.setSeconds(0);\n\t\t\trounded.setMinutes(0);\n\t\t\trounded.setHours(0);\n\n\t\t\treturn rounded.getTime() / 1000;\n\t\t}\n\n\t\tif (unit.name == 'month') {\n\n\t\t\tdate = new Date(time * 1000);\n\n\t\t\tfloor = new Date(date.getFullYear(), date.getMonth()).getTime() / 1000;\n\t\t\tif (floor == time) return time;\n\n\t\t\tyear = date.getFullYear();\n\t\t\tvar month = date.getMonth();\n\n\t\t\tif (month == 11) {\n\t\t\t\tmonth = 0;\n\t\t\t\tyear = year + 1;\n\t\t\t} else {\n\t\t\t\tmonth += 1;\n\t\t\t}\n\n\t\t\treturn new Date(year, month).getTime() / 1000;\n\t\t}\n\n\t\tif (unit.name == 'year') {\n\n\t\t\tdate = new Date(time * 1000);\n\n\t\t\tfloor = new Date(date.getUTCFullYear(), 0).getTime() / 1000;\n\t\t\tif (floor == time) return time;\n\n\t\t\tyear = date.getFullYear() + 1;\n\n\t\t\treturn new Date(year, 0).getTime() / 1000;\n\t\t}\n\t\toffset = new Date(time * 1000).getTimezoneOffset() * 60;\n\t\treturn Math.ceil((time - offset) / unit.seconds) * unit.seconds + offset;\n\t};\n};\nRickshaw.namespace('Rickshaw.Fixtures.Number');\n\nRickshaw.Fixtures.Number.formatKMBT = function(y) {\n\tvar abs_y = Math.abs(y);\n\tif (abs_y >= 1000000000000) { return (y / 1000000000000).toFixed(2) + \"T\" }\n\telse if (abs_y >= 1000000000) { return (y / 1000000000).toFixed(2) + \"B\" }\n\telse if (abs_y >= 1000000) { return (y / 1000000).toFixed(2) + \"M\" }\n\telse if (abs_y >= 1000) { return (y / 1000).toFixed(2) + \"K\" }\n\telse if (abs_y < 1 && abs_y > 0) { return y.toFixed(2) }\n\telse if (abs_y === 0) { return '0' }\n\telse { return y }\n};\n\nRickshaw.Fixtures.Number.formatBase1024KMGTP = function(y) {\n\tvar abs_y = Math.abs(y);\n\tif (abs_y >= 1125899906842624) { return (y / 1125899906842624).toFixed(2) + \"P\" }\n\telse if (abs_y >= 1099511627776) { return (y / 1099511627776).toFixed(2) + \"T\" }\n\telse if (abs_y >= 1073741824) { return (y / 1073741824).toFixed(2) + \"G\" }\n\telse if (abs_y >= 1048576) { return (y / 1048576).toFixed(2) + \"M\" }\n\telse if (abs_y >= 1024) { return (y / 1024).toFixed(2) + \"K\" }\n\telse if (abs_y < 1 && abs_y > 0) { return y.toFixed(2) }\n\telse if (abs_y === 0) { return '0' }\n\telse { return y }\n};\nRickshaw.namespace(\"Rickshaw.Color.Palette\");\n\nRickshaw.Color.Palette = function(args) {\n\n\tvar color = new Rickshaw.Fixtures.Color();\n\n\targs = args || {};\n\tthis.schemes = {};\n\n\tthis.scheme = color.schemes[args.scheme] || args.scheme || color.schemes.colorwheel;\n\tthis.runningIndex = 0;\n\tthis.generatorIndex = 0;\n\n\tif (args.interpolatedStopCount) {\n\t\tvar schemeCount = this.scheme.length - 1;\n\t\tvar i, j, scheme = [];\n\t\tfor (i = 0; i < schemeCount; i++) {\n\t\t\tscheme.push(this.scheme[i]);\n\t\t\tvar generator = d3.interpolateHsl(this.scheme[i], this.scheme[i + 1]);\n\t\t\tfor (j = 1; j < args.interpolatedStopCount; j++) {\n\t\t\t\tscheme.push(generator((1 / args.interpolatedStopCount) * j));\n\t\t\t}\n\t\t}\n\t\tscheme.push(this.scheme[this.scheme.length - 1]);\n\t\tthis.scheme = scheme;\n\t}\n\tthis.rotateCount = this.scheme.length;\n\n\tthis.color = function(key) {\n\t\treturn this.scheme[key] || this.scheme[this.runningIndex++] || this.interpolateColor() || '#808080';\n\t};\n\n\tthis.interpolateColor = function() {\n\t\tif (!Array.isArray(this.scheme)) return;\n\t\tvar color;\n\t\tif (this.generatorIndex == this.rotateCount * 2 - 1) {\n\t\t\tcolor = d3.interpolateHsl(this.scheme[this.generatorIndex], this.scheme[0])(0.5);\n\t\t\tthis.generatorIndex = 0;\n\t\t\tthis.rotateCount *= 2;\n\t\t} else {\n\t\t\tcolor = d3.interpolateHsl(this.scheme[this.generatorIndex], this.scheme[this.generatorIndex + 1])(0.5);\n\t\t\tthis.generatorIndex++;\n\t\t}\n\t\tthis.scheme.push(color);\n\t\treturn color;\n\t};\n\n};\nRickshaw.namespace('Rickshaw.Graph.Ajax');\n\nRickshaw.Graph.Ajax = Rickshaw.Class.create( {\n\n\tinitialize: function(args) {\n\n\t\tthis.dataURL = args.dataURL;\n\n\t\tthis.onData = args.onData || function(d) { return d };\n\t\tthis.onComplete = args.onComplete || function() {};\n\t\tthis.onError = args.onError || function() {};\n\n\t\tthis.args = args; // pass through to Rickshaw.Graph\n\n\t\tthis.request();\n\t},\n\n\trequest: function() {\n\n\t\tjQuery.ajax( {\n\t\t\turl: this.dataURL,\n\t\t\tdataType: 'json',\n\t\t\tsuccess: this.success.bind(this),\n\t\t\terror: this.error.bind(this)\n\t\t} );\n\t},\n\n\terror: function() {\n\n\t\tconsole.log(\"error loading dataURL: \" + this.dataURL);\n\t\tthis.onError(this);\n\t},\n\n\tsuccess: function(data, status) {\n\n\t\tdata = this.onData(data);\n\t\tthis.args.series = this._splice({ data: data, series: this.args.series });\n\n\t\tthis.graph = this.graph || new Rickshaw.Graph(this.args);\n\t\tthis.graph.render();\n\n\t\tthis.onComplete(this);\n\t},\n\n\t_splice: function(args) {\n\n\t\tvar data = args.data;\n\t\tvar series = args.series;\n\n\t\tif (!args.series) return data;\n\n\t\tseries.forEach( function(s) {\n\n\t\t\tvar seriesKey = s.key || s.name;\n\t\t\tif (!seriesKey) throw \"series needs a key or a name\";\n\n\t\t\tdata.forEach( function(d) {\n\n\t\t\t\tvar dataKey = d.key || d.name;\n\t\t\t\tif (!dataKey) throw \"data needs a key or a name\";\n\n\t\t\t\tif (seriesKey == dataKey) {\n\t\t\t\t\tvar properties = ['color', 'name', 'data'];\n\t\t\t\t\tproperties.forEach( function(p) {\n\t\t\t\t\t\tif (d[p]) s[p] = d[p];\n\t\t\t\t\t} );\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\n\t\treturn series;\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Annotate');\n\nRickshaw.Graph.Annotate = function(args) {\n\n\tvar graph = this.graph = args.graph;\n\tthis.elements = { timeline: args.element };\n\t\n\tvar self = this;\n\n\tthis.data = {};\n\n\tthis.elements.timeline.classList.add('rickshaw_annotation_timeline');\n\n\tthis.add = function(time, content, end_time) {\n\t\tself.data[time] = self.data[time] || {'boxes': []};\n\t\tself.data[time].boxes.push({content: content, end: end_time});\n\t};\n\n\tthis.update = function() {\n\n\t\tRickshaw.keys(self.data).forEach( function(time) {\n\n\t\t\tvar annotation = self.data[time];\n\t\t\tvar left = self.graph.x(time);\n\n\t\t\tif (left < 0 || left > self.graph.x.range()[1]) {\n\t\t\t\tif (annotation.element) {\n\t\t\t\t\tannotation.line.classList.add('offscreen');\n\t\t\t\t\tannotation.element.style.display = 'none';\n\t\t\t\t}\n\n\t\t\t\tannotation.boxes.forEach( function(box) {\n\t\t\t\t\tif ( box.rangeElement ) box.rangeElement.classList.add('offscreen');\n\t\t\t\t});\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!annotation.element) {\n\t\t\t\tvar element = annotation.element = document.createElement('div');\n\t\t\t\telement.classList.add('annotation');\n\t\t\t\tthis.elements.timeline.appendChild(element);\n\t\t\t\telement.addEventListener('click', function(e) {\n\t\t\t\t\telement.classList.toggle('active');\n\t\t\t\t\tannotation.line.classList.toggle('active');\n\t\t\t\t\tannotation.boxes.forEach( function(box) {\n\t\t\t\t\t\tif ( box.rangeElement ) box.rangeElement.classList.toggle('active');\n\t\t\t\t\t});\n\t\t\t\t}, false);\n\t\t\t\t\t\n\t\t\t}\n\n\t\t\tannotation.element.style.left = left + 'px';\n\t\t\tannotation.element.style.display = 'block';\n\n\t\t\tannotation.boxes.forEach( function(box) {\n\n\n\t\t\t\tvar element = box.element;\n\n\t\t\t\tif (!element) {\n\t\t\t\t\telement = box.element = document.createElement('div');\n\t\t\t\t\telement.classList.add('content');\n\t\t\t\t\telement.innerHTML = box.content;\n\t\t\t\t\tannotation.element.appendChild(element);\n\n\t\t\t\t\tannotation.line = document.createElement('div');\n\t\t\t\t\tannotation.line.classList.add('annotation_line');\n\t\t\t\t\tself.graph.element.appendChild(annotation.line);\n\n\t\t\t\t\tif ( box.end ) {\n\t\t\t\t\t\tbox.rangeElement = document.createElement('div');\n\t\t\t\t\t\tbox.rangeElement.classList.add('annotation_range');\n\t\t\t\t\t\tself.graph.element.appendChild(box.rangeElement);\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t\tif ( box.end ) {\n\n\t\t\t\t\tvar annotationRangeStart = left;\n\t\t\t\t\tvar annotationRangeEnd = Math.min( self.graph.x(box.end), self.graph.x.range()[1] );\n\n\t\t\t\t\t// annotation makes more sense at end\n\t\t\t\t\tif ( annotationRangeStart > annotationRangeEnd ) {\n\t\t\t\t\t\tannotationRangeEnd = left;\n\t\t\t\t\t\tannotationRangeStart = Math.max( self.graph.x(box.end), self.graph.x.range()[0] );\n\t\t\t\t\t}\n\n\t\t\t\t\tvar annotationRangeWidth = annotationRangeEnd - annotationRangeStart;\n\n\t\t\t\t\tbox.rangeElement.style.left = annotationRangeStart + 'px';\n\t\t\t\t\tbox.rangeElement.style.width = annotationRangeWidth + 'px';\n\n\t\t\t\t\tbox.rangeElement.classList.remove('offscreen');\n\t\t\t\t}\n\n\t\t\t\tannotation.line.classList.remove('offscreen');\n\t\t\t\tannotation.line.style.left = left + 'px';\n\t\t\t} );\n\t\t}, this );\n\t};\n\n\tthis.graph.onUpdate( function() { self.update() } );\n};\nRickshaw.namespace('Rickshaw.Graph.Axis.Time');\n\nRickshaw.Graph.Axis.Time = function(args) {\n\n\tvar self = this;\n\n\tthis.graph = args.graph;\n\tthis.elements = [];\n\tthis.ticksTreatment = args.ticksTreatment || 'plain';\n\tthis.fixedTimeUnit = args.timeUnit;\n\n\tvar time = args.timeFixture || new Rickshaw.Fixtures.Time();\n\n\tthis.appropriateTimeUnit = function() {\n\n\t\tvar unit;\n\t\tvar units = time.units;\n\n\t\tvar domain = this.graph.x.domain();\n\t\tvar rangeSeconds = domain[1] - domain[0];\n\n\t\tunits.forEach( function(u) {\n\t\t\tif (Math.floor(rangeSeconds / u.seconds) >= 2) {\n\t\t\t\tunit = unit || u;\n\t\t\t}\n\t\t} );\n\n\t\treturn (unit || time.units[time.units.length - 1]);\n\t};\n\n\tthis.tickOffsets = function() {\n\n\t\tvar domain = this.graph.x.domain();\n\n\t\tvar unit = this.fixedTimeUnit || this.appropriateTimeUnit();\n\t\tvar count = Math.ceil((domain[1] - domain[0]) / unit.seconds);\n\n\t\tvar runningTick = domain[0];\n\n\t\tvar offsets = [];\n\n\t\tfor (var i = 0; i < count; i++) {\n\n\t\t\tvar tickValue = time.ceil(runningTick, unit);\n\t\t\trunningTick = tickValue + unit.seconds / 2;\n\n\t\t\toffsets.push( { value: tickValue, unit: unit } );\n\t\t}\n\n\t\treturn offsets;\n\t};\n\n\tthis.render = function() {\n\n\t\tthis.elements.forEach( function(e) {\n\t\t\te.parentNode.removeChild(e);\n\t\t} );\n\n\t\tthis.elements = [];\n\n\t\tvar offsets = this.tickOffsets();\n\n\t\toffsets.forEach( function(o) {\n\t\t\t\n\t\t\tif (self.graph.x(o.value) > self.graph.x.range()[1]) return;\n\t\n\t\t\tvar element = document.createElement('div');\n\t\t\telement.style.left = self.graph.x(o.value) + 'px';\n\t\t\telement.classList.add('x_tick');\n\t\t\telement.classList.add(self.ticksTreatment);\n\n\t\t\tvar title = document.createElement('div');\n\t\t\ttitle.classList.add('title');\n\t\t\ttitle.innerHTML = o.unit.formatter(new Date(o.value * 1000));\n\t\t\telement.appendChild(title);\n\n\t\t\tself.graph.element.appendChild(element);\n\t\t\tself.elements.push(element);\n\n\t\t} );\n\t};\n\n\tthis.graph.onUpdate( function() { self.render() } );\n};\n\nRickshaw.namespace('Rickshaw.Graph.Axis.X');\n\nRickshaw.Graph.Axis.X = function(args) {\n\n\tvar self = this;\n\tvar berthRate = 0.10;\n\n\tthis.initialize = function(args) {\n\n\t\tthis.graph = args.graph;\n\t\tthis.orientation = args.orientation || 'top';\n\t\tthis.color = args.color || \"#000000\";\n\n\t\tthis.pixelsPerTick = args.pixelsPerTick || 75;\n\t\tif (args.ticks) this.staticTicks = args.ticks;\n\t\tif (args.tickValues) this.tickValues = args.tickValues;\n\n\t\tthis.tickSize = args.tickSize || 4;\n\t\tthis.ticksTreatment = args.ticksTreatment || 'plain';\n\n\t\tif (args.element) {\n\n\t\t\tthis.element = args.element;\n\t\t\tthis._discoverSize(args.element, args);\n\n\t\t\tthis.vis = d3.select(args.element)\n\t\t\t\t.append(\"svg:svg\")\n\t\t\t\t.attr('height', this.height)\n\t\t\t\t.attr('width', this.width)\n\t\t\t\t.attr('stroke', this.color)\n\t\t\t\t.attr('class', 'rickshaw_graph x_axis_d3');\n\n\t\t\tthis.element = this.vis[0][0];\n\t\t\tthis.element.style.position = 'relative';\n\n\t\t\tthis.setSize({ width: args.width, height: args.height });\n\n\t\t} else {\n\t\t\tthis.vis = this.graph.vis;\n\t\t}\n\n\t\tthis.graph.onUpdate( function() { self.render() } );\n\t};\n\n\tthis.setSize = function(args) {\n\n\t\targs = args || {};\n\t\tif (!this.element) return;\n\n\t\tthis._discoverSize(this.element.parentNode, args);\n\n\t\tthis.vis\n\t\t\t.attr('height', this.height)\n\t\t\t.attr('width', this.width * (1 + berthRate));\n\n\t\tvar berth = Math.floor(this.width * berthRate / 2);\n\t\tthis.element.style.left = -1 * berth + 'px';\n\t};\n\n\tthis.render = function() {\n\n\t\tif (this._renderWidth !== undefined && this.graph.width !== this._renderWidth) this.setSize({ auto: true });\n\n\t\tvar axis = d3.svg.axis().scale(this.graph.x).orient(this.orientation);\n\t\taxis.tickFormat( args.tickFormat || function(x) { return x } );\n\t\tif (this.tickValues) axis.tickValues(this.tickValues);\n\n\t\tthis.ticks = this.staticTicks || Math.floor(this.graph.width / this.pixelsPerTick);\n\n\t\tvar berth = Math.floor(this.width * berthRate / 2) || 0;\n\t\tvar bar_offset = this.graph.renderer.name == \"bar\" && Math.ceil(this.graph.width * 0.95 / this.graph.series[0].data.length / 2) || 0;\n\n\t\tvar transform;\n\n\t\tif (this.orientation == 'top') {\n\t\t\tvar yOffset = this.height || this.graph.height;\n\t\t\ttransform = 'translate(' + (berth + bar_offset) + ',' + yOffset + ')';\n\t\t} else {\n\t\t\ttransform = 'translate(' + (berth + bar_offset) + ', 0)';\n\t\t}\n\n\t\tif (this.element) {\n\t\t\tthis.vis.selectAll('*').remove();\n\t\t}\n\n\t\tthis.vis\n\t\t\t.append(\"svg:g\")\n\t\t\t.attr(\"class\", [\"x_ticks_d3\", this.ticksTreatment].join(\" \"))\n\t\t\t.attr(\"transform\", transform)\n\t\t\t.call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(this.tickSize));\n\n\t\tvar gridSize = (this.orientation == 'bottom' ? 1 : -1) * this.graph.height;\n\n\t\tthis.graph.vis\n\t\t\t.append(\"svg:g\")\n\t\t\t.attr(\"class\", \"x_grid_d3\")\n\t\t\t.call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(gridSize))\n\t\t\t.selectAll('text')\n\t\t\t.each(function() { this.parentNode.setAttribute('data-x-value', this.textContent) });\n\n\t\tthis._renderHeight = this.graph.height;\n\t};\n\n\tthis._discoverSize = function(element, args) {\n\n\t\tif (typeof window !== 'undefined') {\n\n\t\t\tvar style = window.getComputedStyle(element, null);\n\t\t\tvar elementHeight = parseInt(style.getPropertyValue('height'), 10);\n\n\t\t\tif (!args.auto) {\n\t\t\t\tvar elementWidth = parseInt(style.getPropertyValue('width'), 10);\n\t\t\t}\n\t\t}\n\n\t\tthis.width = (args.width || elementWidth || this.graph.width) * (1 + berthRate);\n\t\tthis.height = args.height || elementHeight || 40;\n\t};\n\n\tthis.initialize(args);\n};\n\nRickshaw.namespace('Rickshaw.Graph.Axis.Y');\n\nRickshaw.Graph.Axis.Y = Rickshaw.Class.create( {\n\n\tinitialize: function(args) {\n\n\t\tthis.graph = args.graph;\n\t\tthis.orientation = args.orientation || 'right';\n\t\tthis.color = args.color || \"#000000\";\n\n\t\tthis.pixelsPerTick = args.pixelsPerTick || 75;\n\t\tif (args.ticks) this.staticTicks = args.ticks;\n\t\tif (args.tickValues) this.tickValues = args.tickValues;\n\n\t\tthis.tickSize = args.tickSize || 4;\n\t\tthis.ticksTreatment = args.ticksTreatment || 'plain';\n\n\t\tthis.tickFormat = args.tickFormat || function(y) { return y };\n\n\t\tthis.berthRate = 0.10;\n\n\t\tif (args.element) {\n\n\t\t\tthis.element = args.element;\n\t\t\tthis.vis = d3.select(args.element)\n\t\t\t\t.append(\"svg:svg\")\n\t\t\t\t.attr('stroke', this.color)\n\t\t\t\t.attr('class', 'rickshaw_graph y_axis');\n\n\t\t\tthis.element = this.vis[0][0];\n\t\t\tthis.element.style.position = 'relative';\n\n\t\t\tthis.setSize({ width: args.width, height: args.height });\n\n\t\t} else {\n\t\t\tthis.vis = this.graph.vis;\n\t\t}\n\n\t\tvar self = this;\n\t\tthis.graph.onUpdate( function() { self.render() } );\n\t},\n\n\tsetSize: function(args) {\n\n\t\targs = args || {};\n\n\t\tif (!this.element) return;\n\n\t\tif (typeof window !== 'undefined') {\n\n\t\t\tvar style = window.getComputedStyle(this.element.parentNode, null);\n\t\t\tvar elementWidth = parseInt(style.getPropertyValue('width'), 10);\n\n\t\t\tif (!args.auto) {\n\t\t\t\tvar elementHeight = parseInt(style.getPropertyValue('height'), 10);\n\t\t\t}\n\t\t}\n\n\t\tthis.width = args.width || elementWidth || this.graph.width * this.berthRate;\n\t\tthis.height = args.height || elementHeight || this.graph.height;\n\n\t\tthis.vis\n\t\t\t.attr('width', this.width)\n\t\t\t.attr('height', this.height * (1 + this.berthRate));\n\n\t\tvar berth = this.height * this.berthRate;\n\n\t\tif (this.orientation == 'left') {\n\t\t\tthis.element.style.top = -1 * berth + 'px';\n\t\t}\n\t},\n\n\trender: function() {\n\n\t\tif (this._renderHeight !== undefined && this.graph.height !== this._renderHeight) this.setSize({ auto: true });\n\n\t\tthis.ticks = this.staticTicks || Math.floor(this.graph.height / this.pixelsPerTick);\n\n\t\tvar axis = this._drawAxis(this.graph.y);\n\n\t\tthis._drawGrid(axis);\n\n\t\tthis._renderHeight = this.graph.height;\n\t},\n\n\t_drawAxis: function(scale) {\n\t\tvar axis = d3.svg.axis().scale(scale).orient(this.orientation);\n\t\taxis.tickFormat(this.tickFormat);\n\t\tif (this.tickValues) axis.tickValues(this.tickValues);\n\n\t\tif (this.orientation == 'left') {\n\t\t\tvar berth = this.height * this.berthRate;\n\t\t\tvar transform = 'translate(' + this.width + ', ' + berth + ')';\n\t\t}\n\n\t\tif (this.element) {\n\t\t\tthis.vis.selectAll('*').remove();\n\t\t}\n\n\t\tthis.vis\n\t\t\t.append(\"svg:g\")\n\t\t\t.attr(\"class\", [\"y_ticks\", this.ticksTreatment].join(\" \"))\n\t\t\t.attr(\"transform\", transform)\n\t\t\t.call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(this.tickSize));\n\n\t\treturn axis;\n\t},\n\n\t_drawGrid: function(axis) {\n\t\tvar gridSize = (this.orientation == 'right' ? 1 : -1) * this.graph.width;\n\n\t\tthis.graph.vis\n\t\t\t.append(\"svg:g\")\n\t\t\t.attr(\"class\", \"y_grid\")\n\t\t\t.call(axis.ticks(this.ticks).tickSubdivide(0).tickSize(gridSize))\n\t\t\t.selectAll('text')\n\t\t\t.each(function() { this.parentNode.setAttribute('data-y-value', this.textContent) });\n\t}\n} );\nRickshaw.namespace('Rickshaw.Graph.Axis.Y.Scaled');\n\nRickshaw.Graph.Axis.Y.Scaled = Rickshaw.Class.create( Rickshaw.Graph.Axis.Y, {\n\n initialize: function($super, args) {\n\n if (typeof(args.scale) === 'undefined') {\n throw new Error('Scaled requires scale');\n }\n\n this.scale = args.scale;\n\n if (typeof(args.grid) === 'undefined') {\n this.grid = true;\n } else {\n this.grid = args.grid;\n }\n\n $super(args);\n\n },\n\n _drawAxis: function($super, scale) {\n // Adjust scale's domain to compensate for adjustments to the\n // renderer's domain (e.g. padding).\n var domain = this.scale.domain();\n var renderDomain = this.graph.renderer.domain().y;\n\n var extents = [\n Math.min.apply(Math, domain),\n Math.max.apply(Math, domain)];\n\n // A mapping from the ideal render domain [0, 1] to the extent\n // of the original scale's domain. This is used to calculate\n // the extents of the adjusted domain.\n var extentMap = d3.scale.linear().domain([0, 1]).range(extents);\n\n var adjExtents = [\n extentMap(renderDomain[0]),\n extentMap(renderDomain[1])];\n\n // A mapping from the original domain to the adjusted domain.\n var adjustment = d3.scale.linear().domain(extents).range(adjExtents);\n\n // Make a copy of the custom scale, apply the adjusted domain, and\n // copy the range to match the graph's scale.\n var adjustedScale = this.scale.copy()\n .domain(domain.map(adjustment))\n .range(scale.range());\n\n return $super(adjustedScale);\n },\n\n _drawGrid: function($super, axis) {\n if (this.grid) {\n // only draw the axis if the grid option is true\n $super(axis);\n }\n }\n} );\nRickshaw.namespace('Rickshaw.Graph.Behavior.Series.Highlight');\n\nRickshaw.Graph.Behavior.Series.Highlight = function(args) {\n\n\tthis.graph = args.graph;\n\tthis.legend = args.legend;\n\n\tvar self = this;\n\n\tvar propertiesSafe = {};\n\tvar activeLine = null;\n\n\tvar disabledColor = args.disabledColor || function(seriesColor) {\n\t\treturn d3.interpolateRgb(seriesColor, d3.rgb('#d8d8d8'))(0.8).toString();\n\t};\n\n\tvar transformFn = args.transform || function(isActive, series) {\n\t\tvar newProperties = {};\n\t\tif (!isActive) {\n\t\t\t// backwards compability\n\t\t\tnewProperties.color = disabledColor(series.color);\n\t\t}\n\t\treturn newProperties;\n\t};\n\n\n\tthis.addHighlightEvents = function (l) {\n\n\t\tl.element.addEventListener( 'mouseover', function(e) {\n\n\t\t\tif (activeLine) return;\n\t\t\telse activeLine = l;\n\n\t\t\tself.legend.lines.forEach( function(line) {\n\t\t\t\tvar newProperties;\n\t\t\t\tvar isActive = false;\n\n\t\t\t\tif (l === line) {\n\t\t\t\t\tisActive = true;\n\n\t\t\t\t\t// if we're not in a stacked renderer bring active line to the top\n\t\t\t\t\tif (self.graph.renderer.unstack && (line.series.renderer ? line.series.renderer.unstack : true)) {\n\n\t\t\t\t\t\tvar seriesIndex = self.graph.series.indexOf(line.series);\n\t\t\t\t\t\tline.originalIndex = seriesIndex;\n\n\t\t\t\t\t\tvar series = self.graph.series.splice(seriesIndex, 1)[0];\n\t\t\t\t\t\tself.graph.series.push(series);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnewProperties = transformFn(isActive, line.series);\n\n\t\t\t\tpropertiesSafe[line.series.name] = propertiesSafe[line.series.name] || {\n\t\t\t\t\tcolor : line.series.color,\n\t\t\t\t\tstroke : line.series.stroke\n\t\t\t\t};\n\n\t\t\t\tif (newProperties.color) {\n\t\t\t\t\tline.series.color = newProperties.color;\n\t\t\t\t}\n\t\t\t\tif (newProperties.stroke) {\n\t\t\t\t\tline.series.stroke = newProperties.stroke;\n\t\t\t\t}\n\n\t\t\t} );\n\n\t\t\tself.graph.update();\n\n\t\t}, false );\n\n\t\tl.element.addEventListener( 'mouseout', function(e) {\n\n\t\t\tif (!activeLine) return;\n\t\t\telse activeLine = null;\n\n\t\t\tself.legend.lines.forEach( function(line) {\n\n\t\t\t\t// return reordered series to its original place\n\t\t\t\tif (l === line && line.hasOwnProperty('originalIndex')) {\n\n\t\t\t\t\tvar series = self.graph.series.pop();\n\t\t\t\t\tself.graph.series.splice(line.originalIndex, 0, series);\n\t\t\t\t\tdelete line.originalIndex;\n\t\t\t\t}\n\n\t\t\t\tvar lineProperties = propertiesSafe[line.series.name];\n\t\t\t\tif (lineProperties) {\n\t\t\t\t\tline.series.color = lineProperties.color;\n\t\t\t\t\tline.series.stroke = lineProperties.stroke;\n\t\t\t\t}\n\t\t\t} );\n\n\t\t\tself.graph.update();\n\n\t\t}, false );\n\t};\n\n\tif (this.legend) {\n\t\tthis.legend.lines.forEach( function(l) {\n\t\t\tself.addHighlightEvents(l);\n\t\t} );\n\t}\n\n};\nRickshaw.namespace('Rickshaw.Graph.Behavior.Series.Order');\n\nRickshaw.Graph.Behavior.Series.Order = function(args) {\n\n\tthis.graph = args.graph;\n\tthis.legend = args.legend;\n\n\tvar self = this;\n\n\tif (typeof window.jQuery == 'undefined') {\n\t\tthrow \"couldn't find jQuery at window.jQuery\";\n\t}\n\n\tif (typeof window.jQuery.ui == 'undefined') {\n\t\tthrow \"couldn't find jQuery UI at window.jQuery.ui\";\n\t}\n\n\tjQuery(function() {\n\t\tjQuery(self.legend.list).sortable( {\n\t\t\tcontainment: 'parent',\n\t\t\ttolerance: 'pointer',\n\t\t\tupdate: function( event, ui ) {\n\t\t\t\tvar series = [];\n\t\t\t\tjQuery(self.legend.list).find('li').each( function(index, item) {\n\t\t\t\t\tif (!item.series) return;\n\t\t\t\t\tseries.push(item.series);\n\t\t\t\t} );\n\n\t\t\t\tfor (var i = self.graph.series.length - 1; i >= 0; i--) {\n\t\t\t\t\tself.graph.series[i] = series.shift();\n\t\t\t\t}\n\n\t\t\t\tself.graph.update();\n\t\t\t}\n\t\t} );\n\t\tjQuery(self.legend.list).disableSelection();\n\t});\n\n\t//hack to make jquery-ui sortable behave\n\tthis.graph.onUpdate( function() { \n\t\tvar h = window.getComputedStyle(self.legend.element).height;\n\t\tself.legend.element.style.height = h;\n\t} );\n};\nRickshaw.namespace('Rickshaw.Graph.Behavior.Series.Toggle');\n\nRickshaw.Graph.Behavior.Series.Toggle = function(args) {\n\n\tthis.graph = args.graph;\n\tthis.legend = args.legend;\n\n\tvar self = this;\n\n\tthis.addAnchor = function(line) {\n\n\t\tvar anchor = document.createElement('a');\n\t\tanchor.innerHTML = '✔';\n\t\tanchor.classList.add('action');\n\t\tline.element.insertBefore(anchor, line.element.firstChild);\n\n\t\tanchor.onclick = function(e) {\n\t\t\tif (line.series.disabled) {\n\t\t\t\tline.series.enable();\n\t\t\t\tline.element.classList.remove('disabled');\n\t\t\t} else { \n\t\t\t\tif (this.graph.series.filter(function(s) { return !s.disabled }).length <= 1) return;\n\t\t\t\tline.series.disable();\n\t\t\t\tline.element.classList.add('disabled');\n\t\t\t}\n\n\t\t\tself.graph.update();\n\n\t\t}.bind(this);\n\t\t\n var label = line.element.getElementsByTagName('span')[0];\n label.onclick = function(e){\n\n var disableAllOtherLines = line.series.disabled;\n if ( ! disableAllOtherLines ) {\n for ( var i = 0; i < self.legend.lines.length; i++ ) {\n var l = self.legend.lines[i];\n if ( line.series === l.series ) {\n // noop\n } else if ( l.series.disabled ) {\n // noop\n } else {\n disableAllOtherLines = true;\n break;\n }\n }\n }\n\n // show all or none\n if ( disableAllOtherLines ) {\n\n // these must happen first or else we try ( and probably fail ) to make a no line graph\n line.series.enable();\n line.element.classList.remove('disabled');\n\n self.legend.lines.forEach(function(l){\n if ( line.series === l.series ) {\n // noop\n } else {\n l.series.disable();\n l.element.classList.add('disabled');\n }\n });\n\n } else {\n\n self.legend.lines.forEach(function(l){\n l.series.enable();\n l.element.classList.remove('disabled');\n });\n\n }\n\n self.graph.update();\n\n };\n\n\t};\n\n\tif (this.legend) {\n\n\t\tif (typeof jQuery != 'undefined' && jQuery(this.legend.list).sortable) {\n\t\t\tjQuery(this.legend.list).sortable( {\n\t\t\t\tstart: function(event, ui) {\n\t\t\t\t\tui.item.bind('no.onclick',\n\t\t\t\t\t\tfunction(event) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tstop: function(event, ui) {\n\t\t\t\t\tsetTimeout(function(){\n\t\t\t\t\t\tui.item.unbind('no.onclick');\n\t\t\t\t\t}, 250);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tthis.legend.lines.forEach( function(l) {\n\t\t\tself.addAnchor(l);\n\t\t} );\n\t}\n\n\tthis._addBehavior = function() {\n\n\t\tthis.graph.series.forEach( function(s) {\n\t\t\t\n\t\t\ts.disable = function() {\n\n\t\t\t\tif (self.graph.series.length <= 1) {\n\t\t\t\t\tthrow('only one series left');\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ts.disabled = true;\n\t\t\t};\n\n\t\t\ts.enable = function() {\n\t\t\t\ts.disabled = false;\n\t\t\t};\n\t\t} );\n\t};\n\tthis._addBehavior();\n\n\tthis.updateBehaviour = function () { this._addBehavior() };\n\n};\nRickshaw.namespace('Rickshaw.Graph.DragZoom');\n\nRickshaw.Graph.DragZoom = Rickshaw.Class.create({\n\n\tinitialize: function(args) {\n\t\tif (!args || !args.graph) {\n\t\t\tthrow new Error(\"Rickshaw.Graph.DragZoom needs a reference to a graph\");\n\t\t}\n\t\tvar defaults = {\n\t\t\topacity: 0.5,\n\t\t\tfill: 'steelblue',\n\t\t\tminimumTimeSelection: 60,\n\t\t\tcallback: function() {}\n\t\t};\n\n\t\tthis.graph = args.graph;\n\t\tthis.svg = d3.select(this.graph.element).select(\"svg\");\n\t\tthis.svgWidth = parseInt(this.svg.attr(\"width\"), 10);\n\t\tthis.opacity = args.opacity || defaults.opacity;\n\t\tthis.fill = args.fill || defaults.fill;\n\t\tthis.minimumTimeSelection = args.minimumTimeSelection || defaults.minimumTimeSelection;\n\t\tthis.callback = args.callback || defaults.callback;\n\n\t\tthis.registerMouseEvents();\n\t},\n\n\tregisterMouseEvents: function() {\n\t\tvar self = this;\n\t\tvar ESCAPE_KEYCODE = 27;\n\t\tvar rectangle;\n\n\t\tvar drag = {\n\t\t\tstartDt: null,\n\t\t\tstopDt: null,\n\t\t\tstartPX: null,\n\t\t\tstopPX: null\n\t\t};\n\n\t\tthis.svg.on(\"mousedown\", onMousedown);\n\n\t\tfunction onMouseup(datum, index) {\n\t\t\tdrag.stopDt = pointAsDate(d3.event);\n\t\t\tvar windowAfterDrag = [\n\t\t\t\tdrag.startDt,\n\t\t\t\tdrag.stopDt\n\t\t\t].sort(compareNumbers);\n\n\t\t\tself.graph.window.xMin = windowAfterDrag[0];\n\t\t\tself.graph.window.xMax = windowAfterDrag[1];\n\n\t\t\tvar endTime = self.graph.window.xMax;\n\t\t\tvar range = self.graph.window.xMax - self.graph.window.xMin;\n\n\t\t\treset(this);\n\n\t\t\tif (range < self.minimumTimeSelection || isNaN(range)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tself.graph.update();\n\t\t\tself.callback({range: range, endTime: endTime});\n\t\t}\n\n\t\tfunction onMousemove() {\n\t\t\tvar offset = drag.stopPX = (d3.event.offsetX || d3.event.layerX);\n\t\t\tif (offset > (self.svgWidth - 1) || offset < 1) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar limits = [drag.startPX, offset].sort(compareNumbers);\n\t\t\tvar selectionWidth = limits[1]-limits[0];\n\t\t\tif (isNaN(selectionWidth)) {\n\t\t\t\treturn reset(this);\n\t\t\t}\n\t\t\trectangle.attr(\"fill\", self.fill)\n\t\t\t.attr(\"x\", limits[0])\n\t\t\t.attr(\"width\", selectionWidth);\n\t\t}\n\n\t\tfunction onMousedown() {\n\t\t\tvar el = d3.select(this);\n\t\t\trectangle = el.append(\"rect\")\n\t\t\t.style(\"opacity\", self.opacity)\n\t\t\t.attr(\"y\", 0)\n\t\t\t.attr(\"height\", \"100%\");\n\n\t\t\tif(d3.event.preventDefault) {\n\t\t\t\td3.event.preventDefault();\n\t\t\t} else {\n\t\t\t\td3.event.returnValue = false;\n\t\t\t}\n\t\t\tdrag.target = d3.event.target;\n\t\t\tdrag.startDt = pointAsDate(d3.event);\n\t\t\tdrag.startPX = d3.event.offsetX || d3.event.layerX;\n\t\t\tel.on(\"mousemove\", onMousemove);\n\t\t\td3.select(document).on(\"mouseup\", onMouseup);\n\t\t\td3.select(document).on(\"keyup\", function() {\n\t\t\t\tif (d3.event.keyCode === ESCAPE_KEYCODE) {\n\t\t\t\t\treset(this);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\tfunction reset(el) {\n\t\t\tvar s = d3.select(el);\n\t\t\ts.on(\"mousemove\", null);\n\t\t\td3.select(document).on(\"mouseup\", null);\n\t\t\tdrag = {};\n\t\t\trectangle.remove();\n\t\t}\n\n\t\tfunction compareNumbers(a, b) {\n\t\t\treturn a - b;\n\t\t}\n\n\t\tfunction pointAsDate(e) {\n\t\t\treturn Math.floor(self.graph.x.invert(e.offsetX || e.layerX));\n\t\t}\n\t}\n});\nRickshaw.namespace('Rickshaw.Graph.HoverDetail');\n\nRickshaw.Graph.HoverDetail = Rickshaw.Class.create({\n\n\tinitialize: function(args) {\n\n\t\tvar graph = this.graph = args.graph;\n\n\t\tthis.xFormatter = args.xFormatter || function(x) {\n\t\t\treturn new Date( x * 1000 ).toUTCString();\n\t\t};\n\n\t\tthis.yFormatter = args.yFormatter || function(y) {\n\t\t\treturn y === null ? y : y.toFixed(2);\n\t\t};\n\n\t\tvar element = this.element = document.createElement('div');\n\t\telement.className = 'detail inactive';\n\n\t\tthis.visible = true;\n\t\tgraph.element.appendChild(element);\n\n\t\tthis.lastEvent = null;\n\t\tthis._addListeners();\n\n\t\tthis.onShow = args.onShow;\n\t\tthis.onHide = args.onHide;\n\t\tthis.onRender = args.onRender;\n\n\t\tthis.formatter = args.formatter || this.formatter;\n\n\t},\n\n\tformatter: function(series, x, y, formattedX, formattedY, d) {\n\t\treturn series.name + ': ' + formattedY;\n\t},\n\n\tupdate: function(e) {\n\n\t\te = e || this.lastEvent;\n\t\tif (!e) return;\n\t\tthis.lastEvent = e;\n\n\t\tif (!e.target.nodeName.match(/^(path|svg|rect|circle)$/)) return;\n\n\t\tvar graph = this.graph;\n\n\t\tvar rect = graph.element.getBoundingClientRect();\n\t\tvar eventX = e.clientX - rect.left;\n\t\tvar eventY = e.clientY - rect.top;\n\n\t\tvar j = 0;\n\t\tvar points = [];\n\t\tvar nearestPoint;\n\n\t\tthis.graph.series.active().forEach( function(series) {\n\n\t\t\tvar data = this.graph.stackedData[j++];\n\n\t\t\tif (!data.length)\n\t\t\t\treturn;\n\n\t\t\tvar domainX = graph.x.invert(eventX);\n\n\t\t\tvar domainIndexScale = d3.scale.linear()\n\t\t\t\t.domain([data[0].x, data.slice(-1)[0].x])\n\t\t\t\t.range([0, data.length - 1]);\n\n\t\t\tvar approximateIndex = Math.round(domainIndexScale(domainX));\n\t\t\tif (approximateIndex == data.length - 1) approximateIndex--;\n\n\t\t\tvar dataIndex = Math.min(approximateIndex || 0, data.length - 1);\n\n\t\t\tfor (var i = approximateIndex; i < data.length - 1;) {\n\n\t\t\t\tif (!data[i] || !data[i + 1]) break;\n\n\t\t\t\tif (data[i].x <= domainX && data[i + 1].x > domainX) {\n\t\t\t\t\tdataIndex = Math.abs(domainX - data[i].x) < Math.abs(domainX - data[i + 1].x) ? i : i + 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tif (data[i + 1].x <= domainX) { i++ } else { i-- }\n\t\t\t}\n\n\t\t\tif (dataIndex < 0) dataIndex = 0;\n\t\t\tvar value = data[dataIndex];\n\n\t\t\tvar distance = Math.sqrt(\n\t\t\t\tMath.pow(Math.abs(graph.x(value.x) - eventX), 2) +\n\t\t\t\tMath.pow(Math.abs(graph.y(value.y + value.y0) - eventY), 2)\n\t\t\t);\n\n\t\t\tvar xFormatter = series.xFormatter || this.xFormatter;\n\t\t\tvar yFormatter = series.yFormatter || this.yFormatter;\n\n\t\t\tvar point = {\n\t\t\t\tformattedXValue: xFormatter(value.x),\n\t\t\t\tformattedYValue: yFormatter(series.scale ? series.scale.invert(value.y) : value.y),\n\t\t\t\tseries: series,\n\t\t\t\tvalue: value,\n\t\t\t\tdistance: distance,\n\t\t\t\torder: j,\n\t\t\t\tname: series.name\n\t\t\t};\n\n\t\t\tif (!nearestPoint || distance < nearestPoint.distance) {\n\t\t\t\tnearestPoint = point;\n\t\t\t}\n\n\t\t\tpoints.push(point);\n\n\t\t}, this );\n\n\t\tif (!nearestPoint)\n\t\t\treturn;\n\n\t\tnearestPoint.active = true;\n\n\t\tvar domainX = nearestPoint.value.x;\n\t\tvar formattedXValue = nearestPoint.formattedXValue;\n\n\t\tthis.element.innerHTML = '';\n\t\tthis.element.style.left = graph.x(domainX) + 'px';\n\n\t\tthis.visible && this.render( {\n\t\t\tpoints: points,\n\t\t\tdetail: points, // for backwards compatibility\n\t\t\tmouseX: eventX,\n\t\t\tmouseY: eventY,\n\t\t\tformattedXValue: formattedXValue,\n\t\t\tdomainX: domainX\n\t\t} );\n\t},\n\n\thide: function() {\n\t\tthis.visible = false;\n\t\tthis.element.classList.add('inactive');\n\n\t\tif (typeof this.onHide == 'function') {\n\t\t\tthis.onHide();\n\t\t}\n\t},\n\n\tshow: function() {\n\t\tthis.visible = true;\n\t\tthis.element.classList.remove('inactive');\n\n\t\tif (typeof this.onShow == 'function') {\n\t\t\tthis.onShow();\n\t\t}\n\t},\n\n\trender: function(args) {\n\n\t\tvar graph = this.graph;\n\t\tvar points = args.points;\n\t\tvar point = points.filter( function(p) { return p.active } ).shift();\n\n\t\tif (point.value.y === null) return;\n\n\t\tvar formattedXValue = point.formattedXValue;\n\t\tvar formattedYValue = point.formattedYValue;\n\n\t\tthis.element.innerHTML = '';\n\t\tthis.element.style.left = graph.x(point.value.x) + 'px';\n\n\t\tvar xLabel = document.createElement('div');\n\n\t\txLabel.className = 'x_label';\n\t\txLabel.innerHTML = formattedXValue;\n\t\tthis.element.appendChild(xLabel);\n\n\t\tvar item = document.createElement('div');\n\n\t\titem.className = 'item';\n\n\t\t// invert the scale if this series displays using a scale\n\t\tvar series = point.series;\n\t\tvar actualY = series.scale ? series.scale.invert(point.value.y) : point.value.y;\n\n\t\titem.innerHTML = this.formatter(series, point.value.x, actualY, formattedXValue, formattedYValue, point);\n\t\titem.style.top = this.graph.y(point.value.y0 + point.value.y) + 'px';\n\n\t\tthis.element.appendChild(item);\n\n\t\tvar dot = document.createElement('div');\n\n\t\tdot.className = 'dot';\n\t\tdot.style.top = item.style.top;\n\t\tdot.style.borderColor = series.color;\n\n\t\tthis.element.appendChild(dot);\n\n\t\tif (point.active) {\n\t\t\titem.classList.add('active');\n\t\t\tdot.classList.add('active');\n\t\t}\n\n\t\t// Assume left alignment until the element has been displayed and\n\t\t// bounding box calculations are possible.\n\t\tvar alignables = [xLabel, item];\n\t\talignables.forEach(function(el) {\n\t\t\tel.classList.add('left');\n\t\t});\n\n\t\tthis.show();\n\n\t\t// If left-alignment results in any error, try right-alignment.\n\t\tvar leftAlignError = this._calcLayoutError(alignables);\n\t\tif (leftAlignError > 0) {\n\t\t\talignables.forEach(function(el) {\n\t\t\t\tel.classList.remove('left');\n\t\t\t\tel.classList.add('right');\n\t\t\t});\n\n\t\t\t// If right-alignment is worse than left alignment, switch back.\n\t\t\tvar rightAlignError = this._calcLayoutError(alignables);\n\t\t\tif (rightAlignError > leftAlignError) {\n\t\t\t\talignables.forEach(function(el) {\n\t\t\t\t\tel.classList.remove('right');\n\t\t\t\t\tel.classList.add('left');\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\tif (typeof this.onRender == 'function') {\n\t\t\tthis.onRender(args);\n\t\t}\n\t},\n\n\t_calcLayoutError: function(alignables) {\n\t\t// Layout error is calculated as the number of linear pixels by which\n\t\t// an alignable extends past the left or right edge of the parent.\n\t\tvar parentRect = this.element.parentNode.getBoundingClientRect();\n\n\t\tvar error = 0;\n\t\tvar alignRight = alignables.forEach(function(el) {\n\t\t\tvar rect = el.getBoundingClientRect();\n\t\t\tif (!rect.width) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (rect.right > parentRect.right) {\n\t\t\t\terror += rect.right - parentRect.right;\n\t\t\t}\n\n\t\t\tif (rect.left < parentRect.left) {\n\t\t\t\terror += parentRect.left - rect.left;\n\t\t\t}\n\t\t});\n\t\treturn error;\n\t},\n\n\t_addListeners: function() {\n\n\t\t// Keep reference for later removal.\n\t\tthis.mousemoveListener = function(e) {\n\t\t\tthis.visible = true;\n\t\t\tthis.update(e);\n\t\t}.bind(this);\n\n\t\t// Add listener.\n\t\tthis.graph.element.addEventListener(\n\t\t\t'mousemove',\n\t\t\tthis.mousemoveListener,\n\t\t\tfalse\n\t\t);\n\n\t\tthis.graph.onUpdate( function() { this.update() }.bind(this) );\n\n\t\t// Keep reference for later removal.\n\t\tthis.mouseoutListener = function(e) {\n\t\t\tif (e.relatedTarget && !(e.relatedTarget.compareDocumentPosition(this.graph.element) & Node.DOCUMENT_POSITION_CONTAINS)) {\n\t\t\t\tthis.hide();\n\t\t\t}\n\t\t}.bind(this);\n\n\t\t// Add listener.\n\t\tthis.graph.element.addEventListener(\n\t\t\t'mouseout',\n\t\t\tthis.mouseoutListener,\n\t\t\tfalse\n\t\t);\n\t},\n\n\t_removeListeners: function() {\n\t\tif (this.mousemoveListener) {\n\t\t\tthis.graph.element.removeEventListener('mousemove', this.mousemoveListener, false);\n\t\t}\n\t\tif (this.mouseoutListener) {\n\t\t\tthis.graph.element.removeEventListener('mouseout', this.mouseoutListener, false);\n\t\t}\n\t}\n});\nRickshaw.namespace('Rickshaw.Graph.JSONP');\n\nRickshaw.Graph.JSONP = Rickshaw.Class.create( Rickshaw.Graph.Ajax, {\n\n\trequest: function() {\n\n\t\tjQuery.ajax( {\n\t\t\turl: this.dataURL,\n\t\t\tdataType: 'jsonp',\n\t\t\tsuccess: this.success.bind(this),\n\t\t\terror: this.error.bind(this)\n\t\t} );\n\t}\n} );\nRickshaw.namespace('Rickshaw.Graph.Legend');\n\nRickshaw.Graph.Legend = Rickshaw.Class.create( {\n\n\tclassName: 'rickshaw_legend',\n\n\tinitialize: function(args) {\n\t\tthis.element = args.element;\n\t\tthis.graph = args.graph;\n\t\tthis.naturalOrder = args.naturalOrder;\n\t\tthis.colorKey = args.colorKey || 'color';\n\n\t\tthis.element.classList.add(this.className);\n\n\t\tthis.list = document.createElement('ul');\n\t\tthis.element.appendChild(this.list);\n\n\t\tthis.render();\n\n\t\t// we could bind this.render.bind(this) here\n\t\t// but triggering the re-render would lose the added\n\t\t// behavior of the series toggle\n\t\tthis.graph.onUpdate( function() {} );\n\t},\n\n\trender: function() {\n\t\tvar self = this;\n\n\t\twhile ( this.list.firstChild ) {\n\t\t\tthis.list.removeChild( this.list.firstChild );\n\t\t}\n\t\tthis.lines = [];\n\n\t\tvar series = this.graph.series\n\t\t\t.map( function(s) { return s } );\n\n\t\tif (!this.naturalOrder) {\n\t\t\tseries = series.reverse();\n\t\t}\n\n\t\tseries.forEach( function(s) {\n\t\t\tself.addLine(s);\n\t\t} );\n\n\n\t},\n\n\taddLine: function (series) {\n\t\tvar line = document.createElement('li');\n\t\tline.className = 'line';\n\t\tif (series.disabled) {\n\t\t\tline.className += ' disabled';\n\t\t}\n\t\tif (series.className) {\n\t\t\td3.select(line).classed(series.className, true);\n\t\t}\n\t\tvar swatch = document.createElement('div');\n\t\tswatch.className = 'swatch';\n\t\tswatch.style.backgroundColor = series[this.colorKey];\n\n\t\tline.appendChild(swatch);\n\n\t\tvar label = document.createElement('span');\n\t\tlabel.className = 'label';\n\t\tlabel.innerHTML = series.name;\n\n\t\tline.appendChild(label);\n\t\tthis.list.appendChild(line);\n\n\t\tline.series = series;\n\n\t\tif (series.noLegend) {\n\t\t\tline.style.display = 'none';\n\t\t}\n\n\t\tvar _line = { element: line, series: series };\n\t\tif (this.shelving) {\n\t\t\tthis.shelving.addAnchor(_line);\n\t\t\tthis.shelving.updateBehaviour();\n\t\t}\n\t\tif (this.highlighter) {\n\t\t\tthis.highlighter.addHighlightEvents(_line);\n\t\t}\n\t\tthis.lines.push(_line);\n\t\treturn line;\n\t}\n} );\nRickshaw.namespace('Rickshaw.Graph.RangeSlider');\n\nRickshaw.Graph.RangeSlider = Rickshaw.Class.create({\n\n\tinitialize: function(args) {\n\n\t\tvar $ = jQuery;\n\t\tvar self = this;\n\t\tvar element = this.element = args.element;\n\t\tvar graphs = this.graphs = args.graphs;\n\t\tif (!graphs) {\n\t\t\tgraphs = this.graph = args.graph;\n\t\t}\n\t\tif (graphs.constructor !== Array) {\n\t\t\tgraphs = [graphs];\n\t\t}\n\t\tthis.graph = graphs[0];\n\n\t\tthis.slideCallbacks = [];\n\n\t\tthis.build();\n\n\t\tfor (var i = 0; i < graphs.length; i++) {\n\t\t\tgraphs[i].onUpdate(function() {\n\t\t\t\tself.update();\n\t\t\t}.bind(self));\n\n\t\t\t(function(idx){\n\t\t\t\tgraphs[idx].onConfigure(function() {\n\t\t\t\t\t$(this.element)[0].style.width = graphs[idx].width + 'px';\n\t\t\t\t}.bind(self));\n\t\t\t})(i);\n\t\t}\n\n\t},\n\n\tbuild: function() {\n\n\t\tvar domain;\n\t\tvar element = this.element;\n\t\tvar $ = jQuery;\n\t\tvar self = this;\n\t\tvar graphs = this.graphs || this.graph;\n\n\t\tif (graphs.constructor !== Array) {\n\t\t\tgraphs = [graphs];\n\t\t}\n\n\t\t// base the slider's min/max on the first graph\n\t\tthis.graph = graphs[0];\n\t\tdomain = graphs[0].dataDomain();\n\n\t\t$(function() {\n\t\t\t$(element).slider({\n\t\t\t\trange: true,\n\t\t\t\tmin: domain[0],\n\t\t\t\tmax: domain[1],\n\t\t\t\tvalues: [\n\t\t\t\t\tdomain[0],\n\t\t\t\t\tdomain[1]\n\t\t\t\t],\n\t\t\t\tstart: function(event, ui) {\n\t\t\t\t\tself.slideStarted({ event: event, ui: ui });\n\t\t\t\t},\n\t\t\t\tstop: function(event, ui) {\n\t\t\t\t\tself.slideFinished({ event: event, ui: ui });\n\t\t\t\t},\n\t\t\t\tslide: function(event, ui) {\n\t\t\t\t\tif (!self.slideShouldUpdate(event, ui))\n\t\t\t\t\t\treturn;\n\n\t\t\t\t\tif (ui.values[1] <= ui.values[0]) return;\n\n\t\t\t\t\tfor (var i = 0; i < graphs.length; i++) {\n\t\t\t\t\t\tself.processSlideChange({\n\t\t\t\t\t\t\tevent: event,\n\t\t\t\t\t\t\tui: ui,\n\t\t\t\t\t\t\tgraph: graphs[i]\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} );\n\t\t} );\n\n\t\tgraphs[0].onConfigure(function() {\n\t\t\t$(this.element)[0].style.width = graphs[0].width + 'px';\n\t\t}.bind(this));\n\n\t},\n\n\tupdate: function() {\n\n\t\tvar element = this.element;\n\t\tvar graph = this.graph;\n\t\tvar $ = jQuery;\n\n\t\tvar values = $(element).slider('option', 'values');\n\n\t\tvar domain = graph.dataDomain();\n\n\t\t$(element).slider('option', 'min', domain[0]);\n\t\t$(element).slider('option', 'max', domain[1]);\n\n\t\tif (graph.window.xMin == null) {\n\t\t\tvalues[0] = domain[0];\n\t\t}\n\t\tif (graph.window.xMax == null) {\n\t\t\tvalues[1] = domain[1];\n\t\t}\n\n\t\t$(element).slider('option', 'values', values);\n\t},\n\n\tonSlide: function(callback) {\n\t\tthis.slideCallbacks.push(callback);\n\t},\n\n\tprocessSlideChange: function(args) {\n\t\tvar event = args.event;\n\t\tvar ui = args.ui;\n\t\tvar graph = args.graph;\n\n\t\tgraph.window.xMin = ui.values[0];\n\t\tgraph.window.xMax = ui.values[1];\n\t\tgraph.update();\n\n\t\tvar domain = graph.dataDomain();\n\n\t\t// if we're at an extreme, stick there\n\t\tif (domain[0] == ui.values[0]) {\n\t\t\tgraph.window.xMin = undefined;\n\t\t}\n\n\t\tif (domain[1] == ui.values[1]) {\n\t\t\tgraph.window.xMax = undefined;\n\t\t}\n\n\t\tthis.slideCallbacks.forEach(function(callback) {\n\t\t\tcallback(graph, graph.window.xMin, graph.window.xMax);\n\t\t});\n\n\t},\n\n\t// allows the slide updates to bail out if sliding is not permitted\n\tslideShouldUpdate: function() {\n\t\treturn true;\n\t},\n\n\tslideStarted: function() {\n\t\treturn;\n\t},\n\n\tslideFinished: function() {\n\t\treturn;\n\t}\n});\n\nRickshaw.namespace('Rickshaw.Graph.RangeSlider.Preview');\n\nRickshaw.Graph.RangeSlider.Preview = Rickshaw.Class.create({\n\n\tinitialize: function(args) {\n\n\t\tif (!args.element) throw \"Rickshaw.Graph.RangeSlider.Preview needs a reference to an element\";\n\t\tif (!args.graph && !args.graphs) throw \"Rickshaw.Graph.RangeSlider.Preview needs a reference to an graph or an array of graphs\";\n\n\t\tthis.element = args.element;\n\t\tthis.element.style.position = 'relative';\n\n\t\tthis.graphs = args.graph ? [ args.graph ] : args.graphs;\n\n\t\tthis.defaults = {\n\t\t\theight: 75,\n\t\t\twidth: 400,\n\t\t\tgripperColor: undefined,\n\t\t\tframeTopThickness: 3,\n\t\t\tframeHandleThickness: 10,\n\t\t\tframeColor: \"#d4d4d4\",\n\t\t\tframeOpacity: 1,\n\t\t\tminimumFrameWidth: 0,\n\t\t\theightRatio: 0.2\n\t\t};\n\n\t\tthis.heightRatio = args.heightRatio || this.defaults.heightRatio;\n\t\tthis.defaults.gripperColor = d3.rgb(this.defaults.frameColor).darker().toString(); \n\n\t\tthis.configureCallbacks = [];\n\t\tthis.slideCallbacks = [];\n\n\t\tthis.previews = [];\n\n\t\tif (!args.width) this.widthFromGraph = true;\n\t\tif (!args.height) this.heightFromGraph = true;\n\n\t\tif (this.widthFromGraph || this.heightFromGraph) {\n\t\t\tthis.graphs[0].onConfigure(function () {\n\t\t\t\tthis.configure(args); this.render();\n\t\t\t}.bind(this));\n\t\t}\n\n\t\targs.width = args.width || this.graphs[0].width || this.defaults.width;\n\t\targs.height = args.height || this.graphs[0].height * this.heightRatio || this.defaults.height;\n\n\t\tthis.configure(args);\n\t\tthis.render();\n\t},\n\n\tonSlide: function(callback) {\n\t\tthis.slideCallbacks.push(callback);\n\t},\n\n\tonConfigure: function(callback) {\n\t\tthis.configureCallbacks.push(callback);\n\t},\n\n\tconfigure: function(args) {\n\n\t\tthis.config = this.config || {};\n\n\t\tthis.configureCallbacks.forEach(function(callback) {\n\t\t\tcallback(args);\n\t\t});\n\n\t\tRickshaw.keys(this.defaults).forEach(function(k) {\n\t\t\tthis.config[k] = k in args ? args[k]\n\t\t\t\t: k in this.config ? this.config[k]\n\t\t\t\t: this.defaults[k];\n\t\t}, this);\n\n\t\tif ('width' in args || 'height' in args) {\n\n\t\t\tif (this.widthFromGraph) {\n\t\t\t\tthis.config.width = this.graphs[0].width;\n\t\t\t}\n\n\t\t\tif (this.heightFromGraph) {\n\t\t\t\tthis.config.height = this.graphs[0].height * this.heightRatio;\n\t\t\t\tthis.previewHeight = this.config.height;\n\t\t\t}\n\n\t\t\tthis.previews.forEach(function(preview) {\n\n\t\t\t\tvar height = this.previewHeight / this.graphs.length - this.config.frameTopThickness * 2;\n\t\t\t\tvar width = this.config.width - this.config.frameHandleThickness * 2;\n\t\t\t\tpreview.setSize({ width: width, height: height });\n\n\t\t\t\tif (this.svg) {\n\t\t\t\t\tvar svgHeight = height + this.config.frameHandleThickness * 2;\n\t\t\t\t\tvar svgWidth = width + this.config.frameHandleThickness * 2;\n\t\t\t\t\tthis.svg.style(\"width\", svgWidth + \"px\");\n\t\t\t\t\tthis.svg.style(\"height\", svgHeight + \"px\");\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t},\n\n\trender: function() {\n\n\t\tvar self = this;\n\n\t\tthis.svg = d3.select(this.element)\n\t\t\t.selectAll(\"svg.rickshaw_range_slider_preview\")\n\t\t\t.data([null]);\n\n\t\tthis.previewHeight = this.config.height - (this.config.frameTopThickness * 2);\n\t\tthis.previewWidth = this.config.width - (this.config.frameHandleThickness * 2);\n\n\t\tthis.currentFrame = [0, this.previewWidth];\n\n\t\tvar buildGraph = function(parent, index) {\n\n\t\t\tvar graphArgs = Rickshaw.extend({}, parent.config);\n\t\t\tvar height = self.previewHeight / self.graphs.length;\n\t\t\tvar renderer = parent.renderer.name;\n\n\t\t\tRickshaw.extend(graphArgs, {\n\t\t\t\telement: this.appendChild(document.createElement(\"div\")),\n\t\t\t\theight: height,\n\t\t\t\twidth: self.previewWidth,\n\t\t\t\tseries: parent.series,\n\t\t\t\trenderer: renderer\n\t\t\t});\n\n\t\t\tvar graph = new Rickshaw.Graph(graphArgs);\n\t\t\tself.previews.push(graph);\n\n\t\t\tparent.onUpdate(function() { graph.render(); self.render() });\n\n\t\t\tparent.onConfigure(function(args) { \n\t\t\t\t// don't propagate height\n\t\t\t\tdelete args.height;\n\t\t\t\targs.width = args.width - self.config.frameHandleThickness * 2;\n\t\t\t\tgraph.configure(args);\n\t\t\t\tgraph.render();\n\t\t\t});\n\n\t\t\tgraph.render();\n\t\t};\n\n\t\tvar graphContainer = d3.select(this.element)\n\t\t\t.selectAll(\"div.rickshaw_range_slider_preview_container\")\n\t\t\t.data(this.graphs);\n\n\t\tvar translateCommand = \"translate(\" +\n\t\t\tthis.config.frameHandleThickness + \"px, \" +\n\t\t\tthis.config.frameTopThickness + \"px)\";\n\n\t\tgraphContainer.enter()\n\t\t\t.append(\"div\")\n\t\t\t.classed(\"rickshaw_range_slider_preview_container\", true)\n\t\t\t.style(\"-webkit-transform\", translateCommand)\n\t\t\t.style(\"-moz-transform\", translateCommand)\n\t\t\t.style(\"-ms-transform\", translateCommand)\n\t\t\t.style(\"transform\", translateCommand)\n\t\t\t.each(buildGraph);\n\n\t\tgraphContainer.exit()\n\t\t\t.remove();\n\n\t\t// Use the first graph as the \"master\" for the frame state\n\t\tvar masterGraph = this.graphs[0];\n\n\t\tvar domainScale = d3.scale.linear()\n\t\t\t.domain([0, this.previewWidth])\n\t\t\t.range(masterGraph.dataDomain());\n\n\t\tvar currentWindow = [masterGraph.window.xMin, masterGraph.window.xMax];\n\n\t\tthis.currentFrame[0] = currentWindow[0] === undefined ? \n\t\t\t0 : Math.round(domainScale.invert(currentWindow[0]));\n\n\t\tif (this.currentFrame[0] < 0) this.currentFrame[0] = 0;\n\n\t\tthis.currentFrame[1] = currentWindow[1] === undefined ?\n\t\t\tthis.previewWidth : domainScale.invert(currentWindow[1]);\n\n\t\tif (this.currentFrame[1] - this.currentFrame[0] < self.config.minimumFrameWidth) {\n\t\t\tthis.currentFrame[1] = (this.currentFrame[0] || 0) + self.config.minimumFrameWidth;\n\t\t}\n\n\t\tthis.svg.enter()\n\t\t\t.append(\"svg\")\n\t\t\t.classed(\"rickshaw_range_slider_preview\", true)\n\t\t\t.style(\"height\", this.config.height + \"px\")\n\t\t\t.style(\"width\", this.config.width + \"px\")\n\t\t\t.style(\"position\", \"absolute\")\n\t\t\t.style(\"top\", 0);\n\n\t\tthis._renderDimming();\n\t\tthis._renderFrame();\n\t\tthis._renderGrippers();\n\t\tthis._renderHandles();\n\t\tthis._renderMiddle();\n\n\t\tthis._registerMouseEvents();\n\t},\n\n\t_renderDimming: function() {\n\n\t\tvar element = this.svg\n\t\t\t.selectAll(\"path.dimming\")\n\t\t\t.data([null]);\n\n\t\telement.enter()\n\t\t\t.append(\"path\")\n\t\t\t.attr(\"fill\", \"white\")\n\t\t\t.attr(\"fill-opacity\", \"0.7\")\n\t\t\t.attr(\"fill-rule\", \"evenodd\")\n\t\t\t.classed(\"dimming\", true);\n\n\t\tvar path = \"\";\n\t\tpath += \" M \" + this.config.frameHandleThickness + \" \" + this.config.frameTopThickness;\n\t\tpath += \" h \" + this.previewWidth;\n\t\tpath += \" v \" + this.previewHeight;\n\t\tpath += \" h \" + -this.previewWidth;\n\t\tpath += \" z \";\n\t\tpath += \" M \" + Math.max(this.currentFrame[0], this.config.frameHandleThickness) + \" \" + this.config.frameTopThickness;\n\t\tpath += \" H \" + Math.min(this.currentFrame[1] + this.config.frameHandleThickness * 2, this.previewWidth + this.config.frameHandleThickness);\n\t\tpath += \" v \" + this.previewHeight;\n\t\tpath += \" H \" + Math.max(this.currentFrame[0], this.config.frameHandleThickness);\n\t\tpath += \" z\";\n\n\t\telement.attr(\"d\", path);\n\t},\n\n\t_renderFrame: function() {\n\n\t\tvar element = this.svg\n\t\t\t.selectAll(\"path.frame\")\n\t\t\t.data([null]);\n\n\t\telement.enter()\n\t\t\t.append(\"path\")\n\t\t\t.attr(\"stroke\", \"white\")\n\t\t\t.attr(\"stroke-width\", \"1px\")\n\t\t\t.attr(\"stroke-linejoin\", \"round\")\n\t\t\t.attr(\"fill\", this.config.frameColor)\n\t\t\t.attr(\"fill-opacity\", this.config.frameOpacity)\n\t\t\t.attr(\"fill-rule\", \"evenodd\")\n\t\t\t.classed(\"frame\", true);\n\n\t\tvar path = \"\";\n\t\tpath += \" M \" + this.currentFrame[0] + \" 0\";\n\t\tpath += \" H \" + (this.currentFrame[1] + (this.config.frameHandleThickness * 2));\n\t\tpath += \" V \" + this.config.height;\n\t\tpath += \" H \" + (this.currentFrame[0]);\n\t\tpath += \" z\";\n\t\tpath += \" M \" + (this.currentFrame[0] + this.config.frameHandleThickness) + \" \" + this.config.frameTopThickness;\n\t\tpath += \" H \" + (this.currentFrame[1] + this.config.frameHandleThickness);\n\t\tpath += \" v \" + this.previewHeight;\n\t\tpath += \" H \" + (this.currentFrame[0] + this.config.frameHandleThickness);\n\t\tpath += \" z\";\n\n\t\telement.attr(\"d\", path);\n\t},\n\n\t_renderGrippers: function() {\n\n\t\tvar gripper = this.svg.selectAll(\"path.gripper\")\n\t\t\t.data([null]);\n\n\t\tgripper.enter()\n\t\t\t.append(\"path\")\n\t\t\t.attr(\"stroke\", this.config.gripperColor)\n\t\t\t.classed(\"gripper\", true);\n\n\t\tvar path = \"\";\n\n\t\t[0.4, 0.6].forEach(function(spacing) {\n\t\t\tpath += \" M \" + Math.round((this.currentFrame[0] + (this.config.frameHandleThickness * spacing))) + \" \" + Math.round(this.config.height * 0.3);\n\t\t\tpath += \" V \" + Math.round(this.config.height * 0.7);\n\t\t\tpath += \" M \" + Math.round((this.currentFrame[1] + (this.config.frameHandleThickness * (1 + spacing)))) + \" \" + Math.round(this.config.height * 0.3);\n\t\t\tpath += \" V \" + Math.round(this.config.height * 0.7);\n\t\t}.bind(this));\n\n\t\tgripper.attr(\"d\", path);\n\t},\n\n\t_renderHandles: function() {\n\n\t\tvar leftHandle = this.svg.selectAll(\"rect.left_handle\")\n\t\t\t.data([null]);\n\n\t\tleftHandle.enter()\n\t\t\t.append(\"rect\")\n\t\t\t.attr('width', this.config.frameHandleThickness)\n\t\t\t.style(\"cursor\", \"ew-resize\")\n\t\t\t.style(\"fill-opacity\", \"0\")\n\t\t\t.classed(\"left_handle\", true);\n\n\t\tleftHandle\n\t\t\t.attr('x', this.currentFrame[0])\n\t\t\t.attr('height', this.config.height);\n\n\t\tvar rightHandle = this.svg.selectAll(\"rect.right_handle\")\n\t\t\t.data([null]);\n\n\t\trightHandle.enter()\n\t\t\t.append(\"rect\")\n\t\t\t.attr('width', this.config.frameHandleThickness)\n\t\t\t.style(\"cursor\", \"ew-resize\")\n\t\t\t.style(\"fill-opacity\", \"0\")\n\t\t\t.classed(\"right_handle\", true);\n\n\t\trightHandle\n\t\t\t.attr('x', this.currentFrame[1] + this.config.frameHandleThickness)\n\t\t\t.attr('height', this.config.height);\n\t},\n\n\t_renderMiddle: function() {\n\n\t\tvar middleHandle = this.svg.selectAll(\"rect.middle_handle\")\n\t\t\t.data([null]);\n\n\t\tmiddleHandle.enter()\n\t\t\t.append(\"rect\")\n\t\t\t.style(\"cursor\", \"move\")\n\t\t\t.style(\"fill-opacity\", \"0\")\n\t\t\t.classed(\"middle_handle\", true);\n\n\t\tmiddleHandle\n\t\t\t.attr('width', Math.max(0, this.currentFrame[1] - this.currentFrame[0]))\n\t\t\t.attr('x', this.currentFrame[0] + this.config.frameHandleThickness)\n\t\t\t.attr('height', this.config.height);\n\t},\n\n\t_registerMouseEvents: function() {\n\n\t\tvar element = d3.select(this.element);\n\n\t\tvar drag = {\n\t\t\ttarget: null,\n\t\t\tstart: null,\n\t\t\tstop: null,\n\t\t\tleft: false,\n\t\t\tright: false,\n\t\t\trigid: false\n\t\t};\n\n\t\tvar self = this;\n\n\t\tfunction onMousemove(datum, index) {\n\n\t\t\tdrag.stop = self._getClientXFromEvent(d3.event, drag);\n\t\t\tvar distanceTraveled = drag.stop - drag.start;\n\t\t\tvar frameAfterDrag = self.frameBeforeDrag.slice(0);\n\t\t\tvar minimumFrameWidth = self.config.minimumFrameWidth;\n\n\t\t\tif (drag.rigid) {\n\t\t\t\tminimumFrameWidth = self.frameBeforeDrag[1] - self.frameBeforeDrag[0];\n\t\t\t}\n\t\t\tif (drag.left) {\n\t\t\t\tframeAfterDrag[0] = Math.max(frameAfterDrag[0] + distanceTraveled, 0);\n\t\t\t}\n\t\t\tif (drag.right) {\n\t\t\t\tframeAfterDrag[1] = Math.min(frameAfterDrag[1] + distanceTraveled, self.previewWidth);\n\t\t\t}\n\n\t\t\tvar currentFrameWidth = frameAfterDrag[1] - frameAfterDrag[0];\n\n\t\t\tif (currentFrameWidth <= minimumFrameWidth) {\n\n\t\t\t\tif (drag.left) {\n\t\t\t\t\tframeAfterDrag[0] = frameAfterDrag[1] - minimumFrameWidth;\n\t\t\t\t}\n\t\t\t\tif (drag.right) {\n\t\t\t\t\tframeAfterDrag[1] = frameAfterDrag[0] + minimumFrameWidth;\n\t\t\t\t}\n\t\t\t\tif (frameAfterDrag[0] <= 0) {\n\t\t\t\t\tframeAfterDrag[1] -= frameAfterDrag[0];\n\t\t\t\t\tframeAfterDrag[0] = 0;\n\t\t\t\t}\n\t\t\t\tif (frameAfterDrag[1] >= self.previewWidth) {\n\t\t\t\t\tframeAfterDrag[0] -= (frameAfterDrag[1] - self.previewWidth);\n\t\t\t\t\tframeAfterDrag[1] = self.previewWidth;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tself.graphs.forEach(function(graph) {\n\n\t\t\t\tvar domainScale = d3.scale.linear()\n\t\t\t\t\t.interpolate(d3.interpolateNumber)\n\t\t\t\t\t.domain([0, self.previewWidth])\n\t\t\t\t\t.range(graph.dataDomain());\n\n\t\t\t\tvar windowAfterDrag = [\n\t\t\t\t\tdomainScale(frameAfterDrag[0]),\n\t\t\t\t\tdomainScale(frameAfterDrag[1])\n\t\t\t\t];\n\n\t\t\t\tself.slideCallbacks.forEach(function(callback) {\n\t\t\t\t\tcallback(graph, windowAfterDrag[0], windowAfterDrag[1]);\n\t\t\t\t});\n\n\t\t\t\tif (frameAfterDrag[0] === 0) {\n\t\t\t\t\twindowAfterDrag[0] = undefined;\n\t\t\t\t}\n\t\t\t\tif (frameAfterDrag[1] === self.previewWidth) {\n\t\t\t\t\twindowAfterDrag[1] = undefined;\n\t\t\t\t}\n\t\t\t\tgraph.window.xMin = windowAfterDrag[0];\n\t\t\t\tgraph.window.xMax = windowAfterDrag[1];\n\n\t\t\t\tgraph.update();\n\t\t\t});\n\t\t}\n\n\t\tfunction onMousedown() {\n\t\t\tdrag.target = d3.event.target;\n\t\t\tdrag.start = self._getClientXFromEvent(d3.event, drag);\n\t\t\tself.frameBeforeDrag = self.currentFrame.slice();\n\t\t\td3.event.preventDefault ? d3.event.preventDefault() : d3.event.returnValue = false;\n\t\t\td3.select(document).on(\"mousemove.rickshaw_range_slider_preview\", onMousemove);\n\t\t\td3.select(document).on(\"mouseup.rickshaw_range_slider_preview\", onMouseup);\n\t\t\td3.select(document).on(\"touchmove.rickshaw_range_slider_preview\", onMousemove);\n\t\t\td3.select(document).on(\"touchend.rickshaw_range_slider_preview\", onMouseup);\n\t\t\td3.select(document).on(\"touchcancel.rickshaw_range_slider_preview\", onMouseup);\n\t\t}\n\n\t\tfunction onMousedownLeftHandle(datum, index) {\n\t\t\tdrag.left = true;\n\t\t\tonMousedown();\n\t\t}\n\n\t\tfunction onMousedownRightHandle(datum, index) {\n\t\t\tdrag.right = true;\n\t\t\tonMousedown();\n\t\t}\n\n\t\tfunction onMousedownMiddleHandle(datum, index) {\n\t\t\tdrag.left = true;\n\t\t\tdrag.right = true;\n\t\t\tdrag.rigid = true;\n\t\t\tonMousedown();\n\t\t}\n\n\t\tfunction onMouseup(datum, index) {\n\t\t\td3.select(document).on(\"mousemove.rickshaw_range_slider_preview\", null);\n\t\t\td3.select(document).on(\"mouseup.rickshaw_range_slider_preview\", null);\n\t\t\td3.select(document).on(\"touchmove.rickshaw_range_slider_preview\", null);\n\t\t\td3.select(document).on(\"touchend.rickshaw_range_slider_preview\", null);\n\t\t\td3.select(document).on(\"touchcancel.rickshaw_range_slider_preview\", null);\n\t\t\tdelete self.frameBeforeDrag;\n\t\t\tdrag.left = false;\n\t\t\tdrag.right = false;\n\t\t\tdrag.rigid = false;\n\t\t}\n\n\t\telement.select(\"rect.left_handle\").on(\"mousedown\", onMousedownLeftHandle);\n\t\telement.select(\"rect.right_handle\").on(\"mousedown\", onMousedownRightHandle);\n\t\telement.select(\"rect.middle_handle\").on(\"mousedown\", onMousedownMiddleHandle);\n\t\telement.select(\"rect.left_handle\").on(\"touchstart\", onMousedownLeftHandle);\n\t\telement.select(\"rect.right_handle\").on(\"touchstart\", onMousedownRightHandle);\n\t\telement.select(\"rect.middle_handle\").on(\"touchstart\", onMousedownMiddleHandle);\n\t},\n\n\t_getClientXFromEvent: function(event, drag) {\n\n\t\tswitch (event.type) {\n\t\t\tcase 'touchstart':\n\t\t\tcase 'touchmove':\n\t\t\t\tvar touchList = event.changedTouches;\n\t\t\t\tvar touch = null;\n\t\t\t\tfor (var touchIndex = 0; touchIndex < touchList.length; touchIndex++) {\n\t\t\t\t\tif (touchList[touchIndex].target === drag.target) {\n\t\t\t\t\t\ttouch = touchList[touchIndex];\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn touch !== null ? touch.clientX : undefined;\n\n\t\t\tdefault:\n\t\t\t\treturn event.clientX;\n\t\t}\n\t}\n});\n\nRickshaw.namespace(\"Rickshaw.Graph.Renderer\");\n\nRickshaw.Graph.Renderer = Rickshaw.Class.create( {\n\n\tinitialize: function(args) {\n\t\tthis.graph = args.graph;\n\t\tthis.tension = args.tension || this.tension;\n\t\tthis.configure(args);\n\t},\n\n\tseriesPathFactory: function() {\n\t\t//implement in subclass\n\t},\n\n\tseriesStrokeFactory: function() {\n\t\t// implement in subclass\n\t},\n\n\tdefaults: function() {\n\t\treturn {\n\t\t\ttension: 0.8,\n\t\t\tstrokeWidth: 2,\n\t\t\tunstack: true,\n\t\t\tpadding: { top: 0.01, right: 0, bottom: 0.01, left: 0 },\n\t\t\tstroke: false,\n\t\t\tfill: false,\n\t\t\topacity: 1\n\t\t};\n\t},\n\n\tdomain: function(data) {\n\t\t// Requires that at least one series contains some data\n\t\tvar stackedData = data || this.graph.stackedData || this.graph.stackData();\n\n\t\t// filter out any series that may be empty in the current x-domain\n\t\tstackedData = stackedData.filter(function (a) { return a && a.length !== 0; });\n\n\t\tvar xMin = +Infinity;\n\t\tvar xMax = -Infinity;\n\n\t\tvar yMin = +Infinity;\n\t\tvar yMax = -Infinity;\n\n\t\tstackedData.forEach( function(series) {\n\n\t\t\tseries.forEach( function(d) {\n\n\t\t\t\tif (d.y == null) return;\n\n\t\t\t\tvar y = d.y + d.y0;\n\n\t\t\t\tif (y < yMin) yMin = y;\n\t\t\t\tif (y > yMax) yMax = y;\n\t\t\t} );\n\n\t\t\tif (!series.length) return;\n\n\t\t\tif (series[0].x < xMin) xMin = series[0].x;\n\t\t\tif (series[series.length - 1].x > xMax) xMax = series[series.length - 1].x;\n\t\t} );\n\n\t\txMin -= (xMax - xMin) * this.padding.left;\n\t\txMax += (xMax - xMin) * this.padding.right;\n\n\t\tyMin = this.graph.min === 'auto' ? yMin : this.graph.min || 0;\n\t\tyMax = this.graph.max === undefined ? yMax : this.graph.max;\n\n\t\tif (this.graph.min === 'auto' || yMin < 0) {\n\t\t\tyMin -= (yMax - yMin) * this.padding.bottom;\n\t\t}\n\n\t\tif (this.graph.max === undefined) {\n\t\t\tyMax += (yMax - yMin) * this.padding.top;\n\t\t}\n\n\t\treturn { x: [xMin, xMax], y: [yMin, yMax] };\n\t},\n\n\trender: function(args) {\n\n\t\targs = args || {};\n\n\t\tvar graph = this.graph;\n\t\tvar series = args.series || graph.series;\n\n\t\tvar vis = args.vis || graph.vis;\n\t\tvis.selectAll('*').remove();\n\n\t\tvar data = series\n\t\t\t.filter(function(s) { return !s.disabled })\n\t\t\t.map(function(s) { return s.stack });\n\n\t\tvar pathNodes = vis.selectAll(\"path.path\")\n\t\t\t.data(data)\n\t\t\t.enter().append(\"svg:path\")\n\t\t\t.classed('path', true)\n\t\t\t.attr(\"d\", this.seriesPathFactory());\n\n\t\tif (this.stroke) {\n var strokeNodes = vis.selectAll('path.stroke')\n .data(data)\n .enter().append(\"svg:path\")\n\t\t\t\t.classed('stroke', true)\n\t\t\t\t.attr(\"d\", this.seriesStrokeFactory());\n\t\t}\n\n\t\tvar i = 0;\n\t\tseries.forEach( function(series) {\n\t\t\tif (series.disabled) return;\n\t\t\tseries.path = pathNodes[0][i];\n\t\t\tif (this.stroke) series.stroke = strokeNodes[0][i];\n\t\t\tthis._styleSeries(series);\n\t\t\ti++;\n\t\t}, this );\n\n\t},\n\n\t_styleSeries: function(series) {\n\n\t\tvar fill = this.fill ? series.color : 'none';\n\t\tvar stroke = this.stroke ? series.color : 'none';\n\t\tvar strokeWidth = series.strokeWidth ? series.strokeWidth : this.strokeWidth;\n\t\tvar opacity = series.opacity === undefined ? this.opacity : series.opacity;\n\n\t\tseries.path.setAttribute('fill', fill);\n\t\tseries.path.setAttribute('stroke', stroke);\n\t\tseries.path.setAttribute('stroke-width', strokeWidth);\n\t\tseries.path.setAttribute('opacity', opacity);\n\n\t\tif (series.className) {\n\t\t\td3.select(series.path).classed(series.className, true);\n\t\t}\n\t\tif (series.className && this.stroke) {\n\t\t\td3.select(series.stroke).classed(series.className, true);\n\t\t}\n\t},\n\n\tconfigure: function(args) {\n\n\t\targs = args || {};\n\n\t\tRickshaw.keys(this.defaults()).forEach( function(key) {\n\n\t\t\tif (!args.hasOwnProperty(key)) {\n\t\t\t\tthis[key] = this[key] || this.graph[key] || this.defaults()[key];\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (typeof this.defaults()[key] == 'object') {\n\n\t\t\t\tRickshaw.keys(this.defaults()[key]).forEach( function(k) {\n\n\t\t\t\t\tthis[key][k] =\n\t\t\t\t\t\targs[key][k] !== undefined ? args[key][k] :\n\t\t\t\t\t\tthis[key][k] !== undefined ? this[key][k] :\n\t\t\t\t\t\tthis.defaults()[key][k];\n\t\t\t\t}, this );\n\n\t\t\t} else {\n\t\t\t\tthis[key] =\n\t\t\t\t\targs[key] !== undefined ? args[key] :\n\t\t\t\t\tthis[key] !== undefined ? this[key] :\n\t\t\t\t\tthis.graph[key] !== undefined ? this.graph[key] :\n\t\t\t\t\tthis.defaults()[key];\n\t\t\t}\n\n\t\t}, this );\n\t},\n\n\tsetStrokeWidth: function(strokeWidth) {\n\t\tif (strokeWidth !== undefined) {\n\t\t\tthis.strokeWidth = strokeWidth;\n\t\t}\n\t},\n\n\tsetTension: function(tension) {\n\t\tif (tension !== undefined) {\n\t\t\tthis.tension = tension;\n\t\t}\n\t}\n} );\nRickshaw.namespace('Rickshaw.Graph.Renderer.Line');\n\nRickshaw.Graph.Renderer.Line = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'line',\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tunstack: true,\n\t\t\tfill: false,\n\t\t\tstroke: true\n\t\t} );\n\t},\n\n\tseriesPathFactory: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar factory = d3.svg.line()\n\t\t\t.x( function(d) { return graph.x(d.x) } )\n\t\t\t.y( function(d) { return graph.y(d.y) } )\n\t\t\t.interpolate(this.graph.interpolation).tension(this.tension);\n\n\t\tfactory.defined && factory.defined( function(d) { return d.y !== null } );\n\t\treturn factory;\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Renderer.Stack');\n\nRickshaw.Graph.Renderer.Stack = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'stack',\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tfill: true,\n\t\t\tstroke: false,\n\t\t\tunstack: false\n\t\t} );\n\t},\n\n\tseriesPathFactory: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar factory = d3.svg.area()\n\t\t\t.x( function(d) { return graph.x(d.x) } )\n\t\t\t.y0( function(d) { return graph.y(d.y0) } )\n\t\t\t.y1( function(d) { return graph.y(d.y + d.y0) } )\n\t\t\t.interpolate(this.graph.interpolation).tension(this.tension);\n\n\t\tfactory.defined && factory.defined( function(d) { return d.y !== null } );\n\t\treturn factory;\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Renderer.Bar');\n\nRickshaw.Graph.Renderer.Bar = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'bar',\n\n\tdefaults: function($super) {\n\n\t\tvar defaults = Rickshaw.extend( $super(), {\n\t\t\tgapSize: 0.05,\n\t\t\tunstack: false,\n\t\t\topacity: 1.0\n\t\t} );\n\n\t\tdelete defaults.tension;\n\t\treturn defaults;\n\t},\n\n\tinitialize: function($super, args) {\n\t\targs = args || {};\n\t\tthis.gapSize = args.gapSize || this.gapSize;\n\t\t$super(args);\n\t},\n\n\tdomain: function($super) {\n\n\t\tvar domain = $super();\n\n\t\tvar frequentInterval = this._frequentInterval(this.graph.stackedData.slice(-1).shift());\n\t\tdomain.x[1] += Number(frequentInterval.magnitude);\n\n\t\treturn domain;\n\t},\n\n\tbarWidth: function(series) {\n\n\t\tvar frequentInterval = this._frequentInterval(series.stack);\n\t\tvar barWidth = this.graph.x.magnitude(frequentInterval.magnitude) * (1 - this.gapSize);\n\n\t\treturn barWidth;\n\t},\n\n\trender: function(args) {\n\n\t\targs = args || {};\n\n\t\tvar graph = this.graph;\n\t\tvar series = args.series || graph.series;\n\n\t\tvar vis = args.vis || graph.vis;\n\t\tvis.selectAll('*').remove();\n\n\t\tvar barWidth = this.barWidth(series.active()[0]);\n\t\tvar barXOffset = 0;\n\n\t\tvar activeSeriesCount = series.filter( function(s) { return !s.disabled; } ).length;\n\t\tvar seriesBarWidth = this.unstack ? barWidth / activeSeriesCount : barWidth;\n\n\t\tvar transform = function(d) {\n\t\t\t// add a matrix transform for negative values\n\t\t\tvar matrix = [ 1, 0, 0, (d.y < 0 ? -1 : 1), 0, (d.y < 0 ? graph.y.magnitude(Math.abs(d.y)) * 2 : 0) ];\n\t\t\treturn \"matrix(\" + matrix.join(',') + \")\";\n\t\t};\n\n\t\tseries.forEach( function(series) {\n\n\t\t\tif (series.disabled) return;\n\n\t\t\tvar barWidth = this.barWidth(series);\n\n\t\t\tvar nodes = vis.selectAll(\"path\")\n\t\t\t\t.data(series.stack.filter( function(d) { return d.y !== null } ))\n\t\t\t\t.enter().append(\"svg:rect\")\n\t\t\t\t.attr(\"x\", function(d) { return graph.x(d.x) + barXOffset })\n\t\t\t\t.attr(\"y\", function(d) { return (graph.y(d.y0 + Math.abs(d.y))) * (d.y < 0 ? -1 : 1 ) })\n\t\t\t\t.attr(\"width\", seriesBarWidth)\n\t\t\t\t.attr(\"height\", function(d) { return graph.y.magnitude(Math.abs(d.y)) })\n\t\t\t\t.attr(\"opacity\", series.opacity)\n\t\t\t\t.attr(\"transform\", transform);\n\n\t\t\tArray.prototype.forEach.call(nodes[0], function(n) {\n\t\t\t\tn.setAttribute('fill', series.color);\n\t\t\t} );\n\n\t\t\tif (this.unstack) barXOffset += seriesBarWidth;\n\n\t\t}, this );\n\t},\n\n\t_frequentInterval: function(data) {\n\n\t\tvar intervalCounts = {};\n\n\t\tfor (var i = 0; i < data.length - 1; i++) {\n\t\t\tvar interval = data[i + 1].x - data[i].x;\n\t\t\tintervalCounts[interval] = intervalCounts[interval] || 0;\n\t\t\tintervalCounts[interval]++;\n\t\t}\n\n\t\tvar frequentInterval = { count: 0, magnitude: 1 };\n\t\t\n\t\t// Sorting object's keys returned to guarantee consistency when iterating over\n\t\t// Keys order in `for .. in` loop is not specified and browsers behave differently here\n\t\t// This results with different invterval value being calculated for different browsers\n\t\t// See last but one section here: http://www.ecma-international.org/ecma-262/5.1/#sec-12.6.4\n\t\tvar keysSorted = Rickshaw.keys(intervalCounts).sort(function asc(a, b) { return Number(a) - Number(b); });\n\t\tkeysSorted.forEach( function(i) {\n\t\t\tif (frequentInterval.count < intervalCounts[i]) {\n\t\t\t\tfrequentInterval = {\n\t\t\t\t\tcount: intervalCounts[i],\n\t\t\t\t\tmagnitude: i\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\n\t\treturn frequentInterval;\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Renderer.Area');\n\nRickshaw.Graph.Renderer.Area = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'area',\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tunstack: false,\n\t\t\tfill: false,\n\t\t\tstroke: false\n\t\t} );\n\t},\n\n\tseriesPathFactory: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar factory = d3.svg.area()\n\t\t\t.x( function(d) { return graph.x(d.x) } )\n\t\t\t.y0( function(d) { return graph.y(d.y0) } )\n\t\t\t.y1( function(d) { return graph.y(d.y + d.y0) } )\n\t\t\t.interpolate(graph.interpolation).tension(this.tension);\n\n\t\tfactory.defined && factory.defined( function(d) { return d.y !== null } );\n\t\treturn factory;\n\t},\n\n\tseriesStrokeFactory: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar factory = d3.svg.line()\n\t\t\t.x( function(d) { return graph.x(d.x) } )\n\t\t\t.y( function(d) { return graph.y(d.y + d.y0) } )\n\t\t\t.interpolate(graph.interpolation).tension(this.tension);\n\n\t\tfactory.defined && factory.defined( function(d) { return d.y !== null } );\n\t\treturn factory;\n\t},\n\n\trender: function(args) {\n\n\t\targs = args || {};\n\n\t\tvar graph = this.graph;\n\t\tvar series = args.series || graph.series;\n\n\t\tvar vis = args.vis || graph.vis;\n\t\tvis.selectAll('*').remove();\n\n\t\t// insert or stacked areas so strokes lay on top of areas\n\t\tvar method = this.unstack ? 'append' : 'insert';\n\n\t\tvar data = series\n\t\t\t.filter(function(s) { return !s.disabled })\n\t\t\t.map(function(s) { return s.stack });\n\n\t\tvar nodes = vis.selectAll(\"path\")\n\t\t\t.data(data)\n\t\t\t.enter()[method](\"svg:g\", 'g');\n\n\t\tnodes.append(\"svg:path\")\n\t\t\t.attr(\"d\", this.seriesPathFactory())\n\t\t\t.attr(\"class\", 'area');\n\n\t\tif (this.stroke) {\n\t\t\tnodes.append(\"svg:path\")\n\t\t\t\t.attr(\"d\", this.seriesStrokeFactory())\n\t\t\t\t.attr(\"class\", 'line');\n\t\t}\n\n\t\tvar i = 0;\n\t\tseries.forEach( function(series) {\n\t\t\tif (series.disabled) return;\n\t\t\tseries.path = nodes[0][i++];\n\t\t\tthis._styleSeries(series);\n\t\t}, this );\n\t},\n\n\t_styleSeries: function(series) {\n\n\t\tif (!series.path) return;\n\n\t\td3.select(series.path).select('.area')\n\t\t\t.attr('fill', series.color);\n\n\t\tif (this.stroke) {\n\t\t\td3.select(series.path).select('.line')\n\t\t\t\t.attr('fill', 'none')\n\t\t\t\t.attr('stroke', series.stroke || d3.interpolateRgb(series.color, 'black')(0.125))\n\t\t\t\t.attr('stroke-width', this.strokeWidth);\n\t\t}\n\n\t\tif (series.className) {\n\t\t\tseries.path.setAttribute('class', series.className);\n\t\t}\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Renderer.ScatterPlot');\n\nRickshaw.Graph.Renderer.ScatterPlot = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'scatterplot',\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tunstack: true,\n\t\t\tfill: true,\n\t\t\tstroke: false,\n\t\t\tpadding:{ top: 0.01, right: 0.01, bottom: 0.01, left: 0.01 },\n\t\t\tdotSize: 4\n\t\t} );\n\t},\n\n\tinitialize: function($super, args) {\n\t\t$super(args);\n\t},\n\n\trender: function(args) {\n\n\t\targs = args || {};\n\n\t\tvar graph = this.graph;\n\n\t\tvar series = args.series || graph.series;\n\t\tvar vis = args.vis || graph.vis;\n\n\t\tvar dotSize = this.dotSize;\n\n\t\tvis.selectAll('*').remove();\n\n\t\tseries.forEach( function(series) {\n\n\t\t\tif (series.disabled) return;\n\t\t\tvar opacity = series.opacity === undefined ? 1 : series.opacity;\n\n\t\t\tvar nodes = vis.selectAll(\"path\")\n\t\t\t\t.data(series.stack.filter( function(d) { return d.y !== null } ))\n\t\t\t\t.enter().append(\"svg:circle\")\n\t\t\t\t\t.attr(\"cx\", function(d) { return graph.x(d.x) })\n\t\t\t\t\t.attr(\"cy\", function(d) { return graph.y(d.y) })\n\t\t\t\t\t.attr(\"r\", function(d) { return (\"r\" in d) ? d.r : dotSize})\n\t\t\t\t\t.attr(\"opacity\", function(d) { return (\"opacity\" in d) ? d.opacity : opacity});\n\t\t\tif (series.className) {\n\t\t\t\tnodes.classed(series.className, true);\n\t\t\t}\n\n\t\t\tArray.prototype.forEach.call(nodes[0], function(n) {\n\t\t\t\tn.setAttribute('fill', series.color);\n\t\t\t} );\n\n\t\t}, this );\n\t}\n} );\nRickshaw.namespace('Rickshaw.Graph.Renderer.Multi');\n\nRickshaw.Graph.Renderer.Multi = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'multi',\n\n\tinitialize: function($super, args) {\n\n\t\t$super(args);\n\t},\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tunstack: true,\n\t\t\tfill: false,\n\t\t\tstroke: true \n\t\t} );\n\t},\n\n\tconfigure: function($super, args) {\n\n\t\targs = args || {};\n\t\tthis.config = args;\n\t\t$super(args);\n\t},\n\n\tdomain: function($super) {\n\n\t\tthis.graph.stackData();\n\n\t\tvar domains = [];\n\n\t\tvar groups = this._groups();\n\t\tthis._stack(groups);\n\n\t\tgroups.forEach( function(group) {\n\n\t\t\tvar data = group.series\n\t\t\t\t.filter( function(s) { return !s.disabled } )\n\t\t\t\t.map( function(s) { return s.stack });\n\n\t\t\tif (!data.length) return;\n\t\t\t\n\t\t\tvar domain = null;\n\t\t\tif (group.renderer && group.renderer.domain) {\n\t\t\t\tdomain = group.renderer.domain(data);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tdomain = $super(data);\n\t\t\t}\n\t\t\tdomains.push(domain);\n\t\t});\n\n\t\tvar xMin = d3.min(domains.map( function(d) { return d.x[0] } ));\n\t\tvar xMax = d3.max(domains.map( function(d) { return d.x[1] } ));\n\t\tvar yMin = d3.min(domains.map( function(d) { return d.y[0] } ));\n\t\tvar yMax = d3.max(domains.map( function(d) { return d.y[1] } ));\n\n\t\treturn { x: [xMin, xMax], y: [yMin, yMax] };\n\t},\n\n\t_groups: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar renderGroups = {};\n\n\t\tgraph.series.forEach( function(series) {\n\n\t\t\tif (series.disabled) return;\n\n\t\t\tif (!renderGroups[series.renderer]) {\n\n\t\t\t\tvar ns = \"http://www.w3.org/2000/svg\";\n\t\t\t\tvar vis = document.createElementNS(ns, 'g');\n\n\t\t\t\tgraph.vis[0][0].appendChild(vis);\n\n\t\t\t\tvar renderer = graph._renderers[series.renderer];\n\n\t\t\t\tvar config = {};\n\n\t\t\t\tvar defaults = [ this.defaults(), renderer.defaults(), this.config, this.graph ];\n\t\t\t\tdefaults.forEach(function(d) { Rickshaw.extend(config, d) });\n\n\t\t\t\trenderer.configure(config);\n\n\t\t\t\trenderGroups[series.renderer] = {\n\t\t\t\t\trenderer: renderer,\n\t\t\t\t\tseries: [],\n\t\t\t\t\tvis: d3.select(vis)\n\t\t\t\t};\n\t\t\t}\n\t\t\t\t\n\t\t\trenderGroups[series.renderer].series.push(series);\n\n\t\t}, this);\n\n\t\tvar groups = [];\n\n\t\tObject.keys(renderGroups).forEach( function(key) {\n\t\t\tvar group = renderGroups[key];\n\t\t\tgroups.push(group);\n\t\t});\n\n\t\treturn groups;\n\t},\n\n\t_stack: function(groups) {\n\n\t\tgroups.forEach( function(group) {\n\n\t\t\tvar series = group.series\n\t\t\t\t.filter( function(series) { return !series.disabled } );\n\n\t\t\tvar data = series\n\t\t\t\t.map( function(series) { return series.stack } );\n\n\t\t\tif (!group.renderer.unstack) {\n\n\t\t\t\tvar layout = d3.layout.stack();\n\t\t\t\tvar stackedData = Rickshaw.clone(layout(data));\n\n\t\t\t\tseries.forEach( function(series, index) {\n\t\t\t\t\tseries._stack = Rickshaw.clone(stackedData[index]);\n\t\t\t\t});\n\t\t\t}\n\n\t\t}, this );\n\n\t\treturn groups;\n\n\t},\n\n\trender: function() {\n\n\t\tthis.graph.series.forEach( function(series) {\n\t\t\tif (!series.renderer) {\n\t\t\t\tthrow new Error(\"Each series needs a renderer for graph 'multi' renderer\");\n\t\t\t}\n\t\t});\n\n\t\tthis.graph.vis.selectAll('*').remove();\n\n\t\tvar groups = this._groups();\n\t\tgroups = this._stack(groups);\n\n\t\tgroups.forEach( function(group) {\n\n\t\t\tvar series = group.series\n\t\t\t\t.filter( function(series) { return !series.disabled } );\n\n\t\t\tseries.active = function() { return series };\n\n\t\t\tgroup.renderer.render({ series: series, vis: group.vis });\n\t\t\tseries.forEach(function(s) { s.stack = s._stack || s.stack || s.data; });\n\t\t});\n\t}\n\n} );\nRickshaw.namespace('Rickshaw.Graph.Renderer.LinePlot');\n\nRickshaw.Graph.Renderer.LinePlot = Rickshaw.Class.create( Rickshaw.Graph.Renderer, {\n\n\tname: 'lineplot',\n\n\tdefaults: function($super) {\n\n\t\treturn Rickshaw.extend( $super(), {\n\t\t\tunstack: true,\n\t\t\tfill: false,\n\t\t\tstroke: true,\n\t\t\tpadding:{ top: 0.01, right: 0.01, bottom: 0.01, left: 0.01 },\n\t\t\tdotSize: 3,\n\t\t\tstrokeWidth: 2\n\t\t} );\n\t},\n\n\tseriesPathFactory: function() {\n\n\t\tvar graph = this.graph;\n\n\t\tvar factory = d3.svg.line()\n\t\t\t.x( function(d) { return graph.x(d.x) } )\n\t\t\t.y( function(d) { return graph.y(d.y) } )\n\t\t\t.interpolate(this.graph.interpolation).tension(this.tension);\n\n\t\tfactory.defined && factory.defined( function(d) { return d.y !== null } );\n\t\treturn factory;\n\t},\n\n\trender: function(args) {\n\n\t\targs = args || {};\n\n\t\tvar graph = this.graph;\n\n\t\tvar series = args.series || graph.series;\n\t\tvar vis = args.vis || graph.vis;\n\n\t\tvar dotSize = this.dotSize;\n\n\t\tvis.selectAll('*').remove();\n\n\t\tvar data = series\n\t\t\t.filter(function(s) { return !s.disabled })\n\t\t\t.map(function(s) { return s.stack });\n\n\t\tvar nodes = vis.selectAll(\"path\")\n\t\t\t.data(data)\n\t\t\t.enter().append(\"svg:path\")\n\t\t\t.attr(\"d\", this.seriesPathFactory());\n\n\t\tvar i = 0;\n\t\tseries.forEach(function(series) {\n\t\t\tif (series.disabled) return;\n\t\t\tseries.path = nodes[0][i++];\n\t\t\tthis._styleSeries(series);\n\t\t}, this);\n\n\t\tseries.forEach(function(series) {\n\n\t\t\tif (series.disabled) return;\n\n\t\t\tvar nodes = vis.selectAll(\"x\")\n\t\t\t\t.data(series.stack.filter( function(d) { return d.y !== null } ))\n\t\t\t\t.enter().append(\"svg:circle\")\n\t\t\t\t.attr(\"cx\", function(d) { return graph.x(d.x) })\n\t\t\t\t.attr(\"cy\", function(d) { return graph.y(d.y) })\n\t\t\t\t.attr(\"r\", function(d) { return (\"r\" in d) ? d.r : dotSize});\n\n\t\t\tArray.prototype.forEach.call(nodes[0], function(n) {\n\t\t\t\tif (!n) return;\n\t\t\t\tn.setAttribute('data-color', series.color);\n\t\t\t\tn.setAttribute('fill', 'white');\n\t\t\t\tn.setAttribute('stroke', series.color);\n\t\t\t\tn.setAttribute('stroke-width', this.strokeWidth);\n\n\t\t\t}.bind(this));\n\n\t\t}, this);\n\t}\n} );\n\nRickshaw.namespace('Rickshaw.Graph.Smoother');\n\nRickshaw.Graph.Smoother = Rickshaw.Class.create({\n\n\tinitialize: function(args) {\n\n\t\tthis.graph = args.graph;\n\t\tthis.element = args.element;\n\t\tthis.aggregationScale = 1;\n\n\t\tthis.build();\n\n\t\tthis.graph.stackData.hooks.data.push( {\n\t\t\tname: 'smoother',\n\t\t\torderPosition: 50,\n\t\t\tf: this.transformer.bind(this)\n\t\t} );\n\t},\n\n\tbuild: function() {\n\n\t\tvar self = this;\n\t\tvar $ = jQuery;\n\n\t\tif (this.element) {\n\t\t\t$( function() {\n\t\t\t\t$(self.element).slider( {\n\t\t\t\t\tmin: 1,\n\t\t\t\t\tmax: 100,\n\t\t\t\t\tslide: function( event, ui ) {\n\t\t\t\t\t\tself.setScale(ui.value);\n\t\t\t\t\t}\n\t\t\t\t} );\n\t\t\t} );\n\t\t}\n\t},\n\n\tsetScale: function(scale) {\n\n\t\tif (scale < 1) {\n\t\t\tthrow \"scale out of range: \" + scale;\n\t\t}\n\n\t\tthis.aggregationScale = scale;\n\t\tthis.graph.update();\n\t},\n\n\ttransformer: function(data) {\n\n\t\tif (this.aggregationScale == 1) return data;\n\n\t\tvar aggregatedData = [];\n\n\t\tdata.forEach( function(seriesData) {\n\n\t\t\tvar aggregatedSeriesData = [];\n\n\t\t\twhile (seriesData.length) {\n\n\t\t\t\tvar avgX = 0, avgY = 0;\n\t\t\t\tvar slice = seriesData.splice(0, this.aggregationScale);\n\n\t\t\t\tslice.forEach( function(d) {\n\t\t\t\t\tavgX += d.x / slice.length;\n\t\t\t\t\tavgY += d.y / slice.length;\n\t\t\t\t} );\n\n\t\t\t\taggregatedSeriesData.push( { x: avgX, y: avgY } );\n\t\t\t}\n\n\t\t\taggregatedData.push(aggregatedSeriesData);\n\n\t\t}.bind(this) );\n\n\t\treturn aggregatedData;\n\t}\n});\n\nRickshaw.namespace('Rickshaw.Graph.Socketio');\n\nRickshaw.Graph.Socketio = Rickshaw.Class.create( Rickshaw.Graph.Ajax, {\n\trequest: function() {\n\t\tvar socket = io.connect(this.dataURL);\n\t\tvar self = this;\n\t\tsocket.on('rickshaw', function (data) {\n\t\t\tself.success(data);\n\t\t});\n\t}\n} );\nRickshaw.namespace('Rickshaw.Series');\n\nRickshaw.Series = Rickshaw.Class.create( Array, {\n\n\tinitialize: function (data, palette, options) {\n\n\t\toptions = options || {};\n\n\t\tthis.palette = new Rickshaw.Color.Palette(palette);\n\n\t\tthis.timeBase = typeof(options.timeBase) === 'undefined' ? \n\t\t\tMath.floor(new Date().getTime() / 1000) : \n\t\t\toptions.timeBase;\n\n\t\tvar timeInterval = typeof(options.timeInterval) == 'undefined' ?\n\t\t\t1000 :\n\t\t\toptions.timeInterval;\n\n\t\tthis.setTimeInterval(timeInterval);\n\n\t\tif (data && (typeof(data) == \"object\") && Array.isArray(data)) {\n\t\t\tdata.forEach( function(item) { this.addItem(item) }, this );\n\t\t}\n\t},\n\n\taddItem: function(item) {\n\n\t\tif (typeof(item.name) === 'undefined') {\n\t\t\tthrow('addItem() needs a name');\n\t\t}\n\n\t\titem.color = (item.color || this.palette.color(item.name));\n\t\titem.data = (item.data || []);\n\n\t\t// backfill, if necessary\n\t\tif ((item.data.length === 0) && this.length && (this.getIndex() > 0)) {\n\t\t\tthis[0].data.forEach( function(plot) {\n\t\t\t\titem.data.push({ x: plot.x, y: 0 });\n\t\t\t} );\n\t\t} else if (item.data.length === 0) {\n\t\t\titem.data.push({ x: this.timeBase - (this.timeInterval || 0), y: 0 });\n\t\t} \n\n\t\tthis.push(item);\n\n\t\tif (this.legend) {\n\t\t\tthis.legend.addLine(this.itemByName(item.name));\n\t\t}\n\t},\n\n\taddData: function(data, x) {\n\n\t\tvar index = this.getIndex();\n\n\t\tRickshaw.keys(data).forEach( function(name) {\n\t\t\tif (! this.itemByName(name)) {\n\t\t\t\tthis.addItem({ name: name });\n\t\t\t}\n\t\t}, this );\n\n\t\tthis.forEach( function(item) {\n\t\t\titem.data.push({ \n\t\t\t\tx: x || (index * this.timeInterval || 1) + this.timeBase, \n\t\t\t\ty: (data[item.name] || 0) \n\t\t\t});\n\t\t}, this );\n\t},\n\n\tgetIndex: function () {\n\t\treturn (this[0] && this[0].data && this[0].data.length) ? this[0].data.length : 0;\n\t},\n\n\titemByName: function(name) {\n\n\t\tfor (var i = 0; i < this.length; i++) {\n\t\t\tif (this[i].name == name)\n\t\t\t\treturn this[i];\n\t\t}\n\t},\n\n\tsetTimeInterval: function(iv) {\n\t\tthis.timeInterval = iv / 1000;\n\t},\n\n\tsetTimeBase: function (t) {\n\t\tthis.timeBase = t;\n\t},\n\n\tdump: function() {\n\n\t\tvar data = {\n\t\t\ttimeBase: this.timeBase,\n\t\t\ttimeInterval: this.timeInterval,\n\t\t\titems: []\n\t\t};\n\n\t\tthis.forEach( function(item) {\n\n\t\t\tvar newItem = {\n\t\t\t\tcolor: item.color,\n\t\t\t\tname: item.name,\n\t\t\t\tdata: []\n\t\t\t};\n\n\t\t\titem.data.forEach( function(plot) {\n\t\t\t\tnewItem.data.push({ x: plot.x, y: plot.y });\n\t\t\t} );\n\n\t\t\tdata.items.push(newItem);\n\t\t} );\n\n\t\treturn data;\n\t},\n\n\tload: function(data) {\n\n\t\tif (data.timeInterval) {\n\t\t\tthis.timeInterval = data.timeInterval;\n\t\t}\n\n\t\tif (data.timeBase) {\n\t\t\tthis.timeBase = data.timeBase;\n\t\t}\n\n\t\tif (data.items) {\n\t\t\tdata.items.forEach( function(item) {\n\t\t\t\tthis.push(item);\n\t\t\t\tif (this.legend) {\n\t\t\t\t\tthis.legend.addLine(this.itemByName(item.name));\n\t\t\t\t}\n\n\t\t\t}, this );\n\t\t}\n\t}\n} );\n\nRickshaw.Series.zeroFill = function(series) {\n\tRickshaw.Series.fill(series, 0);\n};\n\nRickshaw.Series.fill = function(series, fill) {\n\n\tvar x;\n\tvar i = 0;\n\n\tvar data = series.map( function(s) { return s.data } );\n\n\twhile ( i < Math.max.apply(null, data.map( function(d) { return d.length } )) ) {\n\n\t\tx = Math.min.apply( null, \n\t\t\tdata\n\t\t\t\t.filter(function(d) { return d[i] })\n\t\t\t\t.map(function(d) { return d[i].x })\n\t\t);\n\n\t\tdata.forEach( function(d) {\n\t\t\tif (!d[i] || d[i].x != x) {\n\t\t\t\td.splice(i, 0, { x: x, y: fill });\n\t\t\t}\n\t\t} );\n\n\t\ti++;\n\t}\n};\n\nRickshaw.namespace('Rickshaw.Series.FixedDuration');\n\nRickshaw.Series.FixedDuration = Rickshaw.Class.create(Rickshaw.Series, {\n\n\tinitialize: function (data, palette, options) {\n\n\t\toptions = options || {};\n\n\t\tif (typeof(options.timeInterval) === 'undefined') {\n\t\t\tthrow new Error('FixedDuration series requires timeInterval');\n\t\t}\n\n\t\tif (typeof(options.maxDataPoints) === 'undefined') {\n\t\t\tthrow new Error('FixedDuration series requires maxDataPoints');\n\t\t}\n\n\t\tthis.palette = new Rickshaw.Color.Palette(palette);\n\t\tthis.timeBase = typeof(options.timeBase) === 'undefined' ? Math.floor(new Date().getTime() / 1000) : options.timeBase;\n\t\tthis.setTimeInterval(options.timeInterval);\n\n\t\tif (this[0] && this[0].data && this[0].data.length) {\n\t\t\tthis.currentSize = this[0].data.length;\n\t\t\tthis.currentIndex = this[0].data.length;\n\t\t} else {\n\t\t\tthis.currentSize = 0;\n\t\t\tthis.currentIndex = 0;\n\t\t}\n\n\t\tthis.maxDataPoints = options.maxDataPoints;\n\n\n\t\tif (data && (typeof(data) == \"object\") && Array.isArray(data)) {\n\t\t\tdata.forEach( function (item) { this.addItem(item) }, this );\n\t\t\tthis.currentSize += 1;\n\t\t\tthis.currentIndex += 1;\n\t\t}\n\n\t\t// reset timeBase for zero-filled values if needed\n\t\tthis.timeBase -= (this.maxDataPoints - this.currentSize) * this.timeInterval;\n\n\t\t// zero-fill up to maxDataPoints size if we don't have that much data yet\n\t\tif ((typeof(this.maxDataPoints) !== 'undefined') && (this.currentSize < this.maxDataPoints)) {\n\t\t\tfor (var i = this.maxDataPoints - this.currentSize - 1; i > 1; i--) {\n\t\t\t\tthis.currentSize += 1;\n\t\t\t\tthis.currentIndex += 1;\n\t\t\t\tthis.forEach( function (item) {\n\t\t\t\t\titem.data.unshift({ x: ((i-1) * this.timeInterval || 1) + this.timeBase, y: 0, i: i });\n\t\t\t\t}, this );\n\t\t\t}\n\t\t}\n\t},\n\n\taddData: function($super, data, x) {\n\n\t\t$super(data, x);\n\n\t\tthis.currentSize += 1;\n\t\tthis.currentIndex += 1;\n\n\t\tif (this.maxDataPoints !== undefined) {\n\t\t\twhile (this.currentSize > this.maxDataPoints) {\n\t\t\t\tthis.dropData();\n\t\t\t}\n\t\t}\n\t},\n\n\tdropData: function() {\n\n\t\tthis.forEach(function(item) {\n\t\t\titem.data.splice(0, 1);\n\t\t} );\n\n\t\tthis.currentSize -= 1;\n\t},\n\n\tgetIndex: function () {\n\t\treturn this.currentIndex;\n\t}\n} );\n\n\treturn Rickshaw;\n}));\n","import script from \"./voucher.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./voucher.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./voucher.vue?vue&type=style&index=0&id=36eee866&scoped=true&lang=css\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-36eee866\"]])\n\nexport default __exports__","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./firstAcessTutorial.vue?vue&type=template&id=304cfef8&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleMissionsComponent.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./AvaibleMissionsComponent.vue?vue&type=script&lang=js\"","var map = {\n\t\"./analyze.png\": \"fa39\",\n\t\"./available.png\": \"2efd\",\n\t\"./expired.png\": \"34e2\",\n\t\"./rescued.png\": \"bf7c\",\n\t\"./total.png\": \"6ede\",\n\t\"./total_sales.png\": \"acfa\",\n\t\"./visitors-icon.png\": \"3592\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"e379\";","\n\n\n\n\n","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DashAreaComponent.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./DashAreaComponent.vue?vue&type=script&setup=true&lang=js\"","/*\n Highcharts JS v9.3.3 (2022-02-01)\n\n (c) 2009-2021 Torstein Honsi\n\n License: www.highcharts.com/license\n*/\n'use strict';(function(Z,M){\"object\"===typeof module&&module.exports?(M[\"default\"]=M,module.exports=Z.document?M(Z):M):\"function\"===typeof define&&define.amd?define(\"highcharts/highcharts\",function(){return M(Z)}):(Z.Highcharts&&Z.Highcharts.error(16,!0),Z.Highcharts=M(Z))})(\"undefined\"!==typeof window?window:this,function(Z){function M(v,a,z,F){v.hasOwnProperty(a)||(v[a]=F.apply(null,z))}var a={};M(a,\"Core/Globals.js\",[],function(){var v=\"undefined\"!==typeof Z?Z:\"undefined\"!==typeof window?window:\n{},a;(function(a){a.SVG_NS=\"http://www.w3.org/2000/svg\";a.product=\"Highcharts\";a.version=\"9.3.3\";a.win=v;a.doc=a.win.document;a.svg=a.doc&&a.doc.createElementNS&&!!a.doc.createElementNS(a.SVG_NS,\"svg\").createSVGRect;a.userAgent=a.win.navigator&&a.win.navigator.userAgent||\"\";a.isChrome=-1!==a.userAgent.indexOf(\"Chrome\");a.isFirefox=-1!==a.userAgent.indexOf(\"Firefox\");a.isMS=/(edge|msie|trident)/i.test(a.userAgent)&&!a.win.opera;a.isSafari=!a.isChrome&&-1!==a.userAgent.indexOf(\"Safari\");a.isTouchDevice=\n/(Mobile|Android|Windows Phone)/.test(a.userAgent);a.isWebKit=-1!==a.userAgent.indexOf(\"AppleWebKit\");a.deg2rad=2*Math.PI/360;a.hasBidiBug=a.isFirefox&&4>parseInt(a.userAgent.split(\"Firefox/\")[1],10);a.hasTouch=!!a.win.TouchEvent;a.marginNames=[\"plotTop\",\"marginRight\",\"marginBottom\",\"plotLeft\"];a.noop=function(){};a.supportsPassiveEvents=function(){var v=!1;if(!a.isMS){var u=Object.defineProperty({},\"passive\",{get:function(){v=!0}});a.win.addEventListener&&a.win.removeEventListener&&(a.win.addEventListener(\"testPassive\",\na.noop,u),a.win.removeEventListener(\"testPassive\",a.noop,u))}return v}();a.charts=[];a.dateFormats={};a.seriesTypes={};a.symbolSizes={};a.chartCount=0})(a||(a={}));\"\";return a});M(a,\"Core/Utilities.js\",[a[\"Core/Globals.js\"]],function(a){function v(m,b,d,g){var D=b?\"Highcharts error\":\"Highcharts warning\";32===m&&(m=D+\": Deprecated member\");var x=n(m),c=x?D+\" #\"+m+\": www.highcharts.com/errors/\"+m+\"/\":m.toString();if(\"undefined\"!==typeof g){var r=\"\";x&&(c+=\"?\");B(g,function(m,b){r+=\"\\n - \"+b+\": \"+m;\nx&&(c+=encodeURI(b)+\"=\"+encodeURI(m))});c+=r}J(a,\"displayError\",{chart:d,code:m,message:c,params:g},function(){if(b)throw Error(c);l.console&&-1===v.messages.indexOf(c)&&console.warn(c)});v.messages.push(c)}function z(m,b){var d={};B(m,function(D,x){if(H(m[x],!0)&&!m.nodeType&&b[x])D=z(m[x],b[x]),Object.keys(D).length&&(d[x]=D);else if(H(m[x])||m[x]!==b[x])d[x]=m[x]});return d}function F(m,b){return parseInt(m,b||10)}function y(m){return\"string\"===typeof m}function G(m){m=Object.prototype.toString.call(m);\nreturn\"[object Array]\"===m||\"[object Array Iterator]\"===m}function H(m,b){return!!m&&\"object\"===typeof m&&(!b||!G(m))}function A(m){return H(m)&&\"number\"===typeof m.nodeType}function q(m){var b=m&&m.constructor;return!(!H(m,!0)||A(m)||!b||!b.name||\"Object\"===b.name)}function n(m){return\"number\"===typeof m&&!isNaN(m)&&Infinity>m&&-Infinity=d-1&&(d=Math.floor(x)),Math.max(0,d-(m(b,\"padding-left\",!0)||0)-(m(b,\"padding-right\",!0)||0));if(\"height\"===d)return Math.max(0,Math.min(b.offsetHeight,b.scrollHeight)-(m(b,\"padding-top\",!0)||0)-(m(b,\"padding-bottom\",!0)||0));l.getComputedStyle||v(27,!0);if(b=l.getComputedStyle(b,void 0)){var g=b.getPropertyValue(d);h(x,\"opacity\"!==d)&&(g=F(g))}return g}function B(b,d,\ng){for(var m in b)Object.hasOwnProperty.call(b,m)&&d.call(g||b[m],b[m],m,b)}function t(b,d,g){function m(d,m){var L=b.removeEventListener||a.removeEventListenerPolyfill;L&&L.call(b,d,m,!1)}function x(g){var x;if(b.nodeName){if(d){var L={};L[d]=!0}else L=g;B(L,function(b,d){if(g[d])for(x=g[d].length;x--;)m(d,g[d][x].fn)})}}var D=\"function\"===typeof b&&b.prototype||b;if(Object.hasOwnProperty.call(D,\"hcEvents\")){var l=D.hcEvents;d?(D=l[d]||[],g?(l[d]=D.filter(function(b){return g!==b.fn}),m(d,g)):(x(l),\nl[d]=[])):(x(l),delete D.hcEvents)}}function J(b,d,g,l){g=g||{};if(r.createEvent&&(b.dispatchEvent||b.fireEvent&&b!==a)){var m=r.createEvent(\"Events\");m.initEvent(d,!0,!0);g=c(m,g);b.dispatchEvent?b.dispatchEvent(g):b.fireEvent(d,g)}else if(b.hcEvents){g.target||c(g,{preventDefault:function(){g.defaultPrevented=!0},target:b,type:d});m=[];for(var x=b,D=!1;x.hcEvents;)Object.hasOwnProperty.call(x,\"hcEvents\")&&x.hcEvents[d]&&(m.length&&(D=!0),m.unshift.apply(m,x.hcEvents[d])),x=Object.getPrototypeOf(x);\nD&&m.sort(function(b,d){return b.order-d.order});m.forEach(function(d){!1===d.fn.call(b,g)&&g.preventDefault()})}l&&!g.defaultPrevented&&l.call(b,g)}var C=a.charts,r=a.doc,l=a.win;(v||(v={})).messages=[];Math.easeInOutSine=function(b){return-.5*(Math.cos(Math.PI*b)-1)};var b=Array.prototype.find?function(b,d){return b.find(d)}:function(b,d){var m,g=b.length;for(m=0;mm&&(m=b[d]);return m},arrayMin:function(b){for(var d=b.length,m=b[0];d--;)b[d]d?b=g&&(d=[1/g])));for(l=0;l=b||!c&&r<=(d[l]+(d[l+1]||d[l]))/2);l++);return m=w(m*g,-Math.round(Math.log(.001)/Math.LN10))},objectEach:B,offset:function(b){var d=r.documentElement;b=b.parentElement||b.parentNode?b.getBoundingClientRect():{top:0,left:0,width:0,height:0};return{top:b.top+(l.pageYOffset||d.scrollTop)-(d.clientTop||0),left:b.left+(l.pageXOffset||d.scrollLeft)-(d.clientLeft||0),width:b.width,height:b.height}},pad:function(b,d,g){return Array((d||2)+1-String(b).replace(\"-\",\"\").length).join(g||\"0\")+\nb},pick:h,pInt:F,relativeLength:function(b,d,g){return/%$/.test(b)?d*parseFloat(b)/100+(g||0):parseFloat(b)},removeEvent:t,splat:function(b){return G(b)?b:[b]},stableSort:function(b,d){var g=b.length,m,l;for(l=0;l>16,(n&65280)>>8,n&255,1]:4===q&&(A=[(n&3840)>>4|(n&3840)>>8,(n&240)>>4|n&240,(n&15)<<4|n&15,1])}if(!A)for(n=u.parsers.length;n--&&!A;){var k=u.parsers[n];(q=k.regex.exec(a))&&(A=k.parse(q))}}A&&\n(this.rgba=A)};u.prototype.get=function(a){var A=this.input,q=this.rgba;if(\"object\"===typeof A&&\"undefined\"!==typeof this.stops){var n=F(A);n.stops=[].slice.call(n.stops);this.stops.forEach(function(k,e){n.stops[e]=[n.stops[e][0],k.get(a)]});return n}return q&&v(q[0])?\"rgb\"===a||!a&&1===q[3]?\"rgb(\"+q[0]+\",\"+q[1]+\",\"+q[2]+\")\":\"a\"===a?\"\"+q[3]:\"rgba(\"+q.join(\",\")+\")\":A};u.prototype.brighten=function(a){var A=this.rgba;if(this.stops)this.stops.forEach(function(n){n.brighten(a)});else if(v(a)&&0!==a)for(var q=\n0;3>q;q++)A[q]+=y(255*a),0>A[q]&&(A[q]=0),255r?\"AM\":\"PM\",P:12>r?\"am\":\"pm\",S:n(h.getSeconds()),L:n(Math.floor(e%1E3),3)},a.dateFormats);q(h,function(b,d){for(;-1!==c.indexOf(\"%\"+d);)c=c.replace(\"%\"+d,\"function\"===typeof b?b.call(p,e):b)});return f?c.substr(0,1).toUpperCase()+c.substr(1):c};w.prototype.resolveDTLFormat=function(c){return H(c,!0)?c:(c=e(c),{main:c[0],from:c[1],to:c[2]})};w.prototype.getTimeTicks=function(e,h,f,w){var p=this,r=[],l={},b=new p.Date(h),g=e.unitRange,d=e.count||1,m;w=k(w,1);if(F(h)){p.set(\"Milliseconds\",\nb,g>=c.second?0:d*Math.floor(p.get(\"Milliseconds\",b)/d));g>=c.second&&p.set(\"Seconds\",b,g>=c.minute?0:d*Math.floor(p.get(\"Seconds\",b)/d));g>=c.minute&&p.set(\"Minutes\",b,g>=c.hour?0:d*Math.floor(p.get(\"Minutes\",b)/d));g>=c.hour&&p.set(\"Hours\",b,g>=c.day?0:d*Math.floor(p.get(\"Hours\",b)/d));g>=c.day&&p.set(\"Date\",b,g>=c.month?1:Math.max(1,d*Math.floor(p.get(\"Date\",b)/d)));if(g>=c.month){p.set(\"Month\",b,g>=c.year?0:d*Math.floor(p.get(\"Month\",b)/d));var D=p.get(\"FullYear\",b)}g>=c.year&&p.set(\"FullYear\",\nb,D-D%d);g===c.week&&(D=p.get(\"Day\",b),p.set(\"Date\",b,p.get(\"Date\",b)-D+w+(D4*c.month||p.getTimezoneOffset(h)!==p.getTimezoneOffset(f));h=b.getTime();for(b=1;hr.length&&r.forEach(function(b){0===b%18E5&&\"000000000\"===p.dateFormat(\"%H%M%S%L\",b)&&(l[b]=\"day\")})}r.info=G(e,{higherRanks:l,totalRange:g*d});return r};w.prototype.getDateFormat=function(e,h,f,w){var p=this.dateFormat(\"%m-%d %H:%M:%S.%L\",h),r={millisecond:15,second:12,minute:9,hour:6,day:3},l=\"millisecond\";for(b in c){if(e===c.week&&+this.dateFormat(\"%w\",h)===f&&\"00:00:00.000\"===p.substr(6)){var b=\"week\";break}if(c[b]>e){b=l;break}if(r[b]&&p.substr(r[b])!==\"01-01 00:00:00.000\".substr(r[b]))break;\n\"week\"!==b&&(l=b)}if(b)var g=this.resolveDTLFormat(w[b]).main;return g};return w}();\"\";return u});M(a,\"Core/DefaultOptions.js\",[a[\"Core/Chart/ChartDefaults.js\"],a[\"Core/Color/Color.js\"],a[\"Core/Globals.js\"],a[\"Core/Color/Palettes.js\"],a[\"Core/Time.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y,G){u=u.parse;var v=G.merge,A={colors:F.colors,symbols:[\"circle\",\"diamond\",\"square\",\"triangle\",\"triangle-down\"],lang:{loading:\"Loading...\",months:\"January February March April May June July August September October November December\".split(\" \"),\nshortMonths:\"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec\".split(\" \"),weekdays:\"Sunday Monday Tuesday Wednesday Thursday Friday Saturday\".split(\" \"),decimalPoint:\".\",numericSymbols:\"kMGTPE\".split(\"\"),resetZoom:\"Reset zoom\",resetZoomTitle:\"Reset zoom level 1:1\",thousandsSep:\" \"},global:{},time:{Date:void 0,getTimezoneOffset:void 0,timezone:void 0,timezoneOffset:0,useUTC:!0},chart:a,title:{text:\"Chart title\",align:\"center\",margin:15,widthAdjust:-44},subtitle:{text:\"\",align:\"center\",widthAdjust:-44},\ncaption:{margin:15,text:\"\",align:\"left\",verticalAlign:\"bottom\"},plotOptions:{},labels:{style:{position:\"absolute\",color:\"#333333\"}},legend:{enabled:!0,align:\"center\",alignColumns:!0,className:\"highcharts-no-tooltip\",layout:\"horizontal\",labelFormatter:function(){return this.name},borderColor:\"#999999\",borderRadius:0,navigation:{activeColor:\"#003399\",inactiveColor:\"#cccccc\"},itemStyle:{color:\"#333333\",cursor:\"pointer\",fontSize:\"12px\",fontWeight:\"bold\",textOverflow:\"ellipsis\"},itemHoverStyle:{color:\"#000000\"},\nitemHiddenStyle:{color:\"#cccccc\"},shadow:!1,itemCheckboxStyle:{position:\"absolute\",width:\"13px\",height:\"13px\"},squareSymbol:!0,symbolPadding:5,verticalAlign:\"bottom\",x:0,y:0,title:{style:{fontWeight:\"bold\"}}},loading:{labelStyle:{fontWeight:\"bold\",position:\"relative\",top:\"45%\"},style:{position:\"absolute\",backgroundColor:\"#ffffff\",opacity:.5,textAlign:\"center\"}},tooltip:{enabled:!0,animation:z.svg,borderRadius:3,dateTimeLabelFormats:{millisecond:\"%A, %b %e, %H:%M:%S.%L\",second:\"%A, %b %e, %H:%M:%S\",\nminute:\"%A, %b %e, %H:%M\",hour:\"%A, %b %e, %H:%M\",day:\"%A, %b %e, %Y\",week:\"Week from %A, %b %e, %Y\",month:\"%B %Y\",year:\"%Y\"},footerFormat:\"\",headerShape:\"callout\",hideDelay:500,padding:8,shape:\"callout\",shared:!1,snap:z.isTouchDevice?25:10,headerFormat:'{point.key}
',pointFormat:'\\u25cf {series.name}: {point.y}
',backgroundColor:u(\"#f7f7f7\").setOpacity(.85).get(),borderWidth:1,shadow:!0,stickOnContact:!1,\nstyle:{color:\"#333333\",cursor:\"default\",fontSize:\"12px\",whiteSpace:\"nowrap\"},useHTML:!1},credits:{enabled:!0,href:\"https://www.highcharts.com?credits\",position:{align:\"right\",x:-10,verticalAlign:\"bottom\",y:-5},style:{cursor:\"pointer\",color:\"#999999\",fontSize:\"9px\"},text:\"Highcharts.com\"}};A.chart.styledMode=!1;\"\";var q=new y(v(A.global,A.time));a={defaultOptions:A,defaultTime:q,getOptions:function(){return A},setOptions:function(n){v(!0,A,n);if(n.time||n.global)z.time?z.time.update(v(A.global,A.time,\nn.global,n.time)):z.time=q;return A}};\"\";return a});M(a,\"Core/Animation/Fx.js\",[a[\"Core/Color/Color.js\"],a[\"Core/Globals.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=a.parse,y=u.win,G=z.isNumber,H=z.objectEach;return function(){function a(a,n,k){this.pos=NaN;this.options=n;this.elem=a;this.prop=k}a.prototype.dSetter=function(){var a=this.paths,n=a&&a[0];a=a&&a[1];var k=this.now||0,e=[];if(1!==k&&n&&a)if(n.length===a.length&&1>k)for(var c=0;c=h+this.startTime){this.now=this.end;this.pos=1;this.update();var w=f[this.prop]=!0;H(f,function(c){!0!==c&&(w=!1)});w&&c&&c.call(e);a=!1}else this.pos=k.easing((n-this.startTime)/h),this.now=this.start+(this.end-this.start)*this.pos,this.update(),a=!0;return a};a.prototype.initPath=function(a,n,k){function e(c,e){for(;c.lengthw[1]){var B=k+ +w[1];0<=B?(w[0]=(+w[0]).toExponential(B).split(\"e\")[0],k=B):(w[0]=w[0].split(\".\")[0]||0,a=20>k?(w[0]*Math.pow(10,w[1])).toFixed(k):0,w[1]=0)}B=(Math.abs(w[1]?w[0]:a)+Math.pow(10,-Math.max(k,f)-1)).toFixed(k);f=String(q(B));\nvar t=3a?\"-\":\"\")+(t?f.substr(0,t)+c:\"\");a=0>+w[1]&&!p?\"0\":a+f.substr(t).replace(/(\\d{3})(?=\\d)/g,\"$1\"+c);k&&(a+=e+B.slice(-k));w[1]&&0!==+a&&(a+=\"e\"+w[1]);return a}var F=a.defaultOptions,y=a.defaultTime,G=u.getNestedProperty,H=u.isNumber,A=u.pick,q=u.pInt;return{dateFormat:function(a,k,e){return y.dateFormat(a,k,e)},format:function(a,k,e){var c=\"{\",h=!1,f=/f$/,w=/\\.([0-9])/,p=F.lang,B=e&&e.time||y;e=e&&e.numberFormatter||v;for(var t=\n[];a;){var J=a.indexOf(c);if(-1===J)break;var C=a.slice(0,J);if(h){C=C.split(\":\");c=G(C.shift()||\"\",k);if(C.length&&\"number\"===typeof c)if(C=C.join(\":\"),f.test(C)){var r=parseInt((C.match(w)||[\"\",\"-1\"])[1],10);null!==c&&(c=e(c,r,p.decimalPoint,-1e){F(a,c);for(B=f=0;B<=e;)B+=a[f].size,f++;p=a.splice(f-1,a.length)}F(a,h);for(a=a.map(function(c){return{size:c.size,targets:[c.target],align:z(c.align,.5)}});w;){for(f=a.length;f--;)e=a[f],c=(Math.min.apply(0,e.targets)+Math.max.apply(0,e.targets))/2,e.pos=v(c-e.size*e.align,\n0,q-e.size);f=a.length;for(w=!1;f--;)0a[f].pos&&(a[f-1].size+=a[f].size,a[f-1].targets=a[f-1].targets.concat(a[f].targets),a[f-1].align=.5,a[f-1].pos+a[f-1].size>q&&(a[f-1].pos=q-a[f-1].size),a.splice(f,1),w=!0)}k.push.apply(k,p);f=0;a.some(function(c){var e=0;return(c.targets||[]).some(function(){k[f].pos=c.pos+e;if(\"undefined\"!==typeof n&&Math.abs(k[f].pos-k[f].target)>n)return k.slice(0,f+1).forEach(function(c){return delete c.pos}),k.reducedLen=(k.reducedLen||q)-.1*\nq,k.reducedLen>.1*q&&u(k,q,n),!0;e+=k[f].size;f++;return!1})});F(k,h);return k}a.distribute=u})(y||(y={}));return y});M(a,\"Core/Renderer/SVG/SVGElement.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Renderer/HTML/AST.js\"],a[\"Core/Color/Color.js\"],a[\"Core/Globals.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y){var v=a.animate,H=a.animObject,A=a.stop,q=F.deg2rad,n=F.doc,k=F.noop,e=F.svg,c=F.SVG_NS,h=F.win,f=y.addEvent,w=y.attr,p=y.createElement,B=y.css,t=y.defined,J=y.erase,C=y.extend,r=y.fireEvent,\nl=y.isArray,b=y.isFunction,g=y.isNumber,d=y.isString,m=y.merge,D=y.objectEach,x=y.pick,I=y.pInt,P=y.syncTimeout,S=y.uniqueKey;a=function(){function a(){this.element=void 0;this.onEvents={};this.opacity=1;this.renderer=void 0;this.SVG_NS=c;this.symbolCustomAttribs=\"x y width height r start end innerR anchorX anchorY rounded\".split(\" \")}a.prototype._defaultGetter=function(b){b=x(this[b+\"Value\"],this[b],this.element?this.element.getAttribute(b):null,0);/^[\\-0-9\\.]+$/.test(b)&&(b=parseFloat(b));return b};\na.prototype._defaultSetter=function(b,d,c){c.setAttribute(d,b)};a.prototype.add=function(b){var d=this.renderer,c=this.element;b&&(this.parentGroup=b);this.parentInverted=b&&b.inverted;\"undefined\"!==typeof this.textStr&&\"text\"===this.element.nodeName&&d.buildText(this);this.added=!0;if(!b||b.handleZ||this.zIndex)var g=this.zIndexSetter();g||(b?b.element:d.box).appendChild(c);if(this.onAdd)this.onAdd();return this};a.prototype.addClass=function(b,d){var c=d?\"\":this.attr(\"class\")||\"\";b=(b||\"\").split(/ /g).reduce(function(b,\nd){-1===c.indexOf(d)&&b.push(d);return b},c?[c]:[]).join(\" \");b!==c&&this.attr(\"class\",b);return this};a.prototype.afterSetters=function(){this.doTransform&&(this.updateTransform(),this.doTransform=!1)};a.prototype.align=function(b,c,g){var m={},L=this.renderer,e=L.alignedObjects,l,a,E;if(b){if(this.alignOptions=b,this.alignByTranslate=c,!g||d(g))this.alignTo=l=g||\"renderer\",J(e,this),e.push(this),g=void 0}else b=this.alignOptions,c=this.alignByTranslate,l=this.alignTo;g=x(g,L[l],\"scrollablePlotBox\"===\nl?L.plotBox:void 0,L);l=b.align;var r=b.verticalAlign;L=(g.x||0)+(b.x||0);e=(g.y||0)+(b.y||0);\"right\"===l?a=1:\"center\"===l&&(a=2);a&&(L+=(g.width-(b.width||0))/a);m[c?\"translateX\":\"x\"]=Math.round(L);\"bottom\"===r?E=1:\"middle\"===r&&(E=2);E&&(e+=(g.height-(b.height||0))/E);m[c?\"translateY\":\"y\"]=Math.round(e);this[this.placed?\"animate\":\"attr\"](m);this.placed=!0;this.alignAttr=m;return this};a.prototype.alignSetter=function(b){var d={left:\"start\",center:\"middle\",right:\"end\"};d[b]&&(this.alignValue=b,this.element.setAttribute(\"text-anchor\",\nd[b]))};a.prototype.animate=function(b,d,c){var g=this,m=H(x(d,this.renderer.globalAnimation,!0));d=m.defer;x(n.hidden,n.msHidden,n.webkitHidden,!1)&&(m.duration=0);0!==m.duration?(c&&(m.complete=c),P(function(){g.element&&v(g,b,m)},d)):(this.attr(b,void 0,c),D(b,function(b,d){m.step&&m.step.call(this,b,{prop:d,pos:1,elem:this})},this));return this};a.prototype.applyTextOutline=function(b){var d=this.element;-1!==b.indexOf(\"contrast\")&&(b=b.replace(/contrast/g,this.renderer.getContrast(d.style.fill)));\nvar g=b.split(\" \");b=g[g.length-1];if((g=g[0])&&\"none\"!==g&&F.svg){this.fakeTS=!0;this.ySetter=this.xSetter;g=g.replace(/(^[\\d\\.]+)(.*?)$/g,function(b,d,c){return 2*Number(d)+c});this.removeTextOutline();var m=n.createElementNS(c,\"tspan\");w(m,{\"class\":\"highcharts-text-outline\",fill:b,stroke:b,\"stroke-width\":g,\"stroke-linejoin\":\"round\"});[].forEach.call(d.childNodes,function(b){var d=b.cloneNode(!0);d.removeAttribute&&[\"fill\",\"stroke\",\"stroke-width\",\"stroke\"].forEach(function(b){return d.removeAttribute(b)});\nm.appendChild(d)});var e=n.createElementNS(c,\"tspan\");e.textContent=\"\\u200b\";[\"x\",\"y\"].forEach(function(b){var c=d.getAttribute(b);c&&e.setAttribute(b,c)});m.appendChild(e);d.insertBefore(m,d.firstChild)}};a.prototype.attr=function(b,d,c,g){var m=this.element,e=this.symbolCustomAttribs,L,l=this,E,a;if(\"string\"===typeof b&&\"undefined\"!==typeof d){var K=b;b={};b[K]=d}\"string\"===typeof b?l=(this[b+\"Getter\"]||this._defaultGetter).call(this,b,m):(D(b,function(d,c){E=!1;g||A(this,c);this.symbolName&&-1!==\ne.indexOf(c)&&(L||(this.symbolAttr(b),L=!0),E=!0);!this.rotation||\"x\"!==c&&\"y\"!==c||(this.doTransform=!0);E||(a=this[c+\"Setter\"]||this._defaultSetter,a.call(this,d,c,m),!this.styledMode&&this.shadows&&/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(c)&&this.updateShadows(c,d,a))},this),this.afterSetters());c&&c.call(this);return l};a.prototype.clip=function(b){return this.attr(\"clip-path\",b?\"url(\"+this.renderer.url+\"#\"+b.id+\")\":\"none\")};a.prototype.crisp=function(b,d){d=d||b.strokeWidth||\n0;var c=Math.round(d)%2/2;b.x=Math.floor(b.x||this.x||0)+c;b.y=Math.floor(b.y||this.y||0)+c;b.width=Math.floor((b.width||this.width||0)-2*c);b.height=Math.floor((b.height||this.height||0)-2*c);t(b.strokeWidth)&&(b.strokeWidth=d);return b};a.prototype.complexColor=function(b,d,c){var g=this.renderer,e,L,a,h,E,x,p,f,k,w,B=[],I;r(this.renderer,\"complexColor\",{args:arguments},function(){b.radialGradient?L=\"radialGradient\":b.linearGradient&&(L=\"linearGradient\");if(L){a=b[L];E=g.gradients;x=b.stops;k=c.radialReference;\nl(a)&&(b[L]=a={x1:a[0],y1:a[1],x2:a[2],y2:a[3],gradientUnits:\"userSpaceOnUse\"});\"radialGradient\"===L&&k&&!t(a.gradientUnits)&&(h=a,a=m(a,g.getRadialAttr(k,h),{gradientUnits:\"userSpaceOnUse\"}));D(a,function(b,d){\"id\"!==d&&B.push(d,b)});D(x,function(b){B.push(b)});B=B.join(\",\");if(E[B])w=E[B].attr(\"id\");else{a.id=w=S();var K=E[B]=g.createElement(L).attr(a).add(g.defs);K.radAttr=h;K.stops=[];x.forEach(function(b){0===b[1].indexOf(\"rgba\")?(e=z.parse(b[1]),p=e.get(\"rgb\"),f=e.get(\"a\")):(p=b[1],f=1);b=g.createElement(\"stop\").attr({offset:b[0],\n\"stop-color\":p,\"stop-opacity\":f}).add(K);K.stops.push(b)})}I=\"url(\"+g.url+\"#\"+w+\")\";c.setAttribute(d,I);c.gradient=B;b.toString=function(){return I}}})};a.prototype.css=function(b){var d=this.styles,c={},g=this.element,m=[\"textOutline\",\"textOverflow\",\"width\"],a=\"\",l=!d;b&&b.color&&(b.fill=b.color);d&&D(b,function(b,g){d&&d[g]!==b&&(c[g]=b,l=!0)});if(l){d&&(b=C(d,c));if(b)if(null===b.width||\"auto\"===b.width)delete this.textWidth;else if(\"text\"===g.nodeName.toLowerCase()&&b.width)var r=this.textWidth=\nI(b.width);this.styles=b;r&&!e&&this.renderer.forExport&&delete b.width;if(g.namespaceURI===this.SVG_NS){var E=function(b,d){return\"-\"+d.toLowerCase()};D(b,function(b,d){-1===m.indexOf(d)&&(a+=d.replace(/([A-Z])/g,E)+\":\"+b+\";\")});a&&w(g,\"style\",a)}else B(g,b);this.added&&(\"text\"===this.element.nodeName&&this.renderer.buildText(this),b&&b.textOutline&&this.applyTextOutline(b.textOutline))}return this};a.prototype.dashstyleSetter=function(b){var d=this[\"stroke-width\"];\"inherit\"===d&&(d=1);if(b=b&&b.toLowerCase()){var c=\nb.replace(\"shortdashdotdot\",\"3,1,1,1,1,1,\").replace(\"shortdashdot\",\"3,1,1,1\").replace(\"shortdot\",\"1,1,\").replace(\"shortdash\",\"3,1,\").replace(\"longdash\",\"8,3,\").replace(/dot/g,\"1,3,\").replace(\"dash\",\"4,3,\").replace(/,$/,\"\").split(\",\");for(b=c.length;b--;)c[b]=\"\"+I(c[b])*x(d,NaN);b=c.join(\",\").replace(/NaN/g,\"none\");this.element.setAttribute(\"stroke-dasharray\",b)}};a.prototype.destroy=function(){var b=this,d=b.element||{},c=b.renderer,g=d.ownerSVGElement,m=c.isSVG&&\"SPAN\"===d.nodeName&&b.parentGroup||\nvoid 0;d.onclick=d.onmouseout=d.onmouseover=d.onmousemove=d.point=null;A(b);if(b.clipPath&&g){var e=b.clipPath;[].forEach.call(g.querySelectorAll(\"[clip-path],[CLIP-PATH]\"),function(b){-1f.width)f={width:0,\nheight:0}}else f=this.htmlGetBBox();g.isSVG&&(d=f.width,g=f.height,E&&(f.height=g={\"11px,17\":14,\"13px,20\":16}[(p||\"\")+\",\"+Math.round(g)]||g),c&&(E=c*q,f.width=Math.abs(g*Math.sin(E))+Math.abs(d*Math.cos(E)),f.height=Math.abs(g*Math.cos(E))+Math.abs(d*Math.sin(E))));if(D&&(\"\"===l||0]*>/g,\"\").replace(/</g,\"<\").replace(/>/g,\n\">\")};a.prototype.toFront=function(){var b=this.element;b.parentNode.appendChild(b);return this};a.prototype.translate=function(b,d){return this.attr({translateX:b,translateY:d})};a.prototype.updateShadows=function(b,d,c){var g=this.shadows;if(g)for(var m=g.length;m--;)c.call(g[m],\"height\"===b?Math.max(d-(g[m].cutHeight||0),0):\"d\"===b?this.d:d,b,g[m])};a.prototype.updateTransform=function(){var b=this.scaleX,d=this.scaleY,c=this.inverted,g=this.rotation,m=this.matrix,e=this.element,a=this.translateX||\n0,l=this.translateY||0;c&&(a+=this.width,l+=this.height);a=[\"translate(\"+a+\",\"+l+\")\"];t(m)&&a.push(\"matrix(\"+m.join(\",\")+\")\");c?a.push(\"rotate(90) scale(-1,1)\"):g&&a.push(\"rotate(\"+g+\" \"+x(this.rotationOriginX,e.getAttribute(\"x\"),0)+\" \"+x(this.rotationOriginY,e.getAttribute(\"y\")||0)+\")\");(t(b)||t(d))&&a.push(\"scale(\"+x(b,1)+\" \"+x(d,1)+\")\");a.length&&e.setAttribute(\"transform\",a.join(\" \"))};a.prototype.visibilitySetter=function(b,d,c){\"inherit\"===b?c.removeAttribute(d):this[d]!==b&&c.setAttribute(d,\nb);this[d]=b};a.prototype.xGetter=function(b){\"circle\"===this.element.nodeName&&(\"x\"===b?b=\"cx\":\"y\"===b&&(b=\"cy\"));return this._defaultGetter(b)};a.prototype.zIndexSetter=function(b,d){var c=this.renderer,g=this.parentGroup,m=(g||c).element||c.box,e=this.element;c=m===c.box;var a=!1;var l=this.added;var E;t(b)?(e.setAttribute(\"data-z-index\",b),b=+b,this[d]===b&&(l=!1)):t(this[d])&&e.removeAttribute(\"data-z-index\");this[d]=b;if(l){(b=this.zIndex)&&g&&(g.handleZ=!0);d=m.childNodes;for(E=d.length-1;0<=\nE&&!a;E--){g=d[E];l=g.getAttribute(\"data-z-index\");var r=!t(l);if(g!==e)if(0>b&&r&&!c&&!E)m.insertBefore(e,d[E]),a=!0;else if(I(l)<=b||r&&(!t(b)||0<=b))m.insertBefore(e,d[E+1]||null),a=!0}a||(m.insertBefore(e,d[c?3:0]||null),a=!0)}return a};return a}();a.prototype[\"stroke-widthSetter\"]=a.prototype.strokeSetter;a.prototype.yGetter=a.prototype.xGetter;a.prototype.matrixSetter=a.prototype.rotationOriginXSetter=a.prototype.rotationOriginYSetter=a.prototype.rotationSetter=a.prototype.scaleXSetter=a.prototype.scaleYSetter=\na.prototype.translateXSetter=a.prototype.translateYSetter=a.prototype.verticalAlignSetter=function(b,d){this[d]=b;this.doTransform=!0};\"\";return a});M(a,\"Core/Renderer/RendererRegistry.js\",[a[\"Core/Globals.js\"]],function(a){var v;(function(v){v.rendererTypes={};var u;v.getRendererType=function(a){void 0===a&&(a=u);return v.rendererTypes[a]||v.rendererTypes[u]};v.registerRendererType=function(y,z,H){v.rendererTypes[y]=z;if(!u||H)u=y,a.Renderer=z}})(v||(v={}));return v});M(a,\"Core/Renderer/SVG/SVGLabel.js\",\n[a[\"Core/Renderer/SVG/SVGElement.js\"],a[\"Core/Utilities.js\"]],function(a,u){var v=this&&this.__extends||function(){var a=function(k,e){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,e){c.__proto__=e}||function(c,e){for(var a in e)e.hasOwnProperty(a)&&(c[a]=e[a])};return a(k,e)};return function(k,e){function c(){this.constructor=k}a(k,e);k.prototype=null===e?Object.create(e):(c.prototype=e.prototype,new c)}}(),F=u.defined,y=u.extend,G=u.isNumber,H=u.merge,A=u.pick,q=u.removeEvent;\nreturn function(n){function k(e,c,a,f,w,p,B,t,J,C){var r=n.call(this)||this;r.paddingLeftSetter=r.paddingSetter;r.paddingRightSetter=r.paddingSetter;r.init(e,\"g\");r.textStr=c;r.x=a;r.y=f;r.anchorX=p;r.anchorY=B;r.baseline=J;r.className=C;r.addClass(\"button\"===C?\"highcharts-no-tooltip\":\"highcharts-label\");C&&r.addClass(\"highcharts-\"+C);r.text=e.text(void 0,0,0,t).attr({zIndex:1});var l;\"string\"===typeof w&&((l=/^url\\((.*?)\\)$/.test(w))||r.renderer.symbols[w])&&(r.symbolKey=w);r.bBox=k.emptyBBox;r.padding=\n3;r.baselineOffset=0;r.needsBox=e.styledMode||l;r.deferredAttr={};r.alignFactor=0;return r}v(k,n);k.prototype.alignSetter=function(e){e={left:0,center:.5,right:1}[e];e!==this.alignFactor&&(this.alignFactor=e,this.bBox&&G(this.xSetting)&&this.attr({x:this.xSetting}))};k.prototype.anchorXSetter=function(e,c){this.anchorX=e;this.boxAttr(c,Math.round(e)-this.getCrispAdjust()-this.xSetting)};k.prototype.anchorYSetter=function(e,c){this.anchorY=e;this.boxAttr(c,e-this.ySetting)};k.prototype.boxAttr=function(e,\nc){this.box?this.box.attr(e,c):this.deferredAttr[e]=c};k.prototype.css=function(e){if(e){var c={};e=H(e);k.textProps.forEach(function(a){\"undefined\"!==typeof e[a]&&(c[a]=e[a],delete e[a])});this.text.css(c);var h=\"width\"in c;\"fontSize\"in c||\"fontWeight\"in c?this.updateTextPadding():h&&this.updateBoxSize()}return a.prototype.css.call(this,e)};k.prototype.destroy=function(){q(this.element,\"mouseenter\");q(this.element,\"mouseleave\");this.text&&this.text.destroy();this.box&&(this.box=this.box.destroy());\na.prototype.destroy.call(this)};k.prototype.fillSetter=function(e,c){e&&(this.needsBox=!0);this.fill=e;this.boxAttr(c,e)};k.prototype.getBBox=function(){this.textStr&&0===this.bBox.width&&0===this.bBox.height&&this.updateBoxSize();var e=this.padding,c=A(this.paddingLeft,e);return{width:this.width,height:this.height,x:this.bBox.x-c,y:this.bBox.y-e}};k.prototype.getCrispAdjust=function(){return this.renderer.styledMode&&this.box?this.box.strokeWidth()%2/2:(this[\"stroke-width\"]?parseInt(this[\"stroke-width\"],\n10):0)%2/2};k.prototype.heightSetter=function(e){this.heightSetting=e};k.prototype.onAdd=function(){var e=this.textStr;this.text.add(this);this.attr({text:F(e)?e:\"\",x:this.x,y:this.y});this.box&&F(this.anchorX)&&this.attr({anchorX:this.anchorX,anchorY:this.anchorY})};k.prototype.paddingSetter=function(e,c){G(e)?e!==this[c]&&(this[c]=e,this.updateTextPadding()):this[c]=void 0};k.prototype.rSetter=function(e,c){this.boxAttr(c,e)};k.prototype.shadow=function(e){e&&!this.renderer.styledMode&&(this.updateBoxSize(),\nthis.box&&this.box.shadow(e));return this};k.prototype.strokeSetter=function(e,c){this.stroke=e;this.boxAttr(c,e)};k.prototype[\"stroke-widthSetter\"]=function(e,c){e&&(this.needsBox=!0);this[\"stroke-width\"]=e;this.boxAttr(c,e)};k.prototype[\"text-alignSetter\"]=function(e){this.textAlign=e};k.prototype.textSetter=function(e){\"undefined\"!==typeof e&&this.text.attr({text:e});this.updateTextPadding()};k.prototype.updateBoxSize=function(){var e=this.text.element.style,c={},a=this.padding,f=this.bBox=G(this.widthSetting)&&\nG(this.heightSetting)&&!this.textAlign||!F(this.text.textStr)?k.emptyBBox:this.text.getBBox();this.width=this.getPaddedWidth();this.height=(this.heightSetting||f.height||0)+2*a;e=this.renderer.fontMetrics(e&&e.fontSize,this.text);this.baselineOffset=a+Math.min((this.text.firstLineMetrics||e).b,f.height||Infinity);this.heightSetting&&(this.baselineOffset+=(this.heightSetting-e.h)/2);this.needsBox&&(this.box||(a=this.box=this.symbolKey?this.renderer.symbol(this.symbolKey):this.renderer.rect(),a.addClass((\"button\"===\nthis.className?\"\":\"highcharts-label-box\")+(this.className?\" highcharts-\"+this.className+\"-box\":\"\")),a.add(this)),a=this.getCrispAdjust(),c.x=a,c.y=(this.baseline?-this.baselineOffset:0)+a,c.width=Math.round(this.width),c.height=Math.round(this.height),this.box.attr(y(c,this.deferredAttr)),this.deferredAttr={})};k.prototype.updateTextPadding=function(){var a=this.text;this.updateBoxSize();var c=this.baseline?0:this.baselineOffset,h=A(this.paddingLeft,this.padding);F(this.widthSetting)&&this.bBox&&\n(\"center\"===this.textAlign||\"right\"===this.textAlign)&&(h+={center:.5,right:1}[this.textAlign]*(this.widthSetting-this.bBox.width));if(h!==a.x||c!==a.y)a.attr(\"x\",h),a.hasBoxWidthChanged&&(this.bBox=a.getBBox(!0)),\"undefined\"!==typeof c&&a.attr(\"y\",c);a.x=h;a.y=c};k.prototype.widthSetter=function(a){this.widthSetting=G(a)?a:void 0};k.prototype.getPaddedWidth=function(){var a=this.padding,c=A(this.paddingLeft,a);a=A(this.paddingRight,a);return(this.widthSetting||this.bBox.width||0)+c+a};k.prototype.xSetter=\nfunction(a){this.x=a;this.alignFactor&&(a-=this.alignFactor*this.getPaddedWidth(),this[\"forceAnimate:x\"]=!0);this.xSetting=Math.round(a);this.attr(\"translateX\",this.xSetting)};k.prototype.ySetter=function(a){this.ySetting=this.y=Math.round(a);this.attr(\"translateY\",this.ySetting)};k.emptyBBox={width:0,height:0,x:0,y:0};k.textProps=\"color direction fontFamily fontSize fontStyle fontWeight lineHeight textAlign textDecoration textOutline textOverflow width\".split(\" \");return k}(a)});M(a,\"Core/Renderer/SVG/Symbols.js\",\n[a[\"Core/Utilities.js\"]],function(a){function v(a,q,n,k,e){var c=[];if(e){var h=e.start||0,f=H(e.r,n);n=H(e.r,k||n);var w=(e.end||0)-.001;k=e.innerR;var p=H(e.open,.001>Math.abs((e.end||0)-h-2*Math.PI)),B=Math.cos(h),t=Math.sin(h),J=Math.cos(w),C=Math.sin(w);h=H(e.longArc,.001>w-h-Math.PI?0:1);c.push([\"M\",a+f*B,q+n*t],[\"A\",f,n,0,h,H(e.clockwise,1),a+f*J,q+n*C]);y(k)&&c.push(p?[\"M\",a+k*J,q+k*C]:[\"L\",a+k*J,q+k*C],[\"A\",k,k,0,h,y(e.clockwise)?1-e.clockwise:0,a+k*B,q+k*t]);p||c.push([\"Z\"])}return c}function z(a,\nq,n,k,e){return e&&e.r?F(a,q,n,k,e):[[\"M\",a,q],[\"L\",a+n,q],[\"L\",a+n,q+k],[\"L\",a,q+k],[\"Z\"]]}function F(a,q,n,k,e){e=e&&e.r||0;return[[\"M\",a+e,q],[\"L\",a+n-e,q],[\"C\",a+n,q,a+n,q,a+n,q+e],[\"L\",a+n,q+k-e],[\"C\",a+n,q+k,a+n,q+k,a+n-e,q+k],[\"L\",a+e,q+k],[\"C\",a,q+k,a,q+k,a,q+k-e],[\"L\",a,q+e],[\"C\",a,q,a,q,a+e,q]]}var y=a.defined,G=a.isNumber,H=a.pick;return{arc:v,callout:function(a,q,n,k,e){var c=Math.min(e&&e.r||0,n,k),h=c+6,f=e&&e.anchorX;e=e&&e.anchorY||0;var w=F(a,q,n,k,{r:c});if(!G(f))return w;a+f>=n?\ne>q+h&&e=a+f?e>q+h&&ek&&f>a+h&&fe&&f>a+h&&f/g,t=[f,this.ellipsis,this.noWrap,this.textLineHeight,this.textOutline,this.fontSize,this.width].join();if(t!==e.textCache){e.textCache=t;delete e.actualWidth;for(t=p.length;t--;)c.removeChild(p[t]);k||this.ellipsis||this.width||-1!==f.indexOf(\" \")&&(!this.noWrap||B.test(f))?\"\"!==f&&(h&&h.appendChild(c),f=new a(f),this.modifyTree(f.nodes),f.addToDOM(e.element),this.modifyDOM(),this.ellipsis&&-1!==(c.textContent||\"\").indexOf(\"\\u2026\")&&e.attr(\"title\",\nthis.unescapeEntities(e.textStr||\"\",[\"<\",\">\"])),h&&h.removeChild(c)):c.appendChild(v.createTextNode(this.unescapeEntities(f)));A(this.textOutline)&&e.applyTextOutline&&e.applyTextOutline(this.textOutline)}};k.prototype.modifyDOM=function(){var a=this,c=this.svgElement,h=H(c.element,\"x\");c.firstLineMetrics=void 0;for(var f;f=c.element.firstChild;)if(/^[\\s\\u200B]*$/.test(f.textContent||\" \"))c.element.removeChild(f);else break;[].forEach.call(c.element.querySelectorAll(\"tspan.highcharts-br\"),function(e,\np){e.nextSibling&&e.previousSibling&&(0===p&&1===e.previousSibling.nodeType&&(c.firstLineMetrics=c.renderer.fontMetrics(void 0,e.previousSibling)),H(e,{dy:a.getLineHeight(e.nextSibling),x:h}))});var k=this.width||0;if(k){var p=function(e,p){var f=e.textContent||\"\",r=f.replace(/([^\\^])-/g,\"$1- \").split(\" \"),l=!a.noWrap&&(1k){for(;r<=l;)b=Math.ceil((r+l)/2),h&&(g=p(h,b)),m=d(b,g&&g.length-1),r===l?r=l+1:m>k?l=b-1:r=b;0===l?a.textContent=\"\":c&&l===c.length-1||(a.textContent=g||p(c||h,b))}h&&h.splice(0,b);e.actualWidth=m;e.rotation=w};k.prototype.unescapeEntities=\nfunction(a,c){q(this.renderer.escapes,function(e,f){c&&-1!==c.indexOf(e)||(a=a.toString().replace(new RegExp(e,\"g\"),f))});return a};return k}()});M(a,\"Core/Renderer/SVG/SVGRenderer.js\",[a[\"Core/Renderer/HTML/AST.js\"],a[\"Core/Color/Color.js\"],a[\"Core/Globals.js\"],a[\"Core/Renderer/RendererRegistry.js\"],a[\"Core/Renderer/SVG/SVGElement.js\"],a[\"Core/Renderer/SVG/SVGLabel.js\"],a[\"Core/Renderer/SVG/Symbols.js\"],a[\"Core/Renderer/SVG/TextBuilder.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y,G,H,A,q){var n=\nz.charts,k=z.deg2rad,e=z.doc,c=z.isFirefox,h=z.isMS,f=z.isWebKit,w=z.noop,p=z.SVG_NS,B=z.symbolSizes,t=z.win,J=q.addEvent,C=q.attr,r=q.createElement,l=q.css,b=q.defined,g=q.destroyObjectProperties,d=q.extend,m=q.isArray,D=q.isNumber,x=q.isObject,I=q.isString,P=q.merge,v=q.pick,O=q.pInt,U=q.uniqueKey,Y;z=function(){function L(b,d,a,c,g,m,e){this.width=this.url=this.style=this.isSVG=this.imgCount=this.height=this.gradients=this.globalAnimation=this.defs=this.chartIndex=this.cacheKeys=this.cache=this.boxWrapper=\nthis.box=this.alignedObjects=void 0;this.init(b,d,a,c,g,m,e)}L.prototype.init=function(b,d,a,g,m,E,L){var r=this.createElement(\"svg\").attr({version:\"1.1\",\"class\":\"highcharts-root\"}),K=r.element;L||r.css(this.getStyle(g));b.appendChild(K);C(b,\"dir\",\"ltr\");-1===b.innerHTML.indexOf(\"xmlns\")&&C(K,\"xmlns\",this.SVG_NS);this.isSVG=!0;this.box=K;this.boxWrapper=r;this.alignedObjects=[];this.url=this.getReferenceURL();this.createElement(\"desc\").add().element.appendChild(e.createTextNode(\"Created with Highcharts 9.3.3\"));\nthis.defs=this.createElement(\"defs\").add();this.allowHTML=E;this.forExport=m;this.styledMode=L;this.gradients={};this.cache={};this.cacheKeys=[];this.imgCount=0;this.setSize(d,a,!1);var p;c&&b.getBoundingClientRect&&(d=function(){l(b,{left:0,top:0});p=b.getBoundingClientRect();l(b,{left:Math.ceil(p.left)-p.left+\"px\",top:Math.ceil(p.top)-p.top+\"px\"})},d(),this.unSubPixelFix=J(t,\"resize\",d))};L.prototype.definition=function(b){return(new a([b])).addToDOM(this.defs.element)};L.prototype.getReferenceURL=\nfunction(){if((c||f)&&e.getElementsByTagName(\"base\").length){if(!b(Y)){var d=U();d=(new a([{tagName:\"svg\",attributes:{width:8,height:8},children:[{tagName:\"defs\",children:[{tagName:\"clipPath\",attributes:{id:d},children:[{tagName:\"rect\",attributes:{width:4,height:4}}]}]},{tagName:\"rect\",attributes:{id:\"hitme\",width:8,height:8,\"clip-path\":\"url(#\"+d+\")\",fill:\"rgba(0,0,0,0.001)\"}}]}])).addToDOM(e.body);l(d,{position:\"fixed\",top:0,left:0,zIndex:9E5});var g=e.elementFromPoint(6,6);Y=\"hitme\"===(g&&g.id);\ne.body.removeChild(d)}if(Y)return t.location.href.split(\"#\")[0].replace(/<[^>]*>/g,\"\").replace(/([\\('\\)])/g,\"\\\\$1\").replace(/ /g,\"%20\")}return\"\"};L.prototype.getStyle=function(b){return this.style=d({fontFamily:'\"Lucida Grande\", \"Lucida Sans Unicode\", Arial, Helvetica, sans-serif',fontSize:\"12px\"},b)};L.prototype.setStyle=function(b){this.boxWrapper.css(this.getStyle(b))};L.prototype.isHidden=function(){return!this.boxWrapper.getBBox().width};L.prototype.destroy=function(){var b=this.defs;this.box=\nnull;this.boxWrapper=this.boxWrapper.destroy();g(this.gradients||{});this.gradients=null;b&&(this.defs=b.destroy());this.unSubPixelFix&&this.unSubPixelFix();return this.alignedObjects=null};L.prototype.createElement=function(b){var d=new this.Element;d.init(this,b);return d};L.prototype.getRadialAttr=function(b,d){return{cx:b[0]-b[2]/2+(d.cx||0)*b[2],cy:b[1]-b[2]/2+(d.cy||0)*b[2],r:(d.r||0)*b[2]}};L.prototype.buildText=function(b){(new A(b)).buildSVG()};L.prototype.getContrast=function(b){b=u.parse(b).rgba;\nb[0]*=1;b[1]*=1.2;b[2]*=.5;return 459b?b+3:Math.round(1.2*b);return{h:d,b:Math.round(.8*d),f:b}};L.prototype.rotCorr=function(b,d,\na){var c=b;d&&a&&(c=Math.max(c*Math.cos(d*k),4));return{x:-b/3*Math.sin(d*k),y:c}};L.prototype.pathToSegments=function(b){for(var d=[],a=[],c={A:8,C:7,H:2,L:3,M:3,Q:5,S:5,T:3,V:2},g=0;g\":\">\",\"'\":\"'\",'\"':\""\"},symbols:H,draw:w});F.registerRendererType(\"svg\",z,!0);\"\";return z});M(a,\"Core/Renderer/HTML/HTMLElement.js\",[a[\"Core/Globals.js\"],a[\"Core/Renderer/SVG/SVGElement.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=this&&this.__extends||function(){var a=function(c,e){a=Object.setPrototypeOf||{__proto__:[]}instanceof\nArray&&function(a,c){a.__proto__=c}||function(a,c){for(var e in c)c.hasOwnProperty(e)&&(a[e]=c[e])};return a(c,e)};return function(c,e){function p(){this.constructor=c}a(c,e);c.prototype=null===e?Object.create(e):(p.prototype=e.prototype,new p)}}(),y=a.isFirefox,G=a.isMS,H=a.isWebKit,A=a.win,q=z.css,n=z.defined,k=z.extend,e=z.pick,c=z.pInt;return function(a){function h(){return null!==a&&a.apply(this,arguments)||this}v(h,a);h.compose=function(a){if(-1===h.composedClasses.indexOf(a)){h.composedClasses.push(a);\nvar c=h.prototype,e=a.prototype;e.getSpanCorrection=c.getSpanCorrection;e.htmlCss=c.htmlCss;e.htmlGetBBox=c.htmlGetBBox;e.htmlUpdateTransform=c.htmlUpdateTransform;e.setSpanRotation=c.setSpanRotation}return a};h.prototype.getSpanCorrection=function(a,c,e){this.xCorr=-a*e;this.yCorr=-c};h.prototype.htmlCss=function(a){var c=\"SPAN\"===this.element.tagName&&a&&\"width\"in a,h=e(c&&a.width,void 0);if(c){delete a.width;this.textWidth=h;var f=!0}a&&\"ellipsis\"===a.textOverflow&&(a.whiteSpace=\"nowrap\",a.overflow=\n\"hidden\");this.styles=k(this.styles,a);q(this.element,a);f&&this.htmlUpdateTransform();return this};h.prototype.htmlGetBBox=function(){var a=this.element;return{x:a.offsetLeft,y:a.offsetTop,width:a.offsetWidth,height:a.offsetHeight}};h.prototype.htmlUpdateTransform=function(){if(this.added){var a=this.renderer,e=this.element,h=this.translateX||0,f=this.translateY||0,k=this.x||0,C=this.y||0,r=this.textAlign||\"left\",l={left:0,center:.5,right:1}[r],b=this.styles;b=b&&b.whiteSpace;q(e,{marginLeft:h,marginTop:f});\n!a.styledMode&&this.shadows&&this.shadows.forEach(function(b){q(b,{marginLeft:h+1,marginTop:f+1})});this.inverted&&[].forEach.call(e.childNodes,function(b){a.invertChild(b,e)});if(\"SPAN\"===e.tagName){var g=this.rotation,d=this.textWidth&&c(this.textWidth),m=[g,r,e.innerHTML,this.textWidth,this.textAlign].join(),D=void 0;D=!1;if(d!==this.oldTextWidth){if(this.textPxLength)var x=this.textPxLength;else q(e,{width:\"\",whiteSpace:b||\"nowrap\"}),x=e.offsetWidth;(d>this.oldTextWidth||x>d)&&(/[ \\-]/.test(e.textContent||\ne.innerText)||\"ellipsis\"===e.style.textOverflow)&&(q(e,{width:x>d||g?d+\"px\":\"auto\",display:\"block\",whiteSpace:b||\"normal\"}),this.oldTextWidth=d,D=!0)}this.hasBoxWidthChanged=D;m!==this.cTT&&(D=a.fontMetrics(e.style.fontSize,e).b,!n(g)||g===(this.oldRotation||0)&&r===this.oldAlign||this.setSpanRotation(g,l,D),this.getSpanCorrection(!n(g)&&this.textPxLength||e.offsetWidth,D,l,g,r));q(e,{left:k+(this.xCorr||0)+\"px\",top:C+(this.yCorr||0)+\"px\"});this.cTT=m;this.oldRotation=g;this.oldAlign=r}}else this.alignOnAdd=\n!0};h.prototype.setSpanRotation=function(a,c,e){var h={},p=G&&!/Edge/.test(A.navigator.userAgent)?\"-ms-transform\":H?\"-webkit-transform\":y?\"MozTransform\":A.opera?\"-o-transform\":void 0;p&&(h[p]=h.transform=\"rotate(\"+a+\"deg)\",h[p+(y?\"Origin\":\"-origin\")]=h.transformOrigin=100*c+\"% \"+e+\"px\",q(this.element,h))};h.composedClasses=[];return h}(u)});M(a,\"Core/Renderer/HTML/HTMLRenderer.js\",[a[\"Core/Renderer/HTML/AST.js\"],a[\"Core/Renderer/SVG/SVGElement.js\"],a[\"Core/Renderer/SVG/SVGRenderer.js\"],a[\"Core/Utilities.js\"]],\nfunction(a,u,z,F){var v=this&&this.__extends||function(){var a=function(k,e){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,e){a.__proto__=e}||function(a,e){for(var c in e)e.hasOwnProperty(c)&&(a[c]=e[c])};return a(k,e)};return function(k,e){function c(){this.constructor=k}a(k,e);k.prototype=null===e?Object.create(e):(c.prototype=e.prototype,new c)}}(),G=F.attr,H=F.createElement,A=F.extend,q=F.pick;return function(n){function k(){return null!==n&&n.apply(this,arguments)||this}\nv(k,n);k.compose=function(a){-1===k.composedClasses.indexOf(a)&&(k.composedClasses.push(a),a.prototype.html=k.prototype.html);return a};k.prototype.html=function(e,c,h){var f=this.createElement(\"span\"),k=f.element,p=f.renderer,n=p.isSVG,t=function(a,c){[\"opacity\",\"visibility\"].forEach(function(e){a[e+\"Setter\"]=function(l,b,g){var d=a.div?a.div.style:c;u.prototype[e+\"Setter\"].call(this,l,b,g);d&&(d[b]=l)}});a.addedSetters=!0};f.textSetter=function(c){c!==this.textStr&&(delete this.bBox,delete this.oldTextWidth,\na.setElementHTML(this.element,q(c,\"\")),this.textStr=c,f.doTransform=!0)};n&&t(f,f.element.style);f.xSetter=f.ySetter=f.alignSetter=f.rotationSetter=function(a,c){\"align\"===c?f.alignValue=f.textAlign=a:f[c]=a;f.doTransform=!0};f.afterSetters=function(){this.doTransform&&(this.htmlUpdateTransform(),this.doTransform=!1)};f.attr({text:e,x:Math.round(c),y:Math.round(h)}).css({position:\"absolute\"});p.styledMode||f.css({fontFamily:this.style.fontFamily,fontSize:this.style.fontSize});k.style.whiteSpace=\"nowrap\";\nf.css=f.htmlCss;n&&(f.add=function(a){var c=p.box.parentNode,e=[];if(this.parentGroup=a){var l=a.div;if(!l){for(;a;)e.push(a),a=a.parentGroup;e.reverse().forEach(function(b){function a(d,a){b[a]=d;\"translateX\"===a?r.left=d+\"px\":r.top=d+\"px\";b.doTransform=!0}var d=G(b.element,\"class\"),m=b.styles||{};l=b.div=b.div||H(\"div\",d?{className:d}:void 0,{position:\"absolute\",left:(b.translateX||0)+\"px\",top:(b.translateY||0)+\"px\",display:b.display,opacity:b.opacity,cursor:m.cursor,pointerEvents:m.pointerEvents,\nvisibility:b.visibility},l||c);var r=l.style;A(b,{classSetter:function(b){return function(d){this.element.setAttribute(\"class\",d);b.className=d}}(l),on:function(){e[0].div&&f.on.apply({element:e[0].div,onEvents:b.onEvents},arguments);return b},translateXSetter:a,translateYSetter:a});b.addedSetters||t(b)})}}else l=c;l.appendChild(k);f.added=!0;f.alignOnAdd&&f.htmlUpdateTransform();return f});return f};k.composedClasses=[];return k}(z)});M(a,\"Core/Axis/AxisDefaults.js\",[],function(){var a;(function(a){a.defaultXAxisOptions=\n{alignTicks:!0,allowDecimals:void 0,panningEnabled:!0,zIndex:2,zoomEnabled:!0,dateTimeLabelFormats:{millisecond:{main:\"%H:%M:%S.%L\",range:!1},second:{main:\"%H:%M:%S\",range:!1},minute:{main:\"%H:%M\",range:!1},hour:{main:\"%H:%M\",range:!1},day:{main:\"%e. %b\"},week:{main:\"%e. %b\"},month:{main:\"%b '%y\"},year:{main:\"%Y\"}},endOnTick:!1,gridLineDashStyle:\"Solid\",gridZIndex:1,labels:{autoRotation:void 0,autoRotationLimit:80,distance:void 0,enabled:!0,indentation:10,overflow:\"justify\",padding:5,reserveSpace:void 0,\nrotation:void 0,staggerLines:0,step:0,useHTML:!1,x:0,zIndex:7,style:{color:\"#666666\",cursor:\"default\",fontSize:\"11px\"}},maxPadding:.01,minorGridLineDashStyle:\"Solid\",minorTickLength:2,minorTickPosition:\"outside\",minPadding:.01,offset:void 0,opposite:!1,reversed:void 0,reversedStacks:!1,showEmpty:!0,showFirstLabel:!0,showLastLabel:!0,startOfWeek:1,startOnTick:!1,tickLength:10,tickPixelInterval:100,tickmarkPlacement:\"between\",tickPosition:\"outside\",title:{align:\"middle\",rotation:0,useHTML:!1,x:0,y:0,\nstyle:{color:\"#666666\"}},type:\"linear\",uniqueNames:!0,visible:!0,minorGridLineColor:\"#f2f2f2\",minorGridLineWidth:1,minorTickColor:\"#999999\",lineColor:\"#ccd6eb\",lineWidth:1,gridLineColor:\"#e6e6e6\",gridLineWidth:void 0,tickColor:\"#ccd6eb\"};a.defaultYAxisOptions={reversedStacks:!0,endOnTick:!0,maxPadding:.05,minPadding:.05,tickPixelInterval:72,showLastLabel:!0,labels:{x:-8},startOnTick:!0,title:{rotation:270,text:\"Values\"},stackLabels:{animation:{},allowOverlap:!1,enabled:!1,crop:!0,overflow:\"justify\",\nformatter:function(){var a=this.axis.chart.numberFormatter;return a(this.total,-1)},style:{color:\"#000000\",fontSize:\"11px\",fontWeight:\"bold\",textOutline:\"1px contrast\"}},gridLineWidth:1,lineWidth:0};a.defaultLeftAxisOptions={labels:{x:-15},title:{rotation:270}};a.defaultRightAxisOptions={labels:{x:15},title:{rotation:90}};a.defaultBottomAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}};a.defaultTopAxisOptions={labels:{autoRotation:[-45],x:0},margin:15,title:{rotation:0}}})(a||\n(a={}));return a});M(a,\"Core/Foundation.js\",[a[\"Core/Utilities.js\"]],function(a){var v=a.addEvent,z=a.isFunction,F=a.objectEach,y=a.removeEvent,G;(function(a){a.registerEventOptions=function(a,q){a.eventOptions=a.eventOptions||{};F(q.events,function(n,k){a.eventOptions[k]!==n&&(a.eventOptions[k]&&(y(a,k,a.eventOptions[k]),delete a.eventOptions[k]),z(n)&&(a.eventOptions[k]=n,v(a,k,n)))})}})(G||(G={}));return G});M(a,\"Core/Axis/Tick.js\",[a[\"Core/FormatUtilities.js\"],a[\"Core/Globals.js\"],a[\"Core/Utilities.js\"]],\nfunction(a,u,z){var v=u.deg2rad,y=z.clamp,G=z.correctFloat,H=z.defined,A=z.destroyObjectProperties,q=z.extend,n=z.fireEvent,k=z.isNumber,e=z.merge,c=z.objectEach,h=z.pick;u=function(){function f(a,c,e,h,f){this.isNewLabel=this.isNew=!0;this.axis=a;this.pos=c;this.type=e||\"\";this.parameters=f||{};this.tickmarkOffset=this.parameters.tickmarkOffset;this.options=this.parameters.options;n(this,\"init\");e||h||this.addLabel()}f.prototype.addLabel=function(){var c=this,e=c.axis,f=e.options,t=e.chart,J=e.categories,\nC=e.logarithmic,r=e.names,l=c.pos,b=h(c.options&&c.options.labels,f.labels),g=e.tickPositions,d=l===g[0],m=l===g[g.length-1],D=(!b.step||1===b.step)&&1===e.tickInterval;g=g.info;var x=c.label,I;J=this.parameters.category||(J?h(J[l],r[l],l):l);C&&k(J)&&(J=G(C.lin2log(J)));if(e.dateTime)if(g){var P=t.time.resolveDTLFormat(f.dateTimeLabelFormats[!f.grid&&g.higherRanks[l]||g.unitName]);var v=P.main}else k(J)&&(v=e.dateTime.getXDateFormat(J,f.dateTimeLabelFormats||{}));c.isFirst=d;c.isLast=m;var O={axis:e,\nchart:t,dateTimeLabelFormat:v,isFirst:d,isLast:m,pos:l,tick:c,tickPositionInfo:g,value:J};n(this,\"labelFormat\",O);var u=function(d){return b.formatter?b.formatter.call(d,d):b.format?(d.text=e.defaultLabelFormatter.call(d),a.format(b.format,d,t)):e.defaultLabelFormatter.call(d,d)};f=u.call(O,O);var A=P&&P.list;c.shortenLabel=A?function(){for(I=0;Ib&&f-g*dn&&(w=Math.round((k-f)/Math.cos(b*v)));else if(k=f+(1-g)*d,f-g*dn&&(x=n-a.x+x*g,I=-1),x=Math.min(m,x),xx||c.autoRotation&&(l.styles||{}).width)w=x;w&&(this.shortenLabel?this.shortenLabel():(D.width=Math.floor(w)+\"px\",(e.style||{}).textOverflow||(D.textOverflow=\n\"ellipsis\"),l.css(D)))};f.prototype.moveLabel=function(a,e){var h=this,f=h.label,k=h.axis,p=k.reversed,r=!1;f&&f.textStr===a?(h.movedLabel=f,r=!0,delete h.label):c(k.ticks,function(b){r||b.isNew||b===h||!b.label||b.label.textStr!==a||(h.movedLabel=b.label,r=!0,b.labelPos=h.movedLabel.xy,delete b.label)});if(!r&&(h.labelPos||f)){var l=h.labelPos||f.xy;f=k.horiz?p?0:k.width+k.left:l.x;k=k.horiz?l.y:p?k.width+k.left:0;h.movedLabel=h.createLabel({x:f,y:k},a,e);h.movedLabel&&h.movedLabel.attr({opacity:0})}};\nf.prototype.render=function(a,c,e){var f=this.axis,k=f.horiz,p=this.pos,r=h(this.tickmarkOffset,f.tickmarkOffset);p=this.getPosition(k,p,r,c);r=p.x;var l=p.y;f=k&&r===f.pos+f.len||!k&&l===f.pos?-1:1;k=h(e,this.label&&this.label.newOpacity,1);e=h(e,1);this.isActive=!0;this.renderGridLine(c,e,f);this.renderMark(p,e,f);this.renderLabel(p,c,k,a);this.isNew=!1;n(this,\"afterRender\")};f.prototype.renderGridLine=function(a,c,e){var f=this.axis,k=f.options,p={},r=this.pos,l=this.type,b=h(this.tickmarkOffset,\nf.tickmarkOffset),g=f.chart.renderer,d=this.gridLine,m=k.gridLineWidth,D=k.gridLineColor,x=k.gridLineDashStyle;\"minor\"===this.type&&(m=k.minorGridLineWidth,D=k.minorGridLineColor,x=k.minorGridLineDashStyle);d||(f.chart.styledMode||(p.stroke=D,p[\"stroke-width\"]=m||0,p.dashstyle=x),l||(p.zIndex=1),a&&(c=0),this.gridLine=d=g.path().attr(p).addClass(\"highcharts-\"+(l?l+\"-\":\"\")+\"grid-line\").add(f.gridGroup));if(d&&(e=f.getPlotLinePath({value:r+b,lineWidth:d.strokeWidth()*e,force:\"pass\",old:a})))d[a||this.isNew?\n\"attr\":\"animate\"]({d:e,opacity:c})};f.prototype.renderMark=function(a,c,e){var f=this.axis,k=f.options,p=f.chart.renderer,r=this.type,l=f.tickSize(r?r+\"Tick\":\"tick\"),b=a.x;a=a.y;var g=h(k[\"minor\"!==r?\"tickWidth\":\"minorTickWidth\"],!r&&f.isXAxis?1:0);k=k[\"minor\"!==r?\"tickColor\":\"minorTickColor\"];var d=this.mark,m=!d;l&&(f.opposite&&(l[0]=-l[0]),d||(this.mark=d=p.path().addClass(\"highcharts-\"+(r?r+\"-\":\"\")+\"tick\").add(f.axisGroup),f.chart.styledMode||d.attr({stroke:k,\"stroke-width\":g})),d[m?\"attr\":\"animate\"]({d:this.getMarkPath(b,\na,l[0],d.strokeWidth()*e,f.horiz,p),opacity:c}))};f.prototype.renderLabel=function(a,c,e,f){var p=this.axis,n=p.horiz,r=p.options,l=this.label,b=r.labels,g=b.step;p=h(this.tickmarkOffset,p.tickmarkOffset);var d=a.x;a=a.y;var m=!0;l&&k(d)&&(l.xy=a=this.getLabelPosition(d,a,l,n,b,p,f,g),this.isFirst&&!this.isLast&&!r.showFirstLabel||this.isLast&&!this.isFirst&&!r.showLastLabel?m=!1:!n||b.step||b.rotation||c||0===e||this.handleOverflow(a),g&&f%g&&(m=!1),m&&k(a.y)?(a.opacity=e,l[this.isNewLabel?\"attr\":\n\"animate\"](a),this.isNewLabel=!1):(l.attr(\"y\",-9999),this.isNewLabel=!0))};f.prototype.replaceMovedLabel=function(){var a=this.label,c=this.axis,e=c.reversed;if(a&&!this.isNew){var f=c.horiz?e?c.left:c.width+c.left:a.xy.x;e=c.horiz?a.xy.y:e?c.width+c.top:c.top;a.animate({x:f,y:e,opacity:0},void 0,a.destroy);delete this.label}c.isDirty=!0;this.label=this.movedLabel;delete this.movedLabel};return f}();\"\";return u});M(a,\"Core/Axis/Axis.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Axis/AxisDefaults.js\"],\na[\"Core/Color/Color.js\"],a[\"Core/DefaultOptions.js\"],a[\"Core/Foundation.js\"],a[\"Core/Globals.js\"],a[\"Core/Axis/Tick.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y,G,H,A){var q=a.animObject,n=F.defaultOptions,k=y.registerEventOptions,e=G.deg2rad,c=A.arrayMax,h=A.arrayMin,f=A.clamp,w=A.correctFloat,p=A.defined,B=A.destroyObjectProperties,t=A.erase,J=A.error,C=A.extend,r=A.fireEvent,l=A.getMagnitude,b=A.isArray,g=A.isNumber,d=A.isString,m=A.merge,D=A.normalizeTickInterval,x=A.objectEach,I=A.pick,P=\nA.relativeLength,v=A.removeEvent,O=A.splat,U=A.syncTimeout;a=function(){function a(b,d){this.zoomEnabled=this.width=this.visible=this.userOptions=this.translationSlope=this.transB=this.transA=this.top=this.ticks=this.tickRotCorr=this.tickPositions=this.tickmarkOffset=this.tickInterval=this.tickAmount=this.side=this.series=this.right=this.positiveValuesOnly=this.pos=this.pointRangePadding=this.pointRange=this.plotLinesAndBandsGroups=this.plotLinesAndBands=this.paddedTicks=this.overlap=this.options=\nthis.offset=this.names=this.minPixelPadding=this.minorTicks=this.minorTickInterval=this.min=this.maxLabelLength=this.max=this.len=this.left=this.labelFormatter=this.labelEdge=this.isLinked=this.height=this.hasVisibleSeries=this.hasNames=this.eventOptions=this.coll=this.closestPointRange=this.chart=this.categories=this.bottom=this.alternateBands=void 0;this.init(b,d)}a.prototype.init=function(b,d){var a=d.isX;this.chart=b;this.horiz=b.inverted&&!this.isZAxis?!a:a;this.isXAxis=a;this.coll=this.coll||\n(a?\"xAxis\":\"yAxis\");r(this,\"init\",{userOptions:d});this.opposite=I(d.opposite,this.opposite);this.side=I(d.side,this.side,this.horiz?this.opposite?0:2:this.opposite?1:3);this.setOptions(d);var c=this.options,e=c.labels,m=c.type;this.userOptions=d;this.minPixelPadding=0;this.reversed=I(c.reversed,this.reversed);this.visible=c.visible;this.zoomEnabled=c.zoomEnabled;this.hasNames=\"category\"===m||!0===c.categories;this.categories=c.categories||this.hasNames;this.names||(this.names=[],this.names.keys=\n{});this.plotLinesAndBandsGroups={};this.positiveValuesOnly=!!this.logarithmic;this.isLinked=p(c.linkedTo);this.ticks={};this.labelEdge=[];this.minorTicks={};this.plotLinesAndBands=[];this.alternateBands={};this.len=0;this.minRange=this.userMinRange=c.minRange||c.maxZoom;this.range=c.range;this.offset=c.offset||0;this.min=this.max=null;d=I(c.crosshair,O(b.options.tooltip.crosshairs)[a?0:1]);this.crosshair=!0===d?{}:d;-1===b.axes.indexOf(this)&&(a?b.axes.splice(b.xAxis.length,0,this):b.axes.push(this),\nb[this.coll].push(this));this.series=this.series||[];b.inverted&&!this.isZAxis&&a&&\"undefined\"===typeof this.reversed&&(this.reversed=!0);this.labelRotation=g(e.rotation)?e.rotation:void 0;k(this,c);r(this,\"afterInit\")};a.prototype.setOptions=function(b){this.options=m(u.defaultXAxisOptions,\"yAxis\"===this.coll&&u.defaultYAxisOptions,[u.defaultTopAxisOptions,u.defaultRightAxisOptions,u.defaultBottomAxisOptions,u.defaultLeftAxisOptions][this.side],m(n[this.coll],b));r(this,\"afterSetOptions\",{userOptions:b})};\na.prototype.defaultLabelFormatter=function(b){var d=this.axis;b=this.chart.numberFormatter;var a=g(this.value)?this.value:NaN,c=d.chart.time,e=this.dateTimeLabelFormat,m=n.lang,l=m.numericSymbols;m=m.numericSymbolMagnitude||1E3;var f=d.logarithmic?Math.abs(a):d.tickInterval,h=l&&l.length;if(d.categories)var r=\"\"+this.value;else if(e)r=c.dateFormat(e,a);else if(h&&1E3<=f)for(;h--&&\"undefined\"===typeof r;)d=Math.pow(m,h+1),f>=d&&0===10*a%d&&null!==l[h]&&0!==a&&(r=b(a/d,-1)+l[h]);\"undefined\"===typeof r&&\n(r=1E4<=Math.abs(a)?b(a,-1):b(a,-1,void 0,\"\"));return r};a.prototype.getSeriesExtremes=function(){var b=this,d=b.chart,a;r(this,\"getSeriesExtremes\",null,function(){b.hasVisibleSeries=!1;b.dataMin=b.dataMax=b.threshold=null;b.softThreshold=!b.isXAxis;b.stacking&&b.stacking.buildStacks();b.series.forEach(function(c){if(c.visible||!d.options.chart.ignoreHiddenSeries){var e=c.options,m=e.threshold;b.hasVisibleSeries=!0;b.positiveValuesOnly&&0>=m&&(m=null);if(b.isXAxis){if(e=c.xData,e.length){e=b.logarithmic?\ne.filter(b.validatePositiveValue):e;a=c.getXExtremes(e);var l=a.min;var f=a.max;g(l)||l instanceof Date||(e=e.filter(g),a=c.getXExtremes(e),l=a.min,f=a.max);e.length&&(b.dataMin=Math.min(I(b.dataMin,l),l),b.dataMax=Math.max(I(b.dataMax,f),f))}}else if(c=c.applyExtremes(),g(c.dataMin)&&(l=c.dataMin,b.dataMin=Math.min(I(b.dataMin,l),l)),g(c.dataMax)&&(f=c.dataMax,b.dataMax=Math.max(I(b.dataMax,f),f)),p(m)&&(b.threshold=m),!e.softThreshold||b.positiveValuesOnly)b.softThreshold=!1}})});r(this,\"afterGetSeriesExtremes\")};\na.prototype.translate=function(b,d,a,c,e,m){var l=this.linkedParent||this,f=c&&l.old?l.old.min:l.min,r=l.minPixelPadding;e=(l.isOrdinal||l.brokenAxis&&l.brokenAxis.hasBreaks||l.logarithmic&&e)&&l.lin2val;var h=1,k=0;c=c&&l.old?l.old.transA:l.transA;c||(c=l.transA);a&&(h*=-1,k=l.len);l.reversed&&(h*=-1,k-=h*(l.sector||l.len));d?(b=(b*h+k-r)/c+f,e&&(b=l.lin2val(b))):(e&&(b=l.val2lin(b)),b=g(f)?h*(b-f)*c+k+h*r+(g(m)?c*m:0):void 0);return b};a.prototype.toPixels=function(b,d){return this.translate(b,\n!1,!this.horiz,null,!0)+(d?0:this.pos)};a.prototype.toValue=function(b,d){return this.translate(b-(d?0:this.pos),!0,!this.horiz,null,!0)};a.prototype.getPlotLinePath=function(b){function d(b,d,a){if(\"pass\"!==n&&ba)n?b=f(b,d,a):B=!0;return b}var a=this,c=a.chart,e=a.left,m=a.top,l=b.old,h=b.value,k=b.lineWidth,x=l&&c.oldChartHeight||c.chartHeight,D=l&&c.oldChartWidth||c.chartWidth,L=a.transB,p=b.translatedValue,n=b.force,t,C,w,q,B;b={value:h,lineWidth:k,old:l,force:n,acrossPanes:b.acrossPanes,\ntranslatedValue:p};r(this,\"getPlotLinePath\",b,function(b){p=I(p,a.translate(h,null,null,l));p=f(p,-1E5,1E5);t=w=Math.round(p+L);C=q=Math.round(x-p-L);g(p)?a.horiz?(C=m,q=x-a.bottom,t=w=d(t,e,e+a.width)):(t=e,w=D-a.right,C=q=d(C,m,m+a.height)):(B=!0,n=!1);b.path=B&&!n?null:c.renderer.crispLine([[\"M\",t,C],[\"L\",w,q]],k||1)});return b.path};a.prototype.getLinearTickPositions=function(b,d,a){var c=w(Math.floor(d/b)*b);a=w(Math.ceil(a/b)*b);var e=[],g;w(c+b)===c&&(g=20);if(this.single)return[d];for(d=c;d<=\na;){e.push(d);d=w(d+b,g);if(d===m)break;var m=d}return e};a.prototype.getMinorTickInterval=function(){var b=this.options;return!0===b.minorTicks?I(b.minorTickInterval,\"auto\"):!1===b.minorTicks?null:b.minorTickInterval};a.prototype.getMinorTickPositions=function(){var b=this.options,d=this.tickPositions,a=this.minorTickInterval,c=this.pointRangePadding||0,e=this.min-c;c=this.max+c;var g=c-e,m=[];if(g&&g/a=this.minRange;var x=this.minRange;var D=(x-e+a)/2;D=[a-D,I(b.min,a-D)];k&&(D[2]=this.logarithmic?this.logarithmic.log2lin(this.dataMin):this.dataMin);a=c(D);e=[a+x,I(b.max,a+x)];k&&(e[2]=d?d.log2lin(this.dataMax):this.dataMax);e=h(e);e-a=t)B=t,L=0;else if(this.dataMax<=t){var P=t;x=0}this.min=I(C,B,this.dataMin);this.max=I(q,P,this.dataMax)}a&&(this.positiveValuesOnly&&!b&&0>=Math.min(this.min,I(this.dataMin,this.min))&&J(10,1,d),this.min=w(a.log2lin(this.min),16),this.max=w(a.log2lin(this.max),16));this.range&&p(this.max)&&(this.userMin=this.min=C=Math.max(this.dataMin,this.minFromRange()),this.userMax=q=this.max,this.range=null);r(this,\"foundExtremes\");\nthis.beforePadding&&this.beforePadding();this.adjustForMinRange();!(h||this.axisPointRange||this.stacking&&this.stacking.usePercentage||m)&&p(this.min)&&p(this.max)&&(d=this.max-this.min)&&(!p(C)&&L&&(this.min-=d*L),!p(q)&&x&&(this.max+=d*x));g(this.userMin)||(g(c.softMin)&&c.softMinthis.max&&(this.max=q=c.softMax),g(c.ceiling)&&(this.max=Math.min(this.max,c.ceiling)));k&&\np(this.dataMin)&&(t=t||0,!p(C)&&this.min=t?this.min=this.options.minRange?Math.min(t,this.max-this.minRange):t:!p(q)&&this.max>t&&this.dataMax<=t&&(this.max=this.options.minRange?Math.max(t,this.min+this.minRange):t));g(this.min)&&g(this.max)&&!this.chart.polar&&this.min>this.max&&(p(this.options.min)?this.max=this.min:p(this.options.max)&&(this.min=this.max));this.tickInterval=this.min===this.max||\"undefined\"===typeof this.min||\"undefined\"===typeof this.max?1:m&&this.linkedParent&&\n!n&&f===this.linkedParent.options.tickPixelInterval?n=this.linkedParent.tickInterval:I(n,this.tickAmount?(this.max-this.min)/Math.max(this.tickAmount-1,1):void 0,h?1:(this.max-this.min)*f/Math.max(this.len,f));if(e&&!b){var v=this.min!==(this.old&&this.old.min)||this.max!==(this.old&&this.old.max);this.series.forEach(function(b){b.forceCrop=b.forceCropping&&b.forceCropping();b.processData(v)});r(this,\"postProcessData\",{hasExtemesChanged:v})}this.setAxisTranslation();r(this,\"initialAxisTranslation\");\nthis.pointRange&&!n&&(this.tickInterval=Math.max(this.pointRange,this.tickInterval));b=I(c.minTickInterval,this.dateTime&&!this.series.some(function(b){return b.noSharedTooltip})?this.closestPointRange:0);!n&&this.tickIntervalthis.tickInterval||void 0!==this.tickAmount),!!this.tickAmount));this.tickAmount||(this.tickInterval=this.unsquish());this.setTickPositions()};\na.prototype.setTickPositions=function(){var b=this.options,d=b.tickPositions,a=this.getMinorTickInterval(),c=this.hasVerticalPanning(),e=\"colorAxis\"===this.coll,g=(e||!c)&&b.startOnTick;c=(e||!c)&&b.endOnTick;e=b.tickPositioner;this.tickmarkOffset=this.categories&&\"between\"===b.tickmarkPlacement&&1===this.tickInterval?.5:0;this.minorTickInterval=\"auto\"===a&&this.tickInterval?this.tickInterval/5:a;this.single=this.min===this.max&&p(this.min)&&!this.tickAmount&&(parseInt(this.min,10)===this.min||!1!==\nb.allowDecimals);this.tickPositions=a=d&&d.slice();!a&&(this.ordinal&&this.ordinal.positions||!((this.max-this.min)/this.tickInterval>Math.max(2*this.len,200))?a=this.dateTime?this.getTimeTicks(this.dateTime.normalizeTimeTickInterval(this.tickInterval,b.units),this.min,this.max,b.startOfWeek,this.ordinal&&this.ordinal.positions,this.closestPointRange,!0):this.logarithmic?this.logarithmic.getLogTickPositions(this.tickInterval,this.min,this.max):this.getLinearTickPositions(this.tickInterval,this.min,\nthis.max):(a=[this.min,this.max],J(19,!1,this.chart)),a.length>this.len&&(a=[a[0],a.pop()],a[0]===a[1]&&(a.length=1)),this.tickPositions=a,e&&(e=e.apply(this,[this.min,this.max])))&&(this.tickPositions=a=e);this.paddedTicks=a.slice(0);this.trimTicks(a,g,c);this.isLinked||(this.single&&2>a.length&&!this.categories&&!this.series.some(function(b){return b.is(\"heatmap\")&&\"between\"===b.options.pointPlacement})&&(this.min-=.5,this.max+=.5),d||e||this.adjustTickAmount());r(this,\"afterSetTickPositions\")};\na.prototype.trimTicks=function(b,d,a){var c=b[0],e=b[b.length-1],g=!this.isOrdinal&&this.minPointOffset||0;r(this,\"trimTicks\");if(!this.isLinked){if(d&&-Infinity!==c)this.min=c;else for(;this.min-g>b[0];)b.shift();if(a)this.max=e;else for(;this.max+ga&&(this.finalTickAmt=a,a=5);this.tickAmount=a};a.prototype.adjustTickAmount=function(){var b=\nthis.options,d=this.tickInterval,a=this.tickPositions,c=this.tickAmount,e=this.finalTickAmt,m=a&&a.length,l=I(this.threshold,this.softThreshold?0:null);if(this.hasData()&&g(this.min)&&g(this.max)){if(mc&&(this.tickInterval*=2,this.setTickPositions());if(p(e)){for(d=\nb=a.length;d--;)(3===e&&1===d%2||2>=e&&0l&&(d=l)),p(e)&&(gl&&(g=l))),a.displayBtn=\"undefined\"!==typeof d||\"undefined\"!==typeof g,a.setExtremes(d,g,!1,void 0,{trigger:\"zoom\"});b.zoomed=!0});return b.zoomed};a.prototype.setAxisSize=function(){var b=this.chart,\nd=this.options,a=d.offsets||[0,0,0,0],c=this.horiz,e=this.width=Math.round(P(I(d.width,b.plotWidth-a[3]+a[1]),b.plotWidth)),g=this.height=Math.round(P(I(d.height,b.plotHeight-a[0]+a[2]),b.plotHeight)),m=this.top=Math.round(P(I(d.top,b.plotTop+a[0]),b.plotHeight,b.plotTop));d=this.left=Math.round(P(I(d.left,b.plotLeft+a[3]),b.plotWidth,b.plotLeft));this.bottom=b.chartHeight-g-m;this.right=b.chartWidth-e-d;this.len=Math.max(c?e:g,0);this.pos=c?d:m};a.prototype.getExtremes=function(){var b=this.logarithmic;\nreturn{min:b?w(b.lin2log(this.min)):this.min,max:b?w(b.lin2log(this.max)):this.max,dataMin:this.dataMin,dataMax:this.dataMax,userMin:this.userMin,userMax:this.userMax}};a.prototype.getThreshold=function(b){var d=this.logarithmic,a=d?d.lin2log(this.min):this.min;d=d?d.lin2log(this.max):this.max;null===b||-Infinity===b?b=a:Infinity===b?b=d:a>b?b=a:dd?b.align=\"right\":195d&&(b.align=\"left\")});return b.align};a.prototype.tickSize=function(b){var d=this.options,a=I(d[\"tick\"===b?\"tickWidth\":\"minorTickWidth\"],\"tick\"===b&&this.isXAxis&&!this.categories?1:0),c=d[\"tick\"===b?\"tickLength\":\"minorTickLength\"];if(a&&c){\"inside\"===d[b+\"Position\"]&&(c=-c);var e=[c,a]}b={tickSize:e};r(this,\"afterTickSize\",b);return b.tickSize};a.prototype.labelMetrics=function(){var b=this.tickPositions&&this.tickPositions[0]||0;return this.chart.renderer.fontMetrics(this.options.labels.style.fontSize,\nthis.ticks[b]&&this.ticks[b].label)};a.prototype.unsquish=function(){var b=this.options.labels,d=this.horiz,a=this.tickInterval,c=this.len/(((this.categories?1:0)+this.max-this.min)/a),m=b.rotation,l=this.labelMetrics(),f=Math.max(this.max-this.min,0),h=function(b){var d=b/(c||1);d=1f&&Infinity!==b&&Infinity!==c&&f&&(d=Math.ceil(f/a));return w(d*a)},r=a,k,x,D=Number.MAX_VALUE;if(d){if(!b.staggerLines&&!b.step)if(g(m))var p=[m];else c=b){x=h(Math.abs(l.h/Math.sin(e*b)));var d=x+Math.abs(b/360);dc.step)return c.rotation?0:(this.staggerLines||1)*this.len/e;if(!a){b=c.style.width;\nif(void 0!==b)return parseInt(String(b),10);if(m)return m-d.spacing[3]}return.33*d.chartWidth};a.prototype.renderUnsquish=function(){var b=this.chart,a=b.renderer,c=this.tickPositions,e=this.ticks,g=this.options.labels,m=g.style,l=this.horiz,f=this.getSlotWidth(),h=Math.max(1,Math.round(f-2*g.padding)),r={},k=this.labelMetrics(),x=m.textOverflow,D=0;d(g.rotation)||(r.rotation=g.rotation||0);c.forEach(function(b){b=e[b];b.movedLabel&&b.replaceMovedLabel();b&&b.label&&b.label.textPxLength>D&&(D=b.label.textPxLength)});\nthis.maxLabelLength=D;if(this.autoRotation)D>h&&D>k.h?r.rotation=this.labelRotation:this.labelRotation=0;else if(f){var p=h;if(!x){var n=\"clip\";for(h=c.length;!l&&h--;){var I=c[h];if(I=e[I].label)I.styles&&\"ellipsis\"===I.styles.textOverflow?I.css({textOverflow:\"clip\"}):I.textPxLength>f&&I.css({width:f+\"px\"}),I.getBBox().height>this.len/c.length-(k.h-k.f)&&(I.specificTextOverflow=\"ellipsis\")}}}r.rotation&&(p=D>.5*b.chartHeight?.33*b.chartHeight:D,x||(n=\"ellipsis\"));if(this.labelAlign=g.align||this.autoLabelAlign(this.labelRotation))r.align=\nthis.labelAlign;c.forEach(function(b){var d=(b=e[b])&&b.label,a=m.width,c={};d&&(d.attr(r),b.shortenLabel?b.shortenLabel():p&&!a&&\"nowrap\"!==m.whiteSpace&&(p=this.min&&b<=this.max||this.grid&&this.grid.isColumn)c[b]||(c[b]=new H(this,b)),a&&c[b].isNew&&c[b].render(d,!0,\n-1),c[b].render(d)};a.prototype.render=function(){var b=this,d=b.chart,a=b.logarithmic,c=b.options,e=b.isLinked,m=b.tickPositions,l=b.axisTitle,f=b.ticks,h=b.minorTicks,k=b.alternateBands,D=c.stackLabels,p=c.alternateGridColor,n=b.tickmarkOffset,I=b.axisLine,t=b.showAxis,C=q(d.renderer.globalAnimation),w,B;b.labelEdge.length=0;b.overlap=!1;[f,h,k].forEach(function(b){x(b,function(b){b.isActive=!1})});if(b.hasData()||e){var P=b.chart.hasRendered&&b.old&&g(b.old.min);b.minorTickInterval&&!b.categories&&\nb.getMinorTickPositions().forEach(function(d){b.renderMinorTick(d,P)});m.length&&(m.forEach(function(d,a){b.renderTick(d,a,P)}),n&&(0===b.min||b.single)&&(f[-1]||(f[-1]=new H(b,-1,null,!0)),f[-1].render(-1)));p&&m.forEach(function(c,e){B=\"undefined\"!==typeof m[e+1]?m[e+1]+n:b.max-n;0===e%2&&ce&&(!k||n<=f)&&\"undefined\"!==typeof n&&q.push(n);n>f&&(l=!0);n=g}}}else e=this.lin2log(e),f=this.lin2log(f),a=k?c.getMinorTickInterval():n.tickInterval,\na=y(\"auto\"===a?null:a,this.minorAutoInterval,n.tickPixelInterval/(k?5:1)*(f-e)/((k?h/c.tickPositions.length:h)||1)),a=F(a,void 0,z(a)),q=c.getLinearTickPositions(a,e,f).map(this.log2lin),k||(this.minorAutoInterval=a/5);k||(c.tickInterval=a);return q};a.prototype.lin2log=function(a){return Math.pow(10,a)};a.prototype.log2lin=function(a){return Math.log(a)/Math.LN10};return a}();a.Additions=k})(G||(G={}));return G});M(a,\"Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js\",[a[\"Core/Utilities.js\"]],function(a){var v=\na.erase,z=a.extend,F=a.isNumber,y;(function(a){var u=[],A;a.compose=function(a,k){A||(A=a);-1===u.indexOf(k)&&(u.push(k),z(k.prototype,q.prototype));return k};var q=function(){function a(){}a.prototype.getPlotBandPath=function(a,e,c){void 0===c&&(c=this.options);var h=this.getPlotLinePath({value:e,force:!0,acrossPanes:c.acrossPanes}),f=[],k=this.horiz;e=!F(this.min)||!F(this.max)||athis.max&&e>this.max;a=this.getPlotLinePath({value:a,force:!0,acrossPanes:c.acrossPanes});c=\n1;if(a&&h){if(e){var p=a.toString()===h.toString();c=0}for(e=0;en-l?n:n-l);\nelse if(E)g[b]=Math.max(r,m+l+d>a?m:m+l);else return!1},w=function(b,a,d,c,m){var l;ma-e?l=!1:g[b]=ma-c/2?a-c-2:m-d/2;return l},E=function(b){var a=n;n=t;t=a;C=b},T=function(){!1!==B.apply(0,n)?!1!==w.apply(0,t)||C||(E(!0),T()):C?g.x=g.y=0:(E(!0),T())};(c.inverted||1a})&&(b=b.map(function(b){var a=d(b.anchorX,b.anchorY,b.point.isHeader,b.boxWidth,!1);return h(b,{target:a.y,x:a.x})}));c.cleanSplit();A(b,G);\nvar F=R,ba=R;b.forEach(function(b){var a=b.x,d=b.boxWidth;b=b.isHeader;b||(c.outside&&R+aba&&(ba=R+a))});b.forEach(function(b){var a=b.x,d=b.anchorX,e=b.pos,g=b.point.isHeader;e={visibility:\"undefined\"===typeof e?\"hidden\":\"inherit\",x:a,y:e+z,anchorX:d,anchorY:b.anchorY};if(c.outside&&ad[0]?Math.max(Math.abs(d[0]),e.width-d[0]):Math.max(Math.abs(d[0]),\ne.width);c.height=0>d[1]?Math.max(Math.abs(d[1]),e.height-Math.abs(d[1])):Math.max(Math.abs(d[1]),e.height);this.tracker?this.tracker.attr(c):(this.tracker=a.renderer.rect(c).addClass(\"highcharts-tracker\").add(a),b.styledMode||this.tracker.attr({fill:\"rgba(0,0,0,0)\"}))}}};a.prototype.styledModeFormat=function(b){return b.replace('style=\"font-size: 10px\"','class=\"highcharts-header\"').replace(/style=\"color:{(point|series)\\.color}\"/g,'class=\"highcharts-color-{$1.colorIndex}\"')};a.prototype.tooltipFooterHeaderFormatter=\nfunction(b,a){var d=b.series,c=d.tooltipOptions,e=d.xAxis,g=e&&e.dateTime;e={isFooter:a,labelConfig:b};var l=c.xDateFormat,r=c[a?\"footerFormat\":\"headerFormat\"];f(this,\"headerFormatter\",e,function(a){g&&!l&&p(b.key)&&(l=g.getXDateFormat(b.key,c.dateTimeLabelFormats));g&&l&&(b.point&&b.point.tooltipDateKeys||[\"key\"]).forEach(function(b){r=r.replace(\"{point.\"+b+\"}\",\"{point.\"+b+\":\"+l+\"}\")});d.chart.styledMode&&(r=this.styledModeFormat(r));a.text=v(r,{point:b,series:d},this.chart)});return e.text};a.prototype.update=\nfunction(b){this.destroy();t(!0,this.chart.options.tooltip.userOptions,b);this.init(this.chart,t(!0,this.options,b))};a.prototype.updatePosition=function(b){var a=this.chart,d=this.options,c=a.pointer,e=this.getLabel();c=c.getChartPosition();var l=(d.positioner||this.getPosition).call(this,e.width,e.height,b),f=b.plotX+a.plotLeft;b=b.plotY+a.plotTop;if(this.outside){d=d.borderWidth+2*this.distance;this.renderer.setSize(e.width+d,e.height+d,!1);if(1!==c.scaleX||1!==c.scaleY)k(this.container,{transform:\"scale(\"+\nc.scaleX+\", \"+c.scaleY+\")\"}),f*=c.scaleX,b*=c.scaleY;f+=c.left-l.x;b+=c.top-l.y}this.move(Math.round(l.x),Math.round(l.y||0),f,b)};return a}();\"\";return a});M(a,\"Core/Series/Point.js\",[a[\"Core/Renderer/HTML/AST.js\"],a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/DefaultOptions.js\"],a[\"Core/FormatUtilities.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y){var v=u.animObject,H=z.defaultOptions,A=F.format,q=y.addEvent,n=y.defined,k=y.erase,e=y.extend,c=y.fireEvent,h=y.getNestedProperty,f=y.isArray,\nw=y.isFunction,p=y.isNumber,B=y.isObject,t=y.merge,J=y.objectEach,C=y.pick,r=y.syncTimeout,l=y.removeEvent,b=y.uniqueKey;u=function(){function g(){this.colorIndex=this.category=void 0;this.formatPrefix=\"point\";this.id=void 0;this.isNull=!1;this.percentage=this.options=this.name=void 0;this.selected=!1;this.total=this.series=void 0;this.visible=!0;this.x=void 0}g.prototype.animateBeforeDestroy=function(){var b=this,a={x:b.startXPos,opacity:0},c=b.getGraphicalProps();c.singular.forEach(function(d){b[d]=\nb[d].animate(\"dataLabel\"===d?{x:b[d].startXPos,y:b[d].startYPos,opacity:0}:a)});c.plural.forEach(function(a){b[a].forEach(function(a){a.element&&a.animate(e({x:b.startXPos},a.startYPos?{x:a.startXPos,y:a.startYPos}:{}))})})};g.prototype.applyOptions=function(b,a){var d=this.series,c=d.options.pointValKey||d.pointValKey;b=g.prototype.optionsToObject.call(this,b);e(this,b);this.options=this.options?e(this.options,b):b;b.group&&delete this.group;b.dataLabels&&delete this.dataLabels;c&&(this.y=g.prototype.getNestedProperty.call(this,\nc));this.formatPrefix=(this.isNull=C(this.isValid&&!this.isValid(),null===this.x||!p(this.y)))?\"null\":\"point\";this.selected&&(this.state=\"select\");\"name\"in this&&\"undefined\"===typeof a&&d.xAxis&&d.xAxis.hasNames&&(this.x=d.xAxis.nameToX(this));\"undefined\"===typeof this.x&&d?this.x=\"undefined\"===typeof a?d.autoIncrement():a:p(b.x)&&d.options.relativeXValue&&(this.x=d.autoIncrement(b.x));return this};g.prototype.destroy=function(){function b(){if(a.graphic||a.dataLabel||a.dataLabels)l(a),a.destroyElements();\nfor(h in a)a[h]=null}var a=this,c=a.series,e=c.chart;c=c.options.dataSorting;var g=e.hoverPoints,f=v(a.series.chart.renderer.globalAnimation),h;a.legendItem&&e.legend.destroyItem(a);g&&(a.setState(),k(g,a),g.length||(e.hoverPoints=null));if(a===e.hoverPoint)a.onMouseOut();c&&c.enabled?(this.animateBeforeDestroy(),r(b,f.duration)):b();e.pointCount--};g.prototype.destroyElements=function(b){var a=this;b=a.getGraphicalProps(b);b.singular.forEach(function(b){a[b]=a[b].destroy()});b.plural.forEach(function(b){a[b].forEach(function(b){b.element&&\nb.destroy()});delete a[b]})};g.prototype.firePointEvent=function(b,a,e){var d=this,g=this.series.options;(g.point.events[b]||d.options&&d.options.events&&d.options.events[b])&&d.importEvents();\"click\"===b&&g.allowPointSelect&&(e=function(b){d.select&&d.select(null,b.ctrlKey||b.metaKey||b.shiftKey)});c(d,b,a,e)};g.prototype.getClassName=function(){return\"highcharts-point\"+(this.selected?\" highcharts-point-select\":\"\")+(this.negative?\" highcharts-negative\":\"\")+(this.isNull?\" highcharts-null-point\":\"\")+\n(\"undefined\"!==typeof this.colorIndex?\" highcharts-color-\"+this.colorIndex:\"\")+(this.options.className?\" \"+this.options.className:\"\")+(this.zone&&this.zone.className?\" \"+this.zone.className.replace(\"highcharts-negative\",\"\"):\"\")};g.prototype.getGraphicalProps=function(b){var a=this,d=[],c={singular:[],plural:[]},e;b=b||{graphic:1,dataLabel:1};b.graphic&&d.push(\"graphic\",\"upperGraphic\",\"shadowGroup\");b.dataLabel&&d.push(\"dataLabel\",\"dataLabelUpper\",\"connector\");for(e=d.length;e--;){var g=d[e];a[g]&&\nc.singular.push(g)}[\"dataLabel\",\"connector\"].forEach(function(d){var e=d+\"s\";b[d]&&a[e]&&c.plural.push(e)});return c};g.prototype.getLabelConfig=function(){return{x:this.category,y:this.y,color:this.color,colorIndex:this.colorIndex,key:this.name||this.category,series:this.series,point:this,percentage:this.percentage,total:this.total||this.stackTotal}};g.prototype.getNestedProperty=function(b){if(b)return 0===b.indexOf(\"custom.\")?h(b,this.options):this[b]};g.prototype.getZone=function(){var b=this.series,\na=b.zones;b=b.zoneAxis||\"y\";var c,e=0;for(c=a[e];this[b]>=c.value;)c=a[++e];this.nonZonedColor||(this.nonZonedColor=this.color);this.color=c&&c.color&&!this.options.color?c.color:this.nonZonedColor;return c};g.prototype.hasNewShapeType=function(){return(this.graphic&&(this.graphic.symbolName||this.graphic.element.nodeName))!==this.shapeType};g.prototype.init=function(a,e,g){this.series=a;this.applyOptions(e,g);this.id=n(this.id)?this.id:b();this.resolveColor();a.chart.pointCount++;c(this,\"afterInit\");\nreturn this};g.prototype.optionsToObject=function(b){var a=this.series,d=a.options.keys,c=d||a.pointArrayMap||[\"y\"],e=c.length,l={},r=0,h=0;if(p(b)||null===b)l[c[0]]=b;else if(f(b))for(!d&&b.length>e&&(a=typeof b[0],\"string\"===a?l.name=b[0]:\"number\"===a&&(l.x=b[0]),r++);hm+h&&(q=m+h),Bf+r&&(B=f+r),this.hasDragged=Math.sqrt(Math.pow(k-q,2)+Math.pow(p-B,2)),10a.options.findNearestPointBy.indexOf(\"y\");a=\na.searchPoint(b,d);if((d=w(a,!0)&&a.series)&&!(d=!w(l,!0))){d=l.distX-a.distX;var e=l.dist-a.dist,g=(a.series.group&&a.series.group.zIndex)-(l.series.group&&l.series.group.zIndex);d=0<(0!==d&&c?d:0!==e?e:0!==g?g:l.series.index>a.series.index?-1:1)}d&&(l=a)});return l};a.prototype.getChartCoordinatesFromPoint=function(a,c){var b=a.series,e=b.xAxis;b=b.yAxis;var d=a.shapeArgs;if(e&&b){var l=t(a.clientX,a.plotX),h=a.plotY||0;a.isNode&&d&&f(d.x)&&f(d.y)&&(l=d.x,h=d.y);return c?{chartX:b.len+b.pos-h,chartY:e.len+\ne.pos-l}:{chartX:l+e.pos,chartY:h+b.pos}}if(d&&d.x&&d.y)return{chartX:d.x,chartY:d.y}};a.prototype.getChartPosition=function(){if(this.chartPosition)return this.chartPosition;var a=this.chart.container,c=B(a);this.chartPosition={left:c.left,top:c.top,scaleX:1,scaleY:1};var b=a.offsetWidth;a=a.offsetHeight;2x.max&&(b=x.max-w,J=!0);J?(N-=.8*(N-f[l][0]),\"number\"===typeof v&&(v-=.8*(v-f[l][1])),\nc()):f[l]=[N,v];t||(m[l]=E-n,m[r]=w);m=t?1/C:C;d[r]=w;d[l]=b;e[t?a?\"scaleY\":\"scaleX\":\"scale\"+k]=C;e[\"translate\"+k]=m*n+(N-m*D)};a.prototype.reset=function(a,c){var b=this.chart,e=b.hoverSeries,d=b.hoverPoint,m=b.hoverPoints,f=b.tooltip,l=f&&f.shared?m:d;a&&l&&J(l).forEach(function(b){b.series.isCartesian&&\"undefined\"===typeof b.plotX&&(a=!1)});if(a)f&&l&&J(l).length&&(f.refresh(l),f.shared&&m?m.forEach(function(b){b.setState(b.state,!0);b.series.isCartesian&&(b.series.xAxis.crosshair&&b.series.xAxis.drawCrosshair(null,\nb),b.series.yAxis.crosshair&&b.series.yAxis.drawCrosshair(null,b))}):d&&(d.setState(d.state,!0),b.axes.forEach(function(b){b.crosshair&&d.series[b.coll]===b&&b.drawCrosshair(null,d)})));else{if(d)d.onMouseOut();m&&m.forEach(function(b){b.setState()});if(e)e.onMouseOut();f&&f.hide(c);this.unDocMouseMove&&(this.unDocMouseMove=this.unDocMouseMove());b.axes.forEach(function(b){b.hideCrosshair()});this.hoverX=b.hoverPoints=b.hoverPoint=null}};a.prototype.runPointActions=function(e,f){var b=this.chart,\ng=b.tooltip&&b.tooltip.options.enabled?b.tooltip:void 0,d=g?g.shared:!1,m=f||b.hoverPoint,l=m&&m.series||b.hoverSeries;f=this.getHoverData(m,l,b.series,(!e||\"touchmove\"!==e.type)&&(!!f||l&&l.directTouch&&this.isDirectTouch),d,e);m=f.hoverPoint;l=f.hoverSeries;var h=f.hoverPoints;f=l&&l.tooltipOptions.followPointer&&!l.tooltipOptions.split;d=d&&l&&!l.noSharedTooltip;if(m&&(m!==b.hoverPoint||g&&g.isHidden)){(b.hoverPoints||[]).forEach(function(b){-1===h.indexOf(b)&&b.setState()});if(b.hoverSeries!==\nl)l.onMouseOver();this.applyInactiveState(h);(h||[]).forEach(function(b){b.setState(\"hover\")});b.hoverPoint&&b.hoverPoint.firePointEvent(\"mouseOut\");if(!m.series)return;b.hoverPoints=h;b.hoverPoint=m;m.firePointEvent(\"mouseOver\");g&&g.refresh(d?h:m,e)}else f&&g&&!g.isHidden&&(m=g.getAnchor([{}],e),b.isInsidePlot(m[0],m[1],{visiblePlotOnly:!0})&&g.updatePosition({plotX:m[0],plotY:m[1]}));this.unDocMouseMove||(this.unDocMouseMove=A(b.container.ownerDocument,\"mousemove\",function(b){var d=G[a.hoverChartIndex];\nif(d)d.pointer.onDocumentMouseMove(b)}),this.eventsToUnbind.push(this.unDocMouseMove));b.axes.forEach(function(a){var d=t((a.crosshair||{}).snap,!0),g;d&&((g=b.hoverPoint)&&g.series[a.coll]===a||(g=c(h,function(b){return b.series[a.coll]===a})));g||!d?a.drawCrosshair(e,g):a.hideCrosshair()})};a.prototype.scaleGroups=function(a,c){var b=this.chart;b.series.forEach(function(e){var d=a||e.getPlotBox();e.group&&(e.xAxis&&e.xAxis.zoomEnabled||b.mapView)&&(e.group.attr(d),e.markerGroup&&(e.markerGroup.attr(d),\ne.markerGroup.clip(c?b.clipRect:null)),e.dataLabelsGroup&&e.dataLabelsGroup.attr(d))});b.clipRect.attr(c||b.clipBox)};a.prototype.setDOMEvents=function(){var c=this,e=this.chart.container,b=e.ownerDocument;e.onmousedown=this.onContainerMouseDown.bind(this);e.onmousemove=this.onContainerMouseMove.bind(this);e.onclick=this.onContainerClick.bind(this);this.eventsToUnbind.push(A(e,\"mouseenter\",this.onContainerMouseEnter.bind(this)));this.eventsToUnbind.push(A(e,\"mouseleave\",this.onContainerMouseLeave.bind(this)));\na.unbindDocumentMouseUp||(a.unbindDocumentMouseUp=A(b,\"mouseup\",this.onDocumentMouseUp.bind(this)));for(var g=this.chart.renderTo.parentElement;g&&\"BODY\"!==g.tagName;)this.eventsToUnbind.push(A(g,\"scroll\",function(){delete c.chartPosition})),g=g.parentElement;u.hasTouch&&(this.eventsToUnbind.push(A(e,\"touchstart\",this.onContainerTouchStart.bind(this),{passive:!1})),this.eventsToUnbind.push(A(e,\"touchmove\",this.onContainerTouchMove.bind(this),{passive:!1})),a.unbindDocumentTouchEnd||(a.unbindDocumentTouchEnd=\nA(b,\"touchend\",this.onDocumentTouchEnd.bind(this),{passive:!1})))};a.prototype.setHoverChartIndex=function(){var c=this.chart,e=u.charts[t(a.hoverChartIndex,-1)];if(e&&e!==c)e.pointer.onContainerMouseLeave({relatedTarget:!0});e&&e.mouseIsDown||(a.hoverChartIndex=c.index)};a.prototype.touch=function(a,c){var b=this.chart,e;this.setHoverChartIndex();if(1===a.touches.length)if(a=this.normalize(a),(e=b.isInsidePlot(a.chartX-b.plotLeft,a.chartY-b.plotTop,{visiblePlotOnly:!0}))&&!b.openMenu){c&&this.runPointActions(a);\nif(\"touchmove\"===a.type){c=this.pinchDown;var d=c[0]?4<=Math.sqrt(Math.pow(c[0].chartX-a.chartX,2)+Math.pow(c[0].chartY-a.chartY,2)):!1}t(d,!0)&&this.pinch(a)}else c&&this.reset();else 2===a.touches.length&&this.pinch(a)};a.prototype.touchSelect=function(a){return!(!this.chart.options.chart.zoomBySingleTouch||!a.touches||1!==a.touches.length)};a.prototype.zoomOption=function(a){var c=this.chart,b=c.options.chart;c=c.inverted;var e=b.zoomType||\"\";/touch/.test(a.type)&&(e=t(b.pinchType,e));this.zoomX=\na=/x/.test(e);this.zoomY=b=/y/.test(e);this.zoomHor=a&&!c||b&&c;this.zoomVert=b&&!c||a&&c;this.hasZoom=a||b};return a}();\"\";return a});M(a,\"Core/MSPointer.js\",[a[\"Core/Globals.js\"],a[\"Core/Pointer.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){function v(){var a=[];a.item=function(a){return this[a]};c(f,function(c){a.push({pageX:c.pageX,pageY:c.pageY,target:c.target})});return a}function y(a,c,e,f){var h=H[u.hoverChartIndex||NaN];\"touch\"!==a.pointerType&&a.pointerType!==a.MSPOINTER_TYPE_TOUCH||!h||\n(h=h.pointer,f(a),h[c]({type:e,target:a.currentTarget,preventDefault:q,touches:v()}))}var G=this&&this.__extends||function(){var a=function(c,e){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var e in c)c.hasOwnProperty(e)&&(a[e]=c[e])};return a(c,e)};return function(c,e){function f(){this.constructor=c}a(c,e);c.prototype=null===e?Object.create(e):(f.prototype=e.prototype,new f)}}(),H=a.charts,A=a.doc,q=a.noop,n=a.win,k=z.addEvent,e=z.css,\nc=z.objectEach,h=z.removeEvent,f={},w=!!n.PointerEvent;return function(c){function p(){return null!==c&&c.apply(this,arguments)||this}G(p,c);p.isRequired=function(){return!(a.hasTouch||!n.PointerEvent&&!n.MSPointerEvent)};p.prototype.batchMSEvents=function(a){a(this.chart.container,w?\"pointerdown\":\"MSPointerDown\",this.onContainerPointerDown);a(this.chart.container,w?\"pointermove\":\"MSPointerMove\",this.onContainerPointerMove);a(A,w?\"pointerup\":\"MSPointerUp\",this.onDocumentPointerUp)};p.prototype.destroy=\nfunction(){this.batchMSEvents(h);c.prototype.destroy.call(this)};p.prototype.init=function(a,f){c.prototype.init.call(this,a,f);this.hasZoom&&e(a.container,{\"-ms-touch-action\":\"none\",\"touch-action\":\"none\"})};p.prototype.onContainerPointerDown=function(a){y(a,\"onContainerTouchStart\",\"touchstart\",function(a){f[a.pointerId]={pageX:a.pageX,pageY:a.pageY,target:a.currentTarget}})};p.prototype.onContainerPointerMove=function(a){y(a,\"onContainerTouchMove\",\"touchmove\",function(a){f[a.pointerId]={pageX:a.pageX,\npageY:a.pageY};f[a.pointerId].target||(f[a.pointerId].target=a.currentTarget)})};p.prototype.onDocumentPointerUp=function(a){y(a,\"onDocumentTouchEnd\",\"touchend\",function(a){delete f[a.pointerId]})};p.prototype.setDOMEvents=function(){c.prototype.setDOMEvents.call(this);(this.hasZoom||this.followTouchMove)&&this.batchMSEvents(k)};return p}(u)});M(a,\"Core/Legend/Legend.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/FormatUtilities.js\"],a[\"Core/Globals.js\"],a[\"Core/Series/Point.js\"],a[\"Core/Renderer/RendererUtilities.js\"],\na[\"Core/Utilities.js\"]],function(a,u,z,F,y,G){var v=a.animObject,A=a.setAnimation,q=u.format;a=z.isFirefox;var n=z.marginNames;z=z.win;var k=y.distribute,e=G.addEvent,c=G.createElement,h=G.css,f=G.defined,w=G.discardElement,p=G.find,B=G.fireEvent,t=G.isNumber,J=G.merge,C=G.pick,r=G.relativeLength,l=G.stableSort,b=G.syncTimeout;y=G.wrap;G=function(){function a(b,a){this.allItems=[];this.contentGroup=this.box=void 0;this.display=!1;this.group=void 0;this.offsetWidth=this.maxLegendWidth=this.maxItemWidth=\nthis.legendWidth=this.legendHeight=this.lastLineHeight=this.lastItemY=this.itemY=this.itemX=this.itemMarginTop=this.itemMarginBottom=this.itemHeight=this.initialItemY=0;this.options={};this.padding=0;this.pages=[];this.proximate=!1;this.scrollGroup=void 0;this.widthOption=this.totalItemWidth=this.titleHeight=this.symbolWidth=this.symbolHeight=0;this.chart=b;this.init(b,a)}a.prototype.init=function(b,a){this.chart=b;this.setOptions(a);a.enabled&&(this.render(),e(this.chart,\"endResize\",function(){this.legend.positionCheckboxes()}),\nthis.proximate?this.unchartrender=e(this.chart,\"render\",function(){this.legend.proximatePositions();this.legend.positionItems()}):this.unchartrender&&this.unchartrender())};a.prototype.setOptions=function(b){var a=C(b.padding,8);this.options=b;this.chart.styledMode||(this.itemStyle=b.itemStyle,this.itemHiddenStyle=J(this.itemStyle,b.itemHiddenStyle));this.itemMarginTop=b.itemMarginTop||0;this.itemMarginBottom=b.itemMarginBottom||0;this.padding=a;this.initialItemY=a-5;this.symbolWidth=C(b.symbolWidth,\n16);this.pages=[];this.proximate=\"proximate\"===b.layout&&!this.chart.inverted;this.baseline=void 0};a.prototype.update=function(b,a){var c=this.chart;this.setOptions(J(!0,this.options,b));this.destroy();c.isDirtyLegend=c.isDirtyBox=!0;C(a,!0)&&c.redraw();B(this,\"afterUpdate\")};a.prototype.colorizeItem=function(b,a){b.legendGroup[a?\"removeClass\":\"addClass\"](\"highcharts-legend-item-hidden\");if(!this.chart.styledMode){var c=this.options,d=b.legendItem,e=b.legendLine,g=b.legendSymbol,f=this.itemHiddenStyle.color;\nc=a?c.itemStyle.color:f;var m=a?b.color||f:f,h=b.options&&b.options.marker,l={fill:m};d&&d.css({fill:c,color:c});e&&e.attr({stroke:m});g&&(h&&g.isMarker&&(l=b.pointAttribs(),a||(l.stroke=l.fill=f)),g.attr(l))}B(this,\"afterColorizeItem\",{item:b,visible:a})};a.prototype.positionItems=function(){this.allItems.forEach(this.positionItem,this);this.chart.isResizing||this.positionCheckboxes()};a.prototype.positionItem=function(b){var a=this,c=this.options,d=c.symbolPadding,e=!c.rtl,g=b._legendItemPos;c=\ng[0];g=g[1];var h=b.checkbox,l=b.legendGroup;l&&l.element&&(d={translateX:e?c:this.legendWidth-c-2*d-4,translateY:g},e=function(){B(a,\"afterPositionItem\",{item:b})},f(l.translateY)?l.animate(d,void 0,e):(l.attr(d),e()));h&&(h.x=c,h.y=g)};a.prototype.destroyItem=function(b){var a=b.checkbox;[\"legendItem\",\"legendLine\",\"legendSymbol\",\"legendGroup\"].forEach(function(a){b[a]&&(b[a]=b[a].destroy())});a&&w(b.checkbox)};a.prototype.destroy=function(){function b(b){this[b]&&(this[b]=this[b].destroy())}this.getAllItems().forEach(function(a){[\"legendItem\",\n\"legendGroup\"].forEach(b,a)});\"clipRect up down pager nav box title group\".split(\" \").forEach(b,this);this.display=null};a.prototype.positionCheckboxes=function(){var b=this.group&&this.group.alignAttr,a=this.clipHeight||this.legendHeight,c=this.titleHeight;if(b){var e=b.translateY;this.allItems.forEach(function(d){var g=d.checkbox;if(g){var f=e+c+g.y+(this.scrollOffset||0)+3;h(g,{left:b.translateX+d.checkboxOffset+g.x-20+\"px\",top:f+\"px\",display:this.proximate||f>e-6&&f1.5*c?a.height:c))};a.prototype.layoutItem=function(b){var a=this.options,c=this.padding,d=\"horizontal\"===a.layout,e=b.itemHeight,g=this.itemMarginBottom,f=this.itemMarginTop,h=d?C(a.itemDistance,20):0,l=this.maxLegendWidth;a=a.alignColumns&&\nthis.totalItemWidth>l?this.maxItemWidth:b.itemWidth;d&&this.itemX-c+a>l&&(this.itemX=c,this.lastLineHeight&&(this.itemY+=f+this.lastLineHeight+g),this.lastLineHeight=0);this.lastItemY=f+this.itemY+g;this.lastLineHeight=Math.max(e,this.lastLineHeight);b._legendItemPos=[this.itemX,this.itemY];d?this.itemX+=a:(this.itemY+=f+e+g,this.lastLineHeight=e);this.offsetWidth=this.widthOption||Math.max((d?this.itemX-c-(b.checkbox?0:h):a)+c,this.offsetWidth)};a.prototype.getAllItems=function(){var b=[];this.chart.series.forEach(function(a){var c=\na&&a.options;a&&C(c.showInLegend,f(c.linkedTo)?!1:void 0,!0)&&(b=b.concat(a.legendItems||(\"point\"===c.legendType?a.data:a)))});B(this,\"afterGetAllItems\",{allItems:b});return b};a.prototype.getAlignment=function(){var b=this.options;return this.proximate?b.align.charAt(0)+\"tv\":b.floating?\"\":b.align.charAt(0)+b.verticalAlign.charAt(0)+b.layout.charAt(0)};a.prototype.adjustMargins=function(b,a){var c=this.chart,d=this.options,e=this.getAlignment();e&&[/(lth|ct|rth)/,/(rtv|rm|rbv)/,/(rbh|cb|lbh)/,/(lbv|lm|ltv)/].forEach(function(g,\nh){g.test(e)&&!f(b[h])&&(c[n[h]]=Math.max(c[n[h]],c.legend[(h+1)%2?\"legendHeight\":\"legendWidth\"]+[1,-1,-1,1][h]*d[h%2?\"x\":\"y\"]+C(d.margin,12)+a[h]+(c.titleOffset[h]||0)))})};a.prototype.proximatePositions=function(){var b=this.chart,a=[],c=\"left\"===this.options.align;this.allItems.forEach(function(d){var e;var g=c;if(d.yAxis){d.xAxis.options.reversed&&(g=!g);d.points&&(e=p(g?d.points:d.points.slice(0).reverse(),function(b){return t(b.plotY)}));g=this.itemMarginTop+d.legendItem.getBBox().height+this.itemMarginBottom;\nvar f=d.yAxis.top-b.plotTop;d.visible?(e=e?e.plotY:d.yAxis.height,e+=f-.3*g):e=f+d.yAxis.height;a.push({target:e,size:g,item:d})}},this);k(a,b.plotHeight).forEach(function(a){a.item._legendItemPos&&(a.item._legendItemPos[1]=b.plotTop-b.spacing[0]+a.pos)})};a.prototype.render=function(){var b=this.chart,a=b.renderer,c=this.options,e=this.padding,g=this.getAllItems(),f=this.group,h=this.box;this.itemX=e;this.itemY=this.initialItemY;this.lastItemY=this.offsetWidth=0;this.widthOption=r(c.width,b.spacingBox.width-\ne);var k=b.spacingBox.width-2*e-c.x;-1<[\"rm\",\"lm\"].indexOf(this.getAlignment().substring(0,2))&&(k/=2);this.maxLegendWidth=this.widthOption||k;f||(this.group=f=a.g(\"legend\").addClass(c.className||\"\").attr({zIndex:7}).add(),this.contentGroup=a.g().attr({zIndex:1}).add(f),this.scrollGroup=a.g().add(this.contentGroup));this.renderTitle();l(g,function(b,a){return(b.options&&b.options.legendIndex||0)-(a.options&&a.options.legendIndex||0)});c.reversed&&g.reverse();this.allItems=g;this.display=k=!!g.length;\nthis.itemHeight=this.totalItemWidth=this.maxItemWidth=this.lastLineHeight=0;g.forEach(this.renderItem,this);g.forEach(this.layoutItem,this);g=(this.widthOption||this.offsetWidth)+e;var p=this.lastItemY+this.lastLineHeight+this.titleHeight;p=this.handleOverflow(p);p+=e;h||(this.box=h=a.rect().addClass(\"highcharts-legend-box\").attr({r:c.borderRadius}).add(f),h.isNew=!0);b.styledMode||h.attr({stroke:c.borderColor,\"stroke-width\":c.borderWidth||0,fill:c.backgroundColor||\"none\"}).shadow(c.shadow);0g&&!1!==k.enabled?(this.clipHeight=E=Math.max(g-20-this.titleHeight-\nh,0),this.currentPage=C(this.currentPage,1),this.fullHeight=b,t.forEach(function(b,a){var c=b._legendItemPos[1],d=Math.round(b.legendItem.getBBox().height),e=r.length;if(!e||c-r[e-1]>E&&(B||c)!==r[e-1])r.push(B||c),e++;b.pageIx=e-1;B&&(t[a-1].pageIx=e-1);a===t.length-1&&c+d-r[e-1]>E&&d<=E&&(r.push(c),b.pageIx=e);c!==B&&(B=c)}),v||(v=a.clipRect=d.clipRect(0,h,9999,0),a.contentGroup.clip(v)),q(E),N||(this.nav=N=d.g().attr({zIndex:1}).add(this.group),this.up=d.symbol(\"triangle\",0,0,n,n).add(N),w(\"upTracker\").on(\"click\",\nfunction(){a.scroll(-1,p)}),this.pager=d.text(\"\",15,10).addClass(\"highcharts-legend-navigation\"),c.styledMode||this.pager.css(k.style),this.pager.add(N),this.down=d.symbol(\"triangle-down\",0,0,n,n).add(N),w(\"downTracker\").on(\"click\",function(){a.scroll(1,p)})),a.scroll(0),b=g):N&&(q(),this.nav=N.destroy(),this.scrollGroup.attr({translateY:1}),this.clipHeight=0);return b};a.prototype.scroll=function(a,c){var d=this,e=this.chart,g=this.pages,f=g.length,h=this.clipHeight,l=this.options.navigation,m=this.pager,\nk=this.padding,p=this.currentPage+a;p>f&&(p=f);0=Math.max(l+g,p.pos)&&h<=Math.min(l+g+e.width,p.pos+p.len)||(b.isInsidePlot=!1)}!c.ignoreY&&\nb.isInsidePlot&&(d=m&&(d?m.xAxis:m.yAxis)||{pos:f,len:Infinity},c=c.paneCoordinates?d.pos+a:f+a,c>=Math.max(k+f,d.pos)&&c<=Math.min(k+f+e.height,d.pos+d.len)||(b.isInsidePlot=!1));Q(this,\"afterIsInsidePlot\",b);return b.isInsidePlot};a.prototype.redraw=function(b){Q(this,\"beforeRedraw\");var a=this.hasCartesianSeries?this.axes:this.colorAxis||[],c=this.series,d=this.pointer,e=this.legend,g=this.userOptions.legend,f=this.renderer,h=f.isHidden(),l=[],k=this.isDirtyBox,m=this.isDirtyLegend;this.setResponsive&&\nthis.setResponsive(!1);B(this.hasRendered?b:!1,this);h&&this.temporaryDisplay();this.layOutTitles();for(b=c.length;b--;){var p=c[b];if(p.options.stacking||p.options.centerInCategory){var n=!0;if(p.isDirty){var E=!0;break}}}if(E)for(b=c.length;b--;)p=c[b],p.options.stacking&&(p.isDirty=!0);c.forEach(function(b){b.isDirty&&(\"point\"===b.options.legendType?(\"function\"===typeof b.updateTotals&&b.updateTotals(),m=!0):g&&(g.labelFormatter||g.labelFormat)&&(m=!0));b.isDirtyData&&Q(b,\"updatedData\")});m&&e&&\ne.options.enabled&&(e.render(),this.isDirtyLegend=!1);n&&this.getStacks();a.forEach(function(b){b.updateNames();b.setScale()});this.getMargins();a.forEach(function(b){b.isDirty&&(k=!0)});a.forEach(function(b){var a=b.min+\",\"+b.max;b.extKey!==a&&(b.extKey=a,l.push(function(){Q(b,\"afterSetExtremes\",M(b.eventArgs,b.getExtremes()));delete b.eventArgs}));(k||n)&&b.redraw()});k&&this.drawChartBox();Q(this,\"predraw\");c.forEach(function(b){(k||b.isDirty)&&b.visible&&b.redraw();b.isDirtyData=!1});d&&d.reset(!0);\nf.draw();Q(this,\"redraw\");Q(this,\"render\");h&&this.temporaryDisplay(!0);l.forEach(function(b){b.call()})};a.prototype.get=function(b){function a(a){return a.id===b||a.options&&a.options.id===b}for(var c=this.series,d=da(this.axes,a)||da(this.series,a),e=0;!d&&e=h&&d<=l||k||!U(d))m=!0;c[k?\"zoomX\":\"zoomY\"]&&m&&(g=f.zoom(b.min,b.max),f.displayBtn&&(e=!0))});var f=a.resetZoomButton;e&&!f?a.showResetZoom():!e&&N(f)&&(a.resetZoomButton=f.destroy());g&&a.redraw(R(a.options.chart.animation,\nb&&b.animation,100>a.pointCount))};a.prototype.pan=function(b,a){var c=this,d=c.hoverPoints;a=\"object\"===typeof a?a:{enabled:a,type:\"x\"};var e=c.options.chart,g=c.options.mapNavigation&&c.options.mapNavigation.enabled;e&&e.panning&&(e.panning=a);var f=a.type,h;Q(this,\"pan\",{originalEvent:b},function(){d&&d.forEach(function(b){b.setState()});var a=c.xAxis;\"xy\"===f?a=a.concat(c.yAxis):\"y\"===f&&(a=c.yAxis);var e={};a.forEach(function(a){if(a.options.panningEnabled&&!a.options.isInternal){var d=a.horiz,\nl=b[d?\"chartX\":\"chartY\"];d=d?\"mouseDownX\":\"mouseDownY\";var k=c[d],m=a.minPointOffset||0,p=a.reversed&&!c.inverted||!a.reversed&&c.inverted?-1:1,n=a.getExtremes(),E=a.toValue(k-l,!0)+m*p,r=a.toValue(k+a.len-l,!0)-(m*p||a.isXAxis&&a.pointRangePadding||0),t=r=p&&E<=r&&(a.setExtremes(k,E,!1,\n!1,{trigger:\"pan\"}),c.resetZoomButton||g||k===p||E===r||!f.match(\"y\")||(c.showResetZoom(),a.displayBtn=!1),h=!0),e[d]=l)}});X(e,function(b,a){c[a]=b});h&&c.redraw(!1);O(c.container,{cursor:\"move\"})})};return a}();M(a.prototype,{callbacks:[],collectionsWithInit:{xAxis:[a.prototype.addAxis,[!0]],yAxis:[a.prototype.addAxis,[!1]],series:[a.prototype.addSeries]},collectionsWithUpdate:[\"xAxis\",\"yAxis\",\"series\"],propsRequireDirtyBox:\"backgroundColor borderColor borderWidth borderRadius plotBackgroundColor plotBackgroundImage plotBorderColor plotBorderWidth plotShadow shadow\".split(\" \"),\npropsRequireReflow:\"margin marginTop marginRight marginBottom marginLeft spacing spacingTop spacingRight spacingBottom spacingLeft\".split(\" \"),propsRequireUpdateSeries:\"chart.inverted chart.polar chart.ignoreHiddenSeries chart.type colors plotOptions time tooltip\".split(\" \")});\"\";return a});M(a,\"Core/Legend/LegendSymbol.js\",[a[\"Core/Utilities.js\"]],function(a){var v=a.merge,z=a.pick,F;(function(a){a.drawLineMarker=function(a){var u=this.options,A=a.symbolWidth,q=a.symbolHeight,n=q/2,k=this.chart.renderer,\ne=this.legendGroup;a=a.baseline-Math.round(.3*a.fontMetrics.b);var c={},h=u.marker;this.chart.styledMode||(c={\"stroke-width\":u.lineWidth||0},u.dashStyle&&(c.dashstyle=u.dashStyle));this.legendLine=k.path([[\"M\",0,a],[\"L\",A,a]]).addClass(\"highcharts-graph\").attr(c).add(e);h&&!1!==h.enabled&&A&&(u=Math.min(z(h.radius,n),n),0===this.symbol.indexOf(\"url\")&&(h=v(h,{width:q,height:q}),u=0),this.legendSymbol=A=k.symbol(this.symbol,A/2-u,a-u,2*u,2*u,h).addClass(\"highcharts-point\").add(e),A.isMarker=!0)};a.drawRectangle=\nfunction(a,v){var u=a.symbolHeight,q=a.options.squareSymbol;v.legendSymbol=this.chart.renderer.rect(q?(a.symbolWidth-u)/2:0,a.baseline-u+1,q?u:a.symbolWidth,u,z(a.options.symbolRadius,u/2)).addClass(\"highcharts-point\").attr({zIndex:3}).add(v.legendGroup)}})(F||(F={}));return F});M(a,\"Core/Series/SeriesDefaults.js\",[],function(){return{lineWidth:2,allowPointSelect:!1,crisp:!0,showCheckbox:!1,animation:{duration:1E3},events:{},marker:{enabledThreshold:2,lineColor:\"#ffffff\",lineWidth:0,radius:4,states:{normal:{animation:!0},\nhover:{animation:{duration:50},enabled:!0,radiusPlus:2,lineWidthPlus:1},select:{fillColor:\"#cccccc\",lineColor:\"#000000\",lineWidth:2}}},point:{events:{}},dataLabels:{animation:{},align:\"center\",defer:!0,formatter:function(){var a=this.series.chart.numberFormatter;return\"number\"!==typeof this.y?\"\":a(this.y,-1)},padding:5,style:{fontSize:\"11px\",fontWeight:\"bold\",color:\"contrast\",textOutline:\"1px contrast\"},verticalAlign:\"bottom\",x:0,y:0},cropThreshold:300,opacity:1,pointRange:0,softThreshold:!0,states:{normal:{animation:!0},\nhover:{animation:{duration:50},lineWidthPlus:1,marker:{},halo:{size:10,opacity:.25}},select:{animation:{duration:0}},inactive:{animation:{duration:50},opacity:.2}},stickyTracking:!0,turboThreshold:1E3,findNearestPointBy:\"x\"}});M(a,\"Core/Series/Series.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/DefaultOptions.js\"],a[\"Core/Foundation.js\"],a[\"Core/Globals.js\"],a[\"Core/Legend/LegendSymbol.js\"],a[\"Core/Series/Point.js\"],a[\"Core/Series/SeriesDefaults.js\"],a[\"Core/Series/SeriesRegistry.js\"],a[\"Core/Renderer/SVG/SVGElement.js\"],\na[\"Core/Utilities.js\"]],function(a,u,z,F,y,G,H,A,q,n){var k=a.animObject,e=a.setAnimation,c=u.defaultOptions,h=z.registerEventOptions,f=F.hasTouch,w=F.svg,p=F.win,B=A.seriesTypes,t=n.addEvent,v=n.arrayMax,C=n.arrayMin,r=n.clamp,l=n.cleanRecursively,b=n.correctFloat,g=n.defined,d=n.erase,m=n.error,D=n.extend,x=n.find,I=n.fireEvent,P=n.getNestedProperty,S=n.isArray,O=n.isNumber,U=n.isString,Y=n.merge,L=n.objectEach,K=n.pick,M=n.removeEvent,da=n.splat,Q=n.syncTimeout;a=function(){function a(){this.zones=\nthis.yAxis=this.xAxis=this.userOptions=this.tooltipOptions=this.processedYData=this.processedXData=this.points=this.options=this.linkedSeries=this.index=this.eventsToUnbind=this.eventOptions=this.data=this.chart=this._i=void 0}a.prototype.init=function(a,b){I(this,\"init\",{options:b});var c=this,d=a.series;this.eventsToUnbind=[];c.chart=a;c.options=c.setOptions(b);b=c.options;c.linkedSeries=[];c.bindAxes();D(c,{name:b.name,state:\"\",visible:!1!==b.visible,selected:!0===b.selected});h(this,b);var e=\nb.events;if(e&&e.click||b.point&&b.point.events&&b.point.events.click||b.allowPointSelect)a.runTrackerClick=!0;c.getColor();c.getSymbol();c.parallelArrays.forEach(function(a){c[a+\"Data\"]||(c[a+\"Data\"]=[])});c.isCartesian&&(a.hasCartesianSeries=!0);var g;d.length&&(g=d[d.length-1]);c._i=K(g&&g._i,-1)+1;c.opacity=c.options.opacity;a.orderSeries(this.insert(d));b.dataSorting&&b.dataSorting.enabled?c.setDataSortingOptions():c.points||c.data||c.setData(b.data,!1);I(this,\"afterInit\")};a.prototype.is=function(a){return B[a]&&\nthis instanceof B[a]};a.prototype.insert=function(a){var b=this.options.index,c;if(O(b)){for(c=a.length;c--;)if(b>=K(a[c].options.index,a[c]._i)){a.splice(c+1,0,this);break}-1===c&&a.unshift(this);c+=1}else a.push(this);return K(c,a.length-1)};a.prototype.bindAxes=function(){var a=this,b=a.options,c=a.chart,d;I(this,\"bindAxes\",null,function(){(a.axisTypes||[]).forEach(function(e){var g=0;c[e].forEach(function(c){d=c.options;if(b[e]===g&&!d.isInternal||\"undefined\"!==typeof b[e]&&b[e]===d.id||\"undefined\"===\ntypeof b[e]&&0===d.index)a.insert(c.series),a[e]=c,c.isDirty=!0;d.isInternal||g++});a[e]||a.optionalAxis===e||m(18,!0,c)})});I(this,\"afterBindAxes\")};a.prototype.updateParallelArrays=function(a,b){var c=a.series,d=arguments,e=O(b)?function(d){var e=\"y\"===d&&c.toYData?c.toYData(a):a[d];c[d+\"Data\"][b]=e}:function(a){Array.prototype[b].apply(c[a+\"Data\"],Array.prototype.slice.call(d,2))};c.parallelArrays.forEach(e)};a.prototype.hasData=function(){return this.visible&&\"undefined\"!==typeof this.dataMax&&\n\"undefined\"!==typeof this.dataMin||this.visible&&this.yData&&0=this.cropStart?l-this.cropStart:l);!h&&O(l)&&e[l]&&e[l].touched&&(l=void 0);return l};a.prototype.updateData=function(a,b){var c=this.options,d=c.dataSorting,e=this.points,f=[],h=this.requireSorting,l=a.length===e.length,k,m,p,n=!0;this.xIncrement=null;a.forEach(function(a,\nb){var m=g(a)&&this.pointClass.prototype.optionsToObject.call({series:this},a)||{},n=m.x;if(m.id||O(n)){if(m=this.findPointIndex(m,p),-1===m||\"undefined\"===typeof m?f.push(a):e[m]&&a!==c.data[m]?(e[m].update(a,!1,null,!1),e[m].touched=!0,h&&(p=m+1)):e[m]&&(e[m].touched=!0),!l||b!==m||d&&d.enabled||this.hasDerivedData)k=!0}else f.push(a)},this);if(k)for(a=e.length;a--;)(m=e[a])&&!m.touched&&m.remove&&m.remove(!1,b);else!l||d&&d.enabled?n=!1:(a.forEach(function(a,b){a!==e[b].y&&e[b].update&&e[b].update(a,\n!1,null,!1)}),f.length=0);e.forEach(function(a){a&&(a.touched=!1)});if(!n)return!1;f.forEach(function(a){this.addPoint(a,!1,null,null,!1)},this);null===this.xIncrement&&this.xData&&this.xData.length&&(this.xIncrement=v(this.xData),this.autoIncrement());return!0};a.prototype.setData=function(a,b,c,d){var e=this,g=e.points,f=g&&g.length||0,h=e.options,l=e.chart,k=h.dataSorting,p=e.xAxis,n=h.turboThreshold,r=this.xData,E=this.yData,t=e.pointArrayMap;t=t&&t.length;var q=h.keys,w,B=0,C=1,x=null;a=a||[];\nvar v=a.length;b=K(b,!0);k&&k.enabled&&(a=this.sortData(a));!1!==d&&v&&f&&!e.cropped&&!e.hasGroupedData&&e.visible&&!e.isSeriesBoosting&&(w=this.updateData(a,c));if(!w){e.xIncrement=null;e.colorCounter=0;this.parallelArrays.forEach(function(a){e[a+\"Data\"].length=0});if(n&&v>n)if(x=e.getFirstValidPoint(a),O(x))for(c=0;ca?1:0}).forEach(function(a,b){a.x=b},this);b.linkedSeries&&b.linkedSeries.forEach(function(b){var c=\nb.options,e=c.data;c.dataSorting&&c.dataSorting.enabled||!e||(e.forEach(function(c,g){e[g]=d(b,c);a[g]&&(e[g].x=a[g].x,e[g].index=g)}),b.setData(e,!1))});return a};a.prototype.getProcessedData=function(a){var b=this.xAxis,c=this.options,d=c.cropThreshold,e=a||this.getExtremesFromAll||c.getExtremesFromAll,g=this.isCartesian;a=b&&b.val2lin;c=!(!b||!b.logarithmic);var f=0,h=this.xData,l=this.yData,k=this.requireSorting;var p=!1;var n=h.length;if(b){p=b.getExtremes();var r=p.min;var E=p.max;p=b.categories&&\n!b.names.length}if(g&&this.sorted&&!e&&(!d||n>d||this.forceCrop))if(h[n-1]E)h=[],l=[];else if(this.yData&&(h[0]E)){var t=this.cropData(this.xData,this.yData,r,E);h=t.xData;l=t.yData;f=t.start;t=!0}for(d=h.length||1;--d;)if(b=c?a(h[d])-a(h[d-1]):h[d]-h[d-1],0b&&k&&!p&&(m(15,!1,this.chart),k=!1);return{xData:h,yData:l,cropped:t,cropStart:f,closestPointRange:q}};a.prototype.processData=function(a){var b=this.xAxis;if(this.isCartesian&&\n!this.isDirty&&!b.isDirty&&!this.yAxis.isDirty&&!a)return!1;a=this.getProcessedData();this.cropped=a.cropped;this.cropStart=a.cropStart;this.processedXData=a.xData;this.processedYData=a.yData;this.closestPointRange=this.basePointRange=a.closestPointRange;I(this,\"afterProcessData\")};a.prototype.cropData=function(a,b,c,d,e){var g=a.length,f,h=0,l=g;e=K(e,this.cropShoulder);for(f=0;f=c){h=Math.max(0,f-e);break}for(c=f;cd){l=c+e;break}return{xData:a.slice(h,l),yData:b.slice(h,\nl),start:h,end:l}};a.prototype.generatePoints=function(){var a=this.options,b=a.data,c=this.processedXData,d=this.processedYData,e=this.pointClass,g=c.length,f=this.cropStart||0,h=this.hasGroupedData,l=a.keys,k=[];a=a.dataGrouping&&a.dataGrouping.groupAll?f:0;var m,p,n=this.data;if(!n&&!h){var r=[];r.length=b.length;n=this.data=r}l&&h&&(this.options.keys=!1);for(p=0;p=l&&(e[h-f]||r)<=k;if(t&&r)if(t=n.length)for(;t--;)O(n[t])&&(g[m++]=n[t]);else g[m++]=n}a={activeYData:g,dataMin:C(g),dataMax:v(g)};\nI(this,\"afterGetExtremes\",{dataExtremes:a});return a};a.prototype.applyExtremes=function(){var a=this.getExtremes();this.dataMin=a.dataMin;this.dataMax=a.dataMax;return a};a.prototype.getFirstValidPoint=function(a){for(var b=a.length,c=0,d=null;null===d&&c=A&&(A=null),x.total=x.stackTotal=u.total,x.percentage=u.total&&x.y/u.total*100,x.stackY=J,this.irregularWidths||u.setOffset(this.pointXOffset||0,this.barW||0));x.yBottom=g(A)?r(h.translate(A,0,1,0,1),-1E5,1E5):null;this.dataModify&&(J=this.dataModify.modifyValue(J,w));x.plotY=void 0;O(J)&&(u=h.translate(J,!1,!0,!1,!0),\"undefined\"!==typeof u&&(x.plotY=r(u,\n-1E5,1E5)));x.isInside=this.isPointInside(x);x.clientX=p?b(d.translate(v,0,0,0,1,m)):B;x.negative=x[q]<(a[q+\"Threshold\"]||n||0);x.category=e&&\"undefined\"!==typeof e[x.x]?e[x.x]:x.x;if(!x.isNull&&!1!==x.visible){\"undefined\"!==typeof F&&(C=Math.min(C,Math.abs(B-F)));var F=B}x.zone=this.zones.length?x.getZone():void 0;!x.graphic&&this.group&&f&&(x.isNew=!0)}this.closestPointRangePx=C;I(this,\"afterTranslate\")};a.prototype.getValidPoints=function(a,b,c){var d=this.chart;return(a||this.points||[]).filter(function(a){return b&&\n!d.isInsidePlot(a.plotX,a.plotY,{inverted:d.inverted})?!1:!1!==a.visible&&(c||!a.isNull)})};a.prototype.getClipBox=function(){var a=this.chart,b=this.xAxis,c=this.yAxis,d=Y(a.clipBox);b&&b.len!==a.plotSizeX&&(d.width=b.len);c&&c.len!==a.plotSizeY&&(d.height=c.len);return d};a.prototype.getSharedClipKey=function(){return this.sharedClipKey=(this.options.xAxis||0)+\",\"+(this.options.yAxis||0)};a.prototype.setClip=function(){var a=this.chart,b=this.group,c=this.markerGroup,d=a.sharedClips;a=a.renderer;\nvar e=this.getClipBox(),g=this.getSharedClipKey(),f=d[g];f?f.animate(e):d[g]=f=a.clipRect(e);b&&b.clip(!1===this.options.clip?void 0:f);c&&c.clip()};a.prototype.animate=function(a){var b=this.chart,c=this.group,d=this.markerGroup,e=b.inverted,g=k(this.options.animation),f=[this.getSharedClipKey(),g.duration,g.easing,g.defer].join(),h=b.sharedClips[f],l=b.sharedClips[f+\"m\"];if(a&&c)g=this.getClipBox(),h?h.attr(\"height\",g.height):(g.width=0,e&&(g.x=b.plotHeight),h=b.renderer.clipRect(g),b.sharedClips[f]=\nh,l=b.renderer.clipRect({x:e?(b.plotSizeX||0)+99:-99,y:e?-b.plotLeft:-b.plotTop,width:99,height:e?b.chartWidth:b.chartHeight}),b.sharedClips[f+\"m\"]=l),c.clip(h),d&&d.clip(l);else if(h&&!h.hasClass(\"highcharts-animating\")){b=this.getClipBox();var m=g.step;d&&d.element.childNodes.length&&(g.step=function(a,b){m&&m.apply(b,arguments);l&&l.element&&l.attr(b.prop,\"width\"===b.prop?a+99:a)});h.addClass(\"highcharts-animating\").animate(b,g)}};a.prototype.afterAnimate=function(){var a=this;this.setClip();L(this.chart.sharedClips,\nfunction(b,c,d){b&&!a.chart.container.querySelector('[clip-path=\"url(#'+b.id+')\"]')&&(b.destroy(),delete d[c])});this.finishedAnimating=!0;I(this,\"afterAnimate\")};a.prototype.drawPoints=function(){var a=this.points,b=this.chart,c=this.options.marker,d=this[this.specialGroup]||this.markerGroup,e=this.xAxis,g=K(c.enabled,!e||e.isRadial?!0:null,this.closestPointRangePx>=c.enabledThreshold*c.radius),f,h;if(!1!==c.enabled||this._hasPointMarkers)for(f=0;fD.max;a.resetZones&&0===p&&(p=void 0)});this.clips=e}else a.visible&&(g&&g.show(!0),f&&f.show(!0))};a.prototype.invertGroups=function(a){function b(){[\"group\",\"markerGroup\"].forEach(function(b){c[b]&&(d.renderer.isVML&&c[b].attr({width:c.yAxis.len,height:c.xAxis.len}),\nc[b].width=c.yAxis.len,c[b].height=c.xAxis.len,c[b].invert(c.isRadialSeries?!1:a))})}var c=this,d=c.chart;c.xAxis&&(c.eventsToUnbind.push(t(d,\"resize\",b)),b(),c.invertGroups=b)};a.prototype.plotGroup=function(a,b,c,d,e){var f=this[a],h=!f;c={visibility:c,zIndex:d||.1};\"undefined\"===typeof this.opacity||this.chart.styledMode||\"inactive\"===this.state||(c.opacity=this.opacity);h&&(this[a]=f=this.chart.renderer.g().add(e));f.addClass(\"highcharts-\"+b+\" highcharts-series-\"+this.index+\" highcharts-\"+this.type+\n\"-series \"+(g(this.colorIndex)?\"highcharts-color-\"+this.colorIndex+\" \":\"\")+(this.options.className||\"\")+(f.hasClass(\"highcharts-tracker\")?\" highcharts-tracker\":\"\"),!0);f.attr(c)[h?\"attr\":\"animate\"](this.getPlotBox());return f};a.prototype.getPlotBox=function(){var a=this.chart,b=this.xAxis,c=this.yAxis;a.inverted&&(b=c,c=this.xAxis);return{translateX:b?b.left:a.plotLeft,translateY:c?c.top:a.plotTop,scaleX:1,scaleY:1}};a.prototype.removeEvents=function(a){a||M(this);this.eventsToUnbind.length&&(this.eventsToUnbind.forEach(function(a){a()}),\nthis.eventsToUnbind.length=0)};a.prototype.render=function(){var a=this,b=a.chart,c=a.options,d=k(c.animation),e=a.visible?\"inherit\":\"hidden\",g=c.zIndex,f=a.hasRendered,h=b.seriesGroup,l=b.inverted;b=!a.finishedAnimating&&b.renderer.isSVG?d.duration:0;I(this,\"render\");var m=a.plotGroup(\"group\",\"series\",e,g,h);a.markerGroup=a.plotGroup(\"markerGroup\",\"markers\",e,g,h);!1!==c.clip&&a.setClip();a.animate&&b&&a.animate(!0);m.inverted=K(a.invertible,a.isCartesian)?l:!1;a.drawGraph&&(a.drawGraph(),a.applyZones());\na.visible&&a.drawPoints();a.drawDataLabels&&a.drawDataLabels();a.redrawPoints&&a.redrawPoints();a.drawTracker&&!1!==a.options.enableMouseTracking&&a.drawTracker();a.invertGroups(l);a.animate&&b&&a.animate();f||(b&&d.defer&&(b+=d.defer),a.animationTimeout=Q(function(){a.afterAnimate()},b||0));a.isDirty=!1;a.hasRendered=!0;I(a,\"afterRender\")};a.prototype.redraw=function(){var a=this.chart,b=this.isDirty||this.isDirtyData,c=this.group,d=this.xAxis,e=this.yAxis;c&&(a.inverted&&c.attr({width:a.plotWidth,\nheight:a.plotHeight}),c.animate({translateX:K(d&&d.left,a.plotLeft),translateY:K(e&&e.top,a.plotTop)}));this.translate();this.render();b&&delete this.kdTree};a.prototype.searchPoint=function(a,b){var c=this.xAxis,d=this.yAxis,e=this.chart.inverted;return this.searchKDTree({clientX:e?c.len-a.chartY+c.pos:a.chartX-c.pos,plotY:e?d.len-a.chartX+d.pos:a.chartY-d.pos},b,a)};a.prototype.buildKDTree=function(a){function b(a,d,e){var g=a&&a.length;if(g){var f=c.kdAxisArray[d%e];a.sort(function(a,b){return a[f]-\nb[f]});g=Math.floor(g/2);return{point:a[g],left:b(a.slice(0,g),d+1,e),right:b(a.slice(g+1),d+1,e)}}}this.buildingKdTree=!0;var c=this,d=-1p?\"left\":\"right\";r=0>p?\"right\":\"left\";b[t]&&(t=d(a,b[t],c+1,k),n=t[l]r;)t--;this.updateParallelArrays(n,\"splice\",t,0,0);this.updateParallelArrays(n,t);l&&n.name&&(l[r]=n.name);m.splice(t,0,a);p&&(this.data.splice(t,0,null),this.processData());\"point\"===g.legendType&&this.generatePoints();c&&(f[0]&&f[0].remove?f[0].remove(!1):(f.shift(),this.updateParallelArrays(n,\"shift\"),m.shift()));!1!==e&&I(this,\"addPoint\",{point:n});this.isDirtyData=this.isDirty=!0;b&&h.redraw(d)};a.prototype.removePoint=\nfunction(a,b,c){var d=this,g=d.data,f=g[a],h=d.points,l=d.chart,k=function(){h&&h.length===g.length&&h.splice(a,1);g.splice(a,1);d.options.data.splice(a,1);d.updateParallelArrays(f||{series:d},\"splice\",a,1);f&&f.destroy();d.isDirty=!0;d.isDirtyData=!0;b&&l.redraw()};e(c,l);b=K(b,!0);f?f.firePointEvent(\"remove\",null,k):k()};a.prototype.remove=function(a,b,c,d){function e(){g.destroy(d);f.isDirtyLegend=f.isDirtyBox=!0;f.linkSeries();K(a,!0)&&f.redraw(b)}var g=this,f=g.chart;!1!==c?I(g,\"remove\",null,\ne):e()};a.prototype.update=function(a,b){a=l(a,this.userOptions);I(this,\"update\",{options:a});var c=this,d=c.chart,e=c.userOptions,g=c.initialType||c.type,f=d.options.plotOptions,h=B[g].prototype,k=c.finishedAnimating&&{animation:!1},p={},n,r=[\"eventOptions\",\"navigatorSeries\",\"baseSeries\"],t=a.type||e.type||d.options.chart.type,q=!(this.hasDerivedData||t&&t!==this.type||\"undefined\"!==typeof a.pointStart||\"undefined\"!==typeof a.pointInterval||\"undefined\"!==typeof a.relativeXValue||c.hasOptionChanged(\"dataGrouping\")||\nc.hasOptionChanged(\"pointStart\")||c.hasOptionChanged(\"pointInterval\")||c.hasOptionChanged(\"pointIntervalUnit\")||c.hasOptionChanged(\"keys\"));t=t||g;q&&(r.push(\"data\",\"isDirtyData\",\"points\",\"processedXData\",\"processedYData\",\"xIncrement\",\"cropped\",\"_hasPointMarkers\",\"_hasPointLabels\",\"clips\",\"nodes\",\"layout\",\"mapMap\",\"mapData\",\"minY\",\"maxY\",\"minX\",\"maxX\"),!1!==a.visible&&r.push(\"area\",\"graph\"),c.parallelArrays.forEach(function(a){r.push(a+\"Data\")}),a.data&&(a.dataSorting&&D(c.options.dataSorting,a.dataSorting),\nthis.setData(a.data,!1)));a=Y(e,k,{index:\"undefined\"===typeof e.index?c.index:e.index,pointStart:K(f&&f.series&&f.series.pointStart,e.pointStart,c.xData[0])},!q&&{data:c.options.data},a);q&&a.data&&(a.data=c.options.data);r=[\"group\",\"markerGroup\",\"dataLabelsGroup\",\"transformGroup\"].concat(r);r.forEach(function(a){r[a]=c[a];delete c[a]});f=!1;if(B[t]){if(f=t!==c.type,c.remove(!1,!1,!1,!0),f)if(Object.setPrototypeOf)Object.setPrototypeOf(c,B[t].prototype);else{k=Object.hasOwnProperty.call(c,\"hcEvents\")&&\nc.hcEvents;for(n in h)c[n]=void 0;D(c,B[t].prototype);k?c.hcEvents=k:delete c.hcEvents}}else m(17,!0,d,{missingModuleFor:t});r.forEach(function(a){c[a]=r[a]});c.init(d,a);if(q&&this.points){var x=c.options;!1===x.visible?(p.graphic=1,p.dataLabel=1):c._hasPointLabels||(a=x.marker,h=x.dataLabels,!a||!1!==a.enabled&&(e.marker&&e.marker.symbol)===a.symbol||(p.graphic=1),h&&!1===h.enabled&&(p.dataLabel=1));this.points.forEach(function(a){a&&a.series&&(a.resolveColor(),Object.keys(p).length&&a.destroyElements(p),\n!1===x.showInLegend&&a.legendItem&&d.legend.destroyItem(a))},this)}c.initialType=g;d.linkSeries();f&&c.linkedSeries.length&&(c.isDirtyData=!0);I(this,\"afterUpdate\");K(b,!0)&&d.redraw(q?void 0:!1)};a.prototype.setName=function(a){this.name=this.options.name=this.userOptions.name=a;this.chart.isDirtyLegend=!0};a.prototype.hasOptionChanged=function(a){var b=this.options[a],c=this.chart.options.plotOptions,d=this.userOptions[a];return d?b!==d:b!==K(c&&c[this.type]&&c[this.type][a],c&&c.series&&c.series[a],\nb)};a.prototype.onMouseOver=function(){var a=this.chart,b=a.hoverSeries;a.pointer.setHoverChartIndex();if(b&&b!==this)b.onMouseOut();this.options.events.mouseOver&&I(this,\"mouseOver\");this.setState(\"hover\");a.hoverSeries=this};a.prototype.onMouseOut=function(){var a=this.options,b=this.chart,c=b.tooltip,d=b.hoverPoint;b.hoverSeries=null;if(d)d.onMouseOut();this&&a.events.mouseOut&&I(this,\"mouseOut\");!c||this.stickyTracking||c.shared&&!this.noSharedTooltip||c.hide();b.series.forEach(function(a){a.setState(\"\",\n!0)})};a.prototype.setState=function(a,b){var c=this,d=c.options,e=c.graph,g=d.inactiveOtherPoints,f=d.states,h=K(f[a||\"normal\"]&&f[a||\"normal\"].animation,c.chart.options.chart.animation),l=d.lineWidth,k=0,m=d.opacity;a=a||\"\";if(c.state!==a&&([c.group,c.markerGroup,c.dataLabelsGroup].forEach(function(b){b&&(c.state&&b.removeClass(\"highcharts-series-\"+c.state),a&&b.addClass(\"highcharts-series-\"+a))}),c.state=a,!c.chart.styledMode)){if(f[a]&&!1===f[a].enabled)return;a&&(l=f[a].lineWidth||l+(f[a].lineWidthPlus||\n0),m=K(f[a].opacity,m));if(e&&!e.dashstyle)for(d={\"stroke-width\":l},e.animate(d,h);c[\"zone-graph-\"+k];)c[\"zone-graph-\"+k].animate(d,h),k+=1;g||[c.group,c.markerGroup,c.dataLabelsGroup,c.labelBySeries].forEach(function(a){a&&a.animate({opacity:m},h)})}b&&g&&c.points&&c.setAllPointsToState(a||void 0)};a.prototype.setAllPointsToState=function(a){this.points.forEach(function(b){b.setState&&b.setState(a)})};a.prototype.setVisible=function(a,b){var c=this,d=c.chart,e=c.legendItem,g=d.options.chart.ignoreHiddenSeries,\nf=c.visible,h=(c.visible=a=c.options.visible=c.userOptions.visible=\"undefined\"===typeof a?!f:a)?\"show\":\"hide\";[\"group\",\"dataLabelsGroup\",\"markerGroup\",\"tracker\",\"tt\"].forEach(function(a){if(c[a])c[a][h]()});if(d.hoverSeries===c||(d.hoverPoint&&d.hoverPoint.series)===c)c.onMouseOut();e&&d.legend.colorizeItem(c,a);c.isDirty=!0;c.options.stacking&&d.series.forEach(function(a){a.options.stacking&&a.visible&&(a.isDirty=!0)});c.linkedSeries.forEach(function(b){b.setVisible(a,!1)});g&&(d.isDirtyBox=!0);\nI(c,h);!1!==b&&d.redraw()};a.prototype.show=function(){this.setVisible(!0)};a.prototype.hide=function(){this.setVisible(!1)};a.prototype.select=function(a){this.selected=a=this.options.selected=\"undefined\"===typeof a?!this.selected:a;this.checkbox&&(this.checkbox.checked=a);I(this,a?\"select\":\"unselect\")};a.prototype.shouldShowTooltip=function(a,b,c){void 0===c&&(c={});c.series=this;c.visiblePlotOnly=!0;return this.chart.isInsidePlot(a,b,c)};a.defaultOptions=H;return a}();D(a.prototype,{axisTypes:[\"xAxis\",\n\"yAxis\"],coll:\"series\",colorCounter:0,cropShoulder:1,directTouch:!1,drawLegendSymbol:y.drawLineMarker,isCartesian:!0,kdAxisArray:[\"clientX\",\"plotY\"],parallelArrays:[\"x\",\"y\"],pointClass:G,requireSorting:!0,sorted:!0});A.series=a;\"\";\"\";return a});M(a,\"Extensions/ScrollablePlotArea.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Axis/Axis.js\"],a[\"Core/Chart/Chart.js\"],a[\"Core/Series/Series.js\"],a[\"Core/Renderer/RendererRegistry.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y,G){var v=a.stop,A=\nG.addEvent,q=G.createElement,n=G.merge,k=G.pick;A(z,\"afterSetChartSize\",function(a){var c=this.options.chart.scrollablePlotArea,e=c&&c.minWidth;c=c&&c.minHeight;if(!this.renderer.forExport){if(e){if(this.scrollablePixelsX=e=Math.max(0,e-this.chartWidth)){this.scrollablePlotBox=this.renderer.scrollablePlotBox=n(this.plotBox);this.plotBox.width=this.plotWidth+=e;this.inverted?this.clipBox.height+=e:this.clipBox.width+=e;var f={1:{name:\"right\",value:e}}}}else c&&(this.scrollablePixelsY=e=Math.max(0,\nc-this.chartHeight))&&(this.scrollablePlotBox=this.renderer.scrollablePlotBox=n(this.plotBox),this.plotBox.height=this.plotHeight+=e,this.inverted?this.clipBox.width+=e:this.clipBox.height+=e,f={2:{name:\"bottom\",value:e}});f&&!a.skipAxes&&this.axes.forEach(function(a){f[a.side]?a.getPlotLinePath=function(){var c=f[a.side].name,e=this[c];this[c]=e-f[a.side].value;var h=u.prototype.getPlotLinePath.apply(this,arguments);this[c]=e;return h}:(a.setAxisSize(),a.setAxisTranslation())})}});A(z,\"render\",function(){this.scrollablePixelsX||\nthis.scrollablePixelsY?(this.setUpScrolling&&this.setUpScrolling(),this.applyFixed()):this.fixedDiv&&this.applyFixed()});z.prototype.setUpScrolling=function(){var a=this,c={WebkitOverflowScrolling:\"touch\",overflowX:\"hidden\",overflowY:\"hidden\"};this.scrollablePixelsX&&(c.overflowX=\"auto\");this.scrollablePixelsY&&(c.overflowY=\"auto\");this.scrollingParent=q(\"div\",{className:\"highcharts-scrolling-parent\"},{position:\"relative\"},this.renderTo);this.scrollingContainer=q(\"div\",{className:\"highcharts-scrolling\"},\nc,this.scrollingParent);A(this.scrollingContainer,\"scroll\",function(){a.pointer&&delete a.pointer.chartPosition});this.innerContainer=q(\"div\",{className:\"highcharts-inner-container\"},null,this.scrollingContainer);this.innerContainer.appendChild(this.container);this.setUpScrolling=null};z.prototype.moveFixedElements=function(){var a=this.container,c=this.fixedRenderer,h=\".highcharts-contextbutton .highcharts-credits .highcharts-legend .highcharts-legend-checkbox .highcharts-navigator-series .highcharts-navigator-xaxis .highcharts-navigator-yaxis .highcharts-navigator .highcharts-reset-zoom .highcharts-drillup-button .highcharts-scrollbar .highcharts-subtitle .highcharts-title\".split(\" \"),\nf;this.scrollablePixelsX&&!this.inverted?f=\".highcharts-yaxis\":this.scrollablePixelsX&&this.inverted?f=\".highcharts-xaxis\":this.scrollablePixelsY&&!this.inverted?f=\".highcharts-xaxis\":this.scrollablePixelsY&&this.inverted&&(f=\".highcharts-yaxis\");f&&h.push(f+\":not(.highcharts-radial-axis)\",f+\"-labels:not(.highcharts-radial-axis-labels)\");h.forEach(function(e){[].forEach.call(a.querySelectorAll(e),function(a){(a.namespaceURI===c.SVG_NS?c.box:c.box.parentNode).appendChild(a);a.style.pointerEvents=\"auto\"})})};\nz.prototype.applyFixed=function(){var a=!this.fixedDiv,c=this.options.chart,h=c.scrollablePlotArea,f=y.getRendererType();a?(this.fixedDiv=q(\"div\",{className:\"highcharts-fixed\"},{position:\"absolute\",overflow:\"hidden\",pointerEvents:\"none\",zIndex:(c.style&&c.style.zIndex||0)+2,top:0},null,!0),this.scrollingContainer&&this.scrollingContainer.parentNode.insertBefore(this.fixedDiv,this.scrollingContainer),this.renderTo.style.overflow=\"visible\",this.fixedRenderer=c=new f(this.fixedDiv,this.chartWidth,this.chartHeight,\nthis.options.chart.style),this.scrollableMask=c.path().attr({fill:this.options.chart.backgroundColor||\"#fff\",\"fill-opacity\":k(h.opacity,.85),zIndex:-1}).addClass(\"highcharts-scrollable-mask\").add(),A(this,\"afterShowResetZoom\",this.moveFixedElements),A(this,\"afterDrilldown\",this.moveFixedElements),A(this,\"afterLayOutTitles\",this.moveFixedElements)):this.fixedRenderer.setSize(this.chartWidth,this.chartHeight);if(this.scrollableDirty||a)this.scrollableDirty=!1,this.moveFixedElements();c=this.chartWidth+\n(this.scrollablePixelsX||0);f=this.chartHeight+(this.scrollablePixelsY||0);v(this.container);this.container.style.width=c+\"px\";this.container.style.height=f+\"px\";this.renderer.boxWrapper.attr({width:c,height:f,viewBox:[0,0,c,f].join(\" \")});this.chartBackground.attr({width:c,height:f});this.scrollingContainer.style.height=this.chartHeight+\"px\";a&&(h.scrollPositionX&&(this.scrollingContainer.scrollLeft=this.scrollablePixelsX*h.scrollPositionX),h.scrollPositionY&&(this.scrollingContainer.scrollTop=this.scrollablePixelsY*\nh.scrollPositionY));f=this.axisOffset;a=this.plotTop-f[0]-1;h=this.plotLeft-f[3]-1;c=this.plotTop+this.plotHeight+f[2]+1;f=this.plotLeft+this.plotWidth+f[1]+1;var n=this.plotLeft+this.plotWidth-(this.scrollablePixelsX||0),p=this.plotTop+this.plotHeight-(this.scrollablePixelsY||0);a=this.scrollablePixelsX?[[\"M\",0,a],[\"L\",this.plotLeft-1,a],[\"L\",this.plotLeft-1,c],[\"L\",0,c],[\"Z\"],[\"M\",n,a],[\"L\",this.chartWidth,a],[\"L\",this.chartWidth,c],[\"L\",n,c],[\"Z\"]]:this.scrollablePixelsY?[[\"M\",h,0],[\"L\",h,this.plotTop-\n1],[\"L\",f,this.plotTop-1],[\"L\",f,0],[\"Z\"],[\"M\",h,p],[\"L\",h,this.chartHeight],[\"L\",f,this.chartHeight],[\"L\",f,p],[\"Z\"]]:[[\"M\",0,0]];\"adjustHeight\"!==this.redrawTrigger&&this.scrollableMask.attr({d:a})};A(u,\"afterInit\",function(){this.chart.scrollableDirty=!0});A(F,\"show\",function(){this.chart.scrollableDirty=!0});\"\"});M(a,\"Core/Axis/StackingAxis.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Axis/Axis.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=a.getDeferredAnimation,y=z.addEvent,G=\nz.destroyObjectProperties,H=z.fireEvent,A=z.isNumber,q=z.objectEach,n;(function(a){function e(){var a=this.stacking;if(a){var c=a.stacks;q(c,function(a,e){G(a);c[e]=null});a&&a.stackTotalGroup&&a.stackTotalGroup.destroy()}}function c(){this.stacking||(this.stacking=new f(this))}var h=[];a.compose=function(a){-1===h.indexOf(a)&&(h.push(a),y(a,\"init\",c),y(a,\"destroy\",e));return a};var f=function(){function a(a){this.oldStacks={};this.stacks={};this.stacksTouched=0;this.axis=a}a.prototype.buildStacks=\nfunction(){var a=this.axis,c=a.series,e=a.options.reversedStacks,f=c.length,h;if(!a.isXAxis){this.usePercentage=!1;for(h=f;h--;){var k=c[e?h:f-h-1];k.setStackedPoints();k.setGroupedPoints()}for(h=0;hf&&n.shadow));p&&(p.startX=k.xMap,p.isArea=k.isArea)})};A.prototype.getGraphPath=function(a,n,k){var e=this,c=e.options,h=[],f=[],q,p=c.step;a=a||e.points;var v=a.reversed;v&&a.reverse();\n(p={right:1,center:2}[p]||p&&3)&&v&&(p=4-p);a=this.getValidPoints(a,!1,!(c.connectNulls&&!n&&!k));a.forEach(function(t,v){var w=t.plotX,r=t.plotY,l=a[v-1];(t.leftCliff||l&&l.rightCliff)&&!k&&(q=!0);t.isNull&&!y(n)&&0a&&v>c?(v=Math.max(a,c),t=2*c-v):vk&&t>c?(t=Math.max(k,c),v=2*c-t):t=Math.abs(c)&&.5a.closestPointRange*a.xAxis.transA;f=a.borderWidth=J(d.borderWidth,f?0:1);var l=a.xAxis,k=a.yAxis,n=d.threshold,p=a.translatedThreshold=k.getThreshold(n),r=J(d.minPointLength,5),q=a.getColumnMetrics(),t=q.width,v=a.pointXOffset=q.offset,u=a.dataMin,w=a.dataMax,C=a.barW=Math.max(t,1+2*f);c.inverted&&(p-=.5);d.pointPadding&&(C=Math.ceil(C));y.prototype.translate.apply(a);a.points.forEach(function(b){var g=\nJ(b.yBottom,p),f=999+Math.abs(g),m=b.plotX||0;f=e(b.plotY,-f,k.len+f);var x=Math.min(f,g),D=Math.max(f,g)-x,y=t,A=m+v,z=C;r&&Math.abs(D)r?g-r:p-(m?r:0));h(b.options.pointWidth)&&(y=z=Math.ceil(b.options.pointWidth),A-=Math.round((y-t)/2));d.centerInCategory&&(A=a.adjustForMissingColumns(A,y,b,q));b.barX=A;b.pointWidth=y;b.tooltipPos=c.inverted?[e(k.len+\nk.pos-c.plotLeft-f,k.pos-c.plotLeft,k.len+k.pos-c.plotLeft),l.len+l.pos-c.plotTop-A-z/2,D]:[l.left-c.plotLeft+A+z/2,e(f+k.pos-c.plotTop,k.pos-c.plotTop,k.len+k.pos-c.plotTop),D];b.shapeType=a.pointClass.prototype.shapeType||\"rect\";b.shapeArgs=a.crispCol.apply(a,b.isNull?[A,p,z,0]:[A,x,z,D])})};l.prototype.drawGraph=function(){this.group[this.dense?\"addClass\":\"removeClass\"](\"highcharts-dense-data\")};l.prototype.pointAttribs=function(a,c){var b=this.options,e=this.pointAttrToOptions||{},g=e.stroke||\n\"borderColor\",f=e[\"stroke-width\"]||\"borderWidth\",h=a&&a.color||this.color,l=a&&a[g]||b[g]||h;e=a&&a.options.dashStyle||b.dashStyle;var k=a&&a[f]||b[f]||this[f]||0,p=J(a&&a.opacity,b.opacity,1);if(a&&this.zones.length){var r=a.getZone();h=a.options.color||r&&(r.color||a.nonZonedColor)||this.color;r&&(l=r.borderColor||l,e=r.dashStyle||e,k=r.borderWidth||k)}c&&a&&(a=t(b.states[c],a.options.states&&a.options.states[c]||{}),c=a.brightness,h=a.color||\"undefined\"!==typeof c&&n(h).brighten(a.brightness).get()||\nh,l=a[g]||l,k=a[f]||k,e=a.dashStyle||e,p=J(a.opacity,p));g={fill:h,stroke:l,\"stroke-width\":k,opacity:p};e&&(g.dashstyle=e);return g};l.prototype.drawPoints=function(){var a=this,c=this.chart,d=a.options,e=c.renderer,f=d.animationLimit||250,h;a.points.forEach(function(b){var g=b.graphic,l=!!g,k=g&&c.pointCountv,\"left\"===q?m.y-=v?p.height:0:\"center\"===q?(m.x-=p.width/2,m.y-=p.height/2):\"right\"===q&&(m.x-=p.width,m.y-=v?0:p.height),b.placed=!0,b.alignAttr=m):(v(d),b.align(c,void 0,d),m=b.alignAttr);u&&0<=d.height?this.justifyDataLabel(b,c,m,p,d,f):e(c.crop,!0)&&(w=h.isInsidePlot(m.x,m.y,{paneCoordinates:!0,series:g})&&h.isInsidePlot(m.x+p.width,m.y+p.height,{paneCoordinates:!0,\nseries:g}));if(c.shape&&!r)b[f?\"attr\":\"animate\"]({anchorX:l?h.plotWidth-a.plotY:a.plotX,anchorY:l?h.plotHeight-a.plotX:a.plotY})}f&&k&&(b.placed=!1);w||k&&!u||(b.hide(!0),b.placed=!1)}function h(a,b){var c=b.filter;return c?(b=c.operator,a=a[c.property],c=c.value,\">\"===b&&a>c||\"<\"===b&&a=\"===b&&a>=c||\"<=\"===b&&a<=c||\"==\"===b&&a==c||\"===\"===b&&a===c?!0:!1):!0}function u(){var a=this,b=a.chart,g=a.options,d=a.points,f=a.hasRendered||0,n=b.renderer,p=g.dataLabels,r,t=p.animation;t=p.defer?v(b,\nt,a):{defer:0,duration:0};p=z(z(b.options.plotOptions&&b.options.plotOptions.series&&b.options.plotOptions.series.dataLabels,b.options.plotOptions&&b.options.plotOptions[a.type]&&b.options.plotOptions[a.type].dataLabels),p);A(this,\"drawDataLabels\");if(q(p)||p.enabled||a._hasPointLabels){var u=a.plotGroup(\"dataLabelsGroup\",\"data-labels\",f?\"inherit\":\"hidden\",p.zIndex||6);u.attr({opacity:+f});!f&&(f=a.dataLabelsGroup)&&(a.visible&&u.show(!0),f[g.animation?\"animate\":\"attr\"]({opacity:1},t));d.forEach(function(d){r=\nc(z(p,d.dlOptions||d.options&&d.options.dataLabels));r.forEach(function(c,f){var l=c.enabled&&(!d.isNull||d.dataLabelOnNull)&&h(d,c),m=d.connectors?d.connectors[f]:d.connector,p=d.dataLabels?d.dataLabels[f]:d.dataLabel,r=e(c.distance,d.labelDistance),q=!p;if(l){var t=d.getLabelConfig();var v=e(c[d.formatPrefix+\"Format\"],c.format);t=G(v)?y(v,t,b):(c[d.formatPrefix+\"Formatter\"]||c.formatter).call(t,c);v=c.style;var w=c.rotation;b.styledMode||(v.color=e(c.color,v.color,a.color,\"#000000\"),\"contrast\"===\nv.color?(d.contrastColor=n.getContrast(d.color||a.color),v.color=!G(r)&&c.inside||0>r||g.stacking?d.contrastColor:\"#000000\"):delete d.contrastColor,g.cursor&&(v.cursor=g.cursor));var C={r:c.borderRadius||0,rotation:w,padding:c.padding,zIndex:1};b.styledMode||(C.fill=c.backgroundColor,C.stroke=c.borderColor,C[\"stroke-width\"]=c.borderWidth);k(C,function(a,b){\"undefined\"===typeof a&&delete C[b]})}!p||l&&G(t)&&!!p.div===!!c.useHTML||(d.dataLabel=p=d.dataLabel&&d.dataLabel.destroy(),d.dataLabels&&(1===\nd.dataLabels.length?delete d.dataLabels:delete d.dataLabels[f]),f||delete d.dataLabel,m&&(d.connector=d.connector.destroy(),d.connectors&&(1===d.connectors.length?delete d.connectors:delete d.connectors[f])));l&&G(t)&&(p?C.text=t:(d.dataLabels=d.dataLabels||[],p=d.dataLabels[f]=w?n.text(t,0,-9999,c.useHTML).addClass(\"highcharts-data-label\"):n.label(t,0,-9999,c.shape,null,null,c.useHTML,null,\"data-label\"),f||(d.dataLabel=p),p.addClass(\" highcharts-data-label-color-\"+d.colorIndex+\" \"+(c.className||\n\"\")+(c.useHTML?\" highcharts-tracker\":\"\"))),p.options=c,p.attr(C),b.styledMode||p.css(v).shadow(c.shadow),p.added||p.add(u),c.textPath&&!c.useHTML&&(p.setTextPath(d.getDataLabelPath&&d.getDataLabelPath(p)||d.graphic,c.textPath),d.dataLabelPath&&!c.textPath.enabled&&(d.dataLabelPath=d.dataLabelPath.destroy())),a.alignDataLabel(d,p,c,null,q))})})}A(this,\"afterDrawDataLabels\")}function t(a,b,c,d,e,f){var g=this.chart,h=b.align,k=b.verticalAlign,l=a.box?0:a.padding||0,m=b.x;m=void 0===m?0:m;var n=b.y;\nn=void 0===n?0:n;var p=(c.x||0)+l;if(0>p){\"right\"===h&&0<=m?(b.align=\"left\",b.inside=!0):m-=p;var r=!0}p=(c.x||0)+d.width-l;p>g.plotWidth&&(\"left\"===h&&0>=m?(b.align=\"right\",b.inside=!0):m+=g.plotWidth-p,r=!0);p=c.y+l;0>p&&(\"bottom\"===k&&0<=n?(b.verticalAlign=\"top\",b.inside=!0):n-=p,r=!0);p=(c.y||0)+d.height-l;p>g.plotHeight&&(\"top\"===k&&0>=n?(b.verticalAlign=\"bottom\",b.inside=!0):n+=g.plotHeight-p,r=!0);r&&(b.x=m,b.y=n,a.placed=!f,a.align(b,void 0,e));return r}function z(a,b){var c=[],d;if(q(a)&&\n!q(b))c=a.map(function(a){return n(a,b)});else if(q(b)&&!q(a))c=b.map(function(b){return n(a,b)});else if(q(a)||q(b))for(d=Math.max(a.length,b.length);d--;)c[d]=n(a[d],b[d]);else c=n(a,b);return c}function C(a,b,c,d,e){var g=this.chart,f=g.inverted,h=this.xAxis,k=h.reversed,l=f?b.height/2:b.width/2;a=(a=a.pointWidth)?a/2:0;b.startXPos=f?e.x:k?-l-a:h.width-l+a;b.startYPos=f?k?this.yAxis.height-l+a:-l-a:e.y;d?\"hidden\"===b.visibility&&(b.show(),b.attr({opacity:0}).animate({opacity:1})):b.attr({opacity:1}).animate({opacity:0},\nvoid 0,b.hide);g.hasRendered&&(c&&b.attr({x:b.startXPos,y:b.startYPos}),b.placed=!0)}var r=[];a.compose=function(a){if(-1===r.indexOf(a)){var b=a.prototype;r.push(a);b.alignDataLabel=f;b.drawDataLabels=u;b.justifyDataLabel=t;b.setDataLabelStartPos=C}}})(h||(h={}));\"\";return h});M(a,\"Series/Column/ColumnDataLabel.js\",[a[\"Core/Series/DataLabel.js\"],a[\"Core/Series/SeriesRegistry.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=u.series,y=z.merge,G=z.pick,H;(function(u){function q(a,e,c,h,f){var k=\nthis.chart.inverted,n=a.series,q=(n.xAxis?n.xAxis.len:this.chart.plotSizeX)||0;n=(n.yAxis?n.yAxis.len:this.chart.plotSizeY)||0;var t=a.dlBox||a.shapeArgs,u=G(a.below,a.plotY>G(this.translatedThreshold,n)),C=G(c.inside,!!this.options.stacking);t&&(h=y(t),0>h.y&&(h.height+=h.y,h.y=0),t=h.y+h.height-n,0\\u25cf {series.name}
',\npointFormat:\"x: {point.x}
y: {point.y}
\"}});return n}(u);H(F.prototype,{drawTracker:a.prototype.drawTracker,sorted:!1,requireSorting:!1,noSharedTooltip:!0,trackerGroups:[\"group\",\"markerGroup\",\"dataLabelsGroup\"],takeOrdinalPosition:!1});G(F,\"afterTranslate\",function(){this.applyJitter()});z.registerSeriesType(\"scatter\",F);\"\";return F});M(a,\"Series/CenteredUtilities.js\",[a[\"Core/Globals.js\"],a[\"Core/Series/Series.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=a.deg2rad,y=z.isNumber,\nG=z.pick,H=z.relativeLength,A;(function(a){a.getCenter=function(){var a=this.options,k=this.chart,e=2*(a.slicedOffset||0),c=k.plotWidth-2*e,h=k.plotHeight-2*e,f=a.center,q=Math.min(c,h),p=a.size,v=a.innerSize||0;\"string\"===typeof p&&(p=parseFloat(p));\"string\"===typeof v&&(v=parseFloat(v));a=[G(f[0],\"50%\"),G(f[1],\"50%\"),G(p&&0>p?void 0:a.size,\"100%\"),G(v&&0>v?void 0:a.innerSize||0,\"0%\")];!k.angular||this instanceof u||(a[3]=0);for(f=0;4>f;++f)p=a[f],k=2>f||2===f&&/%$/.test(p),a[f]=H(p,[c,h,q,a[2]][f])+\n(k?e:0);a[3]>a[2]&&(a[3]=a[2]);return a};a.getStartAndEndRadians=function(a,k){a=y(a)?a:0;k=y(k)&&k>a&&360>k-a?k:a+360;return{start:v*(a+-90),end:v*(k+-90)}}})(A||(A={}));\"\";return A});M(a,\"Series/Pie/PiePoint.js\",[a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Series/Point.js\"],a[\"Core/Utilities.js\"]],function(a,u,z){var v=this&&this.__extends||function(){var a=function(e,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var e in c)c.hasOwnProperty(e)&&\n(a[e]=c[e])};return a(e,c)};return function(e,c){function h(){this.constructor=e}a(e,c);e.prototype=null===c?Object.create(c):(h.prototype=c.prototype,new h)}}(),y=a.setAnimation,G=z.addEvent,H=z.defined;a=z.extend;var A=z.isNumber,q=z.pick,n=z.relativeLength;u=function(a){function e(){var c=null!==a&&a.apply(this,arguments)||this;c.labelDistance=void 0;c.options=void 0;c.series=void 0;return c}v(e,a);e.prototype.getConnectorPath=function(){var a=this.labelPosition,e=this.series.options.dataLabels,\nf=this.connectorShapes,k=e.connectorShape;f[k]&&(k=f[k]);return k.call(this,{x:a.final.x,y:a.final.y,alignment:a.alignment},a.connectorPosition,e)};e.prototype.getTranslate=function(){return this.sliced?this.slicedTranslation:{translateX:0,translateY:0}};e.prototype.haloPath=function(a){var c=this.shapeArgs;return this.sliced||!this.visible?[]:this.series.chart.renderer.symbols.arc(c.x,c.y,c.r+a,c.r+a,{innerR:c.r-1,start:c.start,end:c.end})};e.prototype.init=function(){var c=this;a.prototype.init.apply(this,\narguments);this.name=q(this.name,\"Slice\");var e=function(a){c.slice(\"select\"===a.type)};G(this,\"select\",e);G(this,\"unselect\",e);return this};e.prototype.isValid=function(){return A(this.y)&&0<=this.y};e.prototype.setVisible=function(a,e){var c=this,h=this.series,k=h.chart,n=h.options.ignoreHiddenPoint;e=q(e,n);a!==this.visible&&(this.visible=this.options.visible=a=\"undefined\"===typeof a?!this.visible:a,h.options.data[h.data.indexOf(this)]=this.options,[\"graphic\",\"dataLabel\",\"connector\",\"shadowGroup\"].forEach(function(e){if(c[e])c[e][a?\n\"show\":\"hide\"](a)}),this.legendItem&&k.legend.colorizeItem(this,a),a||\"hover\"!==this.state||this.setState(\"\"),n&&(h.isDirty=!0),e&&k.redraw())};e.prototype.slice=function(a,e,f){var c=this.series;y(f,c.chart);q(e,!0);this.sliced=this.options.sliced=H(a)?a:!this.sliced;c.options.data[c.data.indexOf(this)]=this.options;this.graphic&&this.graphic.animate(this.getTranslate());this.shadowGroup&&this.shadowGroup.animate(this.getTranslate())};return e}(u);a(u.prototype,{connectorShapes:{fixedOffset:function(a,\ne,c){var h=e.breakAt;e=e.touchingSliceAt;return[[\"M\",a.x,a.y],c.softConnector?[\"C\",a.x+(\"left\"===a.alignment?-5:5),a.y,2*h.x-e.x,2*h.y-e.y,h.x,h.y]:[\"L\",h.x,h.y],[\"L\",e.x,e.y]]},straight:function(a,e){e=e.touchingSliceAt;return[[\"M\",a.x,a.y],[\"L\",e.x,e.y]]},crookedLine:function(a,e,c){e=e.touchingSliceAt;var h=this.series,f=h.center[0],k=h.chart.plotWidth,p=h.chart.plotLeft;h=a.alignment;var q=this.shapeArgs.r;c=n(c.crookDistance,1);k=\"left\"===h?f+q+(k+p-f-q)*(1-c):p+(f-q)*c;c=[\"L\",k,a.y];f=!0;if(\"left\"===\nh?k>a.x||ke.x)f=!1;a=[[\"M\",a.x,a.y]];f&&a.push(c);a.push([\"L\",e.x,e.y]);return a}}});return u});M(a,\"Series/Pie/PieSeries.js\",[a[\"Series/CenteredUtilities.js\"],a[\"Series/Column/ColumnSeries.js\"],a[\"Core/Globals.js\"],a[\"Core/Legend/LegendSymbol.js\"],a[\"Series/Pie/PiePoint.js\"],a[\"Core/Series/Series.js\"],a[\"Core/Series/SeriesRegistry.js\"],a[\"Core/Renderer/SVG/Symbols.js\"],a[\"Core/Utilities.js\"]],function(a,u,z,F,y,G,H,A,q){var n=this&&this.__extends||function(){var a=function(c,e){a=Object.setPrototypeOf||\n{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var e in c)c.hasOwnProperty(e)&&(a[e]=c[e])};return a(c,e)};return function(c,e){function f(){this.constructor=c}a(c,e);c.prototype=null===e?Object.create(e):(f.prototype=e.prototype,new f)}}(),k=a.getStartAndEndRadians;z=z.noop;var e=q.clamp,c=q.extend,h=q.fireEvent,f=q.merge,v=q.pick,p=q.relativeLength;q=function(a){function c(){var c=null!==a&&a.apply(this,arguments)||this;c.center=void 0;c.data=void 0;c.maxLabelDistance=\nvoid 0;c.options=void 0;c.points=void 0;return c}n(c,a);c.prototype.animate=function(a){var c=this,e=c.points,f=c.startAngleRad;a||e.forEach(function(a){var b=a.graphic,d=a.shapeArgs;b&&d&&(b.attr({r:v(a.startR,c.center&&c.center[3]/2),start:f,end:f}),b.animate({r:d.r,start:d.start,end:d.end},c.options.animation))})};c.prototype.drawEmpty=function(){var a=this.startAngleRad,c=this.endAngleRad,e=this.options;if(0===this.total&&this.center){var f=this.center[0];var b=this.center[1];this.graph||(this.graph=\nthis.chart.renderer.arc(f,b,this.center[1]/2,0,a,c).addClass(\"highcharts-empty-series\").add(this.group));this.graph.attr({d:A.arc(f,b,this.center[2]/2,0,{start:a,end:c,innerR:this.center[3]/2})});this.chart.styledMode||this.graph.attr({\"stroke-width\":e.borderWidth,fill:e.fillColor||\"none\",stroke:e.color||\"#cccccc\"})}else this.graph&&(this.graph=this.graph.destroy())};c.prototype.drawPoints=function(){var a=this.chart.renderer;this.points.forEach(function(c){c.graphic&&c.hasNewShapeType()&&(c.graphic=\nc.graphic.destroy());c.graphic||(c.graphic=a[c.shapeType](c.shapeArgs).add(c.series.group),c.delayedRendering=!0)})};c.prototype.generatePoints=function(){a.prototype.generatePoints.call(this);this.updateTotals()};c.prototype.getX=function(a,c,f){var h=this.center,b=this.radii?this.radii[f.index]||0:h[2]/2;a=Math.asin(e((a-h[1])/(b+f.labelDistance),-1,1));return h[0]+(c?-1:1)*Math.cos(a)*(b+f.labelDistance)+(01.5*Math.PI?y-=2*Math.PI:y<-Math.PI/2&&(y+=2*Math.PI);u.slicedTranslation={translateX:Math.round(Math.cos(y)*e),translateY:Math.round(Math.sin(y)*e)};B=Math.cos(y)*a[2]/2;var A=Math.sin(y)*a[2]/2;u.tooltipPos=[a[0]+.7*B,a[1]+.7*A];u.half=y<-Math.PI/2||y>Math.PI/2?1:0;u.angle=y;w=Math.min(f,u.labelDistance/5);u.labelPosition={natural:{x:a[0]+B+\nMath.cos(y)*u.labelDistance,y:a[1]+A+Math.sin(y)*u.labelDistance},\"final\":{},alignment:0>u.labelDistance?\"center\":u.half?\"right\":\"left\",connectorPosition:{breakAt:{x:a[0]+B+Math.cos(y)*w,y:a[1]+A+Math.sin(y)*w},touchingSliceAt:{x:a[0]+B,y:a[1]+A}}}}h(this,\"afterTranslate\")};c.prototype.updateTotals=function(){var a=this.points,c=a.length,e=this.options.ignoreHiddenPoint,f,b=0;for(f=0;fv&&(a.dataLabel.css({width:Math.round(.7*\nv)+\"px\"}),a.dataLabel.shortened=!0)):(a.dataLabel=a.dataLabel.destroy(),a.dataLabels&&1===a.dataLabels.length&&delete a.dataLabels))}),C.forEach(function(e,f){var l=e.length,m=[],r;if(l){a.sortByAngle(e,f-.5);if(0h-d&&0===f&&(q=Math.round(N+M-h+d),y[1]=Math.max(q,y[1])),0>V-T/2?y[0]=Math.max(Math.round(-V+T/2),y[0]):V+T/2>n&&(y[2]=Math.max(Math.round(V+T/2-n),y[2])),\nJ.sideOverflow=q)}}}),0===q(y)||this.verifyDataLabelOverflow(y))&&(this.placeDataLabels(),this.points.forEach(function(d){R=e(g,d.options.dataLabels);if(F=c(R.connectorWidth,1)){var f;G=d.connector;if((J=d.dataLabel)&&J._pos&&d.visible&&0c.bottom-2?e:b,c.half,c)},justify:function(a,c,b){return b[0]+(a.half?-1:1)*(c+a.labelDistance)},alignToPlotEdges:function(a,c,b,e){a=a.getBBox().width;return c?a+e:b-a-e},alignToConnectors:function(a,c,b,e){var d=0,g;a.forEach(function(a){g=a.dataLabel.getBBox().width;g>d&&(d=g)});return c?d+e:b-d-e}};f.compose=function(c){a.compose(A);-1===w.indexOf(c)&&(w.push(c),c=c.prototype,c.dataLabelPositioners=C,c.alignDataLabel=\nv,c.drawDataLabels=p,c.placeDataLabels=u,c.verifyDataLabelOverflow=t)}})(f||(f={}));return f});M(a,\"Extensions/OverlappingDataLabels.js\",[a[\"Core/Chart/Chart.js\"],a[\"Core/Utilities.js\"]],function(a,u){function v(a,k){var e=!1;if(a){var c=a.newOpacity;a.oldOpacity!==c&&(a.alignAttr&&a.placed?(a[c?\"removeClass\":\"addClass\"](\"highcharts-data-label-hidden\"),e=!0,a.alignAttr.opacity=c,a[a.isOld?\"animate\":\"attr\"](a.alignAttr,null,function(){k.styledMode||a.css({pointerEvents:c?\"auto\":\"none\"})}),y(k,\"afterHideOverlappingLabel\")):\na.attr({opacity:c}));a.isOld=!0}return e}var F=u.addEvent,y=u.fireEvent,G=u.isArray,H=u.isNumber,A=u.objectEach,q=u.pick;F(a,\"render\",function(){var a=this,k=[];(this.labelCollectors||[]).forEach(function(a){k=k.concat(a())});(this.yAxis||[]).forEach(function(a){a.stacking&&a.options.stackLabels&&!a.options.stackLabels.allowOverlap&&A(a.stacking.stacks,function(a){A(a,function(a){a.label&&\"hidden\"!==a.label.visibility&&k.push(a.label)})})});(this.series||[]).forEach(function(e){var c=e.options.dataLabels;\ne.visible&&(!1!==c.enabled||e._hasPointLabels)&&(c=function(c){return c.forEach(function(c){c.visible&&(G(c.dataLabels)?c.dataLabels:c.dataLabel?[c.dataLabel]:[]).forEach(function(e){var f=e.options;e.labelrank=q(f.labelrank,c.labelrank,c.shapeArgs&&c.shapeArgs.height);f.allowOverlap?(e.oldOpacity=e.opacity,e.newOpacity=1,v(e,a)):k.push(e)})})},c(e.nodes||[]),c(e.points))});this.hideOverlappingLabels(k)});a.prototype.hideOverlappingLabels=function(a){var k=this,e=a.length,c=k.renderer,h,f,n,p=!1;\nvar q=function(a){var e,f=a.box?0:a.padding||0,b=e=0,g;if(a&&(!a.alignAttr||a.placed)){var d=a.alignAttr||{x:a.attr(\"x\"),y:a.attr(\"y\")};var h=a.parentGroup;a.width||(e=a.getBBox(),a.width=e.width,a.height=e.height,e=c.fontMetrics(null,a.element).h);var k=a.width-2*f;(g={left:\"0\",center:\"0.5\",right:\"1\"}[a.alignValue])?b=+g*k:H(a.x)&&Math.round(a.x)!==a.translateX&&(b=a.x-a.translateX);return{x:d.x+(h.translateX||0)+f-(b||0),y:d.y+(h.translateY||0)+f-e,width:a.width-2*f,height:a.height-2*f}}};for(f=\n0;f=t.x+t.width||u.x+u.width<=t.x||u.y>=t.y+t.height||u.y+u.height<=t.y||((q.labelrank=A(e.minWidth,0)&&this.chartHeight>=A(e.minHeight,0)}).call(this)&&c.push(a._id)};a.prototype.setResponsive=\nfunction(a,c){var e=this,f=this.options.responsive,h=this.currentResponsive,k=[];!c&&f&&f.rules&&f.rules.forEach(function(a){\"undefined\"===typeof a._id&&(a._id=n());e.matchResponsiveRule(a,k)},this);c=G.apply(void 0,k.map(function(a){return z((f||{}).rules||[],function(c){return c._id===a})}).map(function(a){return a&&a.chartOptions}));c.isResponsiveOptions=!0;k=k.toString()||void 0;k!==(h&&h.ruleIds)&&(h&&this.update(h.undoOptions,a,!0),k?(h=this.currentOptions(c),h.isResponsiveOptions=!0,this.currentResponsive=\n{ruleIds:k,mergedOptions:c,undoOptions:h},this.update(c,a,!0)):this.currentResponsive=void 0)};return a}()})(k||(k={}));\"\";\"\";return k});M(a,\"masters/highcharts.src.js\",[a[\"Core/Globals.js\"],a[\"Core/Utilities.js\"],a[\"Core/DefaultOptions.js\"],a[\"Core/Animation/Fx.js\"],a[\"Core/Animation/AnimationUtilities.js\"],a[\"Core/Renderer/HTML/AST.js\"],a[\"Core/FormatUtilities.js\"],a[\"Core/Renderer/RendererUtilities.js\"],a[\"Core/Renderer/SVG/SVGElement.js\"],a[\"Core/Renderer/SVG/SVGRenderer.js\"],a[\"Core/Renderer/HTML/HTMLElement.js\"],\na[\"Core/Renderer/HTML/HTMLRenderer.js\"],a[\"Core/Axis/Axis.js\"],a[\"Core/Axis/DateTimeAxis.js\"],a[\"Core/Axis/LogarithmicAxis.js\"],a[\"Core/Axis/PlotLineOrBand/PlotLineOrBand.js\"],a[\"Core/Axis/Tick.js\"],a[\"Core/Tooltip.js\"],a[\"Core/Series/Point.js\"],a[\"Core/Pointer.js\"],a[\"Core/MSPointer.js\"],a[\"Core/Legend/Legend.js\"],a[\"Core/Chart/Chart.js\"],a[\"Core/Series/Series.js\"],a[\"Core/Series/SeriesRegistry.js\"],a[\"Series/Column/ColumnSeries.js\"],a[\"Series/Column/ColumnDataLabel.js\"],a[\"Series/Pie/PieSeries.js\"],\na[\"Series/Pie/PieDataLabel.js\"],a[\"Core/Series/DataLabel.js\"],a[\"Core/Responsive.js\"],a[\"Core/Color/Color.js\"],a[\"Core/Time.js\"]],function(a,u,z,F,y,G,H,A,q,n,k,e,c,h,f,w,p,B,t,J,C,r,l,b,g,d,m,D,x,I,M,S,O){a.animate=y.animate;a.animObject=y.animObject;a.getDeferredAnimation=y.getDeferredAnimation;a.setAnimation=y.setAnimation;a.stop=y.stop;a.timers=F.timers;a.AST=G;a.Axis=c;a.Chart=l;a.chart=l.chart;a.Fx=F;a.Legend=r;a.PlotLineOrBand=w;a.Point=t;a.Pointer=C.isRequired()?C:J;a.Series=b;a.SVGElement=\nq;a.SVGRenderer=n;a.Tick=p;a.Time=O;a.Tooltip=B;a.Color=S;a.color=S.parse;e.compose(n);k.compose(q);a.defaultOptions=z.defaultOptions;a.getOptions=z.getOptions;a.time=z.defaultTime;a.setOptions=z.setOptions;a.dateFormat=H.dateFormat;a.format=H.format;a.numberFormat=H.numberFormat;a.addEvent=u.addEvent;a.arrayMax=u.arrayMax;a.arrayMin=u.arrayMin;a.attr=u.attr;a.clearTimeout=u.clearTimeout;a.correctFloat=u.correctFloat;a.createElement=u.createElement;a.css=u.css;a.defined=u.defined;a.destroyObjectProperties=\nu.destroyObjectProperties;a.discardElement=u.discardElement;a.distribute=A.distribute;a.erase=u.erase;a.error=u.error;a.extend=u.extend;a.extendClass=u.extendClass;a.find=u.find;a.fireEvent=u.fireEvent;a.getMagnitude=u.getMagnitude;a.getStyle=u.getStyle;a.inArray=u.inArray;a.isArray=u.isArray;a.isClass=u.isClass;a.isDOMElement=u.isDOMElement;a.isFunction=u.isFunction;a.isNumber=u.isNumber;a.isObject=u.isObject;a.isString=u.isString;a.keys=u.keys;a.merge=u.merge;a.normalizeTickInterval=u.normalizeTickInterval;\na.objectEach=u.objectEach;a.offset=u.offset;a.pad=u.pad;a.pick=u.pick;a.pInt=u.pInt;a.relativeLength=u.relativeLength;a.removeEvent=u.removeEvent;a.seriesType=g.seriesType;a.splat=u.splat;a.stableSort=u.stableSort;a.syncTimeout=u.syncTimeout;a.timeUnits=u.timeUnits;a.uniqueKey=u.uniqueKey;a.useSerialIds=u.useSerialIds;a.wrap=u.wrap;m.compose(d);I.compose(b);h.compose(c);f.compose(c);x.compose(D);w.compose(c);M.compose(l);return a});a[\"masters/highcharts.src.js\"]._modules=a;return a[\"masters/highcharts.src.js\"]});\n//# sourceMappingURL=highcharts.js.map","import { h, ref, computed, watch, getCurrentInstance } from 'vue'\n\nimport QTh from './QTh.js'\n\nimport QSeparator from '../separator/QSeparator.js'\nimport QIcon from '../icon/QIcon.js'\nimport QVirtualScroll from '../virtual-scroll/QVirtualScroll.js'\nimport QSelect from '../select/QSelect.js'\nimport QLinearProgress from '../linear-progress/QLinearProgress.js'\nimport QCheckbox from '../checkbox/QCheckbox.js'\nimport QBtn from '../btn/QBtn.js'\n\nimport getTableMiddle from './get-table-middle.js'\n\nimport useDark, { useDarkProps } from '../../composables/private/use-dark.js'\nimport { commonVirtPropsList } from '../virtual-scroll/use-virtual-scroll.js'\nimport useFullscreen, { useFullscreenProps, useFullscreenEmits } from '../../composables/private/use-fullscreen.js'\n\nimport { useTableSort, useTableSortProps } from './table-sort.js'\nimport { useTableFilter, useTableFilterProps } from './table-filter.js'\nimport { useTablePaginationState, useTablePagination, useTablePaginationProps } from './table-pagination.js'\nimport { useTableRowSelection, useTableRowSelectionProps, useTableRowSelectionEmits } from './table-row-selection.js'\nimport { useTableRowExpand, useTableRowExpandProps, useTableRowExpandEmits } from './table-row-expand.js'\nimport { useTableColumnSelection, useTableColumnSelectionProps } from './table-column-selection.js'\n\nimport { injectProp, injectMultipleProps } from '../../utils/private/inject-obj-prop.js'\nimport { createComponent } from '../../utils/private/create.js'\n\nconst bottomClass = 'q-table__bottom row items-center'\n\nconst commonVirtPropsObj = {}\ncommonVirtPropsList.forEach(p => { commonVirtPropsObj[ p ] = {} })\n\nexport default createComponent({\n name: 'QTable',\n\n props: {\n rows: {\n type: Array,\n required: true\n },\n rowKey: {\n type: [ String, Function ],\n default: 'id'\n },\n\n columns: Array,\n loading: Boolean,\n\n iconFirstPage: String,\n iconPrevPage: String,\n iconNextPage: String,\n iconLastPage: String,\n\n title: String,\n\n hideHeader: Boolean,\n\n grid: Boolean,\n gridHeader: Boolean,\n\n dense: Boolean,\n flat: Boolean,\n bordered: Boolean,\n square: Boolean,\n separator: {\n type: String,\n default: 'horizontal',\n validator: v => [ 'horizontal', 'vertical', 'cell', 'none' ].includes(v)\n },\n wrapCells: Boolean,\n\n virtualScroll: Boolean,\n virtualScrollTarget: {\n default: void 0\n },\n ...commonVirtPropsObj,\n\n noDataLabel: String,\n noResultsLabel: String,\n loadingLabel: String,\n selectedRowsLabel: Function,\n rowsPerPageLabel: String,\n paginationLabel: Function,\n\n color: {\n type: String,\n default: 'grey-8'\n },\n\n titleClass: [ String, Array, Object ],\n tableStyle: [ String, Array, Object ],\n tableClass: [ String, Array, Object ],\n tableHeaderStyle: [ String, Array, Object ],\n tableHeaderClass: [ String, Array, Object ],\n cardContainerClass: [ String, Array, Object ],\n cardContainerStyle: [ String, Array, Object ],\n cardStyle: [ String, Array, Object ],\n cardClass: [ String, Array, Object ],\n\n hideBottom: Boolean,\n hideSelectedBanner: Boolean,\n hideNoData: Boolean,\n hidePagination: Boolean,\n\n onRowClick: Function,\n onRowDblclick: Function,\n onRowContextmenu: Function,\n\n ...useDarkProps,\n ...useFullscreenProps,\n\n ...useTableColumnSelectionProps,\n ...useTableFilterProps,\n ...useTablePaginationProps,\n ...useTableRowExpandProps,\n ...useTableRowSelectionProps,\n ...useTableSortProps\n },\n\n emits: [\n 'request', 'virtualScroll',\n ...useFullscreenEmits,\n ...useTableRowExpandEmits,\n ...useTableRowSelectionEmits\n ],\n\n setup (props, { slots, emit }) {\n const vm = getCurrentInstance()\n const { proxy: { $q } } = vm\n\n const isDark = useDark(props, $q)\n const { inFullscreen, toggleFullscreen } = useFullscreen()\n\n const getRowKey = computed(() => (\n typeof props.rowKey === 'function'\n ? props.rowKey\n : row => row[ props.rowKey ]\n ))\n\n const rootRef = ref(null)\n const virtScrollRef = ref(null)\n const hasVirtScroll = computed(() => props.grid !== true && props.virtualScroll === true)\n\n const cardDefaultClass = computed(() =>\n ' q-table__card'\n + (isDark.value === true ? ' q-table__card--dark q-dark' : '')\n + (props.square === true ? ' q-table--square' : '')\n + (props.flat === true ? ' q-table--flat' : '')\n + (props.bordered === true ? ' q-table--bordered' : '')\n )\n\n const __containerClass = computed(() =>\n `q-table__container q-table--${ props.separator }-separator column no-wrap`\n + (props.grid === true ? ' q-table--grid' : cardDefaultClass.value)\n + (isDark.value === true ? ' q-table--dark' : '')\n + (props.dense === true ? ' q-table--dense' : '')\n + (props.wrapCells === false ? ' q-table--no-wrap' : '')\n + (inFullscreen.value === true ? ' fullscreen scroll' : '')\n )\n\n const containerClass = computed(() =>\n __containerClass.value + (props.loading === true ? ' q-table--loading' : '')\n )\n\n watch(\n () => props.tableStyle + props.tableClass + props.tableHeaderStyle + props.tableHeaderClass + __containerClass.value,\n () => { hasVirtScroll.value === true && virtScrollRef.value !== null && virtScrollRef.value.reset() }\n )\n\n const {\n innerPagination,\n computedPagination,\n isServerSide,\n\n requestServerInteraction,\n setPagination\n } = useTablePaginationState(vm, getCellValue)\n\n const { computedFilterMethod } = useTableFilter(props, setPagination)\n const { isRowExpanded, setExpanded, updateExpanded } = useTableRowExpand(props, emit)\n\n const filteredSortedRows = computed(() => {\n let rows = props.rows\n\n if (isServerSide.value === true || rows.length === 0) {\n return rows\n }\n\n const { sortBy, descending } = computedPagination.value\n\n if (props.filter) {\n rows = computedFilterMethod.value(rows, props.filter, computedCols.value, getCellValue)\n }\n\n if (columnToSort.value !== null) {\n rows = computedSortMethod.value(\n props.rows === rows ? rows.slice() : rows,\n sortBy,\n descending\n )\n }\n\n return rows\n })\n\n const filteredSortedRowsNumber = computed(() => filteredSortedRows.value.length)\n\n const computedRows = computed(() => {\n let rows = filteredSortedRows.value\n\n if (isServerSide.value === true) {\n return rows\n }\n\n const { rowsPerPage } = computedPagination.value\n\n if (rowsPerPage !== 0) {\n if (firstRowIndex.value === 0 && props.rows !== rows) {\n if (rows.length > lastRowIndex.value) {\n rows = rows.slice(0, lastRowIndex.value)\n }\n }\n else {\n rows = rows.slice(firstRowIndex.value, lastRowIndex.value)\n }\n }\n\n return rows\n })\n\n const {\n hasSelectionMode,\n singleSelection,\n multipleSelection,\n allRowsSelected,\n someRowsSelected,\n rowsSelectedNumber,\n\n isRowSelected,\n clearSelection,\n updateSelection\n } = useTableRowSelection(props, emit, computedRows, getRowKey)\n\n const { colList, computedCols, computedColsMap, computedColspan } = useTableColumnSelection(props, computedPagination, hasSelectionMode)\n\n const { columnToSort, computedSortMethod, sort } = useTableSort(props, computedPagination, colList, setPagination)\n\n const {\n firstRowIndex,\n lastRowIndex,\n isFirstPage,\n isLastPage,\n pagesNumber,\n computedRowsPerPageOptions,\n computedRowsNumber,\n\n firstPage,\n prevPage,\n nextPage,\n lastPage\n } = useTablePagination(vm, innerPagination, computedPagination, isServerSide, setPagination, filteredSortedRowsNumber)\n\n const nothingToDisplay = computed(() => computedRows.value.length === 0)\n\n const virtProps = computed(() => {\n const acc = {}\n\n commonVirtPropsList\n .forEach(p => { acc[ p ] = props[ p ] })\n\n if (acc.virtualScrollItemSize === void 0) {\n acc.virtualScrollItemSize = props.dense === true ? 28 : 48\n }\n\n return acc\n })\n\n function resetVirtualScroll () {\n hasVirtScroll.value === true && virtScrollRef.value.reset()\n }\n\n function getBody () {\n if (props.grid === true) {\n return getGridBody()\n }\n\n const header = props.hideHeader !== true ? getTHead : null\n\n if (hasVirtScroll.value === true) {\n const topRow = slots[ 'top-row' ]\n const bottomRow = slots[ 'bottom-row' ]\n\n const virtSlots = {\n default: props => getTBodyTR(props.item, slots.body, props.index)\n }\n\n if (topRow !== void 0) {\n const topContent = h('tbody', topRow({ cols: computedCols.value }))\n\n virtSlots.before = header === null\n ? () => topContent\n : () => [ header() ].concat(topContent)\n }\n else if (header !== null) {\n virtSlots.before = header\n }\n\n if (bottomRow !== void 0) {\n virtSlots.after = () => h('tbody', bottomRow({ cols: computedCols.value }))\n }\n\n return h(QVirtualScroll, {\n ref: virtScrollRef,\n class: props.tableClass,\n style: props.tableStyle,\n ...virtProps.value,\n scrollTarget: props.virtualScrollTarget,\n items: computedRows.value,\n type: '__qtable',\n tableColspan: computedColspan.value,\n onVirtualScroll: onVScroll\n }, virtSlots)\n }\n\n const child = [\n getTBody()\n ]\n\n if (header !== null) {\n child.unshift(header())\n }\n\n return getTableMiddle({\n class: [ 'q-table__middle scroll', props.tableClass ],\n style: props.tableStyle\n }, child)\n }\n\n function scrollTo (toIndex, edge) {\n if (virtScrollRef.value !== null) {\n virtScrollRef.value.scrollTo(toIndex, edge)\n return\n }\n\n toIndex = parseInt(toIndex, 10)\n const rowEl = rootRef.value.querySelector(`tbody tr:nth-of-type(${ toIndex + 1 })`)\n\n if (rowEl !== null) {\n const scrollTarget = rootRef.value.querySelector('.q-table__middle.scroll')\n const offsetTop = rowEl.offsetTop - props.virtualScrollStickySizeStart\n const direction = offsetTop < scrollTarget.scrollTop ? 'decrease' : 'increase'\n\n scrollTarget.scrollTop = offsetTop\n\n emit('virtualScroll', {\n index: toIndex,\n from: 0,\n to: innerPagination.value.rowsPerPage - 1,\n direction\n })\n }\n }\n\n function onVScroll (info) {\n emit('virtualScroll', info)\n }\n\n function getProgress () {\n return [\n h(QLinearProgress, {\n class: 'q-table__linear-progress',\n color: props.color,\n dark: isDark.value,\n indeterminate: true,\n trackColor: 'transparent'\n })\n ]\n }\n\n function getTBodyTR (row, bodySlot, pageIndex) {\n const\n key = getRowKey.value(row),\n selected = isRowSelected(key)\n\n if (bodySlot !== void 0) {\n return bodySlot(\n getBodyScope({\n key,\n row,\n pageIndex,\n __trClass: selected ? 'selected' : ''\n })\n )\n }\n\n const\n bodyCell = slots[ 'body-cell' ],\n child = computedCols.value.map(col => {\n const\n bodyCellCol = slots[ `body-cell-${ col.name }` ],\n slot = bodyCellCol !== void 0 ? bodyCellCol : bodyCell\n\n return slot !== void 0\n ? slot(getBodyCellScope({ key, row, pageIndex, col }))\n : h('td', {\n class: col.__tdClass(row),\n style: col.__tdStyle(row)\n }, getCellValue(col, row))\n })\n\n if (hasSelectionMode.value === true) {\n const slot = slots[ 'body-selection' ]\n const content = slot !== void 0\n ? slot(getBodySelectionScope({ key, row, pageIndex }))\n : [\n h(QCheckbox, {\n modelValue: selected,\n color: props.color,\n dark: isDark.value,\n dense: props.dense,\n 'onUpdate:modelValue': (adding, evt) => {\n updateSelection([ key ], [ row ], adding, evt)\n }\n })\n ]\n\n child.unshift(\n h('td', { class: 'q-table--col-auto-width' }, content)\n )\n }\n\n const data = { key, class: { selected } }\n\n if (props.onRowClick !== void 0) {\n data.class[ 'cursor-pointer' ] = true\n data.onClick = evt => {\n emit('RowClick', evt, row, pageIndex)\n }\n }\n\n if (props.onRowDblclick !== void 0) {\n data.class[ 'cursor-pointer' ] = true\n data.onDblclick = evt => {\n emit('RowDblclick', evt, row, pageIndex)\n }\n }\n\n if (props.onRowContextmenu !== void 0) {\n data.class[ 'cursor-pointer' ] = true\n data.onContextmenu = evt => {\n emit('RowContextmenu', evt, row, pageIndex)\n }\n }\n\n return h('tr', data, child)\n }\n\n function getTBody () {\n const\n body = slots.body,\n topRow = slots[ 'top-row' ],\n bottomRow = slots[ 'bottom-row' ]\n\n let child = computedRows.value.map(\n (row, pageIndex) => getTBodyTR(row, body, pageIndex)\n )\n\n if (topRow !== void 0) {\n child = topRow({ cols: computedCols.value }).concat(child)\n }\n if (bottomRow !== void 0) {\n child = child.concat(bottomRow({ cols: computedCols.value }))\n }\n\n return h('tbody', child)\n }\n\n function getBodyScope (data) {\n injectBodyCommonScope(data)\n\n data.cols = data.cols.map(\n col => injectProp({ ...col }, 'value', () => getCellValue(col, data.row))\n )\n\n return data\n }\n\n function getBodyCellScope (data) {\n injectBodyCommonScope(data)\n injectProp(data, 'value', () => getCellValue(data.col, data.row))\n return data\n }\n\n function getBodySelectionScope (data) {\n injectBodyCommonScope(data)\n return data\n }\n\n function injectBodyCommonScope (data) {\n Object.assign(data, {\n cols: computedCols.value,\n colsMap: computedColsMap.value,\n sort,\n rowIndex: firstRowIndex.value + data.pageIndex,\n color: props.color,\n dark: isDark.value,\n dense: props.dense\n })\n\n hasSelectionMode.value === true && injectProp(\n data,\n 'selected',\n () => isRowSelected(data.key),\n (adding, evt) => {\n updateSelection([ data.key ], [ data.row ], adding, evt)\n }\n )\n\n injectProp(\n data,\n 'expand',\n () => isRowExpanded(data.key),\n adding => { updateExpanded(data.key, adding) }\n )\n }\n\n function getCellValue (col, row) {\n const val = typeof col.field === 'function' ? col.field(row) : row[ col.field ]\n return col.format !== void 0 ? col.format(val, row) : val\n }\n\n const marginalsScope = computed(() => ({\n pagination: computedPagination.value,\n pagesNumber: pagesNumber.value,\n isFirstPage: isFirstPage.value,\n isLastPage: isLastPage.value,\n firstPage,\n prevPage,\n nextPage,\n lastPage,\n\n inFullscreen: inFullscreen.value,\n toggleFullscreen\n }))\n\n function getTopDiv () {\n const\n top = slots.top,\n topLeft = slots[ 'top-left' ],\n topRight = slots[ 'top-right' ],\n topSelection = slots[ 'top-selection' ],\n hasSelection = hasSelectionMode.value === true\n && topSelection !== void 0\n && rowsSelectedNumber.value > 0,\n topClass = 'q-table__top relative-position row items-center'\n\n if (top !== void 0) {\n return h('div', { class: topClass }, [ top(marginalsScope.value) ])\n }\n\n let child\n\n if (hasSelection === true) {\n child = topSelection(marginalsScope.value).slice()\n }\n else {\n child = []\n\n if (topLeft !== void 0) {\n child.push(\n h('div', { class: 'q-table__control' }, [\n topLeft(marginalsScope.value)\n ])\n )\n }\n else if (props.title) {\n child.push(\n h('div', { class: 'q-table__control' }, [\n h('div', {\n class: [ 'q-table__title', props.titleClass ]\n }, props.title)\n ])\n )\n }\n }\n\n if (topRight !== void 0) {\n child.push(\n h('div', { class: 'q-table__separator col' })\n )\n child.push(\n h('div', { class: 'q-table__control' }, [\n topRight(marginalsScope.value)\n ])\n )\n }\n\n if (child.length === 0) {\n return\n }\n\n return h('div', { class: topClass }, child)\n }\n\n const headerSelectedValue = computed(() => (\n someRowsSelected.value === true\n ? null\n : allRowsSelected.value\n ))\n\n function getTHead () {\n const child = getTHeadTR()\n\n if (props.loading === true && slots.loading === void 0) {\n child.push(\n h('tr', { class: 'q-table__progress' }, [\n h('th', {\n class: 'relative-position',\n colspan: computedColspan.value\n }, getProgress())\n ])\n )\n }\n\n return h('thead', child)\n }\n\n function getTHeadTR () {\n const\n header = slots.header,\n headerCell = slots[ 'header-cell' ]\n\n if (header !== void 0) {\n return header(\n getHeaderScope({ header: true })\n ).slice()\n }\n\n const child = computedCols.value.map(col => {\n const\n headerCellCol = slots[ `header-cell-${ col.name }` ],\n slot = headerCellCol !== void 0 ? headerCellCol : headerCell,\n props = getHeaderScope({ col })\n\n return slot !== void 0\n ? slot(props)\n : h(QTh, {\n key: col.name,\n props\n }, () => col.label)\n })\n\n if (singleSelection.value === true && props.grid !== true) {\n child.unshift(\n h('th', { class: 'q-table--col-auto-width' }, ' ')\n )\n }\n else if (multipleSelection.value === true) {\n const slot = slots[ 'header-selection' ]\n const content = slot !== void 0\n ? slot(getHeaderScope({}))\n : [\n h(QCheckbox, {\n color: props.color,\n modelValue: headerSelectedValue.value,\n dark: isDark.value,\n dense: props.dense,\n 'onUpdate:modelValue': onMultipleSelectionSet\n })\n ]\n\n child.unshift(\n h('th', { class: 'q-table--col-auto-width' }, content)\n )\n }\n\n return [\n h('tr', {\n class: props.tableHeaderClass,\n style: props.tableHeaderStyle\n }, child)\n ]\n }\n\n function getHeaderScope (data) {\n Object.assign(data, {\n cols: computedCols.value,\n sort,\n colsMap: computedColsMap.value,\n color: props.color,\n dark: isDark.value,\n dense: props.dense\n })\n\n if (multipleSelection.value === true) {\n injectProp(\n data,\n 'selected',\n () => headerSelectedValue.value,\n onMultipleSelectionSet\n )\n }\n\n return data\n }\n\n function onMultipleSelectionSet (val) {\n if (someRowsSelected.value === true) {\n val = false\n }\n\n updateSelection(\n computedRows.value.map(getRowKey.value),\n computedRows.value,\n val\n )\n }\n\n const navIcon = computed(() => {\n const ico = [\n props.iconFirstPage || $q.iconSet.table.firstPage,\n props.iconPrevPage || $q.iconSet.table.prevPage,\n props.iconNextPage || $q.iconSet.table.nextPage,\n props.iconLastPage || $q.iconSet.table.lastPage\n ]\n return $q.lang.rtl === true ? ico.reverse() : ico\n })\n\n function getBottomDiv () {\n if (props.hideBottom === true) {\n return\n }\n\n if (nothingToDisplay.value === true) {\n if (props.hideNoData === true) {\n return\n }\n\n const message = props.loading === true\n ? props.loadingLabel || $q.lang.table.loading\n : (props.filter ? props.noResultsLabel || $q.lang.table.noResults : props.noDataLabel || $q.lang.table.noData)\n\n const noData = slots[ 'no-data' ]\n const children = noData !== void 0\n ? [ noData({ message, icon: $q.iconSet.table.warning, filter: props.filter }) ]\n : [\n h(QIcon, {\n class: 'q-table__bottom-nodata-icon',\n name: $q.iconSet.table.warning\n }),\n message\n ]\n\n return h('div', { class: bottomClass + ' q-table__bottom--nodata' }, children)\n }\n\n const bottom = slots.bottom\n\n if (bottom !== void 0) {\n return h('div', { class: bottomClass }, [ bottom(marginalsScope.value) ])\n }\n\n const child = props.hideSelectedBanner !== true && hasSelectionMode.value === true && rowsSelectedNumber.value > 0\n ? [\n h('div', { class: 'q-table__control' }, [\n h('div', [\n (props.selectedRowsLabel || $q.lang.table.selectedRecords)(rowsSelectedNumber.value)\n ])\n ])\n ]\n : []\n\n if (props.hidePagination !== true) {\n return h('div', {\n class: bottomClass + ' justify-end'\n }, getPaginationDiv(child))\n }\n\n if (child.length !== 0) {\n return h('div', { class: bottomClass }, child)\n }\n }\n\n function onPagSelection (pag) {\n setPagination({\n page: 1,\n rowsPerPage: pag.value\n })\n }\n\n function getPaginationDiv (child) {\n let control\n const\n { rowsPerPage } = computedPagination.value,\n paginationLabel = props.paginationLabel || $q.lang.table.pagination,\n paginationSlot = slots.pagination,\n hasOpts = props.rowsPerPageOptions.length > 1\n\n child.push(\n h('div', { class: 'q-table__separator col' })\n )\n\n if (hasOpts === true) {\n child.push(\n h('div', { class: 'q-table__control' }, [\n h('span', { class: 'q-table__bottom-item' }, [\n props.rowsPerPageLabel || $q.lang.table.recordsPerPage\n ]),\n h(QSelect, {\n class: 'q-table__select inline q-table__bottom-item',\n color: props.color,\n modelValue: rowsPerPage,\n options: computedRowsPerPageOptions.value,\n displayValue: rowsPerPage === 0\n ? $q.lang.table.allRows\n : rowsPerPage,\n dark: isDark.value,\n borderless: true,\n dense: true,\n optionsDense: true,\n optionsCover: true,\n 'onUpdate:modelValue': onPagSelection\n })\n ])\n )\n }\n\n if (paginationSlot !== void 0) {\n control = paginationSlot(marginalsScope.value)\n }\n else {\n control = [\n h('span', rowsPerPage !== 0 ? { class: 'q-table__bottom-item' } : {}, [\n rowsPerPage\n ? paginationLabel(firstRowIndex.value + 1, Math.min(lastRowIndex.value, computedRowsNumber.value), computedRowsNumber.value)\n : paginationLabel(1, filteredSortedRowsNumber.value, computedRowsNumber.value)\n ])\n ]\n\n if (rowsPerPage !== 0 && pagesNumber.value > 1) {\n const btnProps = {\n color: props.color,\n round: true,\n dense: true,\n flat: true\n }\n\n if (props.dense === true) {\n btnProps.size = 'sm'\n }\n\n pagesNumber.value > 2 && control.push(\n h(QBtn, {\n key: 'pgFirst',\n ...btnProps,\n icon: navIcon.value[ 0 ],\n disable: isFirstPage.value,\n onClick: firstPage\n })\n )\n\n control.push(\n h(QBtn, {\n key: 'pgPrev',\n ...btnProps,\n icon: navIcon.value[ 1 ],\n disable: isFirstPage.value,\n onClick: prevPage\n }),\n\n h(QBtn, {\n key: 'pgNext',\n ...btnProps,\n icon: navIcon.value[ 2 ],\n disable: isLastPage.value,\n onClick: nextPage\n })\n )\n\n pagesNumber.value > 2 && control.push(\n h(QBtn, {\n key: 'pgLast',\n ...btnProps,\n icon: navIcon.value[ 3 ],\n disable: isLastPage.value,\n onClick: lastPage\n })\n )\n }\n }\n\n child.push(\n h('div', { class: 'q-table__control' }, control)\n )\n\n return child\n }\n\n function getGridHeader () {\n const child = props.gridHeader === true\n ? [\n h('table', { class: 'q-table' }, [\n getTHead(h)\n ])\n ]\n : (\n props.loading === true && slots.loading === void 0\n ? getProgress(h)\n : void 0\n )\n\n return h('div', { class: 'q-table__middle' }, child)\n }\n\n function getGridBody () {\n const item = slots.item !== void 0\n ? slots.item\n : scope => {\n const child = scope.cols.map(\n col => h('div', { class: 'q-table__grid-item-row' }, [\n h('div', { class: 'q-table__grid-item-title' }, [ col.label ]),\n h('div', { class: 'q-table__grid-item-value' }, [ col.value ])\n ])\n )\n\n if (hasSelectionMode.value === true) {\n const slot = slots[ 'body-selection' ]\n const content = slot !== void 0\n ? slot(scope)\n : [\n h(QCheckbox, {\n modelValue: scope.selected,\n color: props.color,\n dark: isDark.value,\n dense: props.dense,\n 'onUpdate:modelValue': (adding, evt) => {\n updateSelection([ scope.key ], [ scope.row ], adding, evt)\n }\n })\n ]\n\n child.unshift(\n h('div', { class: 'q-table__grid-item-row' }, content),\n h(QSeparator, { dark: isDark.value })\n )\n }\n\n const data = {\n class: [\n 'q-table__grid-item-card' + cardDefaultClass.value,\n props.cardClass\n ],\n style: props.cardStyle\n }\n\n if (\n props.onRowClick !== void 0\n || props.onRowDblclick !== void 0\n ) {\n data.class[ 0 ] += ' cursor-pointer'\n\n if (props.onRowClick !== void 0) {\n data.onClick = evt => {\n emit('RowClick', evt, scope.row, scope.pageIndex)\n }\n }\n\n if (props.onRowDblclick !== void 0) {\n data.onDblclick = evt => {\n emit('RowDblclick', evt, scope.row, scope.pageIndex)\n }\n }\n }\n\n return h('div', {\n class: 'q-table__grid-item col-xs-12 col-sm-6 col-md-4 col-lg-3'\n + (scope.selected === true ? ' q-table__grid-item--selected' : '')\n }, [\n h('div', data, child)\n ])\n }\n\n return h('div', {\n class: [\n 'q-table__grid-content row',\n props.cardContainerClass\n ],\n style: props.cardContainerStyle\n }, computedRows.value.map((row, pageIndex) => {\n return item(getBodyScope({\n key: getRowKey.value(row),\n row,\n pageIndex\n }))\n }))\n }\n\n // expose public methods and needed computed props\n Object.assign(vm.proxy, {\n requestServerInteraction,\n setPagination,\n firstPage,\n prevPage,\n nextPage,\n lastPage,\n isRowSelected,\n clearSelection,\n isRowExpanded,\n setExpanded,\n sort,\n resetVirtualScroll,\n scrollTo,\n getCellValue\n })\n\n injectMultipleProps(vm.proxy, {\n filteredSortedRows: () => filteredSortedRows.value,\n computedRows: () => computedRows.value,\n computedRowsNumber: () => computedRowsNumber.value\n })\n\n return () => {\n const child = [ getTopDiv() ]\n const data = { ref: rootRef, class: containerClass.value }\n\n if (props.grid === true) {\n child.push(getGridHeader())\n }\n else {\n Object.assign(data, {\n class: [ data.class, props.cardClass ],\n style: props.cardStyle\n })\n }\n\n child.push(\n getBody(),\n getBottomDiv()\n )\n\n if (props.loading === true && slots.loading !== void 0) {\n child.push(\n slots.loading()\n )\n }\n\n return h('div', data, child)\n }\n }\n})\n","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyLinksComponent.vue?vue&type=template&id=f097a1b2&scoped=true\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./rickshawChart.vue?vue&type=template&id=6031efbf\"","import script from \"./myStore.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./myStore.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./myStore.vue?vue&type=style&index=0&id=4a5fb1f8&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4a5fb1f8\"]])\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QBtn});\n","import script from \"./ShareFlipnetComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ShareFlipnetComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ShareFlipnetComponent.vue?vue&type=style&index=0&id=45f3d27c&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-45f3d27c\"]])\n\nexport default __exports__\nimport QPageSticky from 'quasar/src/components/page-sticky/QPageSticky.js';\nimport QBtn from 'quasar/src/components/btn/QBtn.js';\nimport QTooltip from 'quasar/src/components/tooltip/QTooltip.js';\nimport QDialog from 'quasar/src/components/dialog/QDialog.js';\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QCardActions from 'quasar/src/components/card/QCardActions.js';import ClosePopup from 'quasar/src/directives/close-popup/ClosePopup.js';\nimport qInstall from \"../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QPageSticky,QBtn,QTooltip,QDialog,QCard,QCardSection,QCardActions});qInstall(script, 'directives', {ClosePopup});\n","import script from \"./ClustersAndShareComponent.vue?vue&type=script&setup=true&lang=js\"\nexport * from \"./ClustersAndShareComponent.vue?vue&type=script&setup=true&lang=js\"\n\nimport \"./ClustersAndShareComponent.vue?vue&type=style&index=0&id=4021d509&scoped=true&lang=scss\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['__scopeId',\"data-v-4021d509\"]])\n\nexport default __exports__\nimport QImg from 'quasar/src/components/img/QImg.js';\nimport QIcon from 'quasar/src/components/icon/QIcon.js';\nimport QLinearProgress from 'quasar/src/components/linear-progress/QLinearProgress.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QImg,QIcon,QLinearProgress});\n","export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./productItemStore.vue?vue&type=template&id=7b6d8b08\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./calendar.vue?vue&type=script&setup=true&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./calendar.vue?vue&type=script&setup=true&lang=js\"","import { render } from \"./CardFlipPartnerMissionSkeleton.vue?vue&type=template&id=39f04150&scoped=true\"\nimport script from \"./CardFlipPartnerMissionSkeleton.vue?vue&type=script&lang=js\"\nexport * from \"./CardFlipPartnerMissionSkeleton.vue?vue&type=script&lang=js\"\n\nimport \"./CardFlipPartnerMissionSkeleton.vue?vue&type=style&index=0&id=39f04150&lang=scss&scoped=true\"\n\nimport exportComponent from \"/codebuild/output/src1250588209/src/flip-child-frontend/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-39f04150\"]])\n\nexport default __exports__\nimport QCard from 'quasar/src/components/card/QCard.js';\nimport QItem from 'quasar/src/components/item/QItem.js';\nimport QItemSection from 'quasar/src/components/item/QItemSection.js';\nimport QSkeleton from 'quasar/src/components/skeleton/QSkeleton.js';\nimport QItemLabel from 'quasar/src/components/item/QItemLabel.js';\nimport QCardSection from 'quasar/src/components/card/QCardSection.js';\nimport QSpace from 'quasar/src/components/space/QSpace.js';\nimport qInstall from \"../../../../../../../node_modules/vue-cli-plugin-quasar/lib/runtime.auto-import.js\";\nqInstall(script, 'components', {QCard,QItem,QItemSection,QSkeleton,QItemLabel,QCardSection,QSpace});\n","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./visitorsBoxComponent.vue?vue&type=template&id=42bcf332&scoped=true\"","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./checklists.vue?vue&type=style&index=0&id=b87a8856&scoped=true&lang=scss\"","// extracted by mini-css-extract-plugin","// extracted by mini-css-extract-plugin","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./MyVouchersComponent.vue?vue&type=template&id=4266120a&scoped=true\"","module.exports = __webpack_public_path__ + \"img/analyze.413f5b2d.png\";","export * from \"-!../../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--7-oneOf-1-0!../../../../../../node_modules/css-loader/dist/cjs.js??ref--7-oneOf-1-1!../../../../../../node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../../../../node_modules/postcss-loader/src/index.js??ref--7-oneOf-1-2!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./firstAcessTutorial.vue?vue&type=style&index=0&id=304cfef8&scoped=true&lang=css\"","export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-loader-v16/dist/templateLoader.js??ref--7!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./TotalSalesComponent.vue?vue&type=template&id=a82aaa8c&scoped=true\"","export { default } from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./products.vue?vue&type=script&lang=js\"; export * from \"-!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../../node_modules/babel-loader/lib/index.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.js.transform-quasar-imports.js!../../../../../../node_modules/vue-cli-plugin-quasar/lib/loader.vue.auto-import-quasar.js??ref--1-0!../../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-1!../../../../../../node_modules/vue-loader-v16/dist/index.js??ref--1-2!./products.vue?vue&type=script&lang=js\""],"sourceRoot":""}