@bcrumbs.net/inbox 0.0.68 → 0.0.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/index.cjs.js +530 -295
  2. package/index.esm.js +530 -295
  3. package/package.json +1 -1
  4. package/src/app/auth/components/ClerkSessionBridge.d.ts +3 -0
  5. package/src/app/auth/utils/clerkTracking.d.ts +3 -0
  6. package/src/app/automation/components/AutomationAudienceSummary.d.ts +10 -0
  7. package/src/app/automation/components/AutomationInfoHeader.d.ts +17 -0
  8. package/src/app/automation/components/AutomationList.d.ts +8 -0
  9. package/src/app/automation/components/AutomationListTable.d.ts +16 -0
  10. package/src/app/automation/components/AutomationMessageSection.d.ts +12 -0
  11. package/src/app/automation/components/AutomationOccurrencesFilters.d.ts +13 -0
  12. package/src/app/automation/components/AutomationOccurrencesHeader.d.ts +10 -0
  13. package/src/app/automation/components/AutomationOccurrencesStats.d.ts +8 -0
  14. package/src/app/automation/components/AutomationOccurrencesTable.d.ts +11 -0
  15. package/src/app/automation/components/AutomationOverview.d.ts +10 -0
  16. package/src/app/automation/components/AutomationScheduleSection.d.ts +15 -0
  17. package/src/app/automation/components/AutomationStateBadge.d.ts +11 -0
  18. package/src/app/automation/components/AutomationTriggerSection.d.ts +14 -0
  19. package/src/app/automation/constants.d.ts +31 -0
  20. package/src/app/automation/hooks/useAutomationAudience.d.ts +20 -0
  21. package/src/app/automation/hooks/useAutomationStateActions.d.ts +11 -0
  22. package/src/app/automation/hooks/useAutomationSubmit.d.ts +28 -0
  23. package/src/app/automation/hooks/useAutomationTemplate.d.ts +29 -0
  24. package/src/app/automation/pages/AutomationInfo.d.ts +2 -0
  25. package/src/app/automation/pages/AutomationList.d.ts +2 -0
  26. package/src/app/automation/pages/AutomationOccurrences.d.ts +2 -0
  27. package/src/app/automation/types.d.ts +7 -0
  28. package/src/app/automation/utils/automationForm.d.ts +49 -0
  29. package/src/app/automation/utils/occurrences.d.ts +14 -0
  30. package/src/app/automation/utils/stateCounts.d.ts +17 -0
  31. package/src/app/broadcast/components/BroadcastDetailsSection.d.ts +5 -1
  32. package/src/app/broadcast/components/BroadcastInfoTemplateMessagePreview.d.ts +4 -2
  33. package/src/app/broadcast/components/BroadcastRecipientsSection.d.ts +3 -1
  34. package/src/app/inbox/hooks/useAutoAssignOnSend.d.ts +7 -0
  35. package/src/app/inbox/hooks/useMyAgent.d.ts +2 -0
  36. package/src/app/layout/constants/subMenu.d.ts +13 -0
  37. package/src/app/layout/hooks/useAutomationsEnabled.d.ts +9 -0
  38. package/src/assets/locales/translations.d.ts +138 -1
  39. package/src/graphql.autogenerated.d.ts +1064 -2
package/index.cjs.js CHANGED
@@ -2306,7 +2306,20 @@ let _$4 = t => t,
2306
2306
  _t156,
2307
2307
  _t157,
2308
2308
  _t158,
2309
- _t159;
2309
+ _t159,
2310
+ _t160,
2311
+ _t161,
2312
+ _t162,
2313
+ _t163,
2314
+ _t164,
2315
+ _t165,
2316
+ _t166,
2317
+ _t167,
2318
+ _t168,
2319
+ _t169,
2320
+ _t170,
2321
+ _t171,
2322
+ _t172;
2310
2323
  const defaultOptions = {};
2311
2324
  const AiType = {
2312
2325
  BC_AI: 'bc_ai',
@@ -2455,7 +2468,58 @@ const UserRoleFragmentDoc = Apollo.gql(_t4$1 || (_t4$1 = _$4`
2455
2468
  createdAt
2456
2469
  }
2457
2470
  `));
2458
- const BroadcastFragmentDoc = Apollo.gql(_t5$1 || (_t5$1 = _$4`
2471
+ const AutomationFragmentDoc = Apollo.gql(_t5$1 || (_t5$1 = _$4`
2472
+ fragment Automation on Automation {
2473
+ workspaceId
2474
+ id
2475
+ name
2476
+ integrationId
2477
+ state
2478
+ triggerType
2479
+ delayMinutes
2480
+ maxLatenessDays
2481
+ reentryPolicy
2482
+ reentryCooldownDays
2483
+ clientTags
2484
+ clientStageId
2485
+ country
2486
+ timezone
2487
+ sendWindowStart
2488
+ sendWindowEnd
2489
+ sendWeekdays
2490
+ templateName
2491
+ templateLang
2492
+ templateComponents
2493
+ activatedAt
2494
+ lastRunAt
2495
+ lastError
2496
+ sentCount
2497
+ lastOccurrenceAt
2498
+ createdAt
2499
+ patchedAt
2500
+ deletedAt
2501
+ }
2502
+ `));
2503
+ const AutomationOccurrenceFragmentDoc = Apollo.gql(_t6$1 || (_t6$1 = _$4`
2504
+ fragment AutomationOccurrence on AutomationOccurrence {
2505
+ workspaceId
2506
+ id
2507
+ automationId
2508
+ clientId
2509
+ clientName
2510
+ clientPhone
2511
+ anchorAt
2512
+ dueAt
2513
+ status
2514
+ messageStatus
2515
+ failedReason
2516
+ messageId
2517
+ conversationId
2518
+ repliedAt
2519
+ createdAt
2520
+ }
2521
+ `));
2522
+ const BroadcastFragmentDoc = Apollo.gql(_t7$1 || (_t7$1 = _$4`
2459
2523
  fragment Broadcast on Broadcast {
2460
2524
  workspaceId
2461
2525
  id
@@ -2477,7 +2541,7 @@ const BroadcastFragmentDoc = Apollo.gql(_t5$1 || (_t5$1 = _$4`
2477
2541
  error
2478
2542
  }
2479
2543
  `));
2480
- const BroadcastReportFragmentDoc = Apollo.gql(_t6$1 || (_t6$1 = _$4`
2544
+ const BroadcastReportFragmentDoc = Apollo.gql(_t8$1 || (_t8$1 = _$4`
2481
2545
  fragment BroadcastReport on BroadcastReport {
2482
2546
  workspaceId
2483
2547
  id
@@ -2492,7 +2556,7 @@ const BroadcastReportFragmentDoc = Apollo.gql(_t6$1 || (_t6$1 = _$4`
2492
2556
  createdAt
2493
2557
  }
2494
2558
  `));
2495
- const AgentReportFragmentDoc = Apollo.gql(_t7$1 || (_t7$1 = _$4`
2559
+ const AgentReportFragmentDoc = Apollo.gql(_t9$1 || (_t9$1 = _$4`
2496
2560
  fragment AgentReport on AgentReport {
2497
2561
  workspaceId
2498
2562
  id
@@ -2510,7 +2574,7 @@ const AgentReportFragmentDoc = Apollo.gql(_t7$1 || (_t7$1 = _$4`
2510
2574
  createdAt
2511
2575
  }
2512
2576
  `));
2513
- const ConvStageReportFragmentDoc = Apollo.gql(_t8$1 || (_t8$1 = _$4`
2577
+ const ConvStageReportFragmentDoc = Apollo.gql(_t0$1 || (_t0$1 = _$4`
2514
2578
  fragment ConvStageReport on ConvStageReport {
2515
2579
  workspaceId
2516
2580
  id
@@ -2529,7 +2593,7 @@ const ConvStageReportFragmentDoc = Apollo.gql(_t8$1 || (_t8$1 = _$4`
2529
2593
  createdAt
2530
2594
  }
2531
2595
  `));
2532
- const ConvTagReportFragmentDoc = Apollo.gql(_t9$1 || (_t9$1 = _$4`
2596
+ const ConvTagReportFragmentDoc = Apollo.gql(_t1$1 || (_t1$1 = _$4`
2533
2597
  fragment ConvTagReport on ConvTagReport {
2534
2598
  workspaceId
2535
2599
  id
@@ -2548,7 +2612,7 @@ const ConvTagReportFragmentDoc = Apollo.gql(_t9$1 || (_t9$1 = _$4`
2548
2612
  createdAt
2549
2613
  }
2550
2614
  `));
2551
- const ConversationReportFragmentDoc = Apollo.gql(_t0$1 || (_t0$1 = _$4`
2615
+ const ConversationReportFragmentDoc = Apollo.gql(_t10$1 || (_t10$1 = _$4`
2552
2616
  fragment ConversationReport on ConversationReport {
2553
2617
  workspaceId
2554
2618
  id
@@ -2567,14 +2631,14 @@ const ConversationReportFragmentDoc = Apollo.gql(_t0$1 || (_t0$1 = _$4`
2567
2631
  createdAt
2568
2632
  }
2569
2633
  `));
2570
- const PageInfoFragmentDoc = Apollo.gql(_t1$1 || (_t1$1 = _$4`
2634
+ const PageInfoFragmentDoc = Apollo.gql(_t11$1 || (_t11$1 = _$4`
2571
2635
  fragment PageInfo on PageInfo {
2572
2636
  hasNextPage
2573
2637
  endCursor
2574
2638
  count
2575
2639
  }
2576
2640
  `));
2577
- const AgentFragmentDoc = Apollo.gql(_t10$1 || (_t10$1 = _$4`
2641
+ const AgentFragmentDoc = Apollo.gql(_t12$1 || (_t12$1 = _$4`
2578
2642
  fragment Agent on Agent {
2579
2643
  workspaceId
2580
2644
  id
@@ -2588,7 +2652,7 @@ const AgentFragmentDoc = Apollo.gql(_t10$1 || (_t10$1 = _$4`
2588
2652
  createdAt
2589
2653
  }
2590
2654
  `));
2591
- const MessageFragmentDoc = Apollo.gql(_t11$1 || (_t11$1 = _$4`
2655
+ const MessageFragmentDoc = Apollo.gql(_t13$1 || (_t13$1 = _$4`
2592
2656
  fragment Message on Message {
2593
2657
  messageId
2594
2658
  content
@@ -2615,7 +2679,7 @@ const MessageFragmentDoc = Apollo.gql(_t11$1 || (_t11$1 = _$4`
2615
2679
  }
2616
2680
  }
2617
2681
  `));
2618
- const ConversationFragmentDoc = Apollo.gql(_t12$1 || (_t12$1 = _$4`
2682
+ const ConversationFragmentDoc = Apollo.gql(_t14$1 || (_t14$1 = _$4`
2619
2683
  fragment Conversation on Conversation {
2620
2684
  workspaceId
2621
2685
  id
@@ -2692,7 +2756,7 @@ const ConversationFragmentDoc = Apollo.gql(_t12$1 || (_t12$1 = _$4`
2692
2756
  }
2693
2757
  ${0}
2694
2758
  `), MessageFragmentDoc);
2695
- const TagFragmentDoc = Apollo.gql(_t13$1 || (_t13$1 = _$4`
2759
+ const TagFragmentDoc = Apollo.gql(_t15$1 || (_t15$1 = _$4`
2696
2760
  fragment Tag on Tag {
2697
2761
  id
2698
2762
  tag
@@ -2700,7 +2764,7 @@ const TagFragmentDoc = Apollo.gql(_t13$1 || (_t13$1 = _$4`
2700
2764
  createdAt
2701
2765
  }
2702
2766
  `));
2703
- const MessageTemplateDetailsFragmentDoc = Apollo.gql(_t14$1 || (_t14$1 = _$4`
2767
+ const MessageTemplateDetailsFragmentDoc = Apollo.gql(_t16$1 || (_t16$1 = _$4`
2704
2768
  fragment MessageTemplateDetails on MessageTemplateDetails {
2705
2769
  id
2706
2770
  name
@@ -2712,7 +2776,7 @@ const MessageTemplateDetailsFragmentDoc = Apollo.gql(_t14$1 || (_t14$1 = _$4`
2712
2776
  components
2713
2777
  }
2714
2778
  `));
2715
- const MessageTemplateFragmentDoc = Apollo.gql(_t15$1 || (_t15$1 = _$4`
2779
+ const MessageTemplateFragmentDoc = Apollo.gql(_t17$1 || (_t17$1 = _$4`
2716
2780
  fragment MessageTemplate on MessageTemplate {
2717
2781
  id
2718
2782
  name
@@ -2723,7 +2787,7 @@ const MessageTemplateFragmentDoc = Apollo.gql(_t15$1 || (_t15$1 = _$4`
2723
2787
  parameter_format
2724
2788
  }
2725
2789
  `));
2726
- const ClientFragmentDoc = Apollo.gql(_t16$1 || (_t16$1 = _$4`
2790
+ const ClientFragmentDoc = Apollo.gql(_t18$1 || (_t18$1 = _$4`
2727
2791
  fragment Client on Client {
2728
2792
  workspaceId
2729
2793
  id
@@ -2747,7 +2811,7 @@ const ClientFragmentDoc = Apollo.gql(_t16$1 || (_t16$1 = _$4`
2747
2811
  blacklistedBy
2748
2812
  }
2749
2813
  `));
2750
- const QuickReplyFragmentDoc = Apollo.gql(_t17$1 || (_t17$1 = _$4`
2814
+ const QuickReplyFragmentDoc = Apollo.gql(_t19$1 || (_t19$1 = _$4`
2751
2815
  fragment QuickReply on QuickReply {
2752
2816
  id
2753
2817
  workspaceId
@@ -2757,7 +2821,7 @@ const QuickReplyFragmentDoc = Apollo.gql(_t17$1 || (_t17$1 = _$4`
2757
2821
  updatedAt
2758
2822
  }
2759
2823
  `));
2760
- const WorkspaceOnboardingFragmentDoc = Apollo.gql(_t18$1 || (_t18$1 = _$4`
2824
+ const WorkspaceOnboardingFragmentDoc = Apollo.gql(_t20$1 || (_t20$1 = _$4`
2761
2825
  fragment WorkspaceOnboarding on WorkspaceOnboarding {
2762
2826
  workspaceId
2763
2827
  completedSteps
@@ -2765,7 +2829,7 @@ const WorkspaceOnboardingFragmentDoc = Apollo.gql(_t18$1 || (_t18$1 = _$4`
2765
2829
  dismissedAt
2766
2830
  }
2767
2831
  `));
2768
- const ApiKeyFragmentDoc = Apollo.gql(_t19$1 || (_t19$1 = _$4`
2832
+ const ApiKeyFragmentDoc = Apollo.gql(_t21$1 || (_t21$1 = _$4`
2769
2833
  fragment ApiKey on ApiKey {
2770
2834
  workspaceId
2771
2835
  id
@@ -2775,7 +2839,7 @@ const ApiKeyFragmentDoc = Apollo.gql(_t19$1 || (_t19$1 = _$4`
2775
2839
  createdAt
2776
2840
  }
2777
2841
  `));
2778
- const IntegrationFragmentDoc = Apollo.gql(_t20$1 || (_t20$1 = _$4`
2842
+ const IntegrationFragmentDoc = Apollo.gql(_t22$1 || (_t22$1 = _$4`
2779
2843
  fragment Integration on Integration {
2780
2844
  workspaceId
2781
2845
  id
@@ -2790,7 +2854,7 @@ const IntegrationFragmentDoc = Apollo.gql(_t20$1 || (_t20$1 = _$4`
2790
2854
  callingEnabled
2791
2855
  }
2792
2856
  `));
2793
- const WebhookFragmentDoc = Apollo.gql(_t21$1 || (_t21$1 = _$4`
2857
+ const WebhookFragmentDoc = Apollo.gql(_t23$1 || (_t23$1 = _$4`
2794
2858
  fragment Webhook on Webhook {
2795
2859
  workspaceId
2796
2860
  id
@@ -2802,7 +2866,7 @@ const WebhookFragmentDoc = Apollo.gql(_t21$1 || (_t21$1 = _$4`
2802
2866
  createdAt
2803
2867
  }
2804
2868
  `));
2805
- const WorkspaceProfileFragmentDoc = Apollo.gql(_t22$1 || (_t22$1 = _$4`
2869
+ const WorkspaceProfileFragmentDoc = Apollo.gql(_t24$1 || (_t24$1 = _$4`
2806
2870
  fragment WorkspaceProfile on WorkspaceProfile {
2807
2871
  industry
2808
2872
  companySize
@@ -2810,7 +2874,7 @@ const WorkspaceProfileFragmentDoc = Apollo.gql(_t22$1 || (_t22$1 = _$4`
2810
2874
  useCase
2811
2875
  }
2812
2876
  `));
2813
- const WorkspaceFragmentDoc = Apollo.gql(_t23$1 || (_t23$1 = _$4`
2877
+ const WorkspaceFragmentDoc = Apollo.gql(_t25$1 || (_t25$1 = _$4`
2814
2878
  fragment Workspace on Workspace {
2815
2879
  id
2816
2880
  name
@@ -2833,7 +2897,7 @@ const WorkspaceFragmentDoc = Apollo.gql(_t23$1 || (_t23$1 = _$4`
2833
2897
  }
2834
2898
  ${0}
2835
2899
  `), WorkspaceProfileFragmentDoc);
2836
- const WorkspaceSettingsFragmentDoc = Apollo.gql(_t24$1 || (_t24$1 = _$4`
2900
+ const WorkspaceSettingsFragmentDoc = Apollo.gql(_t26 || (_t26 = _$4`
2837
2901
  fragment WorkspaceSettings on WorkspaceSettings {
2838
2902
  id
2839
2903
  workspaceId
@@ -2862,7 +2926,7 @@ const WorkspaceSettingsFragmentDoc = Apollo.gql(_t24$1 || (_t24$1 = _$4`
2862
2926
  }
2863
2927
  }
2864
2928
  `));
2865
- Apollo.gql(_t25$1 || (_t25$1 = _$4`
2929
+ Apollo.gql(_t27 || (_t27 = _$4`
2866
2930
  query ai($input: AIInput!) {
2867
2931
  ai(input: $input) {
2868
2932
  ...AI
@@ -2870,7 +2934,7 @@ Apollo.gql(_t25$1 || (_t25$1 = _$4`
2870
2934
  }
2871
2935
  ${0}
2872
2936
  `), AiFragmentDoc);
2873
- Apollo.gql(_t26 || (_t26 = _$4`
2937
+ Apollo.gql(_t28 || (_t28 = _$4`
2874
2938
  query aiVoices($input: AiVoicesInput!) {
2875
2939
  aiVoices(input: $input) {
2876
2940
  id
@@ -2880,7 +2944,7 @@ Apollo.gql(_t26 || (_t26 = _$4`
2880
2944
  }
2881
2945
  }
2882
2946
  `));
2883
- const AisDocument = Apollo.gql(_t27 || (_t27 = _$4`
2947
+ const AisDocument = Apollo.gql(_t29 || (_t29 = _$4`
2884
2948
  query ais($input: AIsInput!) {
2885
2949
  ais(input: $input) {
2886
2950
  nodes {
@@ -2910,7 +2974,7 @@ function useAisQuery(baseOptions) {
2910
2974
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
2911
2975
  return Apollo__namespace.useQuery(AisDocument, options);
2912
2976
  }
2913
- const CreateAiDocument = Apollo.gql(_t28 || (_t28 = _$4`
2977
+ const CreateAiDocument = Apollo.gql(_t30 || (_t30 = _$4`
2914
2978
  mutation createAi($input: AICreateInput!) {
2915
2979
  createAi(input: $input) {
2916
2980
  ...AI
@@ -2939,7 +3003,7 @@ function useCreateAiMutation(baseOptions) {
2939
3003
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
2940
3004
  return Apollo__namespace.useMutation(CreateAiDocument, options);
2941
3005
  }
2942
- Apollo.gql(_t29 || (_t29 = _$4`
3006
+ Apollo.gql(_t31 || (_t31 = _$4`
2943
3007
  mutation createQa($input: QaCreateInput!) {
2944
3008
  createQa(input: $input) {
2945
3009
  ...QaEntryFields
@@ -2947,7 +3011,7 @@ Apollo.gql(_t29 || (_t29 = _$4`
2947
3011
  }
2948
3012
  ${0}
2949
3013
  `), QaEntryFieldsFragmentDoc);
2950
- Apollo.gql(_t30 || (_t30 = _$4`
3014
+ Apollo.gql(_t32 || (_t32 = _$4`
2951
3015
  mutation createSource($input: SourceCreateInput!) {
2952
3016
  createSource(input: $input) {
2953
3017
  workspaceId
@@ -2959,7 +3023,7 @@ Apollo.gql(_t30 || (_t30 = _$4`
2959
3023
  }
2960
3024
  }
2961
3025
  `));
2962
- Apollo.gql(_t31 || (_t31 = _$4`
3026
+ Apollo.gql(_t33 || (_t33 = _$4`
2963
3027
  mutation deleteAi($input: AIDeleteInput!) {
2964
3028
  deleteAi(input: $input) {
2965
3029
  ...AI
@@ -2967,7 +3031,7 @@ Apollo.gql(_t31 || (_t31 = _$4`
2967
3031
  }
2968
3032
  ${0}
2969
3033
  `), AiFragmentDoc);
2970
- Apollo.gql(_t32 || (_t32 = _$4`
3034
+ Apollo.gql(_t34 || (_t34 = _$4`
2971
3035
  mutation deleteQa($input: QaIdInput!) {
2972
3036
  deleteQa(input: $input) {
2973
3037
  ...QaEntryFields
@@ -2975,7 +3039,7 @@ Apollo.gql(_t32 || (_t32 = _$4`
2975
3039
  }
2976
3040
  ${0}
2977
3041
  `), QaEntryFieldsFragmentDoc);
2978
- Apollo.gql(_t33 || (_t33 = _$4`
3042
+ Apollo.gql(_t35 || (_t35 = _$4`
2979
3043
  mutation deleteSource($input: SourceDeleteInput!) {
2980
3044
  deleteSource(input: $input) {
2981
3045
  workspaceId
@@ -2987,7 +3051,7 @@ Apollo.gql(_t33 || (_t33 = _$4`
2987
3051
  }
2988
3052
  }
2989
3053
  `));
2990
- Apollo.gql(_t34 || (_t34 = _$4`
3054
+ Apollo.gql(_t36 || (_t36 = _$4`
2991
3055
  mutation patchAi($input: AIPatchInput!) {
2992
3056
  patchAi(input: $input) {
2993
3057
  ...AI
@@ -2995,7 +3059,7 @@ Apollo.gql(_t34 || (_t34 = _$4`
2995
3059
  }
2996
3060
  ${0}
2997
3061
  `), AiFragmentDoc);
2998
- Apollo.gql(_t35 || (_t35 = _$4`
3062
+ Apollo.gql(_t37 || (_t37 = _$4`
2999
3063
  mutation patchSource($input: SourcePatchInput!) {
3000
3064
  patchSource(input: $input) {
3001
3065
  workspaceId
@@ -3007,7 +3071,7 @@ Apollo.gql(_t35 || (_t35 = _$4`
3007
3071
  }
3008
3072
  }
3009
3073
  `));
3010
- Apollo.gql(_t36 || (_t36 = _$4`
3074
+ Apollo.gql(_t38 || (_t38 = _$4`
3011
3075
  mutation publishQa($input: QaIdInput!) {
3012
3076
  publishQa(input: $input) {
3013
3077
  ...QaEntryFields
@@ -3015,7 +3079,7 @@ Apollo.gql(_t36 || (_t36 = _$4`
3015
3079
  }
3016
3080
  ${0}
3017
3081
  `), QaEntryFieldsFragmentDoc);
3018
- Apollo.gql(_t37 || (_t37 = _$4`
3082
+ Apollo.gql(_t39 || (_t39 = _$4`
3019
3083
  query qaEntries($input: QaEntriesInput!) {
3020
3084
  qaEntries(input: $input) {
3021
3085
  nodes {
@@ -3025,7 +3089,7 @@ Apollo.gql(_t37 || (_t37 = _$4`
3025
3089
  }
3026
3090
  ${0}
3027
3091
  `), QaEntryFieldsFragmentDoc);
3028
- Apollo.gql(_t38 || (_t38 = _$4`
3092
+ Apollo.gql(_t40 || (_t40 = _$4`
3029
3093
  query similarQa($input: SimilarQaInput!) {
3030
3094
  similarQa(input: $input) {
3031
3095
  entry {
@@ -3035,7 +3099,7 @@ Apollo.gql(_t38 || (_t38 = _$4`
3035
3099
  }
3036
3100
  ${0}
3037
3101
  `), QaEntryFieldsFragmentDoc);
3038
- Apollo.gql(_t39 || (_t39 = _$4`
3102
+ Apollo.gql(_t41 || (_t41 = _$4`
3039
3103
  query sources($input: SourcesInput!) {
3040
3104
  sources(input: $input) {
3041
3105
  nodes {
@@ -3049,7 +3113,7 @@ Apollo.gql(_t39 || (_t39 = _$4`
3049
3113
  }
3050
3114
  }
3051
3115
  `));
3052
- Apollo.gql(_t40 || (_t40 = _$4`
3116
+ Apollo.gql(_t42 || (_t42 = _$4`
3053
3117
  query tokenUsageLogs($input: TokenUsageLogsInput!, $pageInfo: PageInfoInput) {
3054
3118
  tokenUsageLogs(input: $input, pageInfo: $pageInfo) {
3055
3119
  nodes {
@@ -3074,7 +3138,7 @@ Apollo.gql(_t40 || (_t40 = _$4`
3074
3138
  }
3075
3139
  }
3076
3140
  `));
3077
- Apollo.gql(_t41 || (_t41 = _$4`
3141
+ Apollo.gql(_t43 || (_t43 = _$4`
3078
3142
  query tokenUsageTotal($input: TokenUsageTotalInput!) {
3079
3143
  tokenUsageTotal(input: $input) {
3080
3144
  workspaceId
@@ -3086,7 +3150,7 @@ Apollo.gql(_t41 || (_t41 = _$4`
3086
3150
  }
3087
3151
  }
3088
3152
  `));
3089
- Apollo.gql(_t42 || (_t42 = _$4`
3153
+ Apollo.gql(_t44 || (_t44 = _$4`
3090
3154
  mutation unpublishQa($input: QaIdInput!) {
3091
3155
  unpublishQa(input: $input) {
3092
3156
  ...QaEntryFields
@@ -3094,7 +3158,7 @@ Apollo.gql(_t42 || (_t42 = _$4`
3094
3158
  }
3095
3159
  ${0}
3096
3160
  `), QaEntryFieldsFragmentDoc);
3097
- Apollo.gql(_t43 || (_t43 = _$4`
3161
+ Apollo.gql(_t45 || (_t45 = _$4`
3098
3162
  mutation updateQa($input: QaUpdateInput!) {
3099
3163
  updateQa(input: $input) {
3100
3164
  ...QaEntryFields
@@ -3102,7 +3166,7 @@ Apollo.gql(_t43 || (_t43 = _$4`
3102
3166
  }
3103
3167
  ${0}
3104
3168
  `), QaEntryFieldsFragmentDoc);
3105
- Apollo.gql(_t44 || (_t44 = _$4`
3169
+ Apollo.gql(_t46 || (_t46 = _$4`
3106
3170
  mutation assignOwner($input: InputAssignUserOwner!) {
3107
3171
  assignOwner(input: $input) {
3108
3172
  ...UserRole
@@ -3110,7 +3174,7 @@ Apollo.gql(_t44 || (_t44 = _$4`
3110
3174
  }
3111
3175
  ${0}
3112
3176
  `), UserRoleFragmentDoc);
3113
- Apollo.gql(_t45 || (_t45 = _$4`
3177
+ Apollo.gql(_t47 || (_t47 = _$4`
3114
3178
  mutation assignUserRole($input: InputAssignUserRole!) {
3115
3179
  assignUserRole(input: $input) {
3116
3180
  ...UserRole
@@ -3118,7 +3182,7 @@ Apollo.gql(_t45 || (_t45 = _$4`
3118
3182
  }
3119
3183
  ${0}
3120
3184
  `), UserRoleFragmentDoc);
3121
- const CurrentUserDocument = Apollo.gql(_t46 || (_t46 = _$4`
3185
+ const CurrentUserDocument = Apollo.gql(_t48 || (_t48 = _$4`
3122
3186
  query currentUser {
3123
3187
  currentUser {
3124
3188
  ...User
@@ -3145,7 +3209,7 @@ function useCurrentUserQuery(baseOptions) {
3145
3209
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3146
3210
  return Apollo__namespace.useQuery(CurrentUserDocument, options);
3147
3211
  }
3148
- Apollo.gql(_t47 || (_t47 = _$4`
3212
+ Apollo.gql(_t49 || (_t49 = _$4`
3149
3213
  mutation initWorkspace($input: InputInitWorkspace!) {
3150
3214
  initWorkspace(input: $input) {
3151
3215
  ...UserRole
@@ -3153,7 +3217,7 @@ Apollo.gql(_t47 || (_t47 = _$4`
3153
3217
  }
3154
3218
  ${0}
3155
3219
  `), UserRoleFragmentDoc);
3156
- Apollo.gql(_t48 || (_t48 = _$4`
3220
+ const MeDocument = Apollo.gql(_t50 || (_t50 = _$4`
3157
3221
  query me($input: InputInitWorkspace!) {
3158
3222
  me(input: $input) {
3159
3223
  ...UserRole
@@ -3161,12 +3225,32 @@ Apollo.gql(_t48 || (_t48 = _$4`
3161
3225
  }
3162
3226
  ${0}
3163
3227
  `), UserRoleFragmentDoc);
3164
- Apollo.gql(_t49 || (_t49 = _$4`
3228
+ /**
3229
+ * __useMeQuery__
3230
+ *
3231
+ * To run a query within a React component, call `useMeQuery` and pass it any options that fit your needs.
3232
+ * When your component renders, `useMeQuery` returns an object from Apollo Client that contains loading, error, and data properties
3233
+ * you can use to render your UI.
3234
+ *
3235
+ * @param baseOptions options that will be passed into the query, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options;
3236
+ *
3237
+ * @example
3238
+ * const { data, loading, error } = useMeQuery({
3239
+ * variables: {
3240
+ * input: // value for 'input'
3241
+ * },
3242
+ * });
3243
+ */
3244
+ function useMeQuery(baseOptions) {
3245
+ const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3246
+ return Apollo__namespace.useQuery(MeDocument, options);
3247
+ }
3248
+ Apollo.gql(_t51 || (_t51 = _$4`
3165
3249
  mutation unassignUserRole($input: InputUnassignUserRole!) {
3166
3250
  unassignUserRole(input: $input)
3167
3251
  }
3168
3252
  `));
3169
- Apollo.gql(_t50 || (_t50 = _$4`
3253
+ Apollo.gql(_t52 || (_t52 = _$4`
3170
3254
  query usersRoles($input: InputUsersRoles!) {
3171
3255
  usersRoles(input: $input) {
3172
3256
  nodes {
@@ -3176,7 +3260,111 @@ Apollo.gql(_t50 || (_t50 = _$4`
3176
3260
  }
3177
3261
  ${0}
3178
3262
  `), UserRoleFragmentDoc);
3179
- Apollo.gql(_t51 || (_t51 = _$4`
3263
+ Apollo.gql(_t53 || (_t53 = _$4`
3264
+ mutation activateAutomation($input: AutomationStateInput!) {
3265
+ activateAutomation(input: $input) {
3266
+ ...Automation
3267
+ }
3268
+ }
3269
+ ${0}
3270
+ `), AutomationFragmentDoc);
3271
+ Apollo.gql(_t54 || (_t54 = _$4`
3272
+ query automation($input: AutomationInput!) {
3273
+ automation(input: $input) {
3274
+ ...Automation
3275
+ }
3276
+ }
3277
+ ${0}
3278
+ `), AutomationFragmentDoc);
3279
+ Apollo.gql(_t55 || (_t55 = _$4`
3280
+ query automationAudiencePreview($input: AutomationAudiencePreviewInput!) {
3281
+ automationAudiencePreview(input: $input) {
3282
+ matchingCount
3283
+ dueCount
3284
+ }
3285
+ }
3286
+ `));
3287
+ Apollo.gql(_t56 || (_t56 = _$4`
3288
+ query automationOccurrenceStats($input: AutomationOccurrenceStatsInput!) {
3289
+ automationOccurrenceStats(input: $input) {
3290
+ total
3291
+ queued
3292
+ sent
3293
+ delivered
3294
+ read
3295
+ failed
3296
+ replied
3297
+ }
3298
+ }
3299
+ `));
3300
+ Apollo.gql(_t57 || (_t57 = _$4`
3301
+ query automationOccurrences($input: AutomationOccurrencesInput!, $pageInfo: PageInfoInput) {
3302
+ automationOccurrences(input: $input, pageInfo: $pageInfo) {
3303
+ nodes {
3304
+ ...AutomationOccurrence
3305
+ }
3306
+ pageInfo {
3307
+ ...PageInfo
3308
+ }
3309
+ }
3310
+ }
3311
+ ${0}
3312
+ ${0}
3313
+ `), AutomationOccurrenceFragmentDoc, PageInfoFragmentDoc);
3314
+ Apollo.gql(_t58 || (_t58 = _$4`
3315
+ query automationStateCounts($input: AutomationStateCountsInput!) {
3316
+ automationStateCounts(input: $input) {
3317
+ state
3318
+ count
3319
+ }
3320
+ }
3321
+ `));
3322
+ Apollo.gql(_t59 || (_t59 = _$4`
3323
+ query automations($input: AutomationsInput!, $pageInfo: PageInfoInput) {
3324
+ automations(input: $input, pageInfo: $pageInfo) {
3325
+ nodes {
3326
+ ...Automation
3327
+ }
3328
+ pageInfo {
3329
+ ...PageInfo
3330
+ }
3331
+ }
3332
+ }
3333
+ ${0}
3334
+ ${0}
3335
+ `), AutomationFragmentDoc, PageInfoFragmentDoc);
3336
+ Apollo.gql(_t60 || (_t60 = _$4`
3337
+ mutation createAutomation($input: AutomationCreateInput!) {
3338
+ createAutomation(input: $input) {
3339
+ ...Automation
3340
+ }
3341
+ }
3342
+ ${0}
3343
+ `), AutomationFragmentDoc);
3344
+ Apollo.gql(_t61 || (_t61 = _$4`
3345
+ mutation deleteAutomation($input: AutomationStateInput!) {
3346
+ deleteAutomation(input: $input) {
3347
+ id
3348
+ }
3349
+ }
3350
+ `));
3351
+ Apollo.gql(_t62 || (_t62 = _$4`
3352
+ mutation patchAutomation($input: AutomationPatchInput!) {
3353
+ patchAutomation(input: $input) {
3354
+ ...Automation
3355
+ }
3356
+ }
3357
+ ${0}
3358
+ `), AutomationFragmentDoc);
3359
+ Apollo.gql(_t63 || (_t63 = _$4`
3360
+ mutation pauseAutomation($input: AutomationStateInput!) {
3361
+ pauseAutomation(input: $input) {
3362
+ ...Automation
3363
+ }
3364
+ }
3365
+ ${0}
3366
+ `), AutomationFragmentDoc);
3367
+ Apollo.gql(_t64 || (_t64 = _$4`
3180
3368
  query broadcast($input: BroadcastInput!) {
3181
3369
  broadcast(input: $input) {
3182
3370
  ...Broadcast
@@ -3184,7 +3372,7 @@ Apollo.gql(_t51 || (_t51 = _$4`
3184
3372
  }
3185
3373
  ${0}
3186
3374
  `), BroadcastFragmentDoc);
3187
- Apollo.gql(_t52 || (_t52 = _$4`
3375
+ Apollo.gql(_t65 || (_t65 = _$4`
3188
3376
  query broadcastDeliveryReport($input: BroadcastDeliveryReportInput!) {
3189
3377
  broadcastDeliveryReport(input: $input) {
3190
3378
  broadcastId
@@ -3202,7 +3390,7 @@ Apollo.gql(_t52 || (_t52 = _$4`
3202
3390
  }
3203
3391
  ${0}
3204
3392
  `), MessageFragmentDoc);
3205
- Apollo.gql(_t53 || (_t53 = _$4`
3393
+ Apollo.gql(_t66 || (_t66 = _$4`
3206
3394
  query broadcastMessageStatuses($input: BroadcastMessageStatusesInput!, $pageInfo: PageInfoInput) {
3207
3395
  broadcastMessageStatuses(input: $input, pageInfo: $pageInfo) {
3208
3396
  nodes {
@@ -3226,7 +3414,7 @@ Apollo.gql(_t53 || (_t53 = _$4`
3226
3414
  }
3227
3415
  ${0}
3228
3416
  `), PageInfoFragmentDoc);
3229
- Apollo.gql(_t54 || (_t54 = _$4`
3417
+ Apollo.gql(_t67 || (_t67 = _$4`
3230
3418
  query broadcastReport($input: BroadcastReportInput!) {
3231
3419
  broadcastReport(input: $input) {
3232
3420
  nodes {
@@ -3236,7 +3424,7 @@ Apollo.gql(_t54 || (_t54 = _$4`
3236
3424
  }
3237
3425
  ${0}
3238
3426
  `), BroadcastReportFragmentDoc);
3239
- Apollo.gql(_t55 || (_t55 = _$4`
3427
+ Apollo.gql(_t68 || (_t68 = _$4`
3240
3428
  query broadcastStateCounts($input: BroadcastsInput!) {
3241
3429
  broadcastStateCounts(input: $input) {
3242
3430
  state
@@ -3244,7 +3432,7 @@ Apollo.gql(_t55 || (_t55 = _$4`
3244
3432
  }
3245
3433
  }
3246
3434
  `));
3247
- Apollo.gql(_t56 || (_t56 = _$4`
3435
+ Apollo.gql(_t69 || (_t69 = _$4`
3248
3436
  query broadcasts($input: BroadcastsInput!, $pageInfo: PageInfoInput) {
3249
3437
  broadcasts(input: $input, pageInfo: $pageInfo) {
3250
3438
  nodes {
@@ -3258,7 +3446,7 @@ Apollo.gql(_t56 || (_t56 = _$4`
3258
3446
  ${0}
3259
3447
  ${0}
3260
3448
  `), BroadcastFragmentDoc, PageInfoFragmentDoc);
3261
- Apollo.gql(_t57 || (_t57 = _$4`
3449
+ Apollo.gql(_t70 || (_t70 = _$4`
3262
3450
  mutation cancelBroadcast($input: BroadcastCancelInput!) {
3263
3451
  cancelBroadcast(input: $input) {
3264
3452
  ...Broadcast
@@ -3266,7 +3454,7 @@ Apollo.gql(_t57 || (_t57 = _$4`
3266
3454
  }
3267
3455
  ${0}
3268
3456
  `), BroadcastFragmentDoc);
3269
- Apollo.gql(_t58 || (_t58 = _$4`
3457
+ Apollo.gql(_t71 || (_t71 = _$4`
3270
3458
  mutation createBroadcast($input: BroadcastCreateInput!) {
3271
3459
  createBroadcast(input: $input) {
3272
3460
  ...Broadcast
@@ -3274,7 +3462,7 @@ Apollo.gql(_t58 || (_t58 = _$4`
3274
3462
  }
3275
3463
  ${0}
3276
3464
  `), BroadcastFragmentDoc);
3277
- Apollo.gql(_t59 || (_t59 = _$4`
3465
+ Apollo.gql(_t72 || (_t72 = _$4`
3278
3466
  mutation deleteBroadcast($input: BroadcastDeleteInput!) {
3279
3467
  deleteBroadcast(input: $input) {
3280
3468
  ...Broadcast
@@ -3282,7 +3470,7 @@ Apollo.gql(_t59 || (_t59 = _$4`
3282
3470
  }
3283
3471
  ${0}
3284
3472
  `), BroadcastFragmentDoc);
3285
- Apollo.gql(_t60 || (_t60 = _$4`
3473
+ Apollo.gql(_t73 || (_t73 = _$4`
3286
3474
  mutation launchBroadcast($input: BroadcastLaunchInput!) {
3287
3475
  launchBroadcast(input: $input) {
3288
3476
  ...Broadcast
@@ -3290,7 +3478,7 @@ Apollo.gql(_t60 || (_t60 = _$4`
3290
3478
  }
3291
3479
  ${0}
3292
3480
  `), BroadcastFragmentDoc);
3293
- Apollo.gql(_t61 || (_t61 = _$4`
3481
+ Apollo.gql(_t74 || (_t74 = _$4`
3294
3482
  mutation patchBroadcast($input: BroadcastPatchInput!) {
3295
3483
  patchBroadcast(input: $input) {
3296
3484
  ...Broadcast
@@ -3298,7 +3486,7 @@ Apollo.gql(_t61 || (_t61 = _$4`
3298
3486
  }
3299
3487
  ${0}
3300
3488
  `), BroadcastFragmentDoc);
3301
- Apollo.gql(_t62 || (_t62 = _$4`
3489
+ Apollo.gql(_t75 || (_t75 = _$4`
3302
3490
  mutation retryFailedBroadcastTargets($input: RetryFailedBroadcastTargetsInput!) {
3303
3491
  retryFailedBroadcastTargets(input: $input) {
3304
3492
  retriedCount
@@ -3309,7 +3497,7 @@ Apollo.gql(_t62 || (_t62 = _$4`
3309
3497
  }
3310
3498
  ${0}
3311
3499
  `), BroadcastFragmentDoc);
3312
- Apollo.gql(_t63 || (_t63 = _$4`
3500
+ Apollo.gql(_t76 || (_t76 = _$4`
3313
3501
  query workspaceBroadcastMessageStatuses($input: WorkspaceBroadcastMessageStatusesInput!, $pageInfo: PageInfoInput) {
3314
3502
  workspaceBroadcastMessageStatuses(input: $input, pageInfo: $pageInfo) {
3315
3503
  nodes {
@@ -3333,7 +3521,7 @@ Apollo.gql(_t63 || (_t63 = _$4`
3333
3521
  }
3334
3522
  ${0}
3335
3523
  `), PageInfoFragmentDoc);
3336
- Apollo.gql(_t64 || (_t64 = _$4`
3524
+ Apollo.gql(_t77 || (_t77 = _$4`
3337
3525
  query agentsReport($input: AgentsReportInput!) {
3338
3526
  agentsReport(input: $input) {
3339
3527
  nodes {
@@ -3343,7 +3531,7 @@ Apollo.gql(_t64 || (_t64 = _$4`
3343
3531
  }
3344
3532
  ${0}
3345
3533
  `), AgentReportFragmentDoc);
3346
- Apollo.gql(_t65 || (_t65 = _$4`
3534
+ Apollo.gql(_t78 || (_t78 = _$4`
3347
3535
  query convStagesReport($input: ConvStagesReportInput!) {
3348
3536
  convStagesReport(input: $input) {
3349
3537
  nodes {
@@ -3353,7 +3541,7 @@ Apollo.gql(_t65 || (_t65 = _$4`
3353
3541
  }
3354
3542
  ${0}
3355
3543
  `), ConvStageReportFragmentDoc);
3356
- Apollo.gql(_t66 || (_t66 = _$4`
3544
+ Apollo.gql(_t79 || (_t79 = _$4`
3357
3545
  query convTagsReport($input: ConvTagsReportInput!) {
3358
3546
  convTagsReport(input: $input) {
3359
3547
  nodes {
@@ -3363,7 +3551,7 @@ Apollo.gql(_t66 || (_t66 = _$4`
3363
3551
  }
3364
3552
  ${0}
3365
3553
  `), ConvTagReportFragmentDoc);
3366
- Apollo.gql(_t67 || (_t67 = _$4`
3554
+ Apollo.gql(_t80 || (_t80 = _$4`
3367
3555
  query convsReport($input: ConvsReportInput!) {
3368
3556
  convsReport(input: $input) {
3369
3557
  nodes {
@@ -3373,7 +3561,7 @@ Apollo.gql(_t67 || (_t67 = _$4`
3373
3561
  }
3374
3562
  ${0}
3375
3563
  `), ConversationReportFragmentDoc);
3376
- Apollo.gql(_t68 || (_t68 = _$4`
3564
+ Apollo.gql(_t81 || (_t81 = _$4`
3377
3565
  query messageReport($input: MessageReportInput!) {
3378
3566
  messageReport(input: $input) {
3379
3567
  nodes {
@@ -3392,7 +3580,7 @@ Apollo.gql(_t68 || (_t68 = _$4`
3392
3580
  }
3393
3581
  }
3394
3582
  `));
3395
- Apollo.gql(_t69 || (_t69 = _$4`
3583
+ Apollo.gql(_t82 || (_t82 = _$4`
3396
3584
  query messageReportToday($input: MessageReportTodayInput!) {
3397
3585
  messageReportToday(input: $input) {
3398
3586
  workspaceId
@@ -3407,7 +3595,7 @@ Apollo.gql(_t69 || (_t69 = _$4`
3407
3595
  }
3408
3596
  }
3409
3597
  `));
3410
- const UploadSignatureDocument = Apollo.gql(_t70 || (_t70 = _$4`
3598
+ const UploadSignatureDocument = Apollo.gql(_t83 || (_t83 = _$4`
3411
3599
  query uploadSignature($input: InputUploadSignature!) {
3412
3600
  uploadSignature(input: $input) {
3413
3601
  sas
@@ -3418,7 +3606,7 @@ function useUploadSignatureLazyQuery(baseOptions) {
3418
3606
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3419
3607
  return Apollo__namespace.useLazyQuery(UploadSignatureDocument, options);
3420
3608
  }
3421
- const AddMessageDocument = Apollo.gql(_t71 || (_t71 = _$4`
3609
+ const AddMessageDocument = Apollo.gql(_t84 || (_t84 = _$4`
3422
3610
  mutation addMessage($input: MessageInput!) {
3423
3611
  addMessage(input: $input) {
3424
3612
  ...Message
@@ -3447,7 +3635,7 @@ function useAddMessageMutation(baseOptions) {
3447
3635
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3448
3636
  return Apollo__namespace.useMutation(AddMessageDocument, options);
3449
3637
  }
3450
- Apollo.gql(_t72 || (_t72 = _$4`
3638
+ Apollo.gql(_t85 || (_t85 = _$4`
3451
3639
  query agent($input: AgentInput!) {
3452
3640
  agent(input: $input) {
3453
3641
  ...Agent
@@ -3455,7 +3643,7 @@ Apollo.gql(_t72 || (_t72 = _$4`
3455
3643
  }
3456
3644
  ${0}
3457
3645
  `), AgentFragmentDoc);
3458
- const AgentsDocument = Apollo.gql(_t73 || (_t73 = _$4`
3646
+ const AgentsDocument = Apollo.gql(_t86 || (_t86 = _$4`
3459
3647
  query agents($input: AgentsInput!, $pageInfo: PageInfoInput) {
3460
3648
  agents(input: $input, pageInfo: $pageInfo) {
3461
3649
  nodes {
@@ -3490,7 +3678,7 @@ function useAgentsQuery(baseOptions) {
3490
3678
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3491
3679
  return Apollo__namespace.useQuery(AgentsDocument, options);
3492
3680
  }
3493
- const AssignConvDocument = Apollo.gql(_t74 || (_t74 = _$4`
3681
+ const AssignConvDocument = Apollo.gql(_t87 || (_t87 = _$4`
3494
3682
  mutation assignConv($input: ConvAssignInput!) {
3495
3683
  assignConv(input: $input) {
3496
3684
  ...Conversation
@@ -3519,7 +3707,7 @@ function useAssignConvMutation(baseOptions) {
3519
3707
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3520
3708
  return Apollo__namespace.useMutation(AssignConvDocument, options);
3521
3709
  }
3522
- const AnswerCallDocument = Apollo.gql(_t75 || (_t75 = _$4`
3710
+ const AnswerCallDocument = Apollo.gql(_t88 || (_t88 = _$4`
3523
3711
  mutation answerCall($input: CallActionInput!) {
3524
3712
  answerCall(input: $input) {
3525
3713
  roomName
@@ -3553,7 +3741,7 @@ function useAnswerCallMutation(baseOptions) {
3553
3741
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3554
3742
  return Apollo__namespace.useMutation(AnswerCallDocument, options);
3555
3743
  }
3556
- const RejectCallDocument = Apollo.gql(_t76 || (_t76 = _$4`
3744
+ const RejectCallDocument = Apollo.gql(_t89 || (_t89 = _$4`
3557
3745
  mutation rejectCall($input: CallActionInput!) {
3558
3746
  rejectCall(input: $input) {
3559
3747
  id
@@ -3582,7 +3770,7 @@ function useRejectCallMutation(baseOptions) {
3582
3770
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3583
3771
  return Apollo__namespace.useMutation(RejectCallDocument, options);
3584
3772
  }
3585
- const HangupCallDocument = Apollo.gql(_t77 || (_t77 = _$4`
3773
+ const HangupCallDocument = Apollo.gql(_t90 || (_t90 = _$4`
3586
3774
  mutation hangupCall($input: CallActionInput!) {
3587
3775
  hangupCall(input: $input) {
3588
3776
  id
@@ -3611,7 +3799,7 @@ function useHangupCallMutation(baseOptions) {
3611
3799
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3612
3800
  return Apollo__namespace.useMutation(HangupCallDocument, options);
3613
3801
  }
3614
- const ClientSuggestionsDocument = Apollo.gql(_t78 || (_t78 = _$4`
3802
+ const ClientSuggestionsDocument = Apollo.gql(_t91 || (_t91 = _$4`
3615
3803
  query clientSuggestions($input: ClientSuggestionsInput!) {
3616
3804
  clientSuggestions(input: $input) {
3617
3805
  tags {
@@ -3634,7 +3822,7 @@ function useClientSuggestionsLazyQuery(baseOptions) {
3634
3822
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3635
3823
  return Apollo__namespace.useLazyQuery(ClientSuggestionsDocument, options);
3636
3824
  }
3637
- const ConvDocument = Apollo.gql(_t79 || (_t79 = _$4`
3825
+ const ConvDocument = Apollo.gql(_t92 || (_t92 = _$4`
3638
3826
  query conv($input: ConvInput!) {
3639
3827
  conv(input: $input) {
3640
3828
  ...Conversation
@@ -3662,7 +3850,7 @@ function useConvQuery(baseOptions) {
3662
3850
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3663
3851
  return Apollo__namespace.useQuery(ConvDocument, options);
3664
3852
  }
3665
- const ConvAutoCompleteDocument = Apollo.gql(_t80 || (_t80 = _$4`
3853
+ const ConvAutoCompleteDocument = Apollo.gql(_t93 || (_t93 = _$4`
3666
3854
  query convAutoComplete($input: ConvAutoCompleteInput!) {
3667
3855
  convAutoComplete(input: $input) {
3668
3856
  text
@@ -3674,7 +3862,7 @@ function useConvAutoCompleteLazyQuery(baseOptions) {
3674
3862
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3675
3863
  return Apollo__namespace.useLazyQuery(ConvAutoCompleteDocument, options);
3676
3864
  }
3677
- const ConvEnhanceMessageDocument = Apollo.gql(_t81 || (_t81 = _$4`
3865
+ const ConvEnhanceMessageDocument = Apollo.gql(_t94 || (_t94 = _$4`
3678
3866
  query convEnhanceMessage($input: ConvEnhanceMessageInput!) {
3679
3867
  convEnhanceMessage(input: $input) {
3680
3868
  text
@@ -3686,7 +3874,7 @@ function useConvEnhanceMessageLazyQuery(baseOptions) {
3686
3874
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3687
3875
  return Apollo__namespace.useLazyQuery(ConvEnhanceMessageDocument, options);
3688
3876
  }
3689
- const ConvSuggestionsDocument = Apollo.gql(_t82 || (_t82 = _$4`
3877
+ const ConvSuggestionsDocument = Apollo.gql(_t95 || (_t95 = _$4`
3690
3878
  query convSuggestions($input: ConvSuggestionsInput!) {
3691
3879
  convSuggestions(input: $input) {
3692
3880
  tags {
@@ -3717,7 +3905,7 @@ function useConvSuggestionsLazyQuery(baseOptions) {
3717
3905
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3718
3906
  return Apollo__namespace.useLazyQuery(ConvSuggestionsDocument, options);
3719
3907
  }
3720
- const ConvSummaryDocument = Apollo.gql(_t83 || (_t83 = _$4`
3908
+ const ConvSummaryDocument = Apollo.gql(_t96 || (_t96 = _$4`
3721
3909
  query convSummary($input: ConvAssistInput!) {
3722
3910
  convSummary(input: $input) {
3723
3911
  text
@@ -3729,7 +3917,7 @@ function useConvSummaryLazyQuery(baseOptions) {
3729
3917
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3730
3918
  return Apollo__namespace.useLazyQuery(ConvSummaryDocument, options);
3731
3919
  }
3732
- const ConvsDocument = Apollo.gql(_t84 || (_t84 = _$4`
3920
+ const ConvsDocument = Apollo.gql(_t97 || (_t97 = _$4`
3733
3921
  query convs($input: ConvsInput!, $pageInfo: PageInfoInput) {
3734
3922
  convs(input: $input, pageInfo: $pageInfo) {
3735
3923
  nodes {
@@ -3764,7 +3952,7 @@ function useConvsQuery(baseOptions) {
3764
3952
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3765
3953
  return Apollo__namespace.useQuery(ConvsDocument, options);
3766
3954
  }
3767
- Apollo.gql(_t85 || (_t85 = _$4`
3955
+ Apollo.gql(_t98 || (_t98 = _$4`
3768
3956
  mutation createAgent($input: AgentCreateInput!) {
3769
3957
  createAgent(input: $input) {
3770
3958
  ...Agent
@@ -3772,7 +3960,7 @@ Apollo.gql(_t85 || (_t85 = _$4`
3772
3960
  }
3773
3961
  ${0}
3774
3962
  `), AgentFragmentDoc);
3775
- Apollo.gql(_t86 || (_t86 = _$4`
3963
+ Apollo.gql(_t99 || (_t99 = _$4`
3776
3964
  mutation deleteAgent($input: AgentInput!) {
3777
3965
  deleteAgent(input: $input) {
3778
3966
  ...Agent
@@ -3780,7 +3968,7 @@ Apollo.gql(_t86 || (_t86 = _$4`
3780
3968
  }
3781
3969
  ${0}
3782
3970
  `), AgentFragmentDoc);
3783
- const EndConvDocument = Apollo.gql(_t87 || (_t87 = _$4`
3971
+ const EndConvDocument = Apollo.gql(_t100 || (_t100 = _$4`
3784
3972
  mutation endConv($input: ConvEndInput!) {
3785
3973
  endConv(input: $input) {
3786
3974
  ...Conversation
@@ -3809,7 +3997,7 @@ function useEndConvMutation(baseOptions) {
3809
3997
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3810
3998
  return Apollo__namespace.useMutation(EndConvDocument, options);
3811
3999
  }
3812
- Apollo.gql(_t88 || (_t88 = _$4`
4000
+ Apollo.gql(_t101 || (_t101 = _$4`
3813
4001
  mutation handoverConv($input: ConvHandoverInput!) {
3814
4002
  handoverConv(input: $input) {
3815
4003
  ...Conversation
@@ -3817,7 +4005,7 @@ Apollo.gql(_t88 || (_t88 = _$4`
3817
4005
  }
3818
4006
  ${0}
3819
4007
  `), ConversationFragmentDoc);
3820
- const MessagesDocument = Apollo.gql(_t89 || (_t89 = _$4`
4008
+ const MessagesDocument = Apollo.gql(_t102 || (_t102 = _$4`
3821
4009
  query messages($input: MessagesInput!, $pageInfo: PageInfoInput) {
3822
4010
  messages(input: $input, pageInfo: $pageInfo) {
3823
4011
  nodes {
@@ -3835,12 +4023,12 @@ function useMessagesLazyQuery(baseOptions) {
3835
4023
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3836
4024
  return Apollo__namespace.useLazyQuery(MessagesDocument, options);
3837
4025
  }
3838
- Apollo.gql(_t90 || (_t90 = _$4`
4026
+ Apollo.gql(_t103 || (_t103 = _$4`
3839
4027
  query openConversationsNeedResponseCount($input: OpenConversationsNeedResponseInput!) {
3840
4028
  openConversationsNeedResponseCount(input: $input)
3841
4029
  }
3842
4030
  `));
3843
- Apollo.gql(_t91 || (_t91 = _$4`
4031
+ Apollo.gql(_t104 || (_t104 = _$4`
3844
4032
  mutation patchAgent($input: AgentPatchInput!) {
3845
4033
  patchAgent(input: $input) {
3846
4034
  ...Agent
@@ -3848,7 +4036,7 @@ Apollo.gql(_t91 || (_t91 = _$4`
3848
4036
  }
3849
4037
  ${0}
3850
4038
  `), AgentFragmentDoc);
3851
- const PatchConvDocument = Apollo.gql(_t92 || (_t92 = _$4`
4039
+ const PatchConvDocument = Apollo.gql(_t105 || (_t105 = _$4`
3852
4040
  mutation patchConv($input: ConvPatchInput!) {
3853
4041
  patchConv(input: $input) {
3854
4042
  ...Conversation
@@ -3877,7 +4065,7 @@ function usePatchConvMutation(baseOptions) {
3877
4065
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3878
4066
  return Apollo__namespace.useMutation(PatchConvDocument, options);
3879
4067
  }
3880
- const ReactToMessageDocument = Apollo.gql(_t93 || (_t93 = _$4`
4068
+ const ReactToMessageDocument = Apollo.gql(_t106 || (_t106 = _$4`
3881
4069
  mutation reactToMessage($input: MessageReactionInput!) {
3882
4070
  reactToMessage(input: $input) {
3883
4071
  ...Message
@@ -3906,7 +4094,7 @@ function useReactToMessageMutation(baseOptions) {
3906
4094
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3907
4095
  return Apollo__namespace.useMutation(ReactToMessageDocument, options);
3908
4096
  }
3909
- const StartConvDocument = Apollo.gql(_t94 || (_t94 = _$4`
4097
+ const StartConvDocument = Apollo.gql(_t107 || (_t107 = _$4`
3910
4098
  mutation startConv($input: ConvStartInput!) {
3911
4099
  startConv(input: $input) {
3912
4100
  ...Conversation
@@ -3935,7 +4123,7 @@ function useStartConvMutation(baseOptions) {
3935
4123
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3936
4124
  return Apollo__namespace.useMutation(StartConvDocument, options);
3937
4125
  }
3938
- const TagClientDocument = Apollo.gql(_t95 || (_t95 = _$4`
4126
+ const TagClientDocument = Apollo.gql(_t108 || (_t108 = _$4`
3939
4127
  mutation tagClient($input: ClientTagInput!) {
3940
4128
  tagClient(input: $input) {
3941
4129
  ...Client
@@ -3964,7 +4152,7 @@ function useTagClientMutation(baseOptions) {
3964
4152
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3965
4153
  return Apollo__namespace.useMutation(TagClientDocument, options);
3966
4154
  }
3967
- const TagConvDocument = Apollo.gql(_t96 || (_t96 = _$4`
4155
+ const TagConvDocument = Apollo.gql(_t109 || (_t109 = _$4`
3968
4156
  mutation tagConv($input: ConvTagInput!) {
3969
4157
  tagConv(input: $input) {
3970
4158
  ...Conversation
@@ -3993,7 +4181,7 @@ function useTagConvMutation(baseOptions) {
3993
4181
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
3994
4182
  return Apollo__namespace.useMutation(TagConvDocument, options);
3995
4183
  }
3996
- const TagsDocument = Apollo.gql(_t97 || (_t97 = _$4`
4184
+ const TagsDocument = Apollo.gql(_t110 || (_t110 = _$4`
3997
4185
  query tags($input: TagsInput!) {
3998
4186
  tags(input: $input) {
3999
4187
  nodes {
@@ -4023,7 +4211,7 @@ function useTagsQuery(baseOptions) {
4023
4211
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4024
4212
  return Apollo__namespace.useQuery(TagsDocument, options);
4025
4213
  }
4026
- const UnreactToMessageDocument = Apollo.gql(_t98 || (_t98 = _$4`
4214
+ const UnreactToMessageDocument = Apollo.gql(_t111 || (_t111 = _$4`
4027
4215
  mutation unreactToMessage($input: MessageReactionInput!) {
4028
4216
  unreactToMessage(input: $input) {
4029
4217
  ...Message
@@ -4052,7 +4240,7 @@ function useUnreactToMessageMutation(baseOptions) {
4052
4240
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4053
4241
  return Apollo__namespace.useMutation(UnreactToMessageDocument, options);
4054
4242
  }
4055
- const UntagClientDocument = Apollo.gql(_t99 || (_t99 = _$4`
4243
+ const UntagClientDocument = Apollo.gql(_t112 || (_t112 = _$4`
4056
4244
  mutation untagClient($input: ClientTagInput!) {
4057
4245
  untagClient(input: $input) {
4058
4246
  ...Client
@@ -4081,7 +4269,7 @@ function useUntagClientMutation(baseOptions) {
4081
4269
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4082
4270
  return Apollo__namespace.useMutation(UntagClientDocument, options);
4083
4271
  }
4084
- const UntagConvDocument = Apollo.gql(_t100 || (_t100 = _$4`
4272
+ const UntagConvDocument = Apollo.gql(_t113 || (_t113 = _$4`
4085
4273
  mutation untagConv($input: ConvTagInput!) {
4086
4274
  untagConv(input: $input) {
4087
4275
  ...Conversation
@@ -4110,7 +4298,7 @@ function useUntagConvMutation(baseOptions) {
4110
4298
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4111
4299
  return Apollo__namespace.useMutation(UntagConvDocument, options);
4112
4300
  }
4113
- const WabaMessageTemplateDetailsDocument = Apollo.gql(_t101 || (_t101 = _$4`
4301
+ const WabaMessageTemplateDetailsDocument = Apollo.gql(_t114 || (_t114 = _$4`
4114
4302
  query wabaMessageTemplateDetails($input: WabaMessageTemplateDetailsInput!) {
4115
4303
  wabaMessageTemplateDetails(input: $input) {
4116
4304
  ...MessageTemplateDetails
@@ -4138,7 +4326,7 @@ function useWabaMessageTemplateDetailsQuery(baseOptions) {
4138
4326
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4139
4327
  return Apollo__namespace.useQuery(WabaMessageTemplateDetailsDocument, options);
4140
4328
  }
4141
- const WabaMessageTemplatesDocument = Apollo.gql(_t102 || (_t102 = _$4`
4329
+ const WabaMessageTemplatesDocument = Apollo.gql(_t115 || (_t115 = _$4`
4142
4330
  query wabaMessageTemplates($input: WabaMessageTemplatesInput!) {
4143
4331
  wabaMessageTemplates(input: $input) {
4144
4332
  nodes {
@@ -4172,7 +4360,7 @@ function useWabaMessageTemplatesLazyQuery(baseOptions) {
4172
4360
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4173
4361
  return Apollo__namespace.useLazyQuery(WabaMessageTemplatesDocument, options);
4174
4362
  }
4175
- Apollo.gql(_t103 || (_t103 = _$4`
4363
+ Apollo.gql(_t116 || (_t116 = _$4`
4176
4364
  mutation addQuickReply($input: QuickReplyAddInput!) {
4177
4365
  addQuickReply(input: $input) {
4178
4366
  ...QuickReply
@@ -4180,7 +4368,7 @@ Apollo.gql(_t103 || (_t103 = _$4`
4180
4368
  }
4181
4369
  ${0}
4182
4370
  `), QuickReplyFragmentDoc);
4183
- const BlacklistClientDocument = Apollo.gql(_t104 || (_t104 = _$4`
4371
+ const BlacklistClientDocument = Apollo.gql(_t117 || (_t117 = _$4`
4184
4372
  mutation blacklistClient($input: ClientInput!) {
4185
4373
  blacklistClient(input: $input) {
4186
4374
  ...Client
@@ -4209,28 +4397,28 @@ function useBlacklistClientMutation(baseOptions) {
4209
4397
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4210
4398
  return Apollo__namespace.useMutation(BlacklistClientDocument, options);
4211
4399
  }
4212
- Apollo.gql(_t105 || (_t105 = _$4`
4400
+ Apollo.gql(_t118 || (_t118 = _$4`
4213
4401
  mutation bulkBlacklistClients($input: BulkPermanentDeleteClientsInput!) {
4214
4402
  bulkBlacklistClients(input: $input) {
4215
4403
  deletedCount
4216
4404
  }
4217
4405
  }
4218
4406
  `));
4219
- Apollo.gql(_t106 || (_t106 = _$4`
4407
+ Apollo.gql(_t119 || (_t119 = _$4`
4220
4408
  mutation bulkDeleteClients($input: BulkPermanentDeleteClientsInput!) {
4221
4409
  bulkDeleteClients(input: $input) {
4222
4410
  deletedCount
4223
4411
  }
4224
4412
  }
4225
4413
  `));
4226
- Apollo.gql(_t107 || (_t107 = _$4`
4414
+ Apollo.gql(_t120 || (_t120 = _$4`
4227
4415
  mutation bulkImportContacts($input: BulkImportContactsInput!) {
4228
4416
  bulkImportContacts(input: $input) {
4229
4417
  jobId
4230
4418
  }
4231
4419
  }
4232
4420
  `));
4233
- Apollo.gql(_t108 || (_t108 = _$4`
4421
+ Apollo.gql(_t121 || (_t121 = _$4`
4234
4422
  query bulkImportContactsJobStatus($input: BulkImportContactsJobStatusInput!) {
4235
4423
  bulkImportContactsJobStatus(input: $input) {
4236
4424
  status
@@ -4246,35 +4434,35 @@ Apollo.gql(_t108 || (_t108 = _$4`
4246
4434
  }
4247
4435
  }
4248
4436
  `));
4249
- Apollo.gql(_t109 || (_t109 = _$4`
4437
+ Apollo.gql(_t122 || (_t122 = _$4`
4250
4438
  mutation bulkPermanentDeleteClients($input: BulkPermanentDeleteClientsInput!) {
4251
4439
  bulkPermanentDeleteClients(input: $input) {
4252
4440
  deletedCount
4253
4441
  }
4254
4442
  }
4255
4443
  `));
4256
- Apollo.gql(_t110 || (_t110 = _$4`
4444
+ Apollo.gql(_t123 || (_t123 = _$4`
4257
4445
  mutation bulkPermanentDeleteClientsByFilter($input: BulkPermanentDeleteClientsByFilterInput!) {
4258
4446
  bulkPermanentDeleteClientsByFilter(input: $input) {
4259
4447
  deletedCount
4260
4448
  }
4261
4449
  }
4262
4450
  `));
4263
- Apollo.gql(_t111 || (_t111 = _$4`
4451
+ Apollo.gql(_t124 || (_t124 = _$4`
4264
4452
  mutation bulkUnblacklistClients($input: BulkPermanentDeleteClientsInput!) {
4265
4453
  bulkUnblacklistClients(input: $input) {
4266
4454
  deletedCount
4267
4455
  }
4268
4456
  }
4269
4457
  `));
4270
- Apollo.gql(_t112 || (_t112 = _$4`
4458
+ Apollo.gql(_t125 || (_t125 = _$4`
4271
4459
  mutation bulkUndeleteClients($input: BulkPermanentDeleteClientsInput!) {
4272
4460
  bulkUndeleteClients(input: $input) {
4273
4461
  deletedCount
4274
4462
  }
4275
4463
  }
4276
4464
  `));
4277
- Apollo.gql(_t113 || (_t113 = _$4`
4465
+ Apollo.gql(_t126 || (_t126 = _$4`
4278
4466
  query channelConnectLink($input: ChannelConnectLinkInput!) {
4279
4467
  channelConnectLink(input: $input) {
4280
4468
  type
@@ -4285,7 +4473,7 @@ Apollo.gql(_t113 || (_t113 = _$4`
4285
4473
  }
4286
4474
  }
4287
4475
  `));
4288
- const ClientDocument = Apollo.gql(_t114 || (_t114 = _$4`
4476
+ const ClientDocument = Apollo.gql(_t127 || (_t127 = _$4`
4289
4477
  query client($input: ClientInput!) {
4290
4478
  client(input: $input) {
4291
4479
  ...Client
@@ -4313,7 +4501,7 @@ function useClientQuery(baseOptions) {
4313
4501
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4314
4502
  return Apollo__namespace.useQuery(ClientDocument, options);
4315
4503
  }
4316
- Apollo.gql(_t115 || (_t115 = _$4`
4504
+ Apollo.gql(_t128 || (_t128 = _$4`
4317
4505
  query clientByPhone($input: ClientByPhoneInput!) {
4318
4506
  clientByPhone(input: $input) {
4319
4507
  ...Client
@@ -4321,7 +4509,7 @@ Apollo.gql(_t115 || (_t115 = _$4`
4321
4509
  }
4322
4510
  ${0}
4323
4511
  `), ClientFragmentDoc);
4324
- const ClientsDocument = Apollo.gql(_t116 || (_t116 = _$4`
4512
+ const ClientsDocument = Apollo.gql(_t129 || (_t129 = _$4`
4325
4513
  query clients($input: ClientsInput!, $pageInfo: PageInfoInput) {
4326
4514
  clients(input: $input, pageInfo: $pageInfo) {
4327
4515
  nodes {
@@ -4339,7 +4527,7 @@ function useClientsLazyQuery(baseOptions) {
4339
4527
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4340
4528
  return Apollo__namespace.useLazyQuery(ClientsDocument, options);
4341
4529
  }
4342
- Apollo.gql(_t117 || (_t117 = _$4`
4530
+ Apollo.gql(_t130 || (_t130 = _$4`
4343
4531
  mutation createChannelConnectLink($input: CreateChannelConnectLinkInput!) {
4344
4532
  createChannelConnectLink(input: $input) {
4345
4533
  token
@@ -4347,7 +4535,7 @@ Apollo.gql(_t117 || (_t117 = _$4`
4347
4535
  }
4348
4536
  }
4349
4537
  `));
4350
- const CreateClientDocument = Apollo.gql(_t118 || (_t118 = _$4`
4538
+ const CreateClientDocument = Apollo.gql(_t131 || (_t131 = _$4`
4351
4539
  mutation createClient($input: ClientCreateInput!) {
4352
4540
  createClient(input: $input) {
4353
4541
  ...Client
@@ -4376,7 +4564,7 @@ function useCreateClientMutation(baseOptions) {
4376
4564
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4377
4565
  return Apollo__namespace.useMutation(CreateClientDocument, options);
4378
4566
  }
4379
- Apollo.gql(_t119 || (_t119 = _$4`
4567
+ Apollo.gql(_t132 || (_t132 = _$4`
4380
4568
  mutation createIntegrationByConnectLink($input: CreateIntegrationByConnectLinkInput!) {
4381
4569
  createIntegrationByConnectLink(input: $input) {
4382
4570
  id
@@ -4386,7 +4574,7 @@ Apollo.gql(_t119 || (_t119 = _$4`
4386
4574
  }
4387
4575
  }
4388
4576
  `));
4389
- const DeleteClientDocument = Apollo.gql(_t120 || (_t120 = _$4`
4577
+ const DeleteClientDocument = Apollo.gql(_t133 || (_t133 = _$4`
4390
4578
  mutation deleteClient($input: ClientInput!) {
4391
4579
  deleteClient(input: $input) {
4392
4580
  ...Client
@@ -4415,7 +4603,7 @@ function useDeleteClientMutation(baseOptions) {
4415
4603
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4416
4604
  return Apollo__namespace.useMutation(DeleteClientDocument, options);
4417
4605
  }
4418
- Apollo.gql(_t121 || (_t121 = _$4`
4606
+ Apollo.gql(_t134 || (_t134 = _$4`
4419
4607
  mutation deleteClientByExternalId($input: ClientDeleteByExternalIdInput!) {
4420
4608
  deleteClientByExternalId(input: $input) {
4421
4609
  ...Client
@@ -4423,7 +4611,7 @@ Apollo.gql(_t121 || (_t121 = _$4`
4423
4611
  }
4424
4612
  ${0}
4425
4613
  `), ClientFragmentDoc);
4426
- const PatchClientDocument = Apollo.gql(_t122 || (_t122 = _$4`
4614
+ const PatchClientDocument = Apollo.gql(_t135 || (_t135 = _$4`
4427
4615
  mutation patchClient($input: ClientPatchInput!) {
4428
4616
  patchClient(input: $input) {
4429
4617
  ...Client
@@ -4452,7 +4640,7 @@ function usePatchClientMutation(baseOptions) {
4452
4640
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4453
4641
  return Apollo__namespace.useMutation(PatchClientDocument, options);
4454
4642
  }
4455
- Apollo.gql(_t123 || (_t123 = _$4`
4643
+ Apollo.gql(_t136 || (_t136 = _$4`
4456
4644
  mutation patchQuickReply($input: QuickReplyPatchInput!) {
4457
4645
  patchQuickReply(input: $input) {
4458
4646
  ...QuickReply
@@ -4460,7 +4648,7 @@ Apollo.gql(_t123 || (_t123 = _$4`
4460
4648
  }
4461
4649
  ${0}
4462
4650
  `), QuickReplyFragmentDoc);
4463
- const QuickRepliesDocument = Apollo.gql(_t124 || (_t124 = _$4`
4651
+ const QuickRepliesDocument = Apollo.gql(_t137 || (_t137 = _$4`
4464
4652
  query quickReplies($input: QuickRepliesInput!) {
4465
4653
  quickReplies(input: $input) {
4466
4654
  nodes {
@@ -4490,7 +4678,7 @@ function useQuickRepliesQuery(baseOptions) {
4490
4678
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4491
4679
  return Apollo__namespace.useQuery(QuickRepliesDocument, options);
4492
4680
  }
4493
- Apollo.gql(_t125 || (_t125 = _$4`
4681
+ Apollo.gql(_t138 || (_t138 = _$4`
4494
4682
  mutation removeQuickReply($input: QuickReplyRemoveInput!) {
4495
4683
  removeQuickReply(input: $input) {
4496
4684
  ...QuickReply
@@ -4498,7 +4686,7 @@ Apollo.gql(_t125 || (_t125 = _$4`
4498
4686
  }
4499
4687
  ${0}
4500
4688
  `), QuickReplyFragmentDoc);
4501
- const UnblacklistClientDocument = Apollo.gql(_t126 || (_t126 = _$4`
4689
+ const UnblacklistClientDocument = Apollo.gql(_t139 || (_t139 = _$4`
4502
4690
  mutation unblacklistClient($input: ClientInput!) {
4503
4691
  unblacklistClient(input: $input) {
4504
4692
  ...Client
@@ -4527,7 +4715,7 @@ function useUnblacklistClientMutation(baseOptions) {
4527
4715
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4528
4716
  return Apollo__namespace.useMutation(UnblacklistClientDocument, options);
4529
4717
  }
4530
- const UndeleteClientDocument = Apollo.gql(_t127 || (_t127 = _$4`
4718
+ const UndeleteClientDocument = Apollo.gql(_t140 || (_t140 = _$4`
4531
4719
  mutation undeleteClient($input: ClientInput!) {
4532
4720
  undeleteClient(input: $input) {
4533
4721
  ...Client
@@ -4556,7 +4744,7 @@ function useUndeleteClientMutation(baseOptions) {
4556
4744
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4557
4745
  return Apollo__namespace.useMutation(UndeleteClientDocument, options);
4558
4746
  }
4559
- Apollo.gql(_t128 || (_t128 = _$4`
4747
+ Apollo.gql(_t141 || (_t141 = _$4`
4560
4748
  mutation undeleteClientByExternalId($input: ClientDeleteByExternalIdInput!) {
4561
4749
  undeleteClientByExternalId(input: $input) {
4562
4750
  ...Client
@@ -4564,7 +4752,7 @@ Apollo.gql(_t128 || (_t128 = _$4`
4564
4752
  }
4565
4753
  ${0}
4566
4754
  `), ClientFragmentDoc);
4567
- Apollo.gql(_t129 || (_t129 = _$4`
4755
+ Apollo.gql(_t142 || (_t142 = _$4`
4568
4756
  query validateBulkImportContacts($input: ValidateBulkImportContactsInput!) {
4569
4757
  validateBulkImportContacts(input: $input) {
4570
4758
  totalRows
@@ -4577,7 +4765,7 @@ Apollo.gql(_t129 || (_t129 = _$4`
4577
4765
  }
4578
4766
  }
4579
4767
  `));
4580
- Apollo.gql(_t130 || (_t130 = _$4`
4768
+ Apollo.gql(_t143 || (_t143 = _$4`
4581
4769
  mutation completeOnboardingStep($input: CompleteOnboardingStepInput!) {
4582
4770
  completeOnboardingStep(input: $input) {
4583
4771
  ...WorkspaceOnboarding
@@ -4585,7 +4773,7 @@ Apollo.gql(_t130 || (_t130 = _$4`
4585
4773
  }
4586
4774
  ${0}
4587
4775
  `), WorkspaceOnboardingFragmentDoc);
4588
- Apollo.gql(_t131 || (_t131 = _$4`
4776
+ Apollo.gql(_t144 || (_t144 = _$4`
4589
4777
  mutation dismissWorkspaceOnboarding($input: WorkspaceOnboardingInput!) {
4590
4778
  dismissWorkspaceOnboarding(input: $input) {
4591
4779
  ...WorkspaceOnboarding
@@ -4593,7 +4781,7 @@ Apollo.gql(_t131 || (_t131 = _$4`
4593
4781
  }
4594
4782
  ${0}
4595
4783
  `), WorkspaceOnboardingFragmentDoc);
4596
- Apollo.gql(_t132 || (_t132 = _$4`
4784
+ Apollo.gql(_t145 || (_t145 = _$4`
4597
4785
  query onboardingOptions {
4598
4786
  onboardingOptions {
4599
4787
  industries
@@ -4603,7 +4791,7 @@ Apollo.gql(_t132 || (_t132 = _$4`
4603
4791
  }
4604
4792
  }
4605
4793
  `));
4606
- Apollo.gql(_t133 || (_t133 = _$4`
4794
+ Apollo.gql(_t146 || (_t146 = _$4`
4607
4795
  mutation updateWorkspaceProfile($input: UpdateWorkspaceProfileInput!) {
4608
4796
  updateWorkspaceProfile(input: $input) {
4609
4797
  ...WorkspaceProfile
@@ -4611,7 +4799,7 @@ Apollo.gql(_t133 || (_t133 = _$4`
4611
4799
  }
4612
4800
  ${0}
4613
4801
  `), WorkspaceProfileFragmentDoc);
4614
- Apollo.gql(_t134 || (_t134 = _$4`
4802
+ Apollo.gql(_t147 || (_t147 = _$4`
4615
4803
  query workspaceOnboarding($input: WorkspaceOnboardingInput!) {
4616
4804
  workspaceOnboarding(input: $input) {
4617
4805
  ...WorkspaceOnboarding
@@ -4619,7 +4807,7 @@ Apollo.gql(_t134 || (_t134 = _$4`
4619
4807
  }
4620
4808
  ${0}
4621
4809
  `), WorkspaceOnboardingFragmentDoc);
4622
- Apollo.gql(_t135 || (_t135 = _$4`
4810
+ Apollo.gql(_t148 || (_t148 = _$4`
4623
4811
  query apiKeys($input: ApiKeysInput!) {
4624
4812
  apiKeys(input: $input) {
4625
4813
  nodes {
@@ -4629,7 +4817,7 @@ Apollo.gql(_t135 || (_t135 = _$4`
4629
4817
  }
4630
4818
  ${0}
4631
4819
  `), ApiKeyFragmentDoc);
4632
- Apollo.gql(_t136 || (_t136 = _$4`
4820
+ Apollo.gql(_t149 || (_t149 = _$4`
4633
4821
  mutation bulkPatchTags($input: TagBulkPatchInput!) {
4634
4822
  bulkPatchTags(input: $input) {
4635
4823
  ...Tag
@@ -4637,7 +4825,7 @@ Apollo.gql(_t136 || (_t136 = _$4`
4637
4825
  }
4638
4826
  ${0}
4639
4827
  `), TagFragmentDoc);
4640
- Apollo.gql(_t137 || (_t137 = _$4`
4828
+ Apollo.gql(_t150 || (_t150 = _$4`
4641
4829
  mutation createAgentWithApiKey($input: AgentCreateWithApiKeyInput!) {
4642
4830
  createAgentWithApiKey(input: $input) {
4643
4831
  agent {
@@ -4656,7 +4844,7 @@ Apollo.gql(_t137 || (_t137 = _$4`
4656
4844
  }
4657
4845
  ${0}
4658
4846
  `), AgentFragmentDoc);
4659
- Apollo.gql(_t138 || (_t138 = _$4`
4847
+ Apollo.gql(_t151 || (_t151 = _$4`
4660
4848
  mutation createIntegration($input: IntegrationCreateInput!) {
4661
4849
  createIntegration(input: $input) {
4662
4850
  ...Integration
@@ -4664,7 +4852,7 @@ Apollo.gql(_t138 || (_t138 = _$4`
4664
4852
  }
4665
4853
  ${0}
4666
4854
  `), IntegrationFragmentDoc);
4667
- const CreateTagDocument = Apollo.gql(_t139 || (_t139 = _$4`
4855
+ const CreateTagDocument = Apollo.gql(_t152 || (_t152 = _$4`
4668
4856
  mutation createTag($input: TagCreateInput!) {
4669
4857
  createTag(input: $input) {
4670
4858
  ...Tag
@@ -4693,7 +4881,7 @@ function useCreateTagMutation(baseOptions) {
4693
4881
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4694
4882
  return Apollo__namespace.useMutation(CreateTagDocument, options);
4695
4883
  }
4696
- Apollo.gql(_t140 || (_t140 = _$4`
4884
+ Apollo.gql(_t153 || (_t153 = _$4`
4697
4885
  mutation createWebhook($input: WebhookCreateInput!) {
4698
4886
  createWebhook(input: $input) {
4699
4887
  ...Webhook
@@ -4701,7 +4889,7 @@ Apollo.gql(_t140 || (_t140 = _$4`
4701
4889
  }
4702
4890
  ${0}
4703
4891
  `), WebhookFragmentDoc);
4704
- Apollo.gql(_t141 || (_t141 = _$4`
4892
+ Apollo.gql(_t154 || (_t154 = _$4`
4705
4893
  mutation deleteApiKey($input: ApiKeyDeleteInput!) {
4706
4894
  deleteApiKey(input: $input) {
4707
4895
  ...ApiKey
@@ -4709,7 +4897,7 @@ Apollo.gql(_t141 || (_t141 = _$4`
4709
4897
  }
4710
4898
  ${0}
4711
4899
  `), ApiKeyFragmentDoc);
4712
- Apollo.gql(_t142 || (_t142 = _$4`
4900
+ Apollo.gql(_t155 || (_t155 = _$4`
4713
4901
  mutation deleteIntegration($input: IntegrationDeleteInput!) {
4714
4902
  deleteIntegration(input: $input) {
4715
4903
  ...Integration
@@ -4717,7 +4905,7 @@ Apollo.gql(_t142 || (_t142 = _$4`
4717
4905
  }
4718
4906
  ${0}
4719
4907
  `), IntegrationFragmentDoc);
4720
- Apollo.gql(_t143 || (_t143 = _$4`
4908
+ Apollo.gql(_t156 || (_t156 = _$4`
4721
4909
  mutation deleteTag($input: TagDeleteInput!) {
4722
4910
  deleteTag(input: $input) {
4723
4911
  ...Tag
@@ -4725,7 +4913,7 @@ Apollo.gql(_t143 || (_t143 = _$4`
4725
4913
  }
4726
4914
  ${0}
4727
4915
  `), TagFragmentDoc);
4728
- Apollo.gql(_t144 || (_t144 = _$4`
4916
+ Apollo.gql(_t157 || (_t157 = _$4`
4729
4917
  mutation deleteWebhook($input: WebhookDeleteInput!) {
4730
4918
  deleteWebhook(input: $input) {
4731
4919
  ...Webhook
@@ -4733,7 +4921,7 @@ Apollo.gql(_t144 || (_t144 = _$4`
4733
4921
  }
4734
4922
  ${0}
4735
4923
  `), WebhookFragmentDoc);
4736
- Apollo.gql(_t145 || (_t145 = _$4`
4924
+ Apollo.gql(_t158 || (_t158 = _$4`
4737
4925
  mutation genApiKey($input: ApiKeyGenInput!) {
4738
4926
  genApiKey(input: $input) {
4739
4927
  workspaceId
@@ -4746,7 +4934,7 @@ Apollo.gql(_t145 || (_t145 = _$4`
4746
4934
  }
4747
4935
  }
4748
4936
  `));
4749
- Apollo.gql(_t146 || (_t146 = _$4`
4937
+ Apollo.gql(_t159 || (_t159 = _$4`
4750
4938
  query integration($input: IntegrationInput!) {
4751
4939
  integration(input: $input) {
4752
4940
  ...Integration
@@ -4754,7 +4942,7 @@ Apollo.gql(_t146 || (_t146 = _$4`
4754
4942
  }
4755
4943
  ${0}
4756
4944
  `), IntegrationFragmentDoc);
4757
- const IntegrationsDocument = Apollo.gql(_t147 || (_t147 = _$4`
4945
+ const IntegrationsDocument = Apollo.gql(_t160 || (_t160 = _$4`
4758
4946
  query integrations($input: IntegrationsInput!) {
4759
4947
  integrations(input: $input) {
4760
4948
  nodes {
@@ -4784,7 +4972,7 @@ function useIntegrationsQuery(baseOptions) {
4784
4972
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4785
4973
  return Apollo__namespace.useQuery(IntegrationsDocument, options);
4786
4974
  }
4787
- Apollo.gql(_t148 || (_t148 = _$4`
4975
+ Apollo.gql(_t161 || (_t161 = _$4`
4788
4976
  mutation patchIntegration($input: IntegrationPatchInput!) {
4789
4977
  patchIntegration(input: $input) {
4790
4978
  ...Integration
@@ -4792,7 +4980,7 @@ Apollo.gql(_t148 || (_t148 = _$4`
4792
4980
  }
4793
4981
  ${0}
4794
4982
  `), IntegrationFragmentDoc);
4795
- Apollo.gql(_t149 || (_t149 = _$4`
4983
+ Apollo.gql(_t162 || (_t162 = _$4`
4796
4984
  query webhooks($input: WebhooksInput!) {
4797
4985
  webhooks(input: $input) {
4798
4986
  nodes {
@@ -4802,7 +4990,7 @@ Apollo.gql(_t149 || (_t149 = _$4`
4802
4990
  }
4803
4991
  ${0}
4804
4992
  `), WebhookFragmentDoc);
4805
- Apollo.gql(_t150 || (_t150 = _$4`
4993
+ Apollo.gql(_t163 || (_t163 = _$4`
4806
4994
  mutation createWorkspace($input: CreateWorkspaceInput!) {
4807
4995
  createWorkspace(input: $input) {
4808
4996
  ...Workspace
@@ -4810,12 +4998,12 @@ Apollo.gql(_t150 || (_t150 = _$4`
4810
4998
  }
4811
4999
  ${0}
4812
5000
  `), WorkspaceFragmentDoc);
4813
- Apollo.gql(_t151 || (_t151 = _$4`
5001
+ Apollo.gql(_t164 || (_t164 = _$4`
4814
5002
  query isWorkspaceNameAvailable($name: String!) {
4815
5003
  isWorkspaceNameAvailable(name: $name)
4816
5004
  }
4817
5005
  `));
4818
- Apollo.gql(_t152 || (_t152 = _$4`
5006
+ Apollo.gql(_t165 || (_t165 = _$4`
4819
5007
  mutation patchWorkspaceSettings($input: WorkspaceSettingsPatchInput!) {
4820
5008
  patchWorkspaceSettings(input: $input) {
4821
5009
  ...WorkspaceSettings
@@ -4823,17 +5011,17 @@ Apollo.gql(_t152 || (_t152 = _$4`
4823
5011
  }
4824
5012
  ${0}
4825
5013
  `), WorkspaceSettingsFragmentDoc);
4826
- Apollo.gql(_t153 || (_t153 = _$4`
5014
+ Apollo.gql(_t166 || (_t166 = _$4`
4827
5015
  mutation removeWorkspaceMember($workspaceId: Int!, $userId: ID!) {
4828
5016
  removeWorkspaceMember(workspaceId: $workspaceId, userId: $userId)
4829
5017
  }
4830
5018
  `));
4831
- Apollo.gql(_t154 || (_t154 = _$4`
5019
+ Apollo.gql(_t167 || (_t167 = _$4`
4832
5020
  mutation revokeWorkspaceInvitation($id: ID!) {
4833
5021
  revokeWorkspaceInvitation(id: $id)
4834
5022
  }
4835
5023
  `));
4836
- Apollo.gql(_t155 || (_t155 = _$4`
5024
+ Apollo.gql(_t168 || (_t168 = _$4`
4837
5025
  mutation updateWorkspace($input: UpdateWorkspaceInput!) {
4838
5026
  updateWorkspace(input: $input) {
4839
5027
  ...Workspace
@@ -4841,7 +5029,7 @@ Apollo.gql(_t155 || (_t155 = _$4`
4841
5029
  }
4842
5030
  ${0}
4843
5031
  `), WorkspaceFragmentDoc);
4844
- Apollo.gql(_t156 || (_t156 = _$4`
5032
+ Apollo.gql(_t169 || (_t169 = _$4`
4845
5033
  query workspaceInvitations($workspaceId: Int!) {
4846
5034
  workspaceInvitations(workspaceId: $workspaceId) {
4847
5035
  id
@@ -4853,7 +5041,7 @@ Apollo.gql(_t156 || (_t156 = _$4`
4853
5041
  }
4854
5042
  }
4855
5043
  `));
4856
- Apollo.gql(_t157 || (_t157 = _$4`
5044
+ Apollo.gql(_t170 || (_t170 = _$4`
4857
5045
  query workspaceMembers($workspaceId: Int!) {
4858
5046
  workspaceMembers(workspaceId: $workspaceId) {
4859
5047
  id
@@ -4863,7 +5051,7 @@ Apollo.gql(_t157 || (_t157 = _$4`
4863
5051
  }
4864
5052
  }
4865
5053
  `));
4866
- const WorkspaceSettingsDocument = Apollo.gql(_t158 || (_t158 = _$4`
5054
+ const WorkspaceSettingsDocument = Apollo.gql(_t171 || (_t171 = _$4`
4867
5055
  query workspaceSettings($input: WorkspaceSettingsInput!) {
4868
5056
  workspaceSettings(input: $input) {
4869
5057
  ...WorkspaceSettings
@@ -4891,7 +5079,7 @@ function useWorkspaceSettingsQuery(baseOptions) {
4891
5079
  const options = Object.assign(Object.assign({}, defaultOptions), baseOptions);
4892
5080
  return Apollo__namespace.useQuery(WorkspaceSettingsDocument, options);
4893
5081
  }
4894
- Apollo.gql(_t159 || (_t159 = _$4`
5082
+ Apollo.gql(_t172 || (_t172 = _$4`
4895
5083
  query workspaces($input: WorkspacesInput!, $pageInfo: PageInfoInput) {
4896
5084
  workspaces(input: $input, pageInfo: $pageInfo) {
4897
5085
  nodes {
@@ -11193,6 +11381,8 @@ const useCurrentUser = () => {
11193
11381
  const API_KEY_AUTH_TYPES = new Set(['apiKey', 'agentApiKey']);
11194
11382
  /** Workspace admin API key — not linked to an agent (`agentApiKey` is agent-linked). */
11195
11383
  const isWorkspaceAdminApiKey = userType => userType === 'apiKey';
11384
+ /** Agent-linked API key — authenticates as the agent itself and carries its own role. */
11385
+ const isAgentApiKey = userType => userType === 'agentApiKey';
11196
11386
  /**
11197
11387
  * Resolves the workspace agent for the current session.
11198
11388
  * Portal users match on agent.userId; agent-linked API keys authenticate with agent.id.
@@ -11833,6 +12023,141 @@ const environment = {
11833
12023
  production: false,
11834
12024
  enablePaidPlans: true};
11835
12025
 
12026
+ var t="undefined"!=typeof window?window:void 0,e$1="undefined"!=typeof globalThis?globalThis:t,i$1=null==e$1?void 0:e$1.navigator,r=null==e$1?void 0:e$1.document,s$1=null==e$1?void 0:e$1.location,n=null==e$1?void 0:e$1.fetch,o$1=null!=e$1&&e$1.XMLHttpRequest&&"withCredentials"in new e$1.XMLHttpRequest?e$1.XMLHttpRequest:void 0,a=null==e$1?void 0:e$1.AbortController,l=null==e$1?void 0:e$1.CompressionStream,u=null==i$1?void 0:i$1.userAgent;function h$2(){return !(!t||false===t.navigator.onLine)}var d="undefined"!=typeof globalThis?globalThis:t;d&&"undefined"==typeof self&&(d.self=d),d&&"undefined"==typeof File&&(d.File=function(){});var v$1=null!=t?t:{},c="0.2.0",f={DEBUG:false,LIB_VERSION:c,LIB_NAME:"browser-common",JS_SDK_VERSION:c};function p(t,e,i,r,s,n,o){try{var a=t[n](o),l=a.value;}catch(t){return void i(t)}a.done?e(l):Promise.resolve(l).then(r,s);}function _$3(t){return function(){var e=this,i=arguments;return new Promise((function(r,s){var n=t.apply(e,i);function o(t){p(n,r,s,o,a,"next",t);}function a(t){p(n,r,s,o,a,"throw",t);}o(void 0);}))}}function g(){return g=Object.assign?Object.assign.bind():function(t){for(var e=1;arguments.length>e;e++){var i=arguments[e];for(var r in i)({}).hasOwnProperty.call(i,r)&&(t[r]=i[r]);}return t},g.apply(null,arguments)}function m(t,e){if(null==t)return {};var i={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(-1!==e.indexOf(r))continue;i[r]=t[r];}return i}var y$1=t=>{if("string"!=typeof t)return t;try{return JSON.parse(t)}catch(e){return t}};function b(t){return "string"==typeof t||t}function w$1(t){return "string"==typeof t?t:void 0}var E$1,x$1=["$feature_flag","$feature_flag_response","$feature_flag_has_experiment","$feature_flag_id","$feature_flag_version","$feature_flag_reason","$feature_flag_request_id","$feature_flag_evaluated_at","$feature_flag_error","locally_evaluated","$groups","$process_person_profile","$geoip_disable","$current_url","$pathname","$session_id","$window_id","$lib","$lib_version","$device_id","$is_server"],S$1=function(t){return t.AnonymousId="anonymous_id",t.DistinctId="distinct_id",t.Props="props",t.EnablePersonProcessing="enable_person_processing",t.PersonMode="person_mode",t.FeatureFlagDetails="feature_flag_details",t.FeatureFlags="feature_flags",t.FeatureFlagPayloads="feature_flag_payloads",t.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",t.BootstrapFeatureFlags="bootstrap_feature_flags",t.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",t.OverrideFeatureFlags="override_feature_flags",t.Queue="queue",t.AiQueue="ai_queue",t.LogsQueue="logs_queue",t.OptedOut="opted_out",t.SessionId="session_id",t.SessionStartTimestamp="session_start_timestamp",t.SessionLastTimestamp="session_timestamp",t.PersonProperties="person_properties",t.GroupProperties="group_properties",t.InstalledAppBuild="installed_app_build",t.InstalledAppVersion="installed_app_version",t.SessionReplay="session_replay",t.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",t.SurveyLastSeenDate="survey_last_seen_date",t.SurveysSeen="surveys_seen",t.Surveys="surveys",t.RemoteConfig="remote_config",t.FlagsEndpointWasHit="flags_endpoint_was_hit",t.DeviceId="device_id",t}({}),k$1=function(t){return t.GZipJS="gzip-js",t.Base64="base64",t}({}),T$1=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"],R$1=["token"],P$1="NativeGzipValidationError",O$1=t=>t.length>=2&&31===t[0]&&139===t[1],I$1=(t,e)=>t===k$1.GZipJS||e===k$1.GZipJS||"gzip"===e,C=t=>!(!t||"object"!=typeof t)&&"NotReadableError"===("name"in t?String(t.name):""),M$1=t=>{var e=new Error("Native gzip produced invalid output: "+t);throw e.name=P$1,e},A$1=function(){var t=_$3((function*(t,e){18>t.size&&M$1("too-short");var i=new Uint8Array(yield t.slice(0,10).arrayBuffer());O$1(i)&&8===i[2]||M$1("invalid-header");var r=new DataView(yield t.slice(t.size-8).arrayBuffer());r.getUint32(0,true)!==(t=>{for(var e=(()=>{if(E$1)return E$1;E$1=[];for(var t=0;256>t;t++){for(var e=t,i=0;8>i;i++)e=1&e?3988292384^e>>>1:e>>>1;E$1[t]=e>>>0;}return E$1})(),i=4294967295,r=0;t.length>r;r++)i=e[255&(i^t[r])]^i>>>8;return (4294967295^i)>>>0})(e)&&M$1("invalid-crc");var s=e.length>>>0;r.getUint32(4,true)!==s&&M$1("invalid-size");}));return function(e,i){return t.apply(this,arguments)}}();function F$1(){return F$1=_$3((function*(t,e,i){ void 0===e&&(e=true);try{var r=(new TextEncoder).encode(t),s=new globalThis.CompressionStream("gzip"),n=s.writable.getWriter(),o=n.write(r).then((()=>n.close())).catch(function(){var t=_$3((function*(t){try{yield n.abort(t);}catch(t){}throw t}));return function(e){return t.apply(this,arguments)}}()),a=new Response(s.readable).blob(),l=(yield Promise.all([a,o]))[0];return yield A$1(l,r),l}catch(t){if(null!=i&&i.rethrow)throw t;return e&&console.error("Failed to gzip compress data",t),null}})),F$1.apply(this,arguments)}var D$1=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],N$1=function(t,e){if(void 0===e&&(e=[]),!t)return false;var i=t.toLowerCase();return D$1.concat(e).some((t=>{var e=t.toLowerCase();return -1!==i.indexOf(e)}))};function U$1(t,e){return -1!==t.indexOf(e)}var L$1=function(t){return t.trim()},j$1=function(t){return t.replace(/^\$/,"")};function B$1(t){var e,i=[];return null!==(e=JSON.stringify(t,(function(t,e){if("bigint"==typeof e)return e.toString();if("function"!=typeof e&&"symbol"!=typeof e){if(e instanceof Error)return {name:e.name,message:e.message,stack:e.stack};if(e&&"object"==typeof e){for(;i.length>0&&i[i.length-1]!==this;)i.pop();if(i.includes(e))return "[Circular]";i.push(e);}return e}})))&&void 0!==e?e:"null"}var z$1=Object.prototype,H$1=z$1.hasOwnProperty,q$1=z$1.toString,V$1=Array.isArray||function(t){return "[object Array]"===q$1.call(t)},G$1=t=>"function"==typeof t,W$1=t=>t===Object(t)&&!V$1(t),J$1=t=>{if(W$1(t)){for(var e in t)if(H$1.call(t,e))return false;return true}return false},K$1=t=>void 0===t,Y$1=t=>"[object String]"==q$1.call(t),Q$1=t=>Y$1(t)&&0===t.trim().length,X$1=t=>null===t,Z$1=t=>K$1(t)||X$1(t),tt$1=t=>"[object Number]"==q$1.call(t)&&t==t,et$1=t=>tt$1(t)&&t>0,it$1=t=>"[object Boolean]"===q$1.call(t),rt$1=t=>t instanceof FormData,st$1=t=>U$1(T$1,t),nt$1=t=>U$1(R$1,t);function ot$1(t){return null===t||"object"!=typeof t}function at$1(t,e){return {}.toString.call(t)==="[object "+e+"]"}function lt$1(t){return "undefined"!=typeof Event&&function(t,e){try{return t instanceof e}catch(t){return false}}(t,Event)}var ut$1=[true,"true",1,"1","yes"],ht$1=t=>U$1(ut$1,t),dt$1=[false,"false",0,"0","no"];function vt$1(t,e,i,r,s){return e>i&&(r.warn("min cannot be greater than max."),e=i),tt$1(t)?t>i?(r.warn(" cannot be greater than max: "+i+". Using max value instead."),i):e>t?(r.warn(" cannot be less than min: "+e+". Using min value instead."),e):t:(r.warn(" must be a number. using max or fallback. max: "+i+", fallback: "+s),vt$1(s||i,e,i,r))}let ct$1 = class ct{constructor(t){this.tt={},this.et=t.et,this.rt=vt$1(t.bucketSize,0,100,t.it),this.nt=vt$1(t.refillRate,0,this.rt,t.it),this.st=vt$1(t.refillInterval,0,864e5,t.it);}ot(t,e){var i=Math.floor((e-t.lastAccess)/this.st);i>0&&(t.tokens=Math.min(t.tokens+i*this.nt,this.rt),t.lastAccess=t.lastAccess+i*this.st);}consumeRateLimit(t){var e,i=Date.now(),r=String(t),s=this.tt[r];return s?this.ot(s,i):this.tt[r]=s={tokens:this.rt,lastAccess:i},0===s.tokens||(s.tokens--,0===s.tokens&&(null==(e=this.et)||e.call(this,t)),0===s.tokens)}stop(){this.tt={};}};var ft$1="Mobile",pt$1="iOS",_t$2="Android",gt$1="Tablet",mt$1=_t$2+" "+gt$1,yt$1="iPad",bt$1="Apple",wt$1=bt$1+" Watch",Et$1="Safari",xt$1="BlackBerry",St$1="Samsung",kt$1=St$1+"Browser",$t$1=St$1+" Internet",Tt$1="Chrome",Rt$1=Tt$1+" OS",Pt$1=Tt$1+" "+pt$1,Ot$1="Internet Explorer",It$1=Ot$1+" "+ft$1,Ct$1="Opera",Mt$1=Ct$1+" Mini",At$1="Edge",Ft$1="Microsoft "+At$1,Dt$1="Firefox",Nt$1=Dt$1+" "+pt$1,Ut$1="Nintendo",Lt$1="PlayStation",jt$1="Xbox",Bt$1=_t$2+" "+ft$1,zt$1=ft$1+" "+Et$1,Ht$1="Windows",qt$1=Ht$1+" Phone",Vt$1="Nokia",Gt$1="Ouya",Wt$1="Generic",Jt$1=Wt$1+" "+ft$1.toLowerCase(),Kt$1=Wt$1+" "+gt$1.toLowerCase(),Yt$1="Konqueror",Qt$1="Oculus Browser",Xt$1="Vivaldi",Zt$1="Yandex",te$2="Whale",ee$2="DuckDuckGo",ie$2="Pale Moon",re$3="Waterfox",se$2="Brave",ne$2="Google Search App",oe$1="(\\d+(\\.\\d+)?)",ae$2=new RegExp("Version/"+oe$1),le$1=new RegExp(jt$1,"i"),ue$1=new RegExp(Lt$1+" \\w+","i"),he$1=new RegExp(Ut$1+" \\w+","i"),de$2=new RegExp(xt$1+"|PlayBook|BB10","i"),ve$1={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},ce$2=function(t,e,i,r){e=e||"";var s=function(t){return null!=t&&t.brave?se$2:null}(i);return s||(null!=r&&r.detectGoogleSearchApp&&U$1(t,"GSA/")?ne$2:U$1(t," OPR/")&&U$1(t,"Mini")?Mt$1:U$1(t," OPR/")?Ct$1:de$2.test(t)?xt$1:U$1(t,"IE"+ft$1)||U$1(t,"WPDesktop")?It$1:U$1(t,"OculusBrowser")?Qt$1:U$1(t,kt$1)?$t$1:U$1(t,At$1)||U$1(t,"Edg/")?Ft$1:U$1(t,Xt$1+"/")?Xt$1:U$1(t,"YaBrowser/")?Zt$1:U$1(t,te$2+"/")?te$2:U$1(t,ee$2+"/")||U$1(t,"Ddg/")?ee$2:U$1(t,"FBIOS")?"Facebook "+ft$1:U$1(t,"UCWEB")||U$1(t,"UCBrowser")?"UC Browser":U$1(t,"CriOS")?Pt$1:U$1(t,"CrMo")||U$1(t,Tt$1)?Tt$1:U$1(t,_t$2)&&U$1(t,Et$1)?Bt$1:U$1(t,"FxiOS")?Nt$1:U$1(t.toLowerCase(),Yt$1.toLowerCase())?Yt$1:U$1(t,se$2+"/")?se$2:((t,e)=>e&&U$1(e,bt$1)||function(t){return U$1(t,Et$1)&&!U$1(t,Tt$1)&&!U$1(t,_t$2)}(t))(t,e)?U$1(t,ft$1)?zt$1:Et$1:U$1(t,"PaleMoon/")?ie$2:U$1(t,re$3+"/")?re$3:U$1(t,Dt$1)?Dt$1:U$1(t,"MSIE")||U$1(t,"Trident/")?Ot$1:U$1(t,"Gecko")?Dt$1:"")},fe$1={[It$1]:[new RegExp("rv:"+oe$1)],[Ft$1]:[new RegExp(At$1+"?\\/"+oe$1)],[Tt$1]:[new RegExp("("+Tt$1+"|CrMo)\\/"+oe$1)],[Pt$1]:[new RegExp("CriOS\\/"+oe$1)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+oe$1)],[Et$1]:[ae$2],[zt$1]:[ae$2],[Ct$1]:[new RegExp("(Opera|OPR)\\/"+oe$1)],[Dt$1]:[new RegExp(Dt$1+"\\/"+oe$1)],[Nt$1]:[new RegExp("FxiOS\\/"+oe$1)],[Yt$1]:[new RegExp("Konqueror[:/]?"+oe$1,"i")],[xt$1]:[new RegExp(xt$1+" "+oe$1),ae$2],[Bt$1]:[new RegExp("android\\s"+oe$1,"i")],[$t$1]:[new RegExp(kt$1+"\\/"+oe$1)],[Qt$1]:[new RegExp("OculusBrowser\\/"+oe$1)],[Xt$1]:[new RegExp(Xt$1+"\\/"+oe$1)],[Zt$1]:[new RegExp("YaBrowser\\/"+oe$1)],[te$2]:[new RegExp(te$2+"\\/"+oe$1)],[se$2]:[new RegExp(se$2+"\\/"+oe$1)],[ee$2]:[new RegExp("(DuckDuckGo|Ddg)\\/"+oe$1)],[ie$2]:[new RegExp("PaleMoon\\/"+oe$1)],[re$3]:[new RegExp(re$3+"\\/"+oe$1)],[ne$2]:[new RegExp("GSA\\/"+oe$1)],[Ot$1]:[new RegExp("(rv:|MSIE )"+oe$1)],Mozilla:[new RegExp("rv:"+oe$1)]},pe$2=function(t,e,i,r){var s=ce$2(t,e,i,r),n=fe$1[s];if(K$1(n))return null;for(var o=0;n.length>o;o++){var a=t.match(n[o]);if(a)return parseFloat(a[a.length-2])}return null},_e$2=[[new RegExp(jt$1+"; "+jt$1+" (.*?)[);]","i"),t=>[jt$1,t&&t[1]||""]],[new RegExp(Ut$1,"i"),[Ut$1,""]],[new RegExp(Lt$1,"i"),[Lt$1,""]],[de$2,[xt$1,""]],[new RegExp(Ht$1,"i"),(t,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return [qt$1,""];if(new RegExp(ft$1).test(e)&&!/IEMobile\b/.test(e))return [Ht$1+" "+ft$1,""];var i=/Windows NT ([0-9.]+)/i.exec(e);if(i&&i[1]){var r=ve$1[i[1]]||"";return /arm/i.test(e)&&(r="RT"),[Ht$1,r]}return [Ht$1,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,t=>t&&t[3]?[pt$1,[t[3],t[4],t[5]||"0"].join(".")]:[pt$1,""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,t=>{var e="";return t&&t.length>=3&&(e=K$1(t[2])?t[3]:t[2]),["watchOS",e]}],[new RegExp("("+_t$2+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+_t$2+")","i"),t=>t&&t[2]?[_t$2,[t[2],t[3],t[4]||"0"].join(".")]:[_t$2,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,t=>{var e=["Mac OS X",""];return t&&t[1]&&(e[1]=[t[1],t[2],t[3]||"0"].join(".")),e}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Rt$1,""]],[/Linux|debian/i,["Linux",""]]],ge$2=function(t){return he$1.test(t)?Ut$1:ue$1.test(t)?Lt$1:le$1.test(t)?jt$1:new RegExp(Gt$1,"i").test(t)?Gt$1:new RegExp("("+qt$1+"|WPDesktop)","i").test(t)?qt$1:/iPad/.test(t)?yt$1:/iPod/.test(t)?"iPod Touch":/iPhone/.test(t)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(t)?wt$1:de$2.test(t)?xt$1:/(kobo)\s(ereader|touch)/i.test(t)?"Kobo":new RegExp(Vt$1,"i").test(t)?Vt$1:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(t)||/(kf[a-z]+)( bui|\)).+silk\//i.test(t)?"Kindle Fire":/(Android|ZTE)/i.test(t)?new RegExp(ft$1).test(t)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(t)||/pixel[\daxl ]{1,6}/i.test(t)&&!/pixel c/i.test(t)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(t)||/lmy47v/i.test(t)&&!/QTAQZ3/i.test(t)?_t$2:mt$1:new RegExp("(pda|"+ft$1+")","i").test(t)?Jt$1:new RegExp(gt$1,"i").test(t)&&!new RegExp(gt$1+" pc","i").test(t)?Kt$1:""},me$1=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function ye$2(t,e){return "string"==typeof(i=t)&&me$1.test(i)?t:e();var i;}function be$1(t){return t?t.split("#")[0]:t}function we$2(t,e){var i=setTimeout(t,e);return (null==i?void 0:i.unref)&&(null==i||i.unref()),i}var Ee$2=t=>t instanceof Error,xe$2={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},Se$2=xe$2.info;function ke$1(t){if(it$1(t))return {boolValue:t};if("number"==typeof t)return Number.isFinite(t)?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:{stringValue:String(t)};if("string"==typeof t)return {stringValue:t};if(V$1(t))return {arrayValue:{values:t.map((t=>ke$1(t)))}};try{return {stringValue:JSON.stringify(t)}}catch(e){return {stringValue:String(t)}}}function $e$2(t){var e=[];for(var i in t){var r=t[i];X$1(r)||K$1(r)||e.push({key:i,value:ke$1(r)});}return e}function Te$2(t,e){var i=xe$2[t.level||"info"]||Se$2,r=i.text,s=i.number,n=String(Date.now())+"000000",o={};e.distinctId&&(o.posthogDistinctId=e.distinctId),e.sessionId&&(o.sessionId=e.sessionId),e.windowId&&(o["window.id"]=e.windowId),Z$1(e.sessionStartTimestamp)||(o.sessionStartTimestamp=String(e.sessionStartTimestamp)),Z$1(e.lastActivityTimestamp)||(o.lastActivityTimestamp=String(e.lastActivityTimestamp)),e.currentUrl&&(o["url.full"]=e.currentUrl),e.screenName&&(o["screen.name"]=e.screenName),e.appState&&(o["app.state"]=e.appState),e.activeFeatureFlags&&e.activeFeatureFlags.length>0&&(o.feature_flags=e.activeFeatureFlags);var a=g({},o,t.attributes||{}),l={timeUnixNano:n,observedTimeUnixNano:n,severityNumber:s,severityText:r,body:{stringValue:t.body},attributes:$e$2(a)};return t.trace_id&&(l.traceId=t.trace_id),t.span_id&&(l.spanId=t.span_id),K$1(t.trace_flags)||(l.flags=t.trace_flags),l}function Re$2(t,e,i){return g({},t.resourceAttributes,{"service.name":t.serviceName||"unknown_service"},t.environment&&{"deployment.environment":t.environment},t.serviceVersion&&{"service.version":t.serviceVersion},{"telemetry.sdk.name":e,"telemetry.sdk.version":i})}function Pe$2(t,e,i,r){return {resourceLogs:[{resource:{attributes:$e$2(e)},scopeLogs:[{scope:{name:i,version:r},logRecords:t}]}]}}let Oe$2=class Oe{constructor(t,e,i,r,s,n,o){var a;void 0===n&&(n=()=>Promise.resolve()),this._instance=t,this.Te=e,this.it=i,this.ut=r,this.ht=s,this.dt=n,this.ct=o,this.vt=null,this.ft=0,this.yt=0,this.bt=0,this._t=0,this.wt=false,this.xt=e.maxBufferSize,this.kt=Math.max(null!==(a=e.maxQueueSize)&&void 0!==a?a:e.maxBufferSize,e.maxBufferSize),this.St=e.flushIntervalMs,this.Ct=e.maxBatchRecordsPerPost,this.It=e.rateCapWindowMs,this.Tt=e.maxLogsPerInterval;}reset(){this.Mt(),this.vt=null,this.bt=0,this._t=0,this.wt=false,this.ft=0,this.yt=0,this.Ct=this.Te.maxBatchRecordsPerPost;}onReconnect(){this.yt=0,this.Et();}captureLog(t){if(!this._instance.isDisabled&&!this._instance.optedOut&&null!=t&&t.body){var e=this.Rt(t);if(null!==e)if(e.body){if(this.Pt()){var i={record:Te$2(e,this.ut())};this.ht((()=>this.Ot(i)));}}else this.it.info("Log was rejected in beforeSend function");}}Rt(t){var e=this.Te.beforeSend;if(!e)return t;var i=V$1(e)?e:[e],r=t;for(var s of i)try{var n=s(r);if(!n)return this.it.info("Log was rejected in beforeSend function"),null;r=n;}catch(t){return this.it.error("Error in beforeSend function for log:",t),null}return r}Pt(){if(void 0===this.Tt)return true;var t=Date.now(),e=t-this.bt;return this.It>e&&e>=0||(this.bt=t,this._t=0,this.wt=false),this.Tt>this._t?(this._t++,true):(this.wt||(this.it.warn("captureLog dropping logs: exceeded "+this.Tt+" logs per "+this.It+"ms"),this.wt=true),false)}flush(){var t=this;return _$3((function*(){if(!t._instance.isDisabled)return t.vt||(t.vt=t.Ft().finally((()=>{t.vt=null;}))),t.vt}))()}Ft(){var t=this;return _$3((function*(){var e;t.Mt();var i=null!==(e=t._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==e?e:[];if(0!==i.length)for(var r=i.length,s=0;i.length>0&&r>s;){var n,o;t.ft=0;var a=Math.min(i.length,t.Ct),l=i.slice(0,a),u=Pe$2(l.map((t=>t.record)),t.Lt(),null!==(n=t.ct)&&void 0!==n?n:t._instance.getLibraryId(),t._instance.getLibraryVersion()),h=yield t._instance.$t(u);if("too-large"===h.kind&&l.length>1)t.Ct=Math.max(1,Math.floor(l.length/2)),t.it.warn("Received 413 when sending logs batch of size "+l.length+", reducing batch size to "+t.Ct);else {if("retry-later"===h.kind)throw h.error;if("too-large"===h.kind?t.it.warn("Dropping a single log record after 413 with batch size 1 — the record is larger than the server cap and cannot be split further."):"ok"===h.kind&&t.Te.maxBatchRecordsPerPost>t.Ct&&(t.Ct=Math.min(t.Te.maxBatchRecordsPerPost,t.Ct+1)),yield t.At(l.length),i=null!==(o=t._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==o?o:[],s+=l.length,"fatal"===h.kind)throw h.error}}}))()}At(t){var e=this;return _$3((function*(){var i,r=Math.max(0,t-e.ft),s=null!==(i=e._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==i?i:[];e._instance.setPersistedProperty(S$1.LogsQueue,s.slice(r)),yield e.dt();}))()}Lt(){return Re$2(this.Te,this._instance.getLibraryId(),this._instance.getLibraryVersion())}Ot(t){var e;if(!this._instance.optedOut){var i=null!==(e=this._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==e?e:[];this.kt>i.length||(i.shift(),this.ft++,this.it.info("Logs queue is full, dropping oldest record.")),i.push(t),this._instance.setPersistedProperty(S$1.LogsQueue,i),this.xt>i.length?this.Nt():this.Et();}}Nt(t){ void 0===t&&(t=this.St),this.Dt||(this.Dt=we$2((()=>{this.Dt=void 0,this.Et();}),t));}qt(){var t=Math.min(Math.max(0,this.yt-1),6);return this.St*Math.pow(2,t)}jt(){var t=this._instance.getPersistedProperty(S$1.LogsQueue);return !!t&&t.length>0}shutdown(t){var e=this;return _$3((function*(){e.Mt();var i=e.flush().catch((()=>{}));void 0!==t?yield Promise.race([i,new Promise((e=>we$2(e,t)))]):yield i;}))()}flushWithTimeout(t){var e=this;return _$3((function*(){var i=false,r=e.flush(),s=new Promise((e=>we$2((()=>{i=true,e();}),t)));try{yield Promise.race([r,s]);}finally{i&&r.catch((()=>{}));}}))()}Et(){this.flush().then((()=>{this.yt=0;}),(t=>{this.yt++,this.it.error("PostHog logs flush failed:",t);})).finally((()=>{!this._instance.isDisabled&&this.jt()&&this.Nt(this.qt());}));}Mt(){this.Dt&&(clearTimeout(this.Dt),this.Dt=void 0);}};var Ie$2=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function Ce$1(t){return String(t)+"000000"}function Me$2(t,e,i,r){var s="";return r&&(s=Object.keys(r).sort().map((t=>JSON.stringify(t)+":"+JSON.stringify(r[t]))).join(",")),t+"\0"+e+"\0"+(null!=i?i:"")+"\0"+s}let Ae$2=class Ae{constructor(t,e,i){this._instance=t,this.Te=e,this.it=i,this.Ht=new Map,this.vt=null,this.Bt=false,this.Ut=new Map,this.zt=new Set,this.Vt=0;}count(t,e,i){ void 0===e&&(e=1),this.Wt({name:t,type:"count",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}gauge(t,e,i){this.Wt({name:t,type:"gauge",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}histogram(t,e,i){this.Wt({name:t,type:"histogram",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}flush(){var t=this,e=this.vt,i=function(){var i=_$3((function*(){e&&(yield e.catch((()=>{}))),yield t.Zt();}));return function(){return i.apply(this,arguments)}}(),r=i().finally((()=>{this.vt===r&&(this.vt=null);}));return this.vt=r,r}drainWindow(){if(0===this.Ht.size)return null;var t=this.Ht;return this.Ht=new Map,this.Bt=false,this.Ut=new Map,this.zt=new Set,this.Gt(t)}reset(){this.Vt++,this.Mt(),this.Ht=new Map,this.vt=null,this.Bt=false,this.Ut=new Map,this.zt=new Set;}Wt(t){if(!this._instance.isDisabled&&!this._instance.optedOut){var e=this.Rt(t);if(null!==e)if(e.name&&"string"==typeof e.name)if("number"==typeof e.value&&Number.isFinite(e.value))if("count"===e.type&&0>e.value)this.it.warn("Dropping count '"+e.name+"': counters are monotonic, value must be >= 0");else {var i,r;try{i=e.attributes?g({},e.attributes):void 0,r=Me$2(e.type,e.name,e.unit,i);}catch(t){return void this.it.warn("Dropping metric '"+e.name+"': attributes could not be serialized",t)}var s=this.Ht.get(r);if(!s){if(!this.Qt())return;s={name:e.name,type:e.type,unit:e.unit,attributes:i,windowStartMs:Date.now()},this.Ht.set(r,s);}var n=this.Ut.get(e.name);void 0===n?this.Ut.set(e.name,e.type):n===e.type||this.zt.has(e.name)||(this.zt.add(e.name),this.it.warn("Metric name '"+e.name+"' is already used as a "+n+"; recording it as a "+e.type+" too will blend both series in charts. Use a distinct name.")),this.Jt(s,e.value),this.Nt();}else this.it.warn("Dropping metric '"+e.name+"': value must be a finite number");else this.it.warn("Dropping metric with empty name");}}Qt(){return this.Te.maxSeriesPerFlush>this.Ht.size||(this.Bt||(this.Bt=true,this.it.warn("Metric series cap reached ("+this.Te.maxSeriesPerFlush+" per flush window); dropping new series until the next flush. Reduce attribute cardinality.")),false)}Jt(t,e){var i;switch(t.type){case "count":t.total=(null!==(i=t.total)&&void 0!==i?i:0)+e;break;case "gauge":t.last=e;break;case "histogram":t.hist||(t.hist={count:0,sum:0,min:e,max:e,bucketCounts:new Array(Ie$2.length+1).fill(0)});var r=t.hist;r.count+=1,r.sum+=e,r.min=Math.min(r.min,e),r.max=Math.max(r.max,e),r.bucketCounts[function(t,e){for(var i=0;e.length>i;i++)if(e[i]>=t)return i;return e.length}(e,Ie$2)]+=1;}}Rt(t){var e=this.Te.beforeSend;if(!e)return t;var i=V$1(e)?e:[e],r=t;for(var s of i)try{var n=s(r);if(!n)return this.it.info("Metric was rejected in beforeSend function"),null;r=n;}catch(t){return this.it.error("Error in beforeSend function for metric:",t),null}return r}Nt(){this.Dt||(this.Dt=we$2((()=>{this.Dt=void 0,this.flush().catch((t=>{this.it.error("Metrics flush failed:",t);}));}),this.Te.flushIntervalMs));}Mt(){this.Dt&&(clearTimeout(this.Dt),this.Dt=void 0);}Zt(){var t=this;return _$3((function*(){if(0!==t.Ht.size){var e=t.Ht;t.Ht=new Map,t.Bt=false,t.Ut=new Map,t.zt=new Set;var i=t.Vt,r=yield t._instance.Kt(t.Gt(e));if(i===t.Vt)switch(r.kind){case "ok":return;case "retry-later":return t.Yt(e),void t.Nt();case "too-large":return void t.it.warn("Metrics batch exceeded the server size limit and was dropped");case "fatal":return void t.it.error("Failed to send metrics batch:",r.error)}}}))()}Gt(t){return e=this.Xt(t),i=function(t,e,i){return g({},t.resourceAttributes,{"service.name":t.serviceName||"unknown_service"},t.environment&&{"deployment.environment":t.environment},t.serviceVersion&&{"service.version":t.serviceVersion},{"telemetry.sdk.name":e,"telemetry.sdk.version":i})}(this.Te,this._instance.getLibraryId(),this._instance.getLibraryVersion()),r=this._instance.getLibraryId(),s=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:$e$2(i)},scopeMetrics:[{scope:{name:r,version:s},metrics:e}]}]};var e,i,r,s;}Xt(t){var e=Ce$1(Date.now()),i=new Map;for(var r of t.values()){var s,n=Me$2(r.type,r.name,r.unit,void 0),o=i.get(n);o||(o=g({name:r.name},r.unit&&{unit:r.unit}),"count"===r.type?o.sum={aggregationTemporality:1,isMonotonic:true,dataPoints:[]}:"gauge"===r.type?o.gauge={dataPoints:[]}:o.histogram={aggregationTemporality:1,dataPoints:[]},i.set(n,o));var a=$e$2(null!==(s=r.attributes)&&void 0!==s?s:{}),l=Ce$1(r.windowStartMs);if("count"===r.type){var u,h={attributes:a,startTimeUnixNano:l,timeUnixNano:e,asDouble:null!==(u=r.total)&&void 0!==u?u:0};o.sum.dataPoints.push(h);}else if("gauge"===r.type){var d,v={attributes:a,timeUnixNano:e,asDouble:null!==(d=r.last)&&void 0!==d?d:0};o.gauge.dataPoints.push(v);}else r.hist&&o.histogram.dataPoints.push({attributes:a,startTimeUnixNano:l,timeUnixNano:e,count:r.hist.count,sum:r.hist.sum,min:r.hist.min,max:r.hist.max,bucketCounts:r.hist.bucketCounts,explicitBounds:Ie$2});}return Array.from(i.values())}Yt(t){var e,i;for(var r of t){var s=r[0],n=r[1],o=this.Ht.get(s);if(o)switch(o.windowStartMs=Math.min(o.windowStartMs,n.windowStartMs),o.type){case "count":o.total=(null!==(e=o.total)&&void 0!==e?e:0)+(null!==(i=n.total)&&void 0!==i?i:0);break;case "gauge":break;case "histogram":if(n.hist)if(o.hist){o.hist.count+=n.hist.count,o.hist.sum+=n.hist.sum,o.hist.min=Math.min(o.hist.min,n.hist.min),o.hist.max=Math.max(o.hist.max,n.hist.max);for(var a=0;o.hist.bucketCounts.length>a;a++)o.hist.bucketCounts[a]+=n.hist.bucketCounts[a];}else o.hist=n.hist;}else this.Qt()&&this.Ht.set(s,n);}}};var Fe$1,De$2,Ne$2;function Ue$2(t){var e=globalThis._posthogChunkIds;if(e){var i=Object.keys(e);return Ne$2&&i.length===De$2||(De$2=i.length,Ne$2=i.reduce(((i,r)=>{Fe$1||(Fe$1={});var s=Fe$1[r];if(s)i[s[0]]=s[1];else for(var n=t(r),o=n.length-1;o>=0;o--){var a=n[o],l=null==a?void 0:a.filename,u=e[r];if(l&&u){i[l]=u,Fe$1[r]=[l,u];break}}return i}),{})),Ne$2}}let Le$2 = class Le{constructor(t,e,i){ void 0===i&&(i=[]),this.coercers=t,this.stackParser=e,this.modifiers=i;}buildFromUnknown(t,e){ void 0===e&&(e={});var i=e&&e.mechanism||{handled:true,type:"generic"},r=this.buildCoercingContext(i,e,0).apply(t),s=this.buildParsingContext(e),n=this.parseStacktrace(r,s);return {$exception_list:this.convertToExceptionList(n,i),$exception_level:"error"}}modifyFrames(t){var e=this;return _$3((function*(){for(var i of t)i.stacktrace&&i.stacktrace.frames&&V$1(i.stacktrace.frames)&&(i.stacktrace.frames=yield e.applyModifiers(i.stacktrace.frames));return t}))()}coerceFallback(t){var e;return {type:"Error",value:"Unknown error",stack:null==(e=t.syntheticException)?void 0:e.stack,synthetic:true}}parseStacktrace(t,e){var i,r;return null!=t.cause&&(i=this.parseStacktrace(t.cause,e)),""!=t.stack&&null!=t.stack&&(r=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?e.skipFirstLines:0),e.chunkIdMap)),g({},t,{cause:i,stack:r})}applyChunkIds(t,e){return t.map((t=>(t.filename&&e&&(t.chunk_id=e[t.filename]),t)))}applyCoercers(t,e){for(var i of this.coercers)if(i.match(t))return i.coerce(t,e);return this.coerceFallback(e)}applyModifiers(t){var e=this;return _$3((function*(){var i=t;for(var r of e.modifiers)i=yield r(i);return i}))()}convertToExceptionList(t,e){var i,r,s,n={type:t.type,value:t.value,mechanism:{type:null!==(i=e.type)&&void 0!==i?i:"generic",handled:null===(r=e.handled)||void 0===r||r,synthetic:null!==(s=t.synthetic)&&void 0!==s&&s}};t.stack&&(n.stacktrace={type:"raw",frames:t.stack});var o=[n];return null!=t.cause&&o.push(...this.convertToExceptionList(t.cause,g({},e,{handled:true}))),o}buildParsingContext(t){var e;return {chunkIdMap:Ue$2(this.stackParser),skipFirstLines:null!==(e=t.skipFirstLines)&&void 0!==e?e:1}}buildCoercingContext(t,e,i){ void 0===i&&(i=0);var r=(i,r)=>{if(4>=r){var s=this.buildCoercingContext(t,e,r);return this.applyCoercers(i,s)}};return g({},e,{syntheticException:0==i?e.syntheticException:void 0,mechanism:t,apply:t=>r(t,i),next:t=>r(t,i+1)})}};var je$2="?";function Be$2(t,e,i,r,s){var n={platform:t,filename:e,function:"<anonymous>"===i?je$2:i,in_app:true};return K$1(r)||(n.lineno=r),K$1(s)||(n.colno=s),n}var ze$2=(t,e)=>{var i=-1!==t.indexOf("safari-extension"),r=-1!==t.indexOf("safari-web-extension");return i||r?[-1!==t.indexOf("@")?t.split("@")[0]:je$2,i?"safari-extension:"+e:"safari-web-extension:"+e]:[t,e]},He$2=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,qe$1=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Ve$2=/\((\S*)(?::(\d+))(?::(\d+))\)/,Ge$2=(t,e)=>{var i=He$2.exec(t);if(i)return Be$2(e,i[1],je$2,+i[2],+i[3]);var r=qe$1.exec(t);if(r){if(r[2]&&0===r[2].indexOf("eval")){var s=Ve$2.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3]);}var n=ze$2(r[1]||je$2,r[2]);return Be$2(e,n[1],n[0],r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},We$2=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Je$2=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Ke$2=(t,e)=>{var i=We$2.exec(t);if(i){if(i[3]&&i[3].indexOf(" > eval")>-1){var r=Je$2.exec(i[3]);r&&(i[1]=i[1]||"eval",i[3]=r[1],i[4]=r[2],i[5]="");}var s=i[3],n=i[1]||je$2,o=ze$2(n,s);return Be$2(e,s=o[1],n=o[0],i[4]?+i[4]:void 0,i[5]?+i[5]:void 0)}},Ye$1=/\(error: (.*)\)/;let Qe$2 = class Qe{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,e){var i=Y$1(t.stack);return {type:this.getType(t),value:this.getValue(t),stack:i?t.stack:void 0,cause:t.cause?e.next(t.cause):void 0,synthetic:false}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){var e=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?e+": "+t.message:e}isDOMException(t){return at$1(t,"DOMException")}isDOMError(t){return at$1(t,"DOMError")}};let Xe$1 = class Xe{match(t){return (t=>t instanceof Error)(t)}coerce(t,e){return {type:this.getType(t),value:this.getMessage(t,e),stack:this.getStack(t),cause:t.cause?e.next(t.cause):void 0,synthetic:false}}getType(t){return t.name||t.constructor.name}getMessage(t,e){var i=t.message;return String(i.error&&"string"==typeof i.error.message?i.error.message:i)}getStack(t){return t.stacktrace||t.stack||void 0}};let Ze$2 = class Ze{constructor(){}match(t){return at$1(t,"ErrorEvent")&&null!=t.error}coerce(t,e){var i;return e.apply(t.error)||{type:"ErrorEvent",value:t.message,stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}};var ti=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class ei{match(t){return "string"==typeof t}coerce(t,e){var i,r=this.getInfos(t),s=r[0],n=r[1];return {type:null!=s?s:"Error",value:null!=n?n:t,stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}getInfos(t){var e="Error",i=t,r=t.match(ti);return r&&(e=r[1],i=r[2]),[e,i]}}var ii=["fatal","error","warning","log","info","debug"];function ri(t,e){ void 0===e&&(e=40);var i=Object.keys(t);if(i.sort(),!i.length)return "[object has no keys]";for(var r=i.length;r>0;r--){var s=i.slice(0,r).join(", ");if(e>=s.length)return r===i.length?s:s.length>e?s.slice(0,e)+"...":s}return ""}class si{match(t){return "object"==typeof t&&null!==t}coerce(t,e){var i,r=this.getErrorPropertyFromObject(t);return r?e.apply(r):{type:this.getType(t),value:this.getValue(t),stack:null==(i=e.syntheticException)?void 0:i.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:true}}getType(t){return lt$1(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&"string"==typeof t.name){var e="'"+t.name+"' captured as exception";return "message"in t&&"string"==typeof t.message&&(e+=" with message: '"+t.message+"'"),e}if("message"in t&&"string"==typeof t.message)return t.message;var i=this.getObjectClassName(t);return (i&&"Object"!==i?"'"+i+"'":"Object")+" captured as exception with keys: "+ri(t)}isSeverityLevel(t){return Y$1(t)&&!Q$1(t)&&ii.indexOf(t)>=0}getErrorPropertyFromObject(t){for(var e in t)if({}.hasOwnProperty.call(t,e)){var i=t[e];if(Ee$2(i))return i}}getObjectClassName(t){try{var e=Object.getPrototypeOf(t);return e?e.constructor.name:void 0}catch(t){return}}}class ni{match(t){return lt$1(t)}coerce(t,e){var i,r=t.constructor.name;return {type:r,value:r+" captured as exception with keys: "+ri(t),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}}class oi{match(t){return ot$1(t)}coerce(t,e){var i;return {type:"Error",value:"Primitive value captured as exception: "+String(t),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}}class ai{match(t){return at$1(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!lt$1(t))return false;try{var e=t.detail;return null!=e&&"object"==typeof e&&"reason"in e}catch(t){return false}}coerce(t,e){var i,r=this.getUnhandledRejectionReason(t);return ot$1(r)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(r),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}:e.apply(r)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&null!=t.detail&&"object"==typeof t.detail&&"reason"in t.detail)return t.detail.reason}catch(t){}return t}}var li="$message",ui="$timestamp",hi=new Set([li,ui]),di={enabled:true,max_bytes:32768};function vi(t){var e;return t?{enabled:null!==(e=t.enabled)&&void 0!==e?e:di.enabled,max_bytes:fi(t.max_bytes,di.max_bytes)}:g({},di)}class ci{constructor(t){this.$e=[],this.ze=0,this.Te=vi(t);}setConfig(t){this.Te=vi(t),this.Ze();}add(t){var e=function(t){var e;try{e=B$1(t);}catch(t){return}try{var i=JSON.parse(e);if(!W$1(i))return;var r=i,s=r[li],n=r[ui];if(!Y$1(s)||0===s.trim().length)return;if(!Y$1(n)&&!tt$1(n))return;return {step:r,json:e}}catch(t){return}}(t);if(e){var i=function(t){if("undefined"!=typeof TextEncoder)return (new TextEncoder).encode(t).length;for(var e=encodeURIComponent(t),i=0,r=0;e.length>r;r++)"%"===e[r]?(i+=1,r+=2):i+=1;return i}(e.json);i>this.Te.max_bytes||(this.$e.push({step:e.step,bytes:i}),this.ze+=i,this.Ze());}}getAttachable(){return this.$e.map((t=>t.step))}clear(){this.$e=[],this.ze=0;}size(){return this.$e.length}Ze(){for(;this.ze>this.Te.max_bytes&&this.$e.length>0;){var t=this.$e.shift();t&&(this.ze-=t.bytes);}}}function fi(t,e){if(!tt$1(t)||t===1/0||t===-1/0)return e;var i=Math.floor(t);return 0>i?e:i}var pi=function(e,i){var r=(void 0===i?{}:i).debugEnabled,s={k(i){if(t&&(f.DEBUG||t.POSTHOG_DEBUG||r)&&!K$1(t.console)&&t.console){for(var s=("__rrweb_original__"in t.console[i]?t.console[i].__rrweb_original__:t.console[i]),n=arguments.length,o=new Array(n>1?n-1:0),a=1;n>a;a++)o[a-1]=arguments[a];s(e,...o);}},debug(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("debug",...e);},info(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("log",...e);},warn(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("warn",...e);},error(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("error",...e);},critical(){for(var t=arguments.length,i=new Array(t),r=0;t>r;r++)i[r]=arguments[r];console.error(e,...i);},uninitializedWarning(t){s.error("You must initialize PostHog before calling "+t);},createLogger:(t,i)=>pi(e+" "+t,i)};return s},_i=pi("[PostHog.js]"),gi=_i.createLogger,mi=gi("[ExternalScriptsLoader]"),yi=(t,e,i)=>{if(t.config.disable_external_dependency_loading)return mi.warn(e+" was requested but loading of external scripts is disabled."),i("Loading of external scripts is disabled");var s=null==r?void 0:r.querySelectorAll("script");if(s)for(var n,o=function(){if(s[a].src===e){var t=s[a];return t.__posthog_loading_callback_fired?{v:i()}:(t.addEventListener("load",(e=>{t.__posthog_loading_callback_fired=true,i(void 0,e);})),t.onerror=t=>i(t),{v:void 0})}},a=0;s.length>a;a++)if(n=o())return n.v;var l=()=>{if(!r)return i("document not found");var s=r.createElement("script");if(s.type="text/javascript",s.crossOrigin="anonymous",s.src=e,s.onload=t=>{s.__posthog_loading_callback_fired=true,i(void 0,t);},s.onerror=t=>i(t),t.config.prepare_external_dependency_script&&(s=t.config.prepare_external_dependency_script(s)),!s)return i("prepare_external_dependency_script returned null");if("head"===t.config.external_scripts_inject_target)r.head.appendChild(s);else {var n,o=r.querySelectorAll("body > script");o.length>0?null==(n=o[0].parentNode)||n.insertBefore(s,o[0]):r.body.appendChild(s);}};null!=r&&r.body?l():null==r||r.addEventListener("DOMContentLoaded",l);};v$1.__PosthogExtensions__=v$1.__PosthogExtensions__||{},v$1.__PosthogExtensions__.loadExternalDependency=(t,e,i)=>{if("remote-config"!==e){var r;if(t.config.strict_script_versioning)r=t.requestRouter.endpointFor("assets","/static/"+t.version+"/"+e+".js");else {var s="/static/"+e+".js?v="+t.version;if("toolbar"===e){var n=3e5;s=s+"&t="+Math.floor(Date.now()/n)*n;}r=t.requestRouter.endpointFor("assets",s);}yi(t,r,i);}else {var o=t.requestRouter.endpointFor("assets","/array/"+t.config.token+"/config.js");yi(t,o,i);}},v$1.__PosthogExtensions__.loadSiteApp=(t,e,i)=>{var r=t.requestRouter.endpointFor("api",e);yi(t,r,i);};var bi="1.407.2";f.DEBUG=false,f.LIB_VERSION=bi,f.LIB_NAME="web",f.JS_SDK_VERSION=bi;var wi="$people_distinct_id",Ei="$device_id",xi="$device_model",Si="__alias",ki="__timers",$i="$autocapture_disabled_server_side",Ti="$heatmaps_enabled_server_side",Ri="$exception_capture_enabled_server_side",Pi="$error_tracking_suppression_rules",Oi="$error_tracking_capture_extension_exceptions",Ii="$web_vitals_enabled_server_side",Ci="$dead_clicks_enabled_server_side",Mi="$product_tours_enabled_server_side",Ai="$web_vitals_allowed_metrics",Fi="$session_recording_remote_config",Di="$replay_sample_rate",Ni="$replay_override_sampling",Ui="$replay_override_linked_flag",Li="$replay_override_url_trigger",ji="$replay_override_event_trigger",Bi="$sesid",zi="$session_is_sampled",Hi="$enabled_feature_flags",qi="$active_feature_flags",Vi="$early_access_features",Gi="$feature_flag_details",Wi="$feature_flag_payloads",Ji="$feature_flag_request_id",Ki="$minimal_flag_called_events",Yi="$override_feature_flags",Qi="$override_feature_flag_payloads",Xi="$stored_person_properties",Zi="$stored_group_properties",tr$1="$surveys",er$1="$surveys_loaded_at",ir$1="$surveys_activated",rr$1="$surveys_activated_session",sr$1="ph_product_tours",nr$1="$flag_call_reported",or$1="$flag_call_reported_session_id",ar$1="$feature_flag_errors",lr$1="$feature_flag_evaluated_at",ur$1="$user_state",hr$1="$client_session_props",dr="$capture_rate_limit",vr$1="$initial_campaign_params",cr$1="$initial_referrer_info",fr$1="$initial_person_info",pr="$epp",_r$1="$posthog_cookieless",gr="$cookieless_mode",mr$1="$sdk_debug_extensions_init_method",yr="$sdk_debug_extensions_init_time_ms",br$1="$sdk_debug_recording_script_not_loaded",wr="PostHog loadExternalDependency extension not found.",Er="on_reject",xr="always",Sr$1="anonymous",kr="identified",$r="identified_only",Tr="visibilitychange",Rr="beforeunload",Pr="$pageview",Or="$pageleave",Ir="$identify",Cr="$groupidentify";function Mr(t,e){V$1(t)&&t.forEach(e);}function Ar(t,e){if(!Z$1(t))if(V$1(t))t.forEach(e);else if(rt$1(t))t.forEach(((t,i)=>e(t,i)));else for(var i in t)H$1.call(t,i)&&e(t[i],i);}var Fr=function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];for(var s of i)for(var n in s) void 0!==s[n]&&(t[n]=s[n]);return t};function Dr(t){for(var e=Object.keys(t),i=e.length,r=new Array(i);i--;)r[i]=[e[i],t[e[i]]];return r}var Nr=function(t){try{return t()}catch(t){return}},Ur=function(t){return function(){try{for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,i)}catch(t){_i.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),_i.critical(t);}}},Lr=function(t){var e={};return Ar(t,(function(t,i){(Y$1(t)&&t.length>0||tt$1(t))&&(e[i]=t);})),e};var jr=["herokuapp.com","vercel.app","netlify.app"];function Br(t){var e=null==t?void 0:t.hostname;if(!Y$1(e))return false;var i=e.split(".").slice(-2).join(".");for(var r of jr)if(i===r)return false;return true}function zr(t,e,i,r){var s=null!=r?r:{},n=s.capture,o=s.passive;null==t||t.addEventListener(e,i,{capture:void 0!==n&&n,passive:void 0===o||o});}function Hr(t){return "ph_toolbar_internal"===t.name}var qr=t=>{if(r){try{for(var e=t+"=",i=r.cookie.split(";").filter((t=>t.length)),s=0;i.length>s;s++){for(var n=i[s];" "==n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(e))return decodeURIComponent(n.substring(e.length,n.length))}}catch(t){}return null}};Math.trunc||(Math.trunc=function(t){return 0>t?Math.ceil(t):Math.floor(t)}),Number.isInteger||(Number.isInteger=function(t){return tt$1(t)&&isFinite(t)&&Math.floor(t)===t});class Vr{constructor(t){if(this.bytes=t,16!==t.length)throw new TypeError("not 128-bit length")}static fromFieldsV7(t,e,i,r){if(!Number.isInteger(t)||!Number.isInteger(e)||!Number.isInteger(i)||!Number.isInteger(r)||0>t||0>e||0>i||0>r||t>0xffffffffffff||e>4095||i>1073741823||r>4294967295)throw new RangeError("invalid field value");var s=new Uint8Array(16);return s[0]=t/Math.pow(2,40),s[1]=t/Math.pow(2,32),s[2]=t/Math.pow(2,24),s[3]=t/Math.pow(2,16),s[4]=t/256,s[5]=t,s[6]=112|e>>>8,s[7]=e,s[8]=128|i>>>24,s[9]=i>>>16,s[10]=i>>>8,s[11]=i,s[12]=r>>>24,s[13]=r>>>16,s[14]=r>>>8,s[15]=r,new Vr(s)}toString(){for(var t="",e=0;this.bytes.length>e;e++)t=t+(this.bytes[e]>>>4).toString(16)+(15&this.bytes[e]).toString(16),3!==e&&5!==e&&7!==e&&9!==e||(t+="-");if(36!==t.length)throw new Error("Invalid UUIDv7 was generated");return t}clone(){return new Vr(this.bytes.slice(0))}equals(t){return 0===this.compareTo(t)}compareTo(t){for(var e=0;16>e;e++){var i=this.bytes[e]-t.bytes[e];if(0!==i)return Math.sign(i)}return 0}}class Gr{generate(){var t=this.generateOrAbort();if(!K$1(t))return t;this.S=0;var e=this.generateOrAbort();if(K$1(e))throw new Error("Could not generate UUID after timestamp reset");return e}generateOrAbort(){var t=Date.now();if(t>this.S)this.S=t,this.C();else {if(this.S>=t+1e4)return;this.I++,this.I>4398046511103&&(this.S++,this.C());}return Vr.fromFieldsV7(this.S,Math.trunc(this.I/Math.pow(2,30)),this.I&Math.pow(2,30)-1,this.M.nextUint32())}C(){this.I=1024*this.M.nextUint32()+(1023&this.M.nextUint32());}constructor(){this.S=0,this.I=0,this.M=new Kr;}}var Wr,Jr=t=>{if("undefined"!=typeof UUIDV7_DENY_WEAK_RNG&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var e=0;t.length>e;e++)t[e]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return t};t&&!K$1(t.crypto)&&crypto.getRandomValues&&(Jr=t=>crypto.getRandomValues(t));class Kr{nextUint32(){return this.R.length>this.O||(Jr(this.R),this.O=0),this.R[this.O++]}constructor(){this.R=new Uint32Array(8),this.O=1/0;}}var Yr=()=>Qr().toString(),Qr=()=>(Wr||(Wr=new Gr)).generate(),Xr="",Zr=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;var ts={N:()=>!!r,D(t){_i.error("cookieStore error: "+t);},A:qr,F(t){var e;try{e=JSON.parse(ts.A(t))||{};}catch(t){}return e},q(t,e,i,s,n){if(!r)return false;try{var o="",a="",l=function(t,e){if(e){var i=function(t,e){if(void 0===e&&(e=r),Xr)return Xr;if(!e)return "";if(["localhost","127.0.0.1"].includes(t))return "";for(var i=t.split("."),s=Math.min(i.length,8),n="dmn_chk_"+Yr();!Xr&&s--;){var o=i.slice(s).join("."),a=n+"=1;domain=."+o+";path=/";e.cookie=a+";max-age=3",e.cookie.includes(n)&&(e.cookie=a+";max-age=0",Xr=o);}return Xr}(t);if(!i){var s=(t=>{var e=t.match(Zr);return e?e[0]:""})(t);s!==i&&_i.info("Warning: cookie subdomain discovery mismatch",s,i),i=s;}return i?"; domain=."+i:""}return ""}(r.location.hostname,s);if(i){var u=new Date;u.setTime(u.getTime()+864e5*i),o="; expires="+u.toUTCString();}n&&(a="; secure");var h=t+"="+encodeURIComponent(JSON.stringify(e))+o+"; SameSite=Lax; path=/"+l+a;return h.length>3686.4&&_i.warn("cookieStore warning: large cookie, len="+h.length),r.cookie=h,!0}catch(t){return false}},P(t,e){if(null!=r&&r.cookie)try{ts.q(t,"",-1,e);}catch(t){return}}},es=null,is={N(){if(!X$1(es))return es;var e=true;if(K$1(t))e=false;else try{var i="__mplssupport__";is.q(i,"xyz"),'"xyz"'!==is.A(i)&&(e=!1),is.P(i);}catch(t){e=false;}return e||_i.error("localStorage unsupported; falling back to cookie store"),es=e,e},D(t){_i.error("localStorage error: "+t);},A(e){try{return null==t?void 0:t.localStorage.getItem(e)}catch(t){is.D(t);}return null},F(t){try{return JSON.parse(is.A(t))||{}}catch(t){}return null},q(e,i){try{return null==t||t.localStorage.setItem(e,JSON.stringify(i)),!0}catch(t){is.D(t);}return false},P(e){try{null==t||t.localStorage.removeItem(e);}catch(t){is.D(t);}}},rs=[Ei,"distinct_id",Bi,zi,pr,fr$1,ur$1],ss={},ns={N:()=>true,D(t){_i.error("memoryStorage error: "+t);},A:t=>ss[t]||null,F:t=>ss[t]||null,q:(t,e)=>(ss[t]=e,true),P(t){delete ss[t];}},os=null,as={N(){if(!X$1(os))return os;if(os=true,K$1(t))os=false;else try{var e="__support__";as.q(e,"xyz"),'"xyz"'!==as.A(e)&&(os=!1),as.P(e);}catch(t){os=false;}return os},D(t){_i.error("sessionStorage error: ",t);},A(e){try{return null==t?void 0:t.sessionStorage.getItem(e)}catch(t){as.D(t);}return null},F(t){try{return JSON.parse(as.A(t))||null}catch(t){}return null},q(e,i){try{return null==t||t.sessionStorage.setItem(e,JSON.stringify(i)),!0}catch(t){as.D(t);}return false},P(e){try{null==t||t.sessionStorage.removeItem(e);}catch(t){as.D(t);}}};class ls{constructor(t){this._instance=t;}get Te(){return this._instance.config}get consent(){return this.Ge()?0:this.Qe}isOptedOut(){return this.Te.cookieless_mode===xr||this.isRejected()||-1===this.consent&&this.Te.cookieless_mode===Er}isOptedIn(){return !this.isOptedOut()}isExplicitlyOptedOut(){return 0===this.consent}isRejected(){return 0===this.consent||-1===this.consent&&this.Te.opt_out_capturing_by_default}optInOut(t){this.Je.q(this.Ke,t?1:0,this.Te.cookie_expiration,this.Te.cross_subdomain_cookie,this.Te.secure_cookie);}reset(){this.Je.P(this.Ke,this.Te.cross_subdomain_cookie);}get Ke(){var t=this._instance.config,e=t.token,i=t.opt_out_capturing_cookie_prefix;return t.consent_persistence_name||(i?i+e:"__ph_opt_in_out_"+e)}get Qe(){var t=this.Je.A(this.Ke);return ht$1(t)?1:U$1(dt$1,t)?0:-1}get Je(){var t=this.Te.opt_out_capturing_persistence_type,e="localStorage"===t?is:ts;if(!this.Ye||this.Ye!==e){this.Ye=e;var i="localStorage"===t?ts:is;i.A(this.Ke)&&(this.Ye.A(this.Ke)||this.optInOut(ht$1(i.A(this.Ke))),i.P(this.Ke,this.Te.cross_subdomain_cookie));}return this.Ye}Ge(){return !!this.Te.respect_dnt&&[null==i$1?void 0:i$1.doNotTrack,null==i$1?void 0:i$1.msDoNotTrack,v$1.doNotTrack].some((t=>ht$1(t)))}}function us(t,e){var i,r=null==t||null==(i=t.config)?void 0:i.get_current_url;if(!G$1(r))return e;try{var s=r(e);return Y$1(s)&&s?s:e}catch(t){return _i.error("Error in get_current_url, falling back to window.location.href",t),e}}var hs="__POSTHOG_TOOLBAR__",ds=1,vs=3,cs=11;function fs(t){return t instanceof Element&&(t.id===hs||!(null==t.closest||!t.closest(".toolbar-global-fade-container")))}function ps(t){return !!t&&t.nodeType===ds}function _s(t,e){return !!t&&!!t.tagName&&t.tagName.toLowerCase()===e.toLowerCase()}function gs(t){return !!t&&t.nodeType===vs}function ms(t){return !!t&&t.nodeType===cs&&ps(t.host)}var ys=1e3;function bs(t){return t?L$1(t).split(/\s+/):[]}function ws(e,i){var r=function(e){var i,r=null==t||null==(i=t.location)?void 0:i.href;return K$1(r)?void 0:us(e,r)}(i);return !!(r&&e&&e.some((t=>r.match(t))))}function Es(t){var e="";switch(typeof t.className){case "string":e=t.className;break;case "object":e=(t.className&&"baseVal"in t.className?t.className.baseVal:null)||t.getAttribute("class")||"";break;default:e="";}return bs(e)}function xs(t){return Z$1(t)?null:L$1(t).split(/(\s+)/).filter((t=>Gs(t))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function Ss(t){var e="";return Us(t)&&!Ls(t)&&t.childNodes&&t.childNodes.length&&Ar(t.childNodes,(function(t){var i;gs(t)&&t.textContent&&(e+=null!==(i=xs(t.textContent))&&void 0!==i?i:"");})),L$1(e)}function ks(t){var e;return K$1(t.target)?t.srcElement||null:null!=(e=t.target)&&e.shadowRoot?t.composedPath()[0]||null:t.target||null}var $s=["a","button","form","input","select","textarea","label"];function Ts(t,e){if(K$1(e))return true;var i,r=function(t){if(e.some((e=>function(t,e){var i=t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector;try{return !!i&&i.call(t,e)}catch(t){return false}}(t,e))))return {v:true}};for(var s of t)if(i=r(s))return i.v;return false}function Rs(t){var e=t.parentNode;return !(!e||!ps(e))&&e}var Ps=[".ph-no-autocapture","[data-ph-no-autocapture]"],Os=["next","previous","prev",">","<"],Is=[...Os,"+","-","−","–"],Cs=(t,e)=>/[a-z0-9]/i.test(e)?t.includes(e):t===e,Ms=[".ph-no-rageclick",".ph-no-capture"],As=["","text","search","email","password","url","tel","number"];function Fs(e,i){if(!t||Ds(e))return false;var r,s,n,o,a;if(it$1(i)?(r=!!i&&Ms,s=void 0,n=false):(r=null!==(o=null==i?void 0:i.css_selector_ignorelist)&&void 0!==o?o:Ms,s=null==i?void 0:i.content_ignorelist,n=null!==(a=null==i?void 0:i.ignore_text_selection)&&void 0!==a&&a),false===r)return false;if(n&&function(t){return !(!t||!ps(t))&&(!!_s(t,"textarea")||(_s(t,"input")?U$1(As,(t.getAttribute("type")||"").toLowerCase()):function(t){if(t.isContentEditable)return true;var e=null==t.getAttribute?void 0:t.getAttribute("contenteditable");return "true"===e||""===e}(t)))}(e))return false;var l=Ns(e,false).targetElementList;return !function(t,e){if(false===t||K$1(t))return false;var i;if(true===t)i=Os;else {if(!V$1(t))return false;if(t.length>10)return _i.error("[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching."),false;i=t.map((t=>t.toLowerCase()));}return e.some((t=>{var e=t.safeText,r=t.ariaLabel;return i.some((t=>Cs(e,t)||Cs(r,t)))}))}(s,l.map((t=>{var e;return {safeText:Ss(t).toLowerCase(),ariaLabel:(null==(e=t.getAttribute("aria-label"))?void 0:e.toLowerCase().trim())||""}})))&&!Ts(l,r)}var Ds=t=>!t||_s(t,"html")||!ps(t),Ns=(e,i)=>{if(!t||Ds(e))return {parentIsUsefulElement:false,targetElementList:[]};for(var r=false,s=[e],n=e;n.parentNode&&!_s(n,"body");)if(ms(n.parentNode))s.push(n.parentNode.host),n=n.parentNode.host;else {var o=Rs(n);if(!o)break;if(i||$s.indexOf(o.tagName.toLowerCase())>-1)r=true;else try{var a=t.getComputedStyle(o);a&&"pointer"===a.getPropertyValue("cursor")&&(r=!0);}catch(t){}s.push(o),n=o;}return {parentIsUsefulElement:r,targetElementList:s}};function Us(t){for(var e=new Set,i=0,r=t;r.parentNode&&!_s(r,"body");r=r.parentNode){if(i++>=ys||e.has(r))return false;e.add(r);var s=Es(r);if(U$1(s,"ph-sensitive")||U$1(s,"ph-no-capture"))return false}if(U$1(Es(t),"ph-include"))return true;var n=t.type||"";if(Y$1(n))switch(n.toLowerCase()){case "hidden":case "password":return false}var o=t.name||t.id||"";return !Y$1(o)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(o.replace(/[^a-zA-Z0-9]/g,""))}function Ls(t){return !!(_s(t,"input")&&!["button","checkbox","submit","reset"].includes(t.type)||_s(t,"select")||_s(t,"textarea")||"true"===t.getAttribute("contenteditable"))}var js$1="(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11})",Bs=new RegExp("^(?:"+js$1+")$"),zs=new RegExp(js$1),Hs="\\d{3}-?\\d{2}-?\\d{4}",qs=new RegExp("^("+Hs+")$"),Vs=new RegExp("("+Hs+")");function Gs(t,e){if(void 0===e&&(e=true),Z$1(t))return false;if(Y$1(t)){if(t=L$1(t),(e?Bs:zs).test((t||"").replace(/[- ]/g,"")))return false;if((e?qs:Vs).test(t))return false}return true}function Ws(t){var e=Ss(t);return Gs(e=(e+" "+Js(t)).trim())?e:""}function Js(t){var e="";return t&&t.childNodes&&t.childNodes.length&&Ar(t.childNodes,(function(t){var i;if(t&&"span"===(null==(i=t.tagName)?void 0:i.toLowerCase()))try{var r=Ss(t);e=(e+" "+r).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+Js(t)).trim());}catch(t){_i.error("[AutoCapture]",t);}})),e}function Ks(t){return t.replace(/"|\\"/g,'\\"')}function Ys(t){var e=t.attr__class;if(e)return V$1(e)?e:bs(e)}var Qs=gi("[Dead Clicks]"),Xs=()=>true,Zs=t=>{var e,i=!(null==(e=t.instance.persistence)||!e.get_property(Ci)),r=t.instance.config.capture_dead_clicks;return it$1(r)?r:!!W$1(r)||i};let tn$1 = class tn{get lazyLoadedDeadClicksAutocapture(){return this.Xe}constructor(t,e,i){this.instance=t,this.isEnabled=e,this.onCapture=i,this.startIfEnabledOrStop();}onRemoteConfig(t){if(t.ok){var e=t.config;"captureDeadClicks"in e&&(this.instance.persistence&&this.instance.persistence.register({[Ci]:e.captureDeadClicks}),this.startIfEnabledOrStop());}}startIfEnabledOrStop(){this.isEnabled(this)?this.tr((()=>{this.er();})):this.stop();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.initDeadClicksAutocapture?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this.instance,"dead-clicks-autocapture",(e=>{e?Qs.error("failed to load script",e):t();}));}er(){var t;if(r){if(!this.Xe&&null!=(t=v$1.__PosthogExtensions__)&&t.initDeadClicksAutocapture){var e=W$1(this.instance.config.capture_dead_clicks)?g({},this.instance.config.capture_dead_clicks):{};e.__onCapture=this.onCapture,this.onCapture&&(e.capture_dead_swipes=false),this.Xe=v$1.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,e),this.Xe.start(r),Qs.info("starting...");}}else Qs.error("`document` not found. Cannot start.");}stop(){this.Xe&&(this.Xe.stop(),this.Xe=void 0,Qs.info("stopping..."));}};var en$1=gi("[SegmentIntegration]");var rn$1="posthog-js";function sn$1(t,e){var i=void 0===e?{}:e,r=i.organization,s=i.projectId,n=i.prefix,o=i.severityAllowList,a=void 0===o?["error"]:o,l=i.sendExceptionsToPostHog,u=void 0===l||l;return e=>{var i,o,l,h,d;if("*"!==a&&!a.includes(e.level)||!t.__loaded)return e;e.tags||(e.tags={});var v=t.requestRouter.endpointFor("ui","/project/"+t.config.token+"/person/"+t.get_distinct_id());e.tags["PostHog Person URL"]=v,t.sessionRecordingStarted()&&(e.tags["PostHog Recording URL"]=t.get_session_replay_url({withTimestamp:true}));var c,f=(null==(i=e.exception)?void 0:i.values)||[],p=f.map((t=>g({},t,{stacktrace:t.stacktrace?g({},t.stacktrace,{type:"raw",frames:(t.stacktrace.frames||[]).map((t=>g({},t,{platform:"web:javascript"})))}):void 0}))),_={$exception_message:(null==(o=f[0])?void 0:o.value)||e.message,$exception_type:null==(l=f[0])?void 0:l.type,$exception_level:e.level,$exception_list:p,$sentry_event_id:e.event_id,$sentry_exception:e.exception,$sentry_exception_message:(null==(h=f[0])?void 0:h.value)||e.message,$sentry_exception_type:null==(d=f[0])?void 0:d.type,$sentry_tags:e.tags};return r&&s&&(_.$sentry_url=(n||"https://sentry.io/organizations/")+r+"/issues/?project="+s+"&query="+e.event_id),u&&(null==(c=t.exceptions)||c.sendExceptionEvent(_)),e}}let nn$1 = class nn{constructor(t,e,i,r,s,n){this.name=rn$1,this.setupOnce=function(o){o(sn$1(t,{organization:e,projectId:i,prefix:r,severityAllowList:s,sendExceptionsToPostHog:null==n||n}));};}};let on$2 = class on{constructor(t){this.rr=(t,e,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength||i.crossTabAdoption)&&(_i.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:t,changeReason:i}),this.ir=void 0,this._instance.scrollManager.resetContext());},this._instance=t,this.nr();}nr(){var t;this.sr=null==(t=this._instance.sessionManager)?void 0:t.onSessionId(this.rr);}destroy(){var t;null==(t=this.sr)||t.call(this),this.sr=void 0;}doPageView(e,i){var r,s=this.ar(e,i);return this.ir={pathname:null!==(r=null==t?void 0:t.location.pathname)&&void 0!==r?r:"",pageViewId:i,timestamp:e},this._instance.scrollManager.resetContext(),s}doPageLeave(t){var e;return this.ar(t,null==(e=this.ir)?void 0:e.pageViewId)}doEvent(){var t;return {$pageview_id:null==(t=this.ir)?void 0:t.pageViewId}}ar(t,e){var i=this.ir;if(!i)return {$pageview_id:e};var r={$pageview_id:e,$prev_pageview_id:i.pageViewId},s=this._instance.scrollManager.getContext();if(s&&!this._instance.config.disable_scroll_properties){var n=s.maxScrollHeight,o=s.lastScrollY,a=s.maxScrollY,l=s.maxContentHeight,u=s.lastContentY,h=s.maxContentY;if(!(K$1(n)||K$1(o)||K$1(a)||K$1(l)||K$1(u)||K$1(h))){n=Math.ceil(n),o=Math.ceil(o),a=Math.ceil(a),l=Math.ceil(l),u=Math.ceil(u),h=Math.ceil(h);var d=n>1?vt$1(o/n,0,1,_i):1,v=n>1?vt$1(a/n,0,1,_i):1,c=l>1?vt$1(u/l,0,1,_i):1,f=l>1?vt$1(h/l,0,1,_i):1;r=Fr(r,{$prev_pageview_last_scroll:o,$prev_pageview_last_scroll_percentage:d,$prev_pageview_max_scroll:a,$prev_pageview_max_scroll_percentage:v,$prev_pageview_last_content:u,$prev_pageview_last_content_percentage:c,$prev_pageview_max_content:h,$prev_pageview_max_content_percentage:f});}}return i.pathname&&(r.$prev_pageview_pathname=i.pathname),i.timestamp&&(r.$prev_pageview_duration=(t.getTime()-i.timestamp.getTime())/1e3),r}};var an$1=["flags","surveys"],ln$1={[wi]:{exposure:"hidden"},[Si]:{exposure:"hidden"},__cmpns:{exposure:"hidden"},[ki]:{exposure:"hidden"},[$i]:{exposure:"event"},[Ti]:{exposure:"hidden"},[Ri]:{exposure:"event"},[Pi]:{exposure:"hidden"},[Oi]:{exposure:"event"},[Ii]:{exposure:"event"},[Ci]:{exposure:"event"},[Mi]:{exposure:"hidden"},[Ai]:{exposure:"event"},[Fi]:{exposure:"hidden"},$session_recording_enabled_server_side:{exposure:"hidden"},[Bi]:{exposure:"hidden"},[zi]:{exposure:"event"},[Di]:{exposure:"event",shouldSkipFromEventProperties:t=>X$1(t)},$session_past_minimum_duration:{exposure:"event"},$session_recording_url_trigger_activated_session:{exposure:"event"},$session_recording_event_trigger_activated_session:{exposure:"event"},$debug_first_full_snapshot_timestamp:{exposure:"event"},$sess_rec_flush_size:{exposure:"hidden"},[Hi]:{exposure:"derived",storageGroup:"flags",shouldSkipFromEventProperties:(t,e)=>e(),transformToEventProperties(t){if(!W$1(t))return {};for(var e={},i=Object.keys(t),r=0;i.length>r;r++)e["$feature/"+i[r]]=t[i[r]];return e}},[qi]:{exposure:"event",storageGroup:"flags"},[Vi]:{exposure:"hidden"},[Gi]:{exposure:"hidden",storageGroup:"flags"},[Wi]:{exposure:"event",storageGroup:"flags"},[Ji]:{exposure:"event",storageGroup:"flags",volatile:true},[Ki]:{exposure:"hidden",storageGroup:"flags"},[Yi]:{exposure:"event"},[Qi]:{exposure:"hidden"},[Xi]:{exposure:"hidden"},[Zi]:{exposure:"hidden"},[tr$1]:{exposure:"hidden",storageGroup:"surveys"},[er$1]:{exposure:"hidden",storageGroup:"surveys",volatile:true},[ir$1]:{exposure:"event"},[rr$1]:{exposure:"hidden"},[sr$1]:{exposure:"hidden"},$product_tours_activated:{exposure:"hidden"},$product_tours_activated_session:{exposure:"hidden"},$conversations_widget_session_id:{exposure:"event"},$conversations_ticket_id:{exposure:"event"},$conversations_widget_state:{exposure:"event"},$conversations_user_traits:{exposure:"event"},[nr$1]:{exposure:"hidden"},[or$1]:{exposure:"hidden"},[ar$1]:{exposure:"hidden"},[lr$1]:{exposure:"hidden",storageGroup:"flags",volatile:true},[ur$1]:{exposure:"hidden"},[hr$1]:{exposure:"hidden"},[dr]:{exposure:"hidden"},[vr$1]:{exposure:"hidden"},[cr$1]:{exposure:"hidden"},[fr$1]:{exposure:"hidden"},[pr]:{exposure:"hidden"},[Ni]:{exposure:"event"},[Ui]:{exposure:"event"},[Li]:{exposure:"event"},[ji]:{exposure:"event"},[mr$1]:{exposure:"event"},[yr]:{exposure:"event"},[br$1]:{exposure:"event"},$sdk_debug_replay_event_trigger_status:{exposure:"event"},$sdk_debug_replay_linked_flag_trigger_status:{exposure:"event"},$sdk_debug_replay_matched_recording_trigger_groups:{exposure:"event"},$sdk_debug_replay_remote_trigger_matching_config:{exposure:"event"},$sdk_debug_replay_trigger_groups_count:{exposure:"event"},$sdk_debug_replay_url_trigger_status:{exposure:"event"},$session_recording_start_reason:{exposure:"event"}},un$1=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],hn$1=t=>{var e=ln$1[t];if(e)return e;for(var i of un$1){var r=i[1];if(0===t.indexOf(i[0]))return r}},dn$1=(t,e)=>{try{return JSON.stringify(t,((t,e)=>"bigint"==typeof e?e.toString():e),e)}catch(e){return B$1(t)}},vn$1=t=>{var e=null==r?void 0:r.createElement("a");return K$1(e)?null:(e.href=t,e)},cn$1=function(t,e){for(var i,r=((t.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),s=0;r.length>s;s++){var n=r[s].split("=");if(n[0]===e){i=n;break}}if(!V$1(i)||2>i.length)return "";var o=i[1];try{o=decodeURIComponent(o);}catch(t){_i.error("Skipping decoding for malformed query param: "+o);}return o.replace(/\+/g," ")},fn$1=function(t,e,i){if(!t||!e||!e.length)return t;for(var r=t.split("#"),s=r[1],n=(r[0]||"").split("?"),o=n[1],a=n[0],l=(o||"").split("&"),u=[],h=0;l.length>h;h++){var d=l[h].split("=");V$1(d)&&(e.includes(d[0])?u.push(d[0]+"="+i):u.push(l[h]));}var v=a;return null!=o&&(v+="?"+u.join("&")),null!=s&&(v+="#"+s),v},pn$1=function(t,e){var i=t.match(new RegExp(e+"=([^&]*)"));return i?i[1]:null},_n=(t,e)=>t>=e&&h$2(),gn$1=(t,e,i,r)=>{if(0===t){if(h$2()){var s=e+1;return s===i&&r(),s}return e}return 0},mn$1="https?://(.*)",yn$1=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],bn$1=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...yn$1],wn$1="<masked>",En$1=["li_fat_id"];function xn$1(t,e,i){if(!r)return {};var s,n=e?[...yn$1,...i||[]]:[],o=Sn$1(fn$1(r.URL,n,wn$1),t),a=(s={},Ar(En$1,(function(t){var e=qr(t);s[t]=e||null;})),s);return Fr(a,o)}function Sn$1(t,e){var i=bn$1.concat(e||[]),r={};return Ar(i,(function(e){var i=cn$1(t,e);r[e]=i||null;})),r}function kn$1(t){var e=function(t){return t?0===t.search(mn$1+"google.([^/?]*)")?"google":0===t.search(mn$1+"bing.com")?"bing":0===t.search(mn$1+"yahoo.com")?"yahoo":0===t.search(mn$1+"duckduckgo.com")?"duckduckgo":null:null}(t),i="yahoo"!=e?"q":"p",s={};if(!X$1(e)){s.$search_engine=e;var n=r?cn$1(r.referrer,i):"";n.length&&(s.ph_keyword=n);}return s}function $n(){return navigator.language||navigator.userLanguage}var Tn="$direct";function Rn$1(){return (null==r?void 0:r.referrer)||Tn}function Pn(t,e,i){ void 0===i&&(i=false);var r=t?[...yn$1,...e||[]]:[],n=i?be$1(null==s$1?void 0:s$1.href):null==s$1?void 0:s$1.href,o=null==n?void 0:n.substring(0,1e3);return {r:Rn$1().substring(0,1e3),u:o?fn$1(o,r,wn$1):void 0}}function On(t,e){var i;void 0===e&&(e=false);var r=t.r,s=t.u,n=e?be$1(s):s,o={$referrer:r,$referring_domain:null==r?void 0:r==Tn?Tn:null==(i=vn$1(r))?void 0:i.host};if(n){o.$current_url=n;var a=vn$1(n);o.$host=null==a?void 0:a.host,o.$pathname=null==a?void 0:a.pathname;var l=Sn$1(n);Fr(o,l);}if(r){var u=kn$1(r);Fr(o,u);}return o}function In$1(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return}}function Cn$1(){try{return (new Date).getTimezoneOffset()}catch(t){return}}var Mn$1={flags:lr$1,surveys:er$1},An$1=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],Fn$1="main";let Dn$1 = class Dn{constructor(e,i,r){if(void 0===r&&(r=true),this.lr={},this.ur=false,this.hr=false,this.Te=e,this.dr=r,this.props={},this.cr=false,this.vr=(t=>{var e="";return t.token&&(e=t.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),t.persistence_name?"ph_"+t.persistence_name:"ph_"+e+"_posthog"})(e),this.Je=this.pr(e),this.hr=this.gr(e),this.load(),e.debug&&_i.info("Persistence loaded",e.persistence,g({},this.props)),this.update_config(e,e,i),this.save(),t){var s=()=>this.flush();zr(t,"beforeunload",s,{capture:false}),zr(t,"pagehide",s,{capture:false});}}mr(){var t,e=null==(t=this.Te)?void 0:t.persistence_save_debounce_ms;return tt$1(e)&&e>0?e:0}isDisabled(){return !!this.yr}pr(e){ -1===An$1.indexOf(e.persistence.toLowerCase())&&(_i.critical("Unknown persistence type "+e.persistence+"; falling back to localStorage+cookie"),e.persistence="localStorage+cookie");var i,r=function(e,i){ void 0===e&&(e=[]),void 0===i&&(i=false);var r=[...rs,...e];return g({},is,{F(t){try{var e={};try{e=ts.F(t)||{};}catch(t){}var r,s=JSON.parse(is.A(t)||"{}");if(i){var n={};for(var o in e){var a=e[o];X$1(a)||""===a||(n[o]=a);}r=Fr(s,n);}else r=Fr(e,s);return is.q(t,r),r}catch(t){}return null},q(t,e,i,s,n,o){var a=is.q(t,e,void 0,void 0,o);try{var l={};r.forEach((t=>{e[t]&&(l[t]=e[t]);})),Object.keys(l).length&&ts.q(t,l,i,s,n,o);}catch(t){is.D(t);}return a},P(e,i){try{null==t||t.localStorage.removeItem(e),ts.P(e,i);}catch(t){is.D(t);}}})}(e.cookie_persisted_properties||[],e.__preview_cookie_wins_on_conflict||false),s=false,n=e.persistence.toLowerCase();return "localstorage"===n&&is.N()?(i=is,s=true):"localstorage+cookie"===n&&r.N()?(i=r,s=true):"sessionstorage"===n&&as.N()?i=as:"memory"===n?i=ns:"cookie"===n?i=ts:r.N()?(i=r,s=true):i=ts,this.ur=s,i}br(t){return this.vr+"__"+t}gr(t){return this.ur&&!!t.split_storage}_r(t){var e=null!=t?t:this.Te.feature_flag_cache_ttl_ms;if(!e||0>=e)return false;var i=this.props[lr$1];return !i||"number"!=typeof i||Date.now()-i>e}properties(){var t={};return Ar(this.props,((e,i)=>{var r=hn$1(i);if("derived"===(null==r?void 0:r.exposure)){if(null!=r.shouldSkipFromEventProperties&&r.shouldSkipFromEventProperties(e,i===Hi?()=>this._r():()=>false))return;r.transformToEventProperties&&Fr(t,r.transformToEventProperties(e));}else if(!r||"event"===r.exposure){if(null!=r&&null!=r.shouldSkipFromEventProperties&&r.shouldSkipFromEventProperties(e,(()=>false)))return;t[i]=e;}})),t}load(){if(!this.yr){var t=this.Je.F(this.vr);t&&(this.props=Fr({},t)),this.hr&&this.wr();}}wr(){for(var t of an$1){var e=is.F(this.br(t));if(e&&!J$1(e)){var i=this.kr(t);i.persisted=true,this.Sr(t)||(i.fingerprint=this.Cr(e,t)),this.Ir(t,e)||Fr(this.props,e);}}}Sr(t){return Object.keys(this.props).some((e=>{var i;return (null==(i=hn$1(e))?void 0:i.storageGroup)===t}))}Ir(t,e){var i=Mn$1[t];if(!i)return false;var r=e[i],s=this.props[i];return tt$1(r)&&tt$1(s)&&s>r}refreshKey(t){var e;if(!this.yr){var i=this.hr?null==(e=hn$1(t))?void 0:e.storageGroup:void 0,r=i?is.F(this.br(i)):this.Je.F(this.vr);if(r&&t in r)this.Tr(t,r[t]);else {if(i){var s=this.Je.F(this.vr);if(s&&t in s)return void this.Tr(t,s[t])}this.Mr(t);}}}save(){if(!this.yr){var t=this.mr();t>0?K$1(this.Er)&&(this.Er=setTimeout((()=>{this.Er=void 0,this.Rr();}),t)):this.Rr();}}flush(){K$1(this.Er)||(clearTimeout(this.Er),this.Er=void 0,this.Rr());}Rr(){this.yr||(this.hr?this.Pr():this.Or(this.Je,this.vr,this.props,Fn$1));}Pr(){var t=this.Fr(),e=t.main,i=t.groups;for(var r of(this.Or(this.Je,this.vr,e,Fn$1),an$1)){var s,n=i[r];(!J$1(n)||null!=(s=this.lr[r])&&s.persisted)&&this.Or(is,this.br(r),n,r);}}Fr(){var t={},e={flags:{},surveys:{}};return Ar(this.props,((i,r)=>{var s,n=null==(s=hn$1(r))?void 0:s.storageGroup;n?e[n][r]=i:t[r]=i;})),{main:t,groups:e}}Cr(t,e){if(e===Fn$1)return JSON.stringify(t)+"|"+this.Lr+"|"+this.$r+"|"+this.Ar;var i={};return Ar(t,((t,e)=>{var r;i[e]=null!=(r=hn$1(e))&&r.volatile?"__volatile__":t;})),JSON.stringify(i)}Or(t,e,i,r){var s=this.kr(r);if(r===Fn$1||s.dirty||K$1(s.fingerprint)){var n;try{if((n=this.Cr(i,r))===s.fingerprint)return void(s.dirty=!1)}catch(t){n=void 0;}t.q(e,i,this.Lr,this.$r,this.Ar,this.Te.debug)?(s.dirty=false,r!==Fn$1&&(s.persisted=true),K$1(n)||(s.fingerprint=n)):this.Te.debug&&_i.warn('failed to persist storage entry "'+e+'"; will retry on next save');}}remove(t){var e=(void 0===t?{}:t).keepGroupEntries,i=void 0!==e&&e;if(K$1(this.Er)||(clearTimeout(this.Er),this.Er=void 0),this.Je.P(this.vr,false),this.Je.P(this.vr,true),!i&&this.dr)for(var r of an$1)is.P(this.br(r));i?delete this.lr[Fn$1]:this.lr={};}clear(){this.remove(),this.props={};}register_once(t,e,i){if(W$1(t)){K$1(e)&&(e="None"),this.Lr=K$1(i)?this.Nr:i;var r=false;if(Ar(t,((t,i)=>{this.props.hasOwnProperty(i)&&this.props[i]!==e||(this.Tr(i,t),r=true);})),r)return this.save(),true}return false}register(t,e){if(W$1(t)){this.Lr=K$1(e)?this.Nr:e;var i=false;if(Ar(t,((e,r)=>{t.hasOwnProperty(r)&&this.props[r]!==e&&(this.Tr(r,e),i=true);})),i)return this.save(),true}return false}unregister(t){t in this.props&&(this.Mr(t),this.save());}update_campaign_params(){if(!this.cr){var t=xn$1(this.Te.custom_campaign_params,this.Te.mask_personal_data_properties,this.Te.custom_personal_data_properties);J$1(Lr(t))||this.register(t),this.cr=true;}}update_search_keyword(){var t;this.register((t=null==r?void 0:r.referrer)?kn$1(t):{});}update_referrer_info(){var t;this.register_once({$referrer:Rn$1(),$referring_domain:null!=r&&r.referrer&&(null==(t=vn$1(r.referrer))?void 0:t.host)||Tn},void 0);}set_initial_person_info(){this.props[vr$1]||this.props[cr$1]||this.register_once({[fr$1]:Pn(this.Te.mask_personal_data_properties,this.Te.custom_personal_data_properties,this.Te.disable_capture_url_hashes)},void 0);}get_initial_props(){var t={};Ar([cr$1,vr$1],(e=>{var i=this.props[e];i&&Ar(i,(function(e,i){t["$initial_"+j$1(i)]=e;}));}));var e=this.props[fr$1];if(e){var i=function(t,e){ void 0===e&&(e=false);var i=On(t,e),r={};return Ar(i,(function(t,e){r["$initial_"+j$1(e)]=t;})),r}(e,this.Te.disable_capture_url_hashes);Fr(t,i);}return t}safe_merge(t){return Ar(this.props,(function(e,i){i in t||(t[i]=e);})),t}update_config(t,e,i){this.Nr=this.Lr=t.cookie_expiration,this.set_disabled(t.disable_persistence||!!i),this.set_cross_subdomain(t.cross_subdomain_cookie),this.set_secure(t.secure_cookie);var r=t.persistence!==e.persistence||!((t,e)=>{if(t.length!==e.length)return false;var i=[...t].sort(),r=[...e].sort();return i.every(((t,e)=>t===r[e]))})(t.cookie_persisted_properties||[],e.cookie_persisted_properties||[]),s=r?this.pr(t):this.Je,n=this.gr(t);if(r||n!==this.hr){var o=this.props;this.clear(),this.Je=s,this.hr=n,this.props=o,this.save();}}set_disabled(t){this.yr=t,this.yr?this.remove():this.save();}set_cross_subdomain(t){t!==this.$r&&(this.$r=t,this.remove({keepGroupEntries:true}),this.save());}set_secure(t){t!==this.Ar&&(this.Ar=t,this.remove({keepGroupEntries:true}),this.save());}set_event_timer(t,e){var i=this.props[ki]||{};i[t]=e,this.Tr(ki,i),this.save();}remove_event_timer(t){var e=this.props[ki]||{},i=e[t];return K$1(i)||(delete e[t],this.Tr(ki,e),this.save()),i}get_property(t){return this.props[t]}set_property(t,e){this.Tr(t,e),this.save();}Tr(t,e){var i;this.props[t]=e,null!=(i=hn$1(t))&&i.volatile||this.Dr(t);}Mr(t){delete this.props[t],this.Dr(t);}Dr(t){var e,i=null==(e=hn$1(t))?void 0:e.storageGroup;i&&(this.kr(i).dirty=true);}kr(t){return this.lr[t]||(this.lr[t]={})}};var Nn={Activation:"events",Cancellation:"cancelEvents"},Bn$1={Popover:"popover",API:"api",Widget:"widget"},Vn={SHOWN:"survey shown",DISMISSED:"survey dismissed",SENT:"survey sent"},Gn={SURVEY_ID:"$survey_id",SURVEY_ITERATION:"$survey_iteration",SURVEY_LAST_SEEN_DATE:"$survey_last_seen_date"},Wn={Popover:"popover",Inline:"inline"},Kn={SHOWN:"product tour shown"},Yn={TOUR_LAST_SEEN_DATE:"$product_tour_last_seen_date",TOUR_TYPE:"$product_tour_type"},Qn=gi("[RateLimiter]");class Xn{constructor(t){this.serverLimits={},this.lastEventRateLimited=false,this.checkForLimiting=t=>{var e=t.text;if(e&&e.length)try{(JSON.parse(e).quota_limited||[]).forEach((t=>{Qn.info((t||"events")+" is quota limited."),this.serverLimits[t]=(new Date).getTime()+6e4;}));}catch(t){return void Qn.warn('could not rate limit - continuing. Error: "'+(null==t?void 0:t.message)+'"',{text:e})}},this.instance=t,this.lastEventRateLimited=this.clientRateLimitContext(true).isRateLimited;}get captureEventsPerSecond(){var t;return (null==(t=this.instance.config.rate_limiting)?void 0:t.events_per_second)||10}get captureEventsBurstLimit(){var t;return Math.max((null==(t=this.instance.config.rate_limiting)?void 0:t.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(t){var e,i,r;void 0===t&&(t=false);var s=this.captureEventsBurstLimit,n=this.captureEventsPerSecond,o=(new Date).getTime(),a=null!==(e=null==(i=this.instance.persistence)?void 0:i.get_property(dr))&&void 0!==e?e:{tokens:s,last:o};a.tokens+=(o-a.last)/1e3*n,a.last=o,a.tokens>s&&(a.tokens=s);var l=1>a.tokens;return l||t||(a.tokens=Math.max(0,a.tokens-1)),!l||this.lastEventRateLimited||t||this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:"posthog-js client rate limited. Config is set to "+n+" events per second and "+s+" events burst limit."},{skip_client_rate_limiting:true}),this.lastEventRateLimited=l,null==(r=this.instance.persistence)||r.set_property(dr,a),{isRateLimited:l,remainingTokens:a.tokens}}isServerRateLimited(t){var e=this.serverLimits[t||"events"]||false;return false!==e&&(new Date).getTime()<e}}var Zn=gi("[RemoteConfig]");class to{constructor(t){this._instance=t;}get remoteConfig(){var t;return null==(t=v$1._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.config}qr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.loadExternalDependency?null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"remote-config",(()=>t(this.remoteConfig))):t();}jr(t){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback(e){t(e.json);}});}load(){try{if(this.remoteConfig)return Zn.info("Using preloaded remote config",this.remoteConfig),this.Hr(this.remoteConfig),void this.Br();if(this._instance.Ur())return void Zn.warn("Remote config is disabled. Falling back to local config.");this.qr((t=>{if(!t)return Zn.info("No config found after loading remote JS config. Falling back to JSON."),void this.jr((t=>{this.Hr(t),this.Br();}));this.Hr(t),this.Br();}));}catch(t){Zn.error("Error loading remote config",t);}}stop(){this.zr&&(clearInterval(this.zr),this.zr=void 0);}refresh(){!this._instance.Ur()&&r&&"hidden"!==r.visibilityState&&this._instance.reloadFeatureFlags();}Br(){var t;if(!this.zr){var e=null!==(t=this._instance.config.remote_config_refresh_interval_ms)&&void 0!==t?t:3e5;0!==e&&(this.zr=setInterval((()=>{this.refresh();}),e));}}Hr(t){var e;t||Zn.error("Failed to fetch remote config from PostHog."),this._instance.Hr(t?{ok:true,config:t}:{ok:false}),false!==(null==t?void 0:t.hasFeatureFlags)&&(this._instance.config.advanced_disable_feature_flags_on_first_load||null==(e=this._instance.featureFlags)||e.ensureFlagsLoaded());}}var io={GZipJS:"gzip-js",Base64:"base64"},ro=Uint8Array,so=Uint16Array,no=Uint32Array,oo=new ro([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ao=new ro([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),lo=new ro([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),uo=function(t,e){for(var i=new so(31),r=0;31>r;++r)i[r]=e+=1<<t[r-1];var s=new no(i[30]);for(r=1;30>r;++r)for(var n=i[r];i[r+1]>n;++n)s[n]=n-i[r]<<5|r;return [i,s]},ho=uo(oo,2),vo=ho[1];ho[0][28]=258,vo[258]=28;for(var co=uo(ao,0)[1],fo=new so(32768),po=0;32768>po;++po){var _o=(43690&po)>>>1|(21845&po)<<1;fo[po]=((65280&(_o=(61680&(_o=(52428&_o)>>>2|(13107&_o)<<2))>>>4|(3855&_o)<<4))>>>8|(255&_o)<<8)>>>1;}var go=function(t,e,i){for(var r=t.length,s=0,n=new so(e);r>s;++s)++n[t[s]-1];var o,a=new so(e);for(s=0;e>s;++s)a[s]=a[s-1]+n[s-1]<<1;for(o=new so(r),s=0;r>s;++s)o[s]=fo[a[t[s]-1]++]>>>15-t[s];return o},mo=new ro(288);for(po=0;144>po;++po)mo[po]=8;for(po=144;256>po;++po)mo[po]=9;for(po=256;280>po;++po)mo[po]=7;for(po=280;288>po;++po)mo[po]=8;var yo=new ro(32);for(po=0;32>po;++po)yo[po]=5;var bo=go(mo,9),wo=go(yo,5),Eo=function(t){return (t/8>>0)+(7&t&&1)},xo=function(t,e,i){(null==i||i>t.length)&&(i=t.length);var r=new(t instanceof so?so:t instanceof no?no:ro)(i-e);return r.set(t.subarray(e,i)),r},So=function(t,e,i){var r=e/8>>0;t[r]|=i<<=7&e,t[r+1]|=i>>>8;},ko=function(t,e,i){var r=e/8>>0;t[r]|=i<<=7&e,t[r+1]|=i>>>8,t[r+2]|=i>>>16;},$o=function(t,e){for(var i=[],r=0;t.length>r;++r)t[r]&&i.push({s:r,f:t[r]});var s=i.length,n=i.slice();if(!s)return [new ro(0),0];if(1==s){var o=new ro(i[0].s+1);return o[i[0].s]=1,[o,1]}i.sort((function(t,e){return t.f-e.f})),i.push({s:-1,f:25001});var a=i[0],l=i[1],u=0,h=1,d=2;for(i[0]={s:-1,f:a.f+l.f,l:a,r:l};h!=s-1;)a=i[i[d].f>i[u].f?u++:d++],l=i[u!=h&&i[d].f>i[u].f?u++:d++],i[h++]={s:-1,f:a.f+l.f,l:a,r:l};var v=n[0].s;for(r=1;s>r;++r)n[r].s>v&&(v=n[r].s);var c=new so(v+1),f=To(i[h-1],c,0);if(f>e){r=0;var p=0,_=f-e,g=1<<_;for(n.sort((function(t,e){return c[e.s]-c[t.s]||t.f-e.f}));s>r;++r){var m=n[r].s;if(e>=c[m])break;p+=g-(1<<f-c[m]),c[m]=e;}for(p>>>=_;p>0;){var y=n[r].s;e>c[y]?p-=1<<e-c[y]++-1:++r;}for(;r>=0&&p;--r){var b=n[r].s;c[b]==e&&(--c[b],++p);}f=e;}return [new ro(c),f]},To=function(t,e,i){return -1==t.s?Math.max(To(t.l,e,i+1),To(t.r,e,i+1)):e[t.s]=i},Ro=function(t){for(var e=t.length;e&&!t[--e];);for(var i=new so(++e),r=0,s=t[0],n=1,o=function(t){i[r++]=t;},a=1;e>=a;++a)if(t[a]==s&&a!=e)++n;else {if(!s&&n>2){for(;n>138;n-=138)o(32754);n>2&&(o(n>10?n-11<<5|28690:n-3<<5|12305),n=0);}else if(n>3){for(o(s),--n;n>6;n-=6)o(8304);n>2&&(o(n-3<<5|8208),n=0);}for(;n--;)o(s);n=1,s=t[a];}return [i.subarray(0,r),e]},Po=function(t,e){for(var i=0,r=0;e.length>r;++r)i+=t[r]*e[r];return i},Oo=function(t,e,i){var r=i.length,s=Eo(e+2);t[s]=255&r,t[s+1]=r>>>8,t[s+2]=255^t[s],t[s+3]=255^t[s+1];for(var n=0;r>n;++n)t[s+n+4]=i[n];return 8*(s+4+r)},Io=function(t,e,i,r,s,n,o,a,l,u,h){So(e,h++,i),++s[256];for(var d=$o(s,15),v=d[0],c=d[1],f=$o(n,15),p=f[0],_=f[1],g=Ro(v),m=g[0],y=g[1],b=Ro(p),w=b[0],E=b[1],x=new so(19),S=0;m.length>S;++S)x[31&m[S]]++;for(S=0;w.length>S;++S)x[31&w[S]]++;for(var k=$o(x,7),T=k[0],R=k[1],P=19;P>4&&!T[lo[P-1]];--P);var O,I,C,M,A=u+5<<3,F=Po(s,mo)+Po(n,yo)+o,D=Po(s,v)+Po(n,p)+o+14+3*P+Po(x,T)+(2*x[16]+3*x[17]+7*x[18]);if(F>=A&&D>=A)return Oo(e,h,t.subarray(l,l+u));if(So(e,h,1+(F>D)),h+=2,F>D){O=go(v,c),I=v,C=go(p,_),M=p;var N=go(T,R);for(So(e,h,y-257),So(e,h+5,E-1),So(e,h+10,P-4),h+=14,S=0;P>S;++S)So(e,h+3*S,T[lo[S]]);h+=3*P;for(var U=[m,w],L=0;2>L;++L){var j=U[L];for(S=0;j.length>S;++S)So(e,h,N[B=31&j[S]]),h+=T[B],B>15&&(So(e,h,j[S]>>>5&127),h+=j[S]>>>12);}}else O=bo,I=mo,C=wo,M=yo;for(S=0;a>S;++S)if(r[S]>255){var B;ko(e,h,O[257+(B=r[S]>>>18&31)]),h+=I[B+257],B>7&&(So(e,h,r[S]>>>23&31),h+=oo[B]);var z=31&r[S];ko(e,h,C[z]),h+=M[z],z>3&&(ko(e,h,r[S]>>>5&8191),h+=ao[z]);}else ko(e,h,O[r[S]]),h+=I[r[S]];return ko(e,h,O[256]),h+I[256]},Co=new no([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Mo=function(){for(var t=new no(256),e=0;256>e;++e){for(var i=e,r=9;--r;)i=(1&i&&3988292384)^i>>>1;t[e]=i;}return t}(),Ao=function(t,e,i){for(;i;++e)t[e]=i,i>>>=8;};function Fo(t,e){ void 0===e&&(e={});var i=function(){var t=4294967295;return {p(e){for(var i=t,r=0;e.length>r;++r)i=Mo[255&i^e[r]]^i>>>8;t=i;},d(){return 4294967295^t}}}(),r=t.length;i.p(t);var s,n,o,a,l,u=(a=10+((s=e).filename&&s.filename.length+1||0),l=8,function(t,e,i,r,s,n){var o=t.length,a=new ro(r+o+5*(1+Math.floor(o/7e3))+s),l=a.subarray(r,a.length-s),u=0;if(!e||8>o)for(var h=0;o>=h;h+=65535){var d=h+65535;o>d?u=Oo(l,u,t.subarray(h,d)):(l[h]=true,u=Oo(l,u,t.subarray(h,o)));}else {for(var v=Co[e-1],c=v>>>13,f=8191&v,p=(1<<i)-1,_=new so(32768),g=new so(p+1),m=Math.ceil(i/3),y=2*m,b=function(e){return (t[e]^t[e+1]<<m^t[e+2]<<y)&p},w=new no(25e3),E=new so(288),x=new so(32),S=0,k=0,T=(h=0,0),R=0,P=0;o>h;++h){var O=b(h),I=32767&h,C=g[O];if(_[I]=C,g[O]=I,h>=R){var M=o-h;if((S>7e3||T>24576)&&M>423){u=Io(t,l,0,w,E,x,k,T,P,h-P,u),T=S=k=0,P=h;for(var A=0;286>A;++A)E[A]=0;for(A=0;30>A;++A)x[A]=0;}var F=2,D=0,N=f,U=I-C&32767;if(M>2&&O==b(h-U))for(var L=Math.min(c,M)-1,j=Math.min(32767,h),B=Math.min(258,M);j>=U&&--N&&I!=C;){if(t[h+F]==t[h+F-U]){for(var z=0;B>z&&t[h+z]==t[h+z-U];++z);if(z>F){if(F=z,D=U,z>L)break;var H=Math.min(U,z-2),q=0;for(A=0;H>A;++A){var V=h-U+A+32768&32767,G=V-_[V]+32768&32767;G>q&&(q=G,C=V);}}}U+=(I=C)-(C=_[I])+32768&32767;}if(D){w[T++]=268435456|vo[F]<<18|co[D];var W=31&vo[F],J=31&co[D];k+=oo[W]+ao[J],++E[257+W],++x[J],R=h+F,++S;}else w[T++]=t[h],++E[t[h]];}}u=Io(t,l,true,w,E,x,k,T,P,h-P,u);}return xo(a,0,r+Eo(u)+s)}(n=t,null==(o=e).level?6:o.level,null==o.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(n.length)))):12+o.mem,a,l)),h=u.length;return function(t,e){var i=e.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=2>e.level?4:9==e.level?2:0,t[9]=3,0!=e.mtime&&Ao(t,4,Math.floor(new Date(e.mtime||Date.now())/1e3)),i){t[3]=8;for(var r=0;i.length>=r;++r)t[r+10]=i.charCodeAt(r);}}(u,e),Ao(u,h-8,i.d()),Ao(u,h-4,r),u}var Do=!!o$1||!!n,No="text/plain",Uo=false,Lo=(t,e)=>{var i=t.split("#"),r=i[1],s=i[0].split("?"),n=s[0],o=s[1];if(!o)return t;var a=o.split("&").filter((t=>t.split("=")[0]!==e)).join("&");return n+(a?"?"+a:"")+(r?"#"+r:"")},jo=function(t,e,i){var r;void 0===i&&(i=true);var s=t.split("?"),n=s[0],o=s[1],a=g({},e),l=null!==(r=null==o?void 0:o.split("&").map((t=>{var e,r=t.split("="),s=r[0],n=i&&null!==(e=a[s])&&void 0!==e?e:r[1];return delete a[s],s+"="+n})))&&void 0!==r?r:[],u=function(t,e){var i,r;void 0===e&&(e="&");var s=[];return Ar(t,(function(t,e){K$1(t)||K$1(e)||"undefined"===e||(i=encodeURIComponent((t=>t instanceof File)(t)?t.name:t.toString()),r=encodeURIComponent(e),s[s.length]=r+"="+i);})),s.join(e)}(a);return u&&l.push(u),l.length>0?n+"?"+l.join("&"):n},Bo=t=>{if(t.Vr)return t.Vr;var e=t.data,i=t.compression;if(e){if(i===io.GZipJS){var r=Fo(function(t,e){var i=t.length;if("undefined"!=typeof TextEncoder)return (new TextEncoder).encode(t);for(var r=new ro(t.length+(t.length>>>1)),s=0,n=function(t){r[s++]=t;},o=0;i>o;++o){if(s+5>r.length){var a=new ro(s+8+(i-o<<1));a.set(r),r=a;}var l=t.charCodeAt(o);128>l?n(l):2048>l?(n(192|l>>>6),n(128|63&l)):l>55295&&57344>l?(n(240|(l=65536+(1047552&l)|1023&t.charCodeAt(++o))>>>18),n(128|l>>>12&63),n(128|l>>>6&63),n(128|63&l)):(n(224|l>>>12),n(128|l>>>6&63),n(128|63&l));}return xo(r,0,s)}(dn$1(e)),{mtime:0});return {contentType:No,body:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength),estimatedSize:r.byteLength}}if(i===io.Base64){var s=function(t){return t?btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,((t,e)=>String.fromCharCode(parseInt(e,16))))):t}(dn$1(e)),n=(t=>"data="+encodeURIComponent("string"==typeof t?t:dn$1(t)))(s);return {contentType:"application/x-www-form-urlencoded",body:n,estimatedSize:new Blob([n]).size}}var o=dn$1(e);return {contentType:"application/json",body:o,estimatedSize:new Blob([o]).size}}},zo=t=>{var e,i,r=()=>"sendBeacon"===t.transport?{url:jo(t.url,{compression:io.Base64}),encodedBody:Bo(g({},t,{compression:io.Base64,Vr:void 0}))}:{url:Lo(t.url,"compression"),encodedBody:Bo(g({},t,{compression:void 0,Vr:void 0}))};try{e=Bo(t);}catch(e){if(I$1(t.compression,cn$1(t.url,"compression")))return _i.error("Failed to gzip request body, sending uncompressed payload",e),r();throw e}return e&&I$1(t.compression,cn$1(t.url,"compression"))&&!((i=e.body)instanceof ArrayBuffer?O$1(new Uint8Array(i)):ArrayBuffer.isView(i)&&O$1(new Uint8Array(i.buffer,i.byteOffset,i.byteLength)))?(Uo=true,r()):{url:t.url,encodedBody:e}},Ho=t=>{try{return zo(t)}catch(e){return _i.error(e),void(null==t.callback||t.callback({statusCode:0,error:e}))}},qo=function(){var t=_$3((function*(t){var e=dn$1(t.data),i=yield function(t,e,i){return F$1.apply(this,arguments)}(e,f.DEBUG,{rethrow:true});if(!i)return t;var r=yield i.arrayBuffer();return g({},t,{Vr:{contentType:No,body:r,estimatedSize:r.byteLength}})}));return function(e){return t.apply(this,arguments)}}(),Vo=/Failed to fetch|NetworkError|Load failed/i,Go=t=>{var e=Ho(t);if(e){var i=e.url,r=e.encodedBody,s=null!=r?r:{},o=s.contentType,l=s.body,u=s.estimatedSize,h=new Headers;Ar(t.headers,(function(t,e){h.append(e,t);})),o&&h.append("Content-Type",o);var d=null,v=false;if(a){var c=new a;d={signal:c.signal,timeout:setTimeout((()=>{var e,i;v=true,c.abort((e=t.timeout,(i=new Error("PostHog request timed out"+(e?" after "+e+"ms":""))).name="AbortError",i));}),t.timeout)};}var f=e=>{v&&"AbortError"===(null==e?void 0:e.name)||(t=>"TypeError"===(null==t?void 0:t.name)&&Vo.test((null==t?void 0:t.message)||""))(e)?_i.warn(e):_i.error(e),null==t.callback||t.callback({statusCode:0,error:e});};try{var p;n(i,g({method:(null==t?void 0:t.method)||"GET",headers:h,keepalive:"POST"===t.method&&!t.Wr&&52428.8>(u||0),body:l,signal:null==(p=d)?void 0:p.signal},t.fetchOptions)).then((e=>e.text().then((i=>{var r={statusCode:e.status,text:i};if(200===e.status)try{r.json=JSON.parse(i);}catch(t){_i.error(t);}null==t.callback||t.callback(r);})))).catch(f).finally((()=>d?clearTimeout(d.timeout):null));}catch(t){d&&clearTimeout(d.timeout),f(t);}}},Wo=t=>{try{var e=zo(t),r=e.url,s=e.encodedBody,n=null!=s?s:{},o=n.body,a=n.estimatedSize;if(!o)return;var l=o instanceof Blob?o:new Blob([o],{type:n.contentType});if(i$1.sendBeacon(r,l))return;if(V$1(t.data)&&t.data.length>1&&(null!=a?a:0)>16384){var u=Math.ceil(t.data.length/2);return Wo(g({},t,{data:t.data.slice(0,u)})),void Wo(g({},t,{data:t.data.slice(u)}))}_i.warn("Beacon of ~"+(null!=a?a:0)+" bytes was rejected by the browser, falling back to fetch"),Go(g({},t,{Wr:!0}));}catch(t){_i.warn("Beacon send failed",t);}},Jo=["/e/","/s/"],Ko=(t,e,i,r)=>{var s=(t=>{var e=(t=>{var e=vn$1(t),i=(null==e?void 0:e.pathname)||t.split(/[?#]/)[0];return i?"/"===i[0]?i:"/"+i:"/"})(t);return Jo.some((t=>((t,e)=>t.slice(t.length-e.length)===e)(e,t)))})(t),n=s?Lo(t,"ver"):t,o="query"===r?"POST"===e?"sent_at":"_":void 0;return jo(i===io.GZipJS?Lo(n,"compression"):n,g({},o?{[o]:Date.now().toString()}:{},s?{}:{ver:f.JS_SDK_VERSION},i===io.GZipJS?{}:{compression:i}))},Yo=[];n&&Yo.push({transport:"fetch",method:Go}),o$1&&Yo.push({transport:"XHR",method(t){var e=Ho(t);if(e){var i=new o$1,r=e.encodedBody;i.open(t.method||"GET",e.url,true);var s=null!=r?r:{},n=s.contentType,a=s.body;Ar(t.headers,(function(t,e){i.setRequestHeader(e,t);})),n&&i.setRequestHeader("Content-Type",n),t.timeout&&(i.timeout=t.timeout),i.onreadystatechange=()=>{if(4===i.readyState){var e={statusCode:i.status,text:i.responseText};if(200===i.status)try{e.json=JSON.parse(i.responseText);}catch(t){}null==t.callback||t.callback(e);}},i.send(a);}}}),null!=i$1&&i$1.sendBeacon&&Yo.push({transport:"sendBeacon",method:Wo});var Qo=3e3;class Xo{constructor(t,e){this.Zr=true,this.Gr=[],this.Qr=vt$1((null==e?void 0:e.flush_interval_ms)||Qo,250,5e3,_i.createLogger("flush interval"),Qo),this.Jr=t;}enqueue(t){this.Gr.push(t),this.Kr||this.Yr();}unload(){this.Xr();var t=this.Gr.length>0?this.ti():{},e=Object.values(t);[...e.filter((t=>0===t.url.indexOf("/e"))),...e.filter((t=>0!==t.url.indexOf("/e")))].map((t=>{this.ei(g({},t,{transport:"sendBeacon"}));}));}enable(){this.Zr=false,this.Yr();}Yr(){var t=this;this.Zr||(this.Kr=setTimeout((()=>{if(this.Xr(),this.Gr.length>0){var e=this.ti(),i=function(){var i=e[r],s=(new Date).getTime();i.data&&V$1(i.data)&&Ar(i.data,(t=>{t.offset=Math.abs(t.timestamp-s),delete t.timestamp;})),t.ei(i);};for(var r in e)i();}}),this.Qr));}ei(t){try{this.Jr(t);}catch(t){_i.error(t);}}Xr(){clearTimeout(this.Kr),this.Kr=void 0;}ti(){var t={};return Ar(this.Gr,(e=>{var i,r=e,s=(r?r.batchKey:null)||r.url;K$1(t[s])&&(t[s]=g({},r,{data:[]})),null==(i=t[s].data)||i.push(r.data);})),this.Gr=[],t}}var Zo=["retriesPerformedSoFar"];let ta$1 = class ta{constructor(e){this.ri=false,this.ii=3e3,this.Gr=[],this._instance=e,this.Gr=[],this.ni=true,!K$1(t)&&"onLine"in t.navigator&&(this.ni=t.navigator.onLine,this.si=()=>{this.ni=true,this.oi();},this.ai=()=>{this.ni=false;},zr(t,"online",this.si),zr(t,"offline",this.ai));}get length(){return this.Gr.length}retriableRequest(t){var e=t.retriesPerformedSoFar,i=m(t,Zo);et$1(e)&&(i.url=jo(i.url,{retry_count:e})),this._instance._send_request(g({},i,{callback:t=>{if(200!==t.statusCode&&(400>t.statusCode||t.statusCode>=500)){if((0===t.statusCode?3:10)>(null!=e?e:0))return void this.Ot(g({retriesPerformedSoFar:e},i));0===t.statusCode&&_i.warn("Request failed before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped retrying after "+(null!=e?e:0)+" retries.");}null==i.callback||i.callback(t);}}));}Ot(t){var e=t.retriesPerformedSoFar||0;t.retriesPerformedSoFar=e+1;var i=function(t){var e=3e3*Math.pow(2,t),i=e/2,r=Math.min(18e5,e),s=Math.random()-.5;return Math.ceil(r+s*(r-i))}(e),r=Date.now()+i;this.Gr.push({retryAt:r,requestOptions:t});var s="Enqueued failed request for retry in "+i;navigator.onLine||(s+=" (Browser is offline)"),_i.warn(s),this.ri||(this.ri=true,this.li());}li(){if(this.ui&&clearTimeout(this.ui),0===this.Gr.length)return this.ri=false,void(this.ui=void 0);this.ui=setTimeout((()=>{this.ni&&this.Gr.length>0&&this.oi(),this.li();}),this.ii);}oi(){var t=Date.now(),e=[],i=this.Gr.filter((i=>t>i.retryAt||(e.push(i),false)));if(this.Gr=e,i.length>0)for(var r of i)this.retriableRequest(r.requestOptions);}unload(){for(var e of(this.ui&&(clearTimeout(this.ui),this.ui=void 0),this.ri=false,K$1(t)||(this.si&&(t.removeEventListener("online",this.si),this.si=void 0),this.ai&&(t.removeEventListener("offline",this.ai),this.ai=void 0)),this.Gr)){var i=e.requestOptions;try{this._instance._send_request(g({},i,{transport:"sendBeacon"}));}catch(t){_i.error(t);}}this.Gr=[];}};let ea$1 = class ea{constructor(t){this.hi=()=>{var t,e,i,r;this.di||(this.di={});var s=this.scrollElement(),n=this.scrollY(),o=s?Math.max(0,s.scrollHeight-s.clientHeight):0,a=n+((null==s?void 0:s.clientHeight)||0),l=(null==s?void 0:s.scrollHeight)||0;this.di.lastScrollY=Math.ceil(n),this.di.maxScrollY=Math.max(n,null!==(t=this.di.maxScrollY)&&void 0!==t?t:0),this.di.maxScrollHeight=Math.max(o,null!==(e=this.di.maxScrollHeight)&&void 0!==e?e:0),this.di.lastContentY=a,this.di.maxContentY=Math.max(a,null!==(i=this.di.maxContentY)&&void 0!==i?i:0),this.di.maxContentHeight=Math.max(l,null!==(r=this.di.maxContentHeight)&&void 0!==r?r:0);},this._instance=t;}get ci(){return this._instance.config.scroll_root_selector}getContext(){return this.di}resetContext(){var t=this.di;return setTimeout(this.hi,0),t}startMeasuringScrollPosition(){zr(t,"scroll",this.hi,{capture:true}),zr(t,"scrollend",this.hi,{capture:true}),zr(t,"resize",this.hi);}scrollElement(){if(!this.ci)return null==t?void 0:t.document.documentElement;var e=V$1(this.ci)?this.ci:[this.ci];for(var i of e){var r=null==t?void 0:t.document.querySelector(i);if(r)return r}}vi(e){var i="y"===e?"scrollTop":"scrollLeft";if(this.ci){var r=this.scrollElement();return r&&r[i]||0}return t?"y"===e?t.scrollY||t.pageYOffset||t.document.documentElement.scrollTop||0:t.scrollX||t.pageXOffset||t.document.documentElement.scrollLeft||0:0}scrollY(){return this.vi("y")}scrollX(){return this.vi("x")}};var ia$1=t=>Pn(null==t?void 0:t.config.mask_personal_data_properties,null==t?void 0:t.config.custom_personal_data_properties,null==t?void 0:t.config.disable_capture_url_hashes);let ra$1 = class ra{constructor(t,e,i,r){this.fi=t=>{var e=this.pi();if(!e||e.sessionId!==t){var i={sessionId:t,props:this.gi(this._instance)};this.mi.register({[hr$1]:i});}},this._instance=t,this.yi=e,this.mi=i,this.gi=r||ia$1,this.yi.onSessionId(this.fi);}pi(){return this.mi.props[hr$1]}getSetOnceProps(){var t,e=null==(t=this.pi())?void 0:t.props;return e?"r"in e?On(e,this._instance.config.disable_capture_url_hashes):{$referring_domain:e.referringDomain,$pathname:e.initialPathName,utm_source:e.utm_source,utm_campaign:e.utm_campaign,utm_medium:e.utm_medium,utm_content:e.utm_content,utm_term:e.utm_term}:{}}getSessionProps(){var t={};return Ar(Lr(this.getSetOnceProps()),((e,i)=>{"$current_url"===i&&(i="url"),t["$session_entry_"+j$1(i)]=e;})),t}};let sa$1 = class sa{on(t,e){return this.bi[t]||(this.bi[t]=[]),this.bi[t].push(e),()=>{this.bi[t]=this.bi[t].filter((t=>t!==e));}}emit(t,e){for(var i of this.bi[t]||[])i(e);for(var r of this.bi["*"]||[])r(t,e);}constructor(){this.bi={};}};var na$1=gi("[SessionId]");let oa$1 = class oa{on(t,e){return this.wi.on(t,e)}constructor(t,e,i){var r;if(this.xi=null,this.ki=[],this.Si=void 0,this.Ci=false,this.wi=new sa$1,this.Ii=(t,e)=>!(!et$1(t)||!et$1(e))&&Math.abs(t-e)>this.sessionTimeoutMs,!t.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(t.config.cookieless_mode===xr)throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Te=t.config,this.mi=t.persistence,this.Ti=void 0,this.Mi=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.Ei=e||Yr,this.Ri=i||Yr;var s=this.Te.persistence_name||this.Te.token;if(this._sessionTimeoutMs=1e3*vt$1(this.Te.session_idle_timeout_seconds||1800,60,36e3,na$1.createLogger("session_idle_timeout_seconds"),1800),t.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.Pi(),this.Oi="ph_"+s+"_window_id",this.Fi="ph_"+s+"_primary_window_exists",this.Li()){var n=as.F(this.Oi),o=as.F(this.Fi);n&&!o?this.Ti=n:as.P(this.Oi),as.q(this.Fi,true);}if(null!=(r=this.Te.bootstrap)&&r.sessionID)try{var a=(t=>{var e=this.Te.bootstrap.sessionID.replace(/-/g,"");if(32!==e.length)throw new Error("Not a valid UUID");if("7"!==e[12])throw new Error("Not a UUIDv7");return parseInt(e.substring(0,12),16)})();this.$i(this.Te.bootstrap.sessionID,(new Date).getTime(),a);}catch(t){na$1.error("Invalid sessionID in bootstrap",t);}this.Ai();}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(t){return K$1(this.ki)&&(this.ki=[]),this.ki.push(t),this.Mi&&t(this.Mi,this.Ti),()=>{this.ki=this.ki.filter((e=>e!==t));}}Li(){return "memory"!==this.Te.persistence&&!this.mi.yr&&as.N()}Ni(t){t!==this.Ti&&(this.Ti=t,this.Li()&&as.q(this.Oi,t));}Di(){return this.Ti?this.Ti:this.Li()?as.F(this.Oi):null}qi(t){var e=this.xi;return !X$1(e)&&!X$1(t)&&5e3>Math.abs(t-e)}$i(t,e,i){var r=e!==this._sessionActivityTimestamp,s=!(t!==this.Mi||i!==this._sessionStartTimestamp);this._sessionStartTimestamp=i,this._sessionActivityTimestamp=e,this.Mi=t,s&&!r||s&&this.qi(e)||(this.xi=e,this.mi.register({[Bi]:[e,t,i]}));}ji(){var t,e=null==(t=this.Te)?void 0:t.persistence_save_debounce_ms;return et$1(e)&&e>0}Hi(){this.ji()?this.mi.refreshKey(Bi):(this.mi.flush(),this.mi.load());}Bi(){var t;if(!X$1(this._sessionActivityTimestamp)&&this._sessionActivityTimestamp!==this.xi){this.Hi();var e=this.Ui();e[1]===this.Mi&&e[2]===this._sessionStartTimestamp&&(this.xi=this._sessionActivityTimestamp,this.mi.register({[Bi]:[this._sessionActivityTimestamp,null!==(t=this.Mi)&&void 0!==t?t:null,this._sessionStartTimestamp]}),this.mi.flush());}}zi(){var t=this.Ui()[0],e=et$1(t)?t:0,i=et$1(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0;return Math.max(e,i)}Vi(t){return this.Hi(),this.Ii(t,this.zi())}Ui(){var t=this.mi.props[Bi];return V$1(t)&&2===t.length&&t.push(t[0]),t||[0,null,0]}resetSessionId(){this.xi=null,clearTimeout(this.Wi),this.Wi=void 0,this.$i(null,null,null);}destroy(){this.Ci=true,this.Bi(),clearTimeout(this.Wi),this.Wi=void 0,this.Si&&t&&(t.removeEventListener(Rr,this.Si,{capture:false}),this.Si=void 0),this.ki=[];}Ai(){this.Si=()=>{this.Bi(),this.Li()&&as.P(this.Fi);},zr(t,Rr,this.Si,{capture:false});}checkAndGetSessionAndWindowId(t,e){if(void 0===t&&(t=false),void 0===e&&(e=null),this.Te.cookieless_mode===xr)throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');var i=e||(new Date).getTime(),r=this.Ui(),s=r[1],n=r[2],o=this.zi(),a=this.Di(),l=et$1(n)&&Math.abs(i-n)>864e5,u=false,h=false,d=!s,v=s,c=!d&&!t&&this.Ii(i,o);if(c){(c=this.Vi(i))||na$1.info("cross-tab refresh kept the session alive",{sessionId:s});var f=this.Ui();s=f[1],n=f[2];}d||c||l?(s=this.Ei(),a=this.Ri(),na$1.info("new session ID generated",{sessionId:s,windowId:a,changeReason:{noSessionId:d,activityTimeout:c,sessionPastMaximumLength:l}}),n=i,u=true):(a||(a=this.Ri(),u=true),(h=s!==v)&&(na$1.info("adopted cross-tab session id",{sessionId:s,windowId:a}),u=true));var p=et$1(o)&&t&&!l?o:i,_=et$1(n)?n:(new Date).getTime();this.Ni(a),this.$i(s,p,_),t||this.Pi();var g={noSessionId:d,activityTimeout:c,sessionPastMaximumLength:l,crossTabAdoption:h};return u&&this.ki.forEach((t=>t(s,a,g))),{sessionId:s,windowId:a,sessionStartTimestamp:_,changeReason:u?g:void 0,lastActivityTimestamp:o}}Pi(){this.Ci||(clearTimeout(this.Wi),this.Wi=setTimeout((()=>{if(!this.Ci)if(this.Vi((new Date).getTime())){var t=this.Mi;this.resetSessionId(),this.wi.emit("forcedIdleReset",{idleSessionId:t});}else this.Pi();}),1.1*this.sessionTimeoutMs));}};var aa$1=function(t,e){if(!t)return false;var i=t.userAgent;if(i&&N$1(i,e))return true;try{var r=null==t?void 0:t.userAgentData;if(null!=r&&r.brands&&r.brands.some((t=>N$1(null==t?void 0:t.brand,e))))return !0}catch(t){}return !!t.webdriver};function la$1(){return (la$1=_$3((function*(){var t=null==i$1?void 0:i$1.userAgentData;if(null!=t&&t.getHighEntropyValues)try{var e=yield t.getHighEntropyValues(["model"]),r=null==e?void 0:e.model;return Y$1(r)&&r.length>0?r:void 0}catch(t){return void _i.info("Unable to resolve $device_model from userAgentData.getHighEntropyValues",t)}}))).apply(this,arguments)}var ua$1=function(t,e){if(!function(t){try{new RegExp(t);}catch(t){return false}return true}(e))return false;try{return new RegExp(e).test(t)}catch(t){return false}};function ha$1(t,e,i){return dn$1({distinct_id:t,userPropertiesToSet:e,userPropertiesToSetOnce:i})}var da$1={exact:(t,e)=>e.some((e=>t.some((t=>e===t)))),is_not:(t,e)=>e.every((e=>t.every((t=>e!==t)))),regex:(t,e)=>e.some((e=>t.some((t=>ua$1(e,t))))),not_regex:(t,e)=>e.every((e=>t.every((t=>!ua$1(e,t))))),icontains:(t,e)=>e.map(va$1).some((e=>t.map(va$1).some((t=>e.includes(t))))),not_icontains:(t,e)=>e.map(va$1).every((e=>t.map(va$1).every((t=>!e.includes(t))))),gt:(t,e)=>e.some((e=>{var i=parseFloat(e);return !isNaN(i)&&t.some((t=>i>parseFloat(t)))})),lt:(t,e)=>e.some((e=>{var i=parseFloat(e);return !isNaN(i)&&t.some((t=>i<parseFloat(t)))}))},va$1=t=>t.toLowerCase();function ca$1(t,e){return !t||Object.entries(t).every((t=>{var i=t[1],r=null==e?void 0:e[t[0]];if(K$1(r)||X$1(r))return false;var s=[String(r)],n=da$1[i.operator];return !!n&&n(i.values,s)}))}var fa="custom",pa$1="i.posthog.com",_a$2=/^\/static\//;let ga$1 = class ga{constructor(t){this.Zi={},this.instance=t;}get apiHost(){var t=this.instance.config.api_host.trim().replace(/\/$/,"");return "https://app.posthog.com"===t?"https://us.i.posthog.com":t}get flagsApiHost(){var t=this.instance.config.flags_api_host;return t?t.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var t,e=null==(t=this.instance.config.ui_host)?void 0:t.replace(/\/$/,"");return e||(e=this.apiHost.replace("."+pa$1,".posthog.com")),"https://app.posthog.com"===e?"https://us.posthog.com":e}get region(){return this.Zi[this.apiHost]||(this.Zi[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":fa),this.Zi[this.apiHost]}Gi(t){if(_a$2.test(t)){var e=this.instance.config.asset_host;if("string"==typeof e)return e.trim().replace(/\/$/,"")||void 0}}endpointFor(t,e){if(void 0===e&&(e=""),e&&(e="/"===e[0]?e:"/"+e),"ui"===t)return this.uiHost+e;if("flags"===t)return this.flagsApiHost+e;if("assets"===t){var i=this.Gi(e);if(i)return ""+i+e}if(this.region===fa)return this.apiHost+e;var r=pa$1+e;switch(t){case "assets":return "https://"+this.region+"-assets."+r;case "api":return "https://"+this.region+"."+r}}};function ma$1(t){var e;return !(null==(e=t.conditions)||null==(e=e.events)||null==(e=e.values)||!e.length)}var ya$1=gi("[Surveys]"),ba$1="seenSurvey_",wa$1=t=>{try{var e=(t=>((t,e)=>""+ba$1+function(t){return t.current_iteration&&t.current_iteration>0?t.id+"_"+t.current_iteration:t.id}(e))(0,t))(t);if(localStorage.getItem(e))return;localStorage.setItem(e,"true");}catch(t){ya$1.error("Failed to persist survey seen state",t);}},Ea$1=[Bn$1.Popover,Bn$1.Widget,Bn$1.API],xa$1={ignoreConditions:false,ignoreDelay:false,displayType:Wn.Popover},Sa$1=gi("[PostHog ExternalIntegrations]"),ka={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};let $a$1 = class $a{constructor(t){this._instance=t;}tr(t,e){var i;null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,t,(t=>{if(t)return Sa$1.error("failed to load script",t);e();}));}startIfEnabledOrStop(){var t=this,e=function(){var e,r,s,n=i[0],o=i[1];!o||null!=(e=v$1.__PosthogExtensions__)&&null!=(e=e.integrations)&&e[n]||t.tr(ka[n],(()=>{var e;null==(e=v$1.__PosthogExtensions__)||null==(e=e.integrations)||null==(e=e[n])||e.start(t._instance);})),!o&&null!=(r=v$1.__PosthogExtensions__)&&null!=(r=r.integrations)&&r[n]&&(null==(s=v$1.__PosthogExtensions__)||null==(s=s.integrations)||null==(s=s[n])||s.stop());};for(var i of Object.entries(null!==(r=this._instance.config.integrations)&&void 0!==r?r:{})){var r;e();}}};var Ta$1={},Ra$1=0,Pa$1=()=>{},Oa$1='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',Ia$1="Surveys module not available",Ca$1="sanitize_properties is deprecated. Use before_send instead",Ma$1="Invalid value for property_denylist config: ",Aa$1=["token","distinct_id",gr],Fa$1="posthog",Da$1=!Do&&-1===(null==u?void 0:u.indexOf("MSIE"))&&-1===(null==u?void 0:u.indexOf("Mozilla")),Na$1=e=>{var i;return g({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,asset_host:null,token:"",autocapture:true,cross_subdomain_cookie:Br(null==r?void 0:r.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:Pa$1,save_campaign_params:true,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:true,capture_pageleave:"if_capture_pageview",defaults:null!=e?e:"unset",__preview_deferred_init_extensions:false,__preview_external_dependency_versioned_paths:false,__preview_cookie_wins_on_conflict:false,debug:s$1&&Y$1(null==s$1?void 0:s$1.search)&&-1!==s$1.search.indexOf("__posthog_debug=true")||false,cookie_expiration:365,upgrade:false,disable_session_recording:false,disable_persistence:false,disable_web_experiments:true,disable_surveys:false,disable_surveys_automatic_display:false,disable_conversations:false,disable_product_tours:false,disableDeviceModel:false,disable_external_dependency_loading:false,strict_script_versioning:false,enable_recording_console_log:void 0,secure_cookie:"https:"===(null==t||null==(i=t.location)?void 0:i.protocol),ip:false,opt_out_capturing_by_default:false,opt_out_persistence_by_default:false,opt_out_useragent_filter:false,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:false,property_denylist:[],respect_dnt:false,sanitize_properties:null,request_headers:{},request_batching:true,properties_string_max_length:65535,mask_all_element_attributes:false,mask_all_text:false,mask_personal_data_properties:false,custom_personal_data_properties:[],advanced_disable_flags:false,advanced_disable_decide:false,advanced_disable_feature_flags:false,advanced_disable_feature_flags_on_first_load:false,advanced_only_evaluate_survey_feature_flags:false,advanced_feature_flags_dedup_per_session:false,advanced_enable_surveys:false,advanced_disable_toolbar_metrics:false,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error(t){_i.error("Bad HTTP status: "+t.statusCode+" "+t.text);},get_device_id:t=>t,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:false,session_idle_timeout_seconds:1800,person_profiles:$r,before_send:void 0,get_current_url:void 0,request_queue_config:{flush_interval_ms:Qo},error_tracking:{},_onCapture:Pa$1},(t=>({rageclick:t&&t>="2026-05-30"?{content_ignorelist:Is,ignore_text_selection:true}:!t||"2025-11-30">t||{content_ignorelist:true},capture_pageview:!t||"2025-05-24">t||"history_change",session_recording:t&&t>="2026-06-25"?{strictMinimumDuration:true,canvasCapture:{resolutionScale:.6},streamNetworkBody:true}:t&&t>="2026-05-30"?{strictMinimumDuration:true,canvasCapture:{resolutionScale:.6}}:t&&t>="2025-11-30"?{strictMinimumDuration:true}:{},external_scripts_inject_target:t&&t>="2026-01-30"?"head":"body",internal_or_test_user_hostname:t&&t>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:t&&t>="2026-05-30"?250:0,split_storage:!(!t||"2026-05-30">t),detect_google_search_app:!(!t||"2026-05-30">t),disable_capture_url_hashes:!(!t||"2026-06-25">t)}))(e))},Ua$1=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["__preview_disable_beacon","disable_beacon"],["store_google","save_campaign_params"],["verbose","debug"]],La$1=t=>{var e={};for(var i of Ua$1){var r=i[0],s=i[1];K$1(t[r])||(e[s]=t[r]);}var n=Fr({},e,t),o=t.__preview_external_dependency_versioned_paths;return K$1(o)||(K$1(t.strict_script_versioning)&&(n.strict_script_versioning=!!o),Y$1(o)&&K$1(t.asset_host)&&(n.asset_host=o)),V$1(t.property_blacklist)&&(K$1(t.property_denylist)?n.property_denylist=t.property_blacklist:V$1(t.property_denylist)?n.property_denylist=[...t.property_blacklist,...t.property_denylist]:_i.error(Ma$1+t.property_denylist)),n};let ja$1 = class ja{constructor(){this.__forceAllowLocalhost=false;}get Qi(){return this.__forceAllowLocalhost}set Qi(t){_i.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=t;}};let Ba$1 = class Ba{Ji(t,e){if(t){var i=this.Ki.indexOf(t);-1!==i&&this.Ki.splice(i,1);}return this.Ki.push(e),null==e.initialize||e.initialize(),e}Yi(){return this.config.cookieless_mode===xr||this.config.cookieless_mode===Er&&this.consent.isRejected()}get decideEndpointWasHit(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.hasLoadedFlags)&&void 0!==t&&t}get flagsEndpointWasHit(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.hasLoadedFlags)&&void 0!==t&&t}constructor(){var t;this.webPerformance=new ja$1,this.Xi=false,this.version=f.LIB_VERSION,this.tn=new sa$1,this.Ki=[],this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=Na$1(),this.SentryIntegration=nn$1,this.sentryIntegration=t=>function(t,e){var i=sn$1(t,e);return {name:rn$1,processEvent:t=>i(t)}}(this,t),this.__request_queue=[],this.__loaded=false,this.analyticsDefaultEndpoint="/e/",this.en=false,this.rn=null,this.nn=null,this.sn=null,this.scrollManager=new ea$1(this),this.pageViewManager=new on$2(this),this.rateLimiter=new Xn(this),this.requestRouter=new ga$1(this),this.consent=new ls(this),this.externalIntegrations=new $a$1(this);var e=null!==(t=Ba.__defaultExtensionClasses)&&void 0!==t?t:{};this.featureFlags=e.featureFlags&&new e.featureFlags(this),this.toolbar=e.toolbar&&new e.toolbar(this),this.surveys=e.surveys&&new e.surveys(this),this.conversations=e.conversations&&new e.conversations(this),this.logs=e.logs&&new e.logs(this),this.metrics=e.metrics&&new e.metrics(this),this.experiments=e.experiments&&new e.experiments(this),this.exceptions=e.exceptions&&new e.exceptions(this),this.people={set:(t,e,i)=>{var r=Y$1(t)?{[t]:e}:t;this.setPersonProperties(r),null==i||i({});},set_once:(t,e,i)=>{var r=Y$1(t)?{[t]:e}:t;this.setPersonProperties(void 0,r),null==i||i({});}},this.on("eventCaptured",(t=>_i.info('send "'+(null==t?void 0:t.event)+'"',t)));}init(t,e,i){if(i&&i!==Fa$1){var r,s=null!==(r=Ta$1[i])&&void 0!==r?r:new Ba;return s._init(t,e,i),Ta$1[i]=s,Ta$1[Fa$1][i]=s,s}return this._init(t,e,i)}_init(e,i,r){var s,n;void 0===i&&(i={});var o=Y$1(e)?e.trim():"";if(!o)return _i.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;if(this.__loaded)return console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=true,this.config=Na$1(i.defaults),i.debug=this.an(i.debug),this.ln=i,this.un=[],i.person_profiles?this.nn=i.person_profiles:i.process_person&&(this.nn=i.process_person);var a=Na$1(i.defaults),l=La$1(i),u=Fr({},a,l,{name:r,token:o});W$1(a.rageclick)&&W$1(l.rageclick)&&(u.rageclick=Fr({},a.rageclick,l.rageclick)),W$1(a.session_recording)&&W$1(l.session_recording)&&(u.session_recording=Fr({},a.session_recording,l.session_recording)),this.set_config(u),this.config.on_xhr_error&&_i.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=i.disable_compression?void 0:io.GZipJS;var h=this.hn();this.persistence=new Dn$1(this.config,h),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new Dn$1(g({},this.config,{persistence:"sessionStorage"}),h,false);var d=g({},this.persistence.props),v=g({},this.sessionPersistence.props);this.register({$initialization_time:(new Date).toISOString()}),this.dn=new Xo((t=>this.cn(t)),this.config.request_queue_config),this.vn=new ta$1(this),this.__request_queue=[];var c=this.Yi();if(c||(this.sessionManager=new oa$1(this),this.sessionPropsManager=new ra$1(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(_i.info("Deferring extension initialization to improve startup performance"),setTimeout((()=>{this.fn(c);}),0)):(_i.info("Initializing extensions synchronously"),this.fn(c)),f.DEBUG=f.DEBUG||this.config.debug,f.DEBUG&&_i.info("Starting in debug mode",{this:this,config:i,thisC:g({},this.config),p:d,s:v}),!this.config.identity_distinct_id||null!=(s=i.bootstrap)&&s.distinctID||(i.bootstrap=g({},i.bootstrap,{distinctID:this.config.identity_distinct_id,isIdentifiedID:true})),void 0!==(null==(n=i.bootstrap)?void 0:n.distinctID)){var p=i.bootstrap.distinctID,_=this.get_distinct_id(),m=this.persistence.get_property(ur$1);if(i.bootstrap.isIdentifiedID&&null!=_&&_!==p&&m===Sr$1)this.identify(p);else if(i.bootstrap.isIdentifiedID&&null!=_&&_!==p&&m===kr)_i.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else {var y=this.config.get_device_id(Yr()),b=i.bootstrap.isIdentifiedID?y:p;this.persistence.set_property(ur$1,i.bootstrap.isIdentifiedID?kr:Sr$1),this.register({distinct_id:p,$device_id:b});}}if(c)this.register_once({distinct_id:_r$1,$device_id:null},"");else if(!this.get_distinct_id()){var w=this.config.get_device_id(Yr());this.register_once({distinct_id:w,$device_id:w},""),this.persistence.set_property(ur$1,Sr$1);}return zr(t,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:false}),i.segment?function(t,e){var i=t.config.segment;if(!i)return e();!function(t,e){var i=t.config.segment;if(!i)return e();var r=i=>{var r=()=>i.anonymousId()||Yr();t.config.get_device_id=r,i.id()&&(t.register({distinct_id:i.id(),$device_id:r()}),t.persistence.set_property(ur$1,kr)),e();},s=i.user();"then"in s&&G$1(s.then)?s.then(r):r(s);}(t,(()=>{i.register((t=>{"undefined"!=typeof Promise&&Promise.resolve||en$1.warn("This browser does not have Promise support, and can not use the segment integration");var e=(e,i)=>{if(!i)return e;e.event.userId||e.event.anonymousId===t.get_distinct_id()||(en$1.info("No userId set, resetting PostHog"),t.reset()),e.event.userId&&e.event.userId!==t.get_distinct_id()&&(en$1.info("UserId set, identifying with PostHog"),t.identify(e.event.userId));var r=t.calculateEventProperties(i,e.event.properties);return e.event.properties=Object.assign({},r,e.event.properties),e};return {name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>true,load:()=>Promise.resolve(),track:t=>e(t,t.event.event),page:t=>e(t,Pr),identify:t=>e(t,Ir),screen:t=>e(t,"$screen")}})(t)).then((()=>{e();}));}));}(this,(()=>this.pn())):this.pn(),G$1(this.config._onCapture)&&this.config._onCapture!==Pa$1&&(_i.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",(t=>this.config._onCapture(t.event,t)))),this.config.ip&&_i.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this.config.disableDeviceModel||function(){return la$1.apply(this,arguments)}().then((t=>{t&&this.register({[xi]:t});})).catch(Pa$1),this}fn(t){var e,i,r,s,n,o,a,l,u=performance.now(),h=g({},Ba.__defaultExtensionClasses,this.config.__extensionClasses),d=[];h.featureFlags&&this.Ki.push(this.featureFlags=null!==(e=this.featureFlags)&&void 0!==e?e:new h.featureFlags(this)),h.exceptions&&this.Ki.push(this.exceptions=null!==(i=this.exceptions)&&void 0!==i?i:new h.exceptions(this)),h.historyAutocapture&&this.Ki.push(this.historyAutocapture=new h.historyAutocapture(this)),h.tracingHeaders&&this.Ki.push(this.tracingHeaders=new h.tracingHeaders(this)),h.siteApps&&this.Ki.push(this.siteApps=new h.siteApps(this)),h.sessionRecording&&!t&&this.Ki.push(this.sessionRecording=new h.sessionRecording(this)),this.config.disable_scroll_properties||d.push((()=>{this.scrollManager.startMeasuringScrollPosition();})),h.autocapture&&this.Ki.push(this.autocapture=new h.autocapture(this)),h.surveys&&this.Ki.push(this.surveys=null!==(r=this.surveys)&&void 0!==r?r:new h.surveys(this)),h.logs&&this.Ki.push(this.logs=null!==(s=this.logs)&&void 0!==s?s:new h.logs(this)),h.metrics&&this.Ki.push(this.metrics=null!==(n=this.metrics)&&void 0!==n?n:new h.metrics(this)),h.conversations&&this.Ki.push(this.conversations=null!==(o=this.conversations)&&void 0!==o?o:new h.conversations(this)),h.productTours&&this.Ki.push(this.productTours=new h.productTours(this)),h.heatmaps&&this.Ki.push(this.heatmaps=new h.heatmaps(this)),h.webVitalsAutocapture&&this.Ki.push(this.webVitalsAutocapture=new h.webVitalsAutocapture(this)),h.exceptionObserver&&this.Ki.push(this.exceptionObserver=new h.exceptionObserver(this)),h.deadClicksAutocapture&&this.Ki.push(this.deadClicksAutocapture=new h.deadClicksAutocapture(this,Zs)),h.toolbar&&this.Ki.push(this.toolbar=null!==(a=this.toolbar)&&void 0!==a?a:new h.toolbar(this)),h.experiments&&this.Ki.push(this.experiments=null!==(l=this.experiments)&&void 0!==l?l:new h.experiments(this)),this.Ki.forEach((t=>{t.initialize&&d.push((()=>{null==t.initialize||t.initialize();}));})),d.push((()=>{if(this.gn){var t=this.gn;this.gn=void 0,this.Hr(t);}})),this.mn(d,u);}mn(t,e){for(;t.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-e>=30&&t.length>0)return void setTimeout((()=>{this.mn(t,e);}),0);var i=t.shift();if(i)try{i();}catch(t){_i.error("Error initializing extension:",t);}}var r=Math.round(performance.now()-e);this.register_for_session({[mr$1]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[yr]:r}),this.config.__preview_deferred_init_extensions&&_i.info("PostHog extensions initialized ("+r+"ms)");}Hr(t){if(!r||!r.body)return _i.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout((()=>{this.Hr(t);}),500);if(this.config.__preview_deferred_init_extensions&&(this.gn=t),this.yn=t,this.compression=void 0,t.ok){var e,i=t.config;i.supportedCompression&&!this.config.disable_compression&&(this.compression=U$1(i.supportedCompression,io.GZipJS)?io.GZipJS:U$1(i.supportedCompression,io.Base64)?io.Base64:void 0),null!=(e=i.analytics)&&e.endpoint&&(this.analyticsDefaultEndpoint=i.analytics.endpoint);}this.set_config({person_profiles:this.nn?this.nn:$r}),this.Ki.forEach((e=>null==e.onRemoteConfig?void 0:e.onRemoteConfig(t)));}pn(){try{this.config.loaded(this);}catch(t){_i.critical("`loaded` function failed",t);}if(this.bn(),this.config.internal_or_test_user_hostname&&null!=s$1&&s$1.hostname){var t=s$1.hostname,e=this.config.internal_or_test_user_hostname;("string"==typeof e?t===e:e.test(t))&&this.setInternalOrTestUser();}this.config.capture_pageview&&setTimeout((()=>{(this.consent.isOptedIn()||this.Yi())&&this._n();}),1),this.wn=new to(this),this.wn.load();}bn(){var t;this.is_capturing()&&this.config.request_batching&&(null==(t=this.dn)||t.enable());}_dom_loaded(){this.is_capturing()&&Mr(this.__request_queue,(t=>this.cn(t))),this.__request_queue=[],this.bn();}_handle_unload(){var t,e,i,r,s;null==(t=this.surveys)||null==t.handlePageUnload||t.handlePageUnload(),null==(e=this.metrics)||e.flush("sendBeacon"),this.config.request_batching?(this.xn()&&this.capture(Or),null==(i=this.logs)||i.flushLogs("sendBeacon"),null==(r=this.dn)||r.unload(),null==(s=this.vn)||s.unload()):this.xn()&&this.capture(Or,null,{transport:"sendBeacon"});}_send_request(t){this.__loaded?Da$1?this.__request_queue.push(t):this.rateLimiter.isServerRateLimited(t.batchKey)?t.fireCallbackOnDrop&&(null==t.callback||t.callback({statusCode:429})):(t.transport=t.transport||this.config.api_transport,t.headers=g({},this.config.request_headers,t.headers),t.compression="best-available"===t.compression?this.compression:t.compression,(K$1(this.config.disable_beacon)?this.config.__preview_disable_beacon:this.config.disable_beacon)&&(t.disableTransport=["sendBeacon"]),t.fetchOptions=t.fetchOptions||this.config.fetch_options,(t=>{var e,i,r,s=g({},t);s.timeout=s.timeout||6e4;var n=null!==(e=s.transport)&&void 0!==e?e:"fetch";"sendBeacon"===n&&K$1(s.compression)&&s.data&&(s.compression=io.Base64),"body"===s.timestampMode&&"POST"===s.method&&s.data&&!V$1(s.data)&&(s.data=g({},s.data,{sent_at:(new Date).toISOString()})),s.url=Ko(s.url,s.method,s.compression,s.timestampMode);var o=Yo.filter((t=>!s.disableTransport||!t.transport||!s.disableTransport.includes(t.transport))),a=null!==(i=null==(r=function(t,e){for(var i=0;t.length>i;i++)if(t[i].transport===n)return t[i]}(o))?void 0:r.method)&&void 0!==i?i:o[0].method;if(!a)throw new Error("No available transport method");"sendBeacon"!==n&&s.data&&s.compression===io.GZipJS&&l&&"undefined"!=typeof Promise&&!Uo?qo(s).then((t=>{a(t);})).catch((e=>{if(C(e))return Uo=true,void a(g({},s,{compression:void 0,url:Ko(t.url,t.method,void 0,t.timestampMode)}));(t=>{if(!t||"object"!=typeof t)return false;var e="name"in t?String(t.name):"";return C(t)||e===P$1})(e)&&(Uo=true),a(s);})):a(s);})(g({},t,{callback:e=>{var i,r;this.rateLimiter.checkForLimiting(e),400>e.statusCode||null==(i=(r=this.config).on_request_error)||i.call(r,e),null==t.callback||t.callback(e);}}))):t.fireCallbackOnDrop&&(null==t.callback||t.callback({statusCode:0}));}cn(t){this.vn?this.vn.retriableRequest(t):this._send_request(t);}_execute_array(t){Ra$1++;try{var e,i=[],r=[],s=[];Mr(t,(t=>{if(t)if(V$1(e=t[0]))s.push(t);else if(G$1(t))try{t.call(this);}catch(e){_i.error("Error executing queued PostHog call",t,e);}else V$1(t)&&"alias"===e?i.push(t):V$1(t)&&-1!==e.indexOf("capture")&&G$1(this[e])?s.push(t):r.push(t);}));var n=function(t,e){Mr(t,(function(t){try{if(V$1(t[0])){var i=e;Ar(t,(function(t){i=i[t[0]].apply(i,t.slice(1));}));}else e[t[0]].apply(e,t.slice(1));}catch(e){_i.error("Error executing queued PostHog call",t,e);}}));};n(i,this),n(r,this),n(s,this);}finally{Ra$1--;}}push(t){if(Ra$1>0&&V$1(t)&&Y$1(t[0])){var e=Ba.prototype[t[0]];G$1(e)&&e.apply(this,t.slice(1));}else this._execute_array([t]);}capture(t,e,i){var r,s,n,o,a;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.dn){if(this.is_capturing())if(!K$1(t)&&Y$1(t)){var l=!this.config.opt_out_useragent_filter&&this._is_bot();if(!l||this.config.__preview_capture_bot_pageviews){var u=null!=i&&i.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(null==u||!u.isRateLimited){null!=e&&e.$current_url&&!Y$1(null==e?void 0:e.$current_url)&&(_i.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),null==e||delete e.$current_url),"$exception"!==t||null!=i&&i.kn||_i.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&this.sessionPersistence.update_campaign_params(),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();var h=new Date,d=(null==i?void 0:i.timestamp)||h,v=ye$2(null==i?void 0:i.uuid,Yr),c={uuid:v,event:t,properties:this.calculateEventProperties(t,e||{},d,v)};t===Pr&&this.config.__preview_capture_bot_pageviews&&l&&(c.event="$bot_pageview",c.properties.$browser_type="bot"),u&&(c.properties.$lib_rate_limit_remaining_tokens=u.remainingTokens);var f="$feature_flag_called"===t&&false===c.properties.$feature_flag_has_experiment&&true===this.get_property(Ki);(null==i?void 0:i.$set)&&!f&&(c.$set=null==i?void 0:i.$set);var p=null==i?void 0:i.$unset;p&&(c.$unset=p);var _,m,y,b=f?void 0:this.Sn(null==i?void 0:i.$set_once,t!==Cr,t===Ir);if(b&&(c.$set_once=b),null!=i&&i._noTruncate||(s=this.config.properties_string_max_length,n=c,o=t=>Y$1(t)?t.slice(0,s):t,a=new Set,c=function t(e,i){if(e!==Object(e))return o?o(e):e;if(!a.has(e)){var r;if(a.add(e),V$1(e))r=[],Mr(e,(e=>{r.push(t(e));}));else {var s={};Ar(e,((e,i)=>{a.has(e)||(s[i]=t(e));})),r=s;}return r}}(n)),c.timestamp=d,K$1(null==i?void 0:i.timestamp)||(c.properties.$event_time_override_provided=true,c.properties.$event_time_override_system_time=h),f&&(c.properties=function(t,e){ void 0===e&&(e=[]);var i={},r=e=>{ void 0!==t[e]&&(i[e]=t[e]);};return x$1.forEach(r),e.forEach(r),i}(c.properties,Aa$1)),t===Vn.DISMISSED||t===Vn.SENT){var w=null==e?void 0:e[Gn.SURVEY_ID],E=null==e?void 0:e[Gn.SURVEY_ITERATION];wa$1({id:w,current_iteration:E}),c.$set=g({},c.$set,{[(_={id:w,current_iteration:E},m=t===Vn.SENT?"responded":"dismissed",y="$survey_"+m+"/"+_.id,_.current_iteration&&_.current_iteration>0&&(y="$survey_"+m+"/"+_.id+"/"+_.current_iteration),y)]:true});}else t===Vn.SHOWN&&(c.$set=g({},c.$set,{[Gn.SURVEY_LAST_SEEN_DATE]:(new Date).toISOString()}));if(t===Kn.SHOWN){var S=null==e?void 0:e[Yn.TOUR_TYPE];S&&(c.$set=g({},c.$set,{[Yn.TOUR_LAST_SEEN_DATE+"/"+S]:(new Date).toISOString()}));}var k=g({},c.properties.$set,c.$set);if(J$1(k)||this.setPersonPropertiesForFlags(k),!Z$1(this.config.before_send)){var T=this.Rt(c);if(!T)return;(c=T).uuid=ye$2(c.uuid,Yr);}this.tn.emit("eventCaptured",c);var R={method:"POST",url:null!==(r=null==i?void 0:i._url)&&void 0!==r?r:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),data:c,compression:"best-available",timestampMode:"query",batchKey:null==i?void 0:i._batchKey,transport:null==i?void 0:i.transport};return !this.config.request_batching||i&&(null==i||!i._batchKey)||null!=i&&i.send_instantly?this.cn(R):this.dn.enqueue(R),c}_i.critical("This capture call is ignored due to client rate limiting.");}}else _i.error("No event name provided to posthog.capture");}else _i.uninitializedWarning("posthog.capture");}_addCaptureHook(t){return this.on("eventCaptured",(e=>t(e.event,e)))}calculateEventProperties(e,i,n,o,a){if(n=n||new Date,!this.persistence||!this.sessionPersistence)return i;var l=a?void 0:this.persistence.remove_event_timer(e),h=g({},i);if(h.token=this.config.token,h.$config_defaults=this.config.defaults,this.Yi()&&(h[gr]=true),"$snapshot"===e){var d=g({},this.persistence.properties(),this.sessionPersistence.properties());return h.distinct_id=d.distinct_id,(!Y$1(h.distinct_id)&&!tt$1(h.distinct_id)||Q$1(h.distinct_id))&&_i.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),h}var v,c=function(e,i,r,n){var o,a,l,h;if(void 0===n&&(n=false),!u)return {};var d,v=e?[...yn$1,...i||[]]:[],c=function(t){for(var e=0;_e$2.length>e;e++){var i=_e$2[e],r=i[1],s=i[0].exec(t),n=s&&(G$1(r)?r(s,t):r);if(n)return n}return ["",""]}(u),p=c[0],_=c[1],g=null!=(d="undefined"!=typeof navigator?navigator:void 0)&&d.brave?{brave:true}:{},m={};K$1(r)||(m.detectGoogleSearchApp=r);var y={},b=null==(o=navigator)||null==(o=o.userAgentData)?void 0:o.platform,w=null==(a=navigator)?void 0:a.maxTouchPoints,E=null==t||null==(l=t.screen)?void 0:l.width,x=null==t||null==(h=t.screen)?void 0:h.height,S=null==t?void 0:t.devicePixelRatio;K$1(b)||(y.userAgentDataPlatform=b),K$1(w)||(y.maxTouchPoints=w),K$1(E)||(y.screenWidth=E),K$1(x)||(y.screenHeight=x),K$1(S)||(y.devicePixelRatio=S);var k,T,R,P,O,I,C,M,A=Fr(Lr({$os:p,$os_version:_,$browser:ce$2(u,navigator.vendor,g,m),$device:ge$2(u),$device_type:(T=u,R=y,M=ge$2(T),M===yt$1||M===mt$1||"Kobo"===M||"Kindle Fire"===M||M===Kt$1?gt$1:M===Ut$1||M===jt$1||M===Lt$1||M===Gt$1?"Console":M===wt$1?"Wearable":M?ft$1:"Android"===(null==R?void 0:R.userAgentDataPlatform)&&(null!==(P=null==R?void 0:R.maxTouchPoints)&&void 0!==P?P:0)>0?600>Math.min(null!==(O=null==R?void 0:R.screenWidth)&&void 0!==O?O:0,null!==(I=null==R?void 0:R.screenHeight)&&void 0!==I?I:0)/(null!==(C=null==R?void 0:R.devicePixelRatio)&&void 0!==C?C:1)?ft$1:gt$1:"Desktop"),$timezone:In$1(),$timezone_offset:Cn$1()}),{$current_url:fn$1(n?be$1(null==s$1?void 0:s$1.href):null==s$1?void 0:s$1.href,v,wn$1),$host:null==s$1?void 0:s$1.host,$pathname:null==s$1?void 0:s$1.pathname,$raw_user_agent:u.length>1e3?u.substring(0,997)+"...":u,$browser_version:pe$2(u,navigator.vendor,g,m),$browser_language:$n(),$browser_language_prefix:(k=$n(),"string"==typeof k?k.split("-")[0]:void 0),$screen_height:null==t?void 0:t.screen.height,$screen_width:null==t?void 0:t.screen.width,$viewport_height:null==t?void 0:t.innerHeight,$viewport_width:null==t?void 0:t.innerWidth,$lib:f.LIB_NAME,$lib_version:f.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return f.SDK_DIST_CHANNEL&&(A.$sdk_dist_channel=f.SDK_DIST_CHANNEL),A}(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties,this.config.detect_google_search_app,this.config.disable_capture_url_hashes);if(this.sessionManager){var p=this.sessionManager.checkAndGetSessionAndWindowId(a,n.getTime()),_=p.windowId;h.$session_id=p.sessionId,h.$window_id=_;}this.sessionPropsManager&&Fr(h,this.sessionPropsManager.getSessionProps());try{var m;this.sessionRecording&&Fr(h,this.sessionRecording.sdkDebugProperties),h.$sdk_debug_retry_queue_size=null==(m=this.vn)?void 0:m.length;}catch(t){h.$sdk_debug_error_capturing_properties=String(t);}if(this.requestRouter.region===fa&&(h.$lib_custom_api_host=this.config.api_host),v=e!==Pr||a?e!==Or||a?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(n):this.pageViewManager.doPageView(n,o),h=Fr(h,v),e===Pr&&r&&(h.title=r.title),!K$1(l)){var y=n.getTime()-l;h.$duration=parseFloat((y/1e3).toFixed(3));}u&&this.config.opt_out_useragent_filter&&(h.$browser_type=this._is_bot()?"bot":"browser");var b=this.persistence.properties(),w=this.sessionPersistence.properties();Ar(["$referrer","$referring_domain"],(t=>{t in b&&delete w[t];})),(h=Fr({},c,b,w,h)).$is_identified=this._isIdentified(),V$1(this.config.property_denylist)?Ar(this.config.property_denylist,(function(t){delete h[t];})):_i.error(Ma$1+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);var E=this.config.sanitize_properties;E&&(_i.error(Ca$1),h=E(h,e));var x=this.Cn();return h.$process_person_profile=x,x&&!a&&this.In("_calculate_event_properties"),h}Sn(t,e,i){var r;if(void 0===e&&(e=true),void 0===i&&(i=false),!this.persistence||!this.Cn())return t;if(this.Xi&&!i)return t;var s=this.persistence.get_initial_props(),n=null==(r=this.sessionPropsManager)?void 0:r.getSetOnceProps(),o=Fr({},s,n||{},t||{}),a=this.config.sanitize_properties;return a&&(_i.error(Ca$1),o=a(o,"$set_once")),e&&(this.Xi=true),J$1(o)?void 0:o}register(t,e){var i;null==(i=this.persistence)||i.register(t,e);}register_once(t,e,i){var r;null==(r=this.persistence)||r.register_once(t,e,i);}register_for_session(t){var e;null==(e=this.sessionPersistence)||e.register(t);}unregister(t){var e;null==(e=this.persistence)||e.unregister(t);}unregister_for_session(t){var e;null==(e=this.sessionPersistence)||e.unregister(t);}Tn(t,e){this.register({[t]:e});}getFeatureFlag(t,e){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlag(t,e)}getFeatureFlagPayload(t){var e;return null==(e=this.featureFlags)?void 0:e.getFeatureFlagPayload(t)}getFeatureFlagResult(t,e){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlagResult(t,e)}getAllFeatureFlags(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.getAllFeatureFlags())&&void 0!==t?t:[]}isFeatureEnabled(t,e){var i,r;return null!==(i=null==(r=this.featureFlags)?void 0:r.isFeatureEnabled(t,e))&&void 0!==i?i:null==e?void 0:e.defaultValue}reloadFeatureFlags(){var t;null==(t=this.featureFlags)||t.reloadFeatureFlags();}updateFlags(t,e,i){var r;null==(r=this.featureFlags)||r.updateFlags(t,e,i);}updateEarlyAccessFeatureEnrollment(t,e,i){var r;null==(r=this.featureFlags)||r.updateEarlyAccessFeatureEnrollment(t,e,i);}getEarlyAccessFeatures(t,e,i){var r;return void 0===e&&(e=false),null==(r=this.featureFlags)?void 0:r.getEarlyAccessFeatures(t,e,i)}on(t,e){return this.tn.on(t,e)}onFeatureFlags(t){return this.featureFlags?this.featureFlags.onFeatureFlags(t):(t([],{},{errorsLoading:true}),()=>{})}onSurveysLoaded(t){return this.surveys?this.surveys.onSurveysLoaded(t):(t([],{isLoaded:false,error:Ia$1}),()=>{})}onSessionId(t){var e,i;return null!==(e=null==(i=this.sessionManager)?void 0:i.onSessionId(t))&&void 0!==e?e:()=>{}}getSurveys(t,e){ void 0===e&&(e=false),this.surveys?this.surveys.getSurveys(t,e):t([],{isLoaded:false,error:Ia$1});}getActiveMatchingSurveys(t,e){ void 0===e&&(e=false),this.surveys?this.surveys.getActiveMatchingSurveys(t,e):t([],{isLoaded:false,error:Ia$1});}renderSurvey(t,e){var i;null==(i=this.surveys)||i.renderSurvey(t,e);}displaySurvey(t,e){var i;void 0===e&&(e=xa$1),null==(i=this.surveys)||i.displaySurvey(t,e);}cancelPendingSurvey(t){var e;null==(e=this.surveys)||e.cancelPendingSurvey(t);}canRenderSurvey(t){var e,i;return null!==(e=null==(i=this.surveys)?void 0:i.canRenderSurvey(t))&&void 0!==e?e:{visible:false,disabledReason:Ia$1}}canRenderSurveyAsync(t,e){var i,r;return void 0===e&&(e=false),null!==(i=null==(r=this.surveys)?void 0:r.canRenderSurveyAsync(t,e))&&void 0!==i?i:Promise.resolve({visible:false,disabledReason:Ia$1})}Mn(t){return !t||Q$1(t)?(_i.critical("Unique user id has not been set in posthog.identify"),false):t===_r$1?(_i.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.'),false):!["distinct_id","distinctid"].includes(t.toLowerCase())&&!["undefined","null"].includes(t.toLowerCase())||(_i.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.'),false)}identify(t,e,i){if(!this.__loaded||!this.persistence)return _i.uninitializedWarning("posthog.identify");if(tt$1(t)&&(t=t.toString(),_i.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),this.Mn(t)&&this.In("posthog.identify")){var r=this.get_distinct_id();this.register({$user_id:t}),this.get_property(Ei)||this.register_once({$had_persisted_distinct_id:true,$device_id:r},""),t!==r&&t!==this.get_property(Si)&&(this.unregister(Si),this.register({distinct_id:t}));var s,n=(this.persistence.get_property(ur$1)||Sr$1)===Sr$1;t!==r&&n?(this.persistence.set_property(ur$1,kr),this.setPersonPropertiesForFlags({$set:e||{},$set_once:i||{}},false),this.capture(Ir,{distinct_id:t,$anon_distinct_id:r},{$set:e||{},$set_once:i||{}}),this.sn=ha$1(t,e,i),null==(s=this.featureFlags)||s.setAnonymousDistinctId(r)):(e||i)&&this.setPersonProperties(e,i),t!==r&&(this.reloadFeatureFlags(),this.unregister(nr$1));}}setPersonProperties(t,e){if((t||e)&&this.In("posthog.setPersonProperties")){var i=ha$1(this.get_distinct_id(),t,e);this.sn!==i?(this.setPersonPropertiesForFlags({$set:t||{},$set_once:e||{}},true),this.capture("$set",{$set:t||{},$set_once:e||{}}),this.sn=i):_i.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.");}}unsetPersonProperties(t){var e,i=(V$1(t)?t:[t]).filter((t=>Y$1(t)&&t.length>0));0!==i.length&&this.In("posthog.unsetPersonProperties")&&(null==(e=this.featureFlags)||e.unsetPersonPropertiesForFlags(i,true),this.capture("$set",{$unset:i}),this.sn=null);}group(t,e,i){if(t&&e){var r=this.getGroups(),s=r[t]!==e;if(s&&this.resetGroupPropertiesForFlags(t),this.register({$groups:g({},r,{[t]:e})}),s||i){var n={$group_type:t,$group_key:e};i&&(n.$group_set=i),this.capture(Cr,n);}i&&this.setGroupPropertiesForFlags({[t]:i}),s&&!i&&this.reloadFeatureFlags();}else _i.error("posthog.group requires a group type and group key");}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags();}setPersonPropertiesForFlags(t,e){var i;void 0===e&&(e=true),null==(i=this.featureFlags)||i.setPersonPropertiesForFlags(t,e);}resetPersonPropertiesForFlags(t){var e;void 0===t&&(t=true),null==(e=this.featureFlags)||e.resetPersonPropertiesForFlags(t);}setGroupPropertiesForFlags(t,e){var i;void 0===e&&(e=true),this.In("posthog.setGroupPropertiesForFlags")&&(null==(i=this.featureFlags)||i.setGroupPropertiesForFlags(t,e));}resetGroupPropertiesForFlags(t){var e;null==(e=this.featureFlags)||e.resetGroupPropertiesForFlags(t);}reset(t){var e,i,r,s,n,o,a,l,u,h;if(_i.info("reset"),!this.__loaded)return _i.uninitializedWarning("posthog.reset");var d,v=this.get_property(Ei),c=this.get_property(xi),f=this.get_property(Fi);if(this.consent.reset(),null==(e=this.persistence)||e.clear(),null==(i=this.sessionPersistence)||i.clear(),K$1(f)||null==(d=this.persistence)||d.register({[Fi]:f}),null==(r=this.surveys)||r.reset(),null==(s=this.wn)||s.stop(),null==(n=this.featureFlags)||n.reset(),null==(o=this.conversations)||o.reset(),null==(a=this.logs)||a.reset(),null==(l=this.metrics)||l.reset(),null==(u=this.persistence)||u.set_property(ur$1,Sr$1),null==(h=this.sessionManager)||h.resetSessionId(),this.sn=null,this.config.cookieless_mode===xr)this.register_once({distinct_id:_r$1,$device_id:null},"");else {var p=this.config.get_device_id(Yr());this.register_once({distinct_id:p,$device_id:t?p:v},""),t||K$1(c)||this.register({[xi]:c});}this.register({$last_posthog_reset:(new Date).toISOString()},1),delete this.config.identity_distinct_id,delete this.config.identity_hash,this.reloadFeatureFlags();}shutdown(t){var e=this;return _$3((function*(){var t,i,r,s,n;e.__loaded?(null==(t=e.logs)||t.flushLogs("sendBeacon"),null==(i=e.metrics)||i.flush("sendBeacon"),null==(r=e.dn)||r.unload(),null==(s=e.vn)||s.unload(),null==(n=e.featureFlags)||n.destroy()):_i.uninitializedWarning("posthog.shutdown");}))()}setIdentity(t,e){var i;this.config.identity_distinct_id=t,this.config.identity_hash=e,this.alias(t),null==(i=this.conversations)||i.En();}clearIdentity(){var t;delete this.config.identity_distinct_id,delete this.config.identity_hash,null==(t=this.conversations)||t.Rn();}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var t,e;return null!==(t=null==(e=this.sessionManager)?void 0:e.checkAndGetSessionAndWindowId(true).sessionId)&&void 0!==t?t:""}get_session_replay_url(t){if(!this.sessionManager)return "";var e=this.sessionManager.checkAndGetSessionAndWindowId(true),i=e.sessionStartTimestamp,r=this.requestRouter.endpointFor("ui","/project/"+this.config.token+"/replay/"+e.sessionId);if(null!=t&&t.withTimestamp&&i){var s,n=null!==(s=t.timestampLookBack)&&void 0!==s?s:10;if(!i)return r;r+="?t="+Math.max(Math.floor(((new Date).getTime()-i)/1e3)-n,0);}return r}alias(t,e){return t===this.get_property(wi)?(_i.critical("Attempting to create alias for existing People user - aborting."),-2):this.In("posthog.alias")?(K$1(e)&&(e=this.get_distinct_id()),t!==e?(this.Tn(Si,t),this.capture("$create_alias",{alias:t,distinct_id:e})):(_i.warn("alias matches current distinct_id - skipping api call."),this.identify(t),-1)):void 0}set_config(t){var e=g({},this.config);if(W$1(t)){var i,r,s,n,o,a,l,u,h,d,v;Fr(this.config,La$1(t));var c=this.hn();null==(i=this.persistence)||i.update_config(this.config,e,c),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new Dn$1(g({},this.config,{persistence:"sessionStorage"}),c,false);var p=this.an(this.config.debug);it$1(p)&&(this.config.debug=p),it$1(this.config.debug)&&(this.config.debug?(f.DEBUG=true,is.N()&&is.q("ph_debug",true),_i.info("set_config",{config:t,oldConfig:e,newConfig:g({},this.config)})):(f.DEBUG=false,is.N()&&is.P("ph_debug"))),null==(r=this.exceptionObserver)||r.onConfigChange(),null==(s=this.exceptions)||s.onConfigChange(),null==(n=this.sessionRecording)||n.startIfEnabledOrStop(),null==(o=this.tracingHeaders)||o.startIfEnabledOrStop(),null==(a=this.autocapture)||a.startIfEnabled(),null==(l=this.heatmaps)||l.startIfEnabled(),null==(u=this.exceptionObserver)||u.startIfEnabledOrStop(),null==(h=this.deadClicksAutocapture)||h.startIfEnabledOrStop(),null==(d=this.surveys)||d.loadIfEnabled(),this.Pn(),null==(v=this.externalIntegrations)||v.startIfEnabledOrStop();}}_overrideSDKInfo(t,e){f.LIB_NAME=t,f.LIB_VERSION=e;}startSessionRecording(t){var e,i,r,s,n,o=true===t,a={sampling:o||!(null==t||!t.sampling),linked_flag:o||!(null==t||!t.linked_flag),url_trigger:o||!(null==t||!t.url_trigger),event_trigger:o||!(null==t||!t.event_trigger)};Object.values(a).some(Boolean)&&(null==(e=this.sessionManager)||e.checkAndGetSessionAndWindowId(),a.sampling&&(null==(i=this.sessionRecording)||i.overrideSampling()),a.linked_flag&&(null==(r=this.sessionRecording)||r.overrideLinkedFlag()),a.url_trigger&&(null==(s=this.sessionRecording)||s.overrideTrigger("url")),a.event_trigger&&(null==(n=this.sessionRecording)||n.overrideTrigger("event")));this.set_config({disable_session_recording:false});}stopSessionRecording(){this.set_config({disable_session_recording:true});}sessionRecordingStarted(){var t;return !(null==(t=this.sessionRecording)||!t.started)}captureException(t,e){if(this.exceptions){var i=new Error("PostHog syntheticException"),r=this.exceptions.buildProperties(t,{handled:true,syntheticException:i});return this.exceptions.sendExceptionEvent(g({},r,e))}}addExceptionStep(t,e){var i;null==(i=this.exceptions)||i.addExceptionStep(t,e);}captureLog(t){var e;null==(e=this.logs)||e.captureLog(t);}get logger(){var t,e;return null!==(t=null==(e=this.logs)?void 0:e.logger)&&void 0!==t?t:Ba.On}startExceptionAutocapture(t){this.set_config({capture_exceptions:null==t||t});}stopExceptionAutocapture(){this.set_config({capture_exceptions:false});}loadToolbar(t){var e,i;return null!==(e=null==(i=this.toolbar)?void 0:i.loadToolbar(t))&&void 0!==e&&e}get_property(t){var e;return null==(e=this.persistence)?void 0:e.props[t]}getSessionProperty(t){var e;return null==(e=this.sessionPersistence)?void 0:e.props[t]}toString(){var t,e=null!==(t=this.config.name)&&void 0!==t?t:Fa$1;return e!==Fa$1&&(e=Fa$1+"."+e),e}_isIdentified(){var t,e;return (null==(t=this.persistence)?void 0:t.get_property(ur$1))===kr||(null==(e=this.sessionPersistence)?void 0:e.get_property(ur$1))===kr}Cn(){var t,e;return !("never"===this.config.person_profiles||this.config.person_profiles===$r&&!this._isIdentified()&&J$1(this.getGroups())&&(null==(t=this.persistence)||null==(t=t.props)||!t[Si])&&(null==(e=this.persistence)||null==(e=e.props)||!e[pr]))}xn(){return true===this.config.capture_pageleave||"if_capture_pageview"===this.config.capture_pageleave&&(true===this.config.capture_pageview||"history_change"===this.config.capture_pageview)}createPersonProfile(){this.Cn()||this.In("posthog.createPersonProfile")&&this.setPersonProperties({},{});}setInternalOrTestUser(){this.In("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:true});}In(t){return "never"===this.config.person_profiles?(_i.error(t+' was called, but process_person is set to "never". This call will be ignored.'),false):(this.Tn(pr,true),true)}hn(){if("always"===this.config.cookieless_mode)return true;var t=this.consent.isOptedOut();return this.config.disable_persistence||t&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!==Er)}Pn(){var t,e,i,r,s=this.hn();return (null==(t=this.persistence)?void 0:t.yr)!==s&&(null==(i=this.persistence)||i.set_disabled(s)),(null==(e=this.sessionPersistence)?void 0:e.yr)!==s&&(null==(r=this.sessionPersistence)||r.set_disabled(s)),s}opt_in_capturing(t){var e;if(this.config.cookieless_mode!==xr){if(this.Yi()){var i,r,s,n,o;this.reset(true),null==(i=this.sessionManager)||i.destroy(),null==(r=this.pageViewManager)||r.destroy(),this.sessionManager=new oa$1(this),this.pageViewManager=new on$2(this),this.persistence&&(this.sessionPropsManager=new ra$1(this,this.sessionManager,this.persistence));var a,l=null!==(s=null==(n=this.config.__extensionClasses)?void 0:n.sessionRecording)&&void 0!==s?s:null==(o=Ba.__defaultExtensionClasses)?void 0:o.sessionRecording;l&&(this.sessionRecording=this.Ji(this.sessionRecording,new l(this)),this.yn&&(null==(a=this.sessionRecording)||null==a.onRemoteConfig||a.onRemoteConfig(this.yn)));}var u,h;this.consent.optInOut(true),this.Pn(),this.bn(),null==(e=this.sessionRecording)||e.startIfEnabledOrStop(),this.config.cookieless_mode==Er&&(null==(u=this.surveys)||u.loadIfEnabled()),(K$1(null==t?void 0:t.captureEventName)||null!=t&&t.captureEventName)&&this.capture(null!==(h=null==t?void 0:t.captureEventName)&&void 0!==h?h:"$opt_in",null==t?void 0:t.captureProperties,{send_instantly:true}),this.config.capture_pageview&&this._n();}else _i.warn(Oa$1);}opt_out_capturing(){var t,e,i;this.config.cookieless_mode!==xr?(this.config.cookieless_mode===Er&&this.consent.isOptedIn()&&this.reset(true),this.consent.optInOut(false),this.Pn(),this.config.cookieless_mode===Er&&(this.register({distinct_id:_r$1,$device_id:null}),null==(t=this.sessionRecording)||t.stopRecording(),this.sessionRecording=void 0,null==(e=this.sessionManager)||e.destroy(),null==(i=this.pageViewManager)||i.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.config.capture_pageview&&this._n(),this.bn())):_i.warn(Oa$1);}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var t=this.consent.consent;return 1===t?"granted":0===t?"denied":"pending"}is_capturing(){return this.config.cookieless_mode===xr||(this.config.cookieless_mode===Er?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this.Pn();}_is_bot(){return i$1?aa$1(i$1,this.config.custom_blocked_useragents):void 0}_n(){r&&("visible"===r.visibilityState?this.en||(this.en=true,this.capture(Pr,{title:r.title},{send_instantly:true}),this.rn&&(r.removeEventListener(Tr,this.rn),this.rn=null)):this.rn||(this.rn=this._n.bind(this),zr(r,Tr,this.rn)));}debug(e){ false===e?(null==t||t.console.log("You've disabled debug mode."),this.set_config({debug:false})):(null==t||t.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:true}));}Ur(){var t=this.ln||{};return "advanced_disable_flags"in t?!!t.advanced_disable_flags:false!==this.config.advanced_disable_flags?!!this.config.advanced_disable_flags:true===this.config.advanced_disable_decide?(_i.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),true):function(t,e,i,r,s){var n=e in t&&!Z$1(t[e]),o=i in t&&!Z$1(t[i]);return n?t[e]:!!o&&(s&&s.warn("Config field '"+i+"' is deprecated. Please use '"+e+"' instead. The old field will be removed in a future major version."),t[i])}(t,"advanced_disable_flags","advanced_disable_decide",0,_i)}Rt(t){var e;if(Z$1(this.config.before_send))return t;var i=Object.keys(null!==(e=t.properties)&&void 0!==e?e:{}).filter(nt$1),r=V$1(this.config.before_send)?this.config.before_send:[this.config.before_send],s=t;for(var n of r){if(s=n(s),Z$1(s)){var o="Event '"+t.event+"' was rejected in beforeSend function";return st$1(t.event)?_i.warn(o+". This can cause unexpected behavior."):_i.info(o),null}s.properties&&!J$1(s.properties)||_i.warn("Event '"+t.event+"' has no properties after beforeSend function, this is likely an error.");}for(var a of i)if(s.properties&&Z$1(s.properties[a]))return _i.warn("Event '"+t.event+"' had its '"+a+"' property removed in a beforeSend function. This property is required for ingestion, so the event will be dropped."),null;return s}getPageViewId(){var t;return null==(t=this.pageViewManager.ir)?void 0:t.pageViewId}captureTraceFeedback(t,e){this.capture("$ai_feedback",{$ai_trace_id:String(t),$ai_feedback_text:e});}captureTraceMetric(t,e,i){this.capture("$ai_metric",{$ai_trace_id:String(t),$ai_metric_name:e,$ai_metric_value:String(i)});}an(t){var e=it$1(t)&&!t,i=is.N()&&"true"===is.A("ph_debug");return !e&&(!!i||t)}};Ba$1.__defaultExtensionClasses={},Ba$1.On=(()=>{var t=()=>{};return {trace:t,debug:t,info:t,warn:t,error:t,fatal:t}})(),function(t,e){for(var i=0;e.length>i;i++)t.prototype[e[i]]=Ur(t.prototype[e[i]]);}(Ba$1,["identify"]);let za$1 = class za{constructor(t){this.disabled=false===t;var e=W$1(t)?t:{};this.thresholdPx=e.threshold_px||30,this.timeoutMs=e.timeout_ms||1e3,this.clickCount=e.click_count||3,this.clicks=[];}isRageClick(t,e,i){if(this.disabled)return false;var r=this.clicks[this.clicks.length-1];if(r&&Math.abs(t-r.x)+Math.abs(e-r.y)<this.thresholdPx&&this.timeoutMs>i-r.timestamp){if(this.clicks.push({x:t,y:e,timestamp:i}),this.clicks.length===this.clickCount)return true}else this.clicks=[{x:t,y:e,timestamp:i}];return false}};var Ha$1="$copy_autocapture",qa$1=gi("[AutoCapture]");function Va$1(t,e){return e.length>t?e.slice(0,t)+"...":e}function Ga$1(t){if(t.previousElementSibling)return t.previousElementSibling;var e=t;do{e=e.previousSibling;}while(e&&!ps(e));return e}function Wa$1(e,i){var r,s,n=i.e,o=i.maskAllElementAttributes,a=i.maskAllText,l=i.elementAttributeIgnoreList,u=i.elementsChainAsString,h=i.disableCaptureUrlHashes;if(!ps(e))return {props:{}};for(var d=[e],v=new Set([e]),c=e;c.parentNode&&!_s(c,"body")&&ys>d.length;)if(ms(c.parentNode)){var f=c.parentNode.host;if(v.has(f))break;v.add(f),d.push(f),c=f;}else {if(!ps(c.parentNode))break;if(v.has(c.parentNode))break;v.add(c.parentNode),d.push(c.parentNode),c=c.parentNode;}var p,_,m=[],y={},b=false,w=false;if(Ar(d,(t=>{var e=Us(t);if(_s(t,"a")){var i=t.getAttribute("href");b=!!(e&&i&&Gs(i))&&(h?be$1(i):i);}U$1(Es(t),"ph-no-capture")&&(w=true),m.push(function(t,e,i,r,s){ void 0===s&&(s=false);var n=t.tagName.toLowerCase(),o={tag_name:n};$s.indexOf(n)>-1&&!i&&(o.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?Va$1(1024,Ws(t)):Va$1(1024,Ss(t)));var a=Es(t);a.length>0&&(o.classes=a.filter((function(t){return ""!==t}))),Ar(t.attributes,(function(i){var n;if((!Ls(t)||-1!==["name","id","class","aria-label"].indexOf(i.name))&&(null==r||!r.includes(i.name))&&!e&&Gs(i.value)&&(!Y$1(n=i.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){var a=i.value;"class"===i.name&&(a=bs(a).join(" ")),o["attr__"+i.name]=Va$1(1024,"href"===i.name&&s?be$1(a):a);}}));for(var l=1,u=1,h=t;h=Ga$1(h);)l++,h.tagName===t.tagName&&u++;return o.nth_child=l,o.nth_of_type=u,o}(t,o,a,l,h));var r=function(t){if(!Us(t))return {};var e={};return Ar(t.attributes,(function(t){if(t.name&&0===t.name.indexOf("data-ph-capture-attribute")){var i=t.name.replace("data-ph-capture-attribute-",""),r=t.value;i&&r&&Gs(r)&&(e[i]=r);}})),e}(t);Fr(y,r);})),w)return {props:{},explicitNoCapture:w};if(a||(m[0].$el_text=_s(e,"a")||_s(e,"button")?Ws(e):Ss(e)),b){var E,x;m[0].attr__href=b;var S=null==(E=vn$1(b))?void 0:E.host,k=null==t||null==(x=t.location)?void 0:x.host;S&&k&&S!==k&&(p=b);}return {props:Fr({$event_type:n.type,$ce_version:1},u?{}:{$elements:m},{$elements_chain:(_=m,function(t){return t.map((t=>{var e,i,r="";if(t.tag_name&&(r+=t.tag_name),t.attr_class)for(var s of(t.attr_class.sort(),t.attr_class))r+="."+s.replace(/"/g,"");var n=g({},t.text?{text:t.text}:{},{"nth-child":null!==(e=t.nth_child)&&void 0!==e?e:0,"nth-of-type":null!==(i=t.nth_of_type)&&void 0!==i?i:0},t.href?{href:t.href}:{},t.attr_id?{attr_id:t.attr_id}:{},t.attributes),o={};return Dr(n).sort(((t,e)=>t[0].localeCompare(e[0]))).forEach((t=>{var e=t[1];return o[Ks(t[0].toString())]=Ks(e.toString())})),(r+=":")+Dr(o).map((t=>t[0]+'="'+t[1]+'"')).join("")})).join(";")}(function(t){return t.map((t=>{var e,i,r={text:null==(e=t.$el_text)?void 0:e.slice(0,400),tag_name:t.tag_name,href:null==(i=t.attr__href)?void 0:i.slice(0,2048),attr_class:Ys(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return Dr(t).filter((t=>0===t[0].indexOf("attr__"))).forEach((t=>r.attributes[t[0]]=t[1])),r}))}(_)))},null!=(r=m[0])&&r.$el_text?{$el_text:null==(s=m[0])?void 0:s.$el_text}:{},p&&"click"===n.type?{$external_click_url:p}:{},y)}}var Ja$1=gi("[ExceptionAutocapture]"),Ka$1=()=>{},Ya$1=gi("[TracingHeaders]"),Qa$1=gi("[Web Vitals]"),Xa$1=9e5,Za$1="disabled",tl="lazy_loading",el="awaiting_config",il="missing_config";gi("[SessionRecording]"),gi("[SessionRecording]");var rl="[SessionRecording]",sl=gi(rl),nl=gi("[Heatmaps]");function ol(t){return W$1(t)&&"clientX"in t&&"clientY"in t&&tt$1(t.clientX)&&tt$1(t.clientY)}var al=gi("[Product Tours]"),ll=t=>{var e;return !t.config.disable_product_tours&&!(null==(e=t.persistence)||!e.get_property(Mi))},ul=["$set_once","$set"],hl=gi("[SiteApps]"),dl="Error while initializing PostHog app with config id ";function vl(t,e,i){if(Z$1(t))return false;switch(i){case "exact":return t===e;case "contains":var r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(r,"i").test(t);case "regex":try{return new RegExp(e).test(t)}catch(t){return false}default:return false}}class cl{constructor(t){this.Fn=new sa$1,this.Ln=(t,e)=>this.$n(t,e)&&this.An(t,e)&&this.Nn(t,e)&&this.Dn(t,e),this.$n=(t,e)=>null==e||!e.event||(null==t?void 0:t.event)===(null==e?void 0:e.event),this._instance=t,this.qn=new Set,this.jn=new Set;}init(){var t,e;K$1(null==(t=this._instance)?void 0:t._addCaptureHook)||(null==(e=this._instance)||e._addCaptureHook(((t,e)=>{this.on(t,e);})));}register(t){var e,i;if(!K$1(null==(e=this._instance)?void 0:e._addCaptureHook)&&(t.forEach((t=>{var e,i;null==(e=this.jn)||e.add(t),null==(i=t.steps)||i.forEach((t=>{var e;null==(e=this.qn)||e.add((null==t?void 0:t.event)||"");}));})),null!=(i=this._instance)&&i.autocapture)){var r,s=new Set;t.forEach((t=>{var e;null==(e=t.steps)||e.forEach((t=>{null!=t&&t.selector&&s.add(null==t?void 0:t.selector);}));})),null==(r=this._instance)||r.autocapture.setElementSelectors(s);}}on(t,e){var i;null!=e&&0!=t.length&&(this.qn.has(t)||this.qn.has(e.event))&&this.jn&&(null==(i=this.jn)?void 0:i.size)>0&&this.jn.forEach((t=>{this.Hn(e,t)&&this.Fn.emit("actionCaptured",t.name);}));}Bn(t){this.onAction("actionCaptured",(e=>t(e)));}Hn(t,e){if(null==(null==e?void 0:e.steps))return false;for(var i of e.steps)if(this.Ln(t,i))return true;return false}onAction(t,e){return this.Fn.on(t,e)}An(t,e){if(null!=e&&e.url){var i,r=null==t||null==(i=t.properties)?void 0:i.$current_url;if(!r||"string"!=typeof r)return false;if(!vl(r,e.url,e.url_matching||"contains"))return false}return true}Nn(t,e){return !!this.Un(t,e)&&!!this.zn(t,e)&&!!this.Vn(t,e)}Un(t,e){var i;if(null==e||!e.href)return true;var r=this.Wn(t);if(r.length>0)return r.some((t=>vl(t.href,e.href,e.href_matching||"exact")));var s,n=(null==t||null==(i=t.properties)?void 0:i.$elements_chain)||"";return !!n&&vl((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",e.href,e.href_matching||"exact")}zn(t,e){var i;if(null==e||!e.text)return true;var r=this.Wn(t);if(r.length>0)return r.some((t=>vl(t.text,e.text,e.text_matching||"exact")||vl(t.$el_text,e.text,e.text_matching||"exact")));var s,n,o,a=(null==t||null==(i=t.properties)?void 0:i.$elements_chain)||"";return !!a&&(s=function(t){for(var e,i=[],r=/(?::|")text="(.*?)"/g;!Z$1(e=r.exec(t));)i.includes(e[1])||i.push(e[1]);return i}(a),n=e.text,o=e.text_matching||"exact",s.some((t=>vl(t,n,o))))}Vn(t,e){var i,r;if(null==e||!e.selector)return true;var s=null==t||null==(i=t.properties)?void 0:i.$element_selectors;if(null!=s&&s.includes(e.selector))return true;var n=(null==t||null==(r=t.properties)?void 0:r.$elements_chain)||"";if(e.selector_regex&&n)try{return new RegExp(e.selector_regex).test(n)}catch(t){return false}return false}Wn(t){var e;return null==(null==t||null==(e=t.properties)?void 0:e.$elements)?[]:null==t?void 0:t.properties.$elements}Dn(t,e){return null==e||!e.properties||0===e.properties.length||ca$1(e.properties.reduce(((t,e)=>{var i=V$1(e.value)?e.value.map(String):null!=e.value?[String(e.value)]:[];return t[e.key]={values:i,operator:e.operator||"exact"},t}),{}),null==t?void 0:t.properties)}}class fl{constructor(t){var e;this.Zn=[],this._instance=t,this.Gn=new Map,this.Qn=new Map,this.Jn=new Map,null==(e=this._instance)||null==e.onSessionId||e.onSessionId((t=>this.Kn(t)));}Yn(t,e){return !!t&&ca$1(t.propertyFilters,null==e?void 0:e.properties)}Xn(t,e){var i=new Map;return t.forEach((t=>{var r;null==(r=t.conditions)||null==(r=r[e])||null==(r=r.values)||r.forEach((e=>{if(null!=e&&e.name){var r=i.get(e.name)||[];r.push(t.id),i.set(e.name,r);}}));})),i}ts(t,e,i){var r=(i===Nn.Activation?this.Gn:this.Qn).get(t),s=[];return this.es((t=>{s=t.filter((t=>null==r?void 0:r.includes(t.id)));})),s.filter((r=>{var s,n=null==(s=r.conditions)||null==(s=s[i])||null==(s=s.values)?void 0:s.find((e=>e.name===t));return this.Yn(n,e)}))}register(t){var e;K$1(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.rs(t),this.ns(t));}ns(t){var e=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.actions)&&(null==(i=t.conditions)||null==(i=i.actions)||null==(i=i.values)?void 0:i.length)>0}));0!==e.length&&(null==this.ss&&(this.ss=new cl(this._instance),this.ss.init(),this.ss.Bn((t=>{this.onAction(t);}))),e.forEach((t=>{var e,i,r,s,n;t.conditions&&null!=(e=t.conditions)&&e.actions&&null!=(i=t.conditions)&&null!=(i=i.actions)&&i.values&&(null==(r=t.conditions)||null==(r=r.actions)||null==(r=r.values)?void 0:r.length)>0&&(null==(s=this.ss)||s.register(t.conditions.actions.values),null==(n=t.conditions)||null==(n=n.actions)||null==(n=n.values)||n.forEach((e=>{if(e&&e.name){var i=this.Jn.get(e.name);i&&i.push(t.id),this.Jn.set(e.name,i||[t.id]);}})));})));}rs(t){var e,i=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.events)&&(null==(i=t.conditions)||null==(i=i.events)||null==(i=i.values)?void 0:i.length)>0})),r=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.cancelEvents)&&(null==(i=t.conditions)||null==(i=i.cancelEvents)||null==(i=i.values)?void 0:i.length)>0}));0===i.length&&0===r.length||(null==(e=this._instance)||e._addCaptureHook(((t,e)=>{this.onEvent(t,e);})),this.Gn=this.Xn(t,Nn.Activation),this.Qn=this.Xn(t,Nn.Cancellation));}onEvent(t,e){var i,r,s=this.os(),n=(null==e||null==(i=e.properties)?void 0:i.$survey_id)||(null==e||null==(r=e.properties)?void 0:r.$product_tour_id);if(n&&this.getActivatedIds().includes(n)){var o=this.ls(t,n);if("consume"===o)return s.info("event consumed activated item, removing it",{event:t,itemId:n}),void this.us([n]);if("persist"===o)return s.info("shown item promoted to persisted activation",{event:t,itemId:n}),void this.hs(n)}if(this.Qn.has(t)){var a=this.ts(t,e,Nn.Cancellation);a.length>0&&(s.info("cancel event matched, cancelling items",{event:t,itemsToCancel:a.map((t=>t.id))}),this.us(a.map((t=>t.id))),a.forEach((t=>this.ds(t.id))));}if(this.Gn.has(t)){s.info("event name matched",{event:t,eventPayload:e,items:this.Gn.get(t)});var l=this.ts(t,e,Nn.Activation);this.cs(l.map((t=>t.id)));}}onAction(t){this.Jn.has(t)&&this.cs(this.Jn.get(t)||[]);}cs(t){0!==t.length&&(this.Zn=[...new Set([...this.Zn,...t])],this.os().info("updating activated items",{activatedItems:this.getActivatedIds()}));}hs(t){this.Zn=this.Zn.filter((e=>e!==t));var e=this.vs();e.includes(t)||(this.fs([...e,t]),this.ps());}us(t){var e=new Set(t);this.Zn=this.Zn.filter((t=>!e.has(t)));var i=this.gs(),r=i.filter((t=>!e.has(t)));r.length!==i.length&&(this.fs(r),0===r.length&&this.ys());}gs(){var t,e=this.bs();return (null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[e])||[]}vs(){var t,e,i=this.gs();if(0===i.length)return [];var r=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this._s()],s=null==(e=this._instance)||null==e.get_session_id?void 0:e.get_session_id();return s&&r===s?i:[]}ps(){var t,e=null==(t=this._instance)||null==t.get_session_id?void 0:t.get_session_id();e&&this.ws(e);}ys(){this.xs();}Kn(t){var e,i=null==(e=this._instance)||null==(e=e.persistence)?void 0:e.props[this._s()];i&&i!==t&&(this.gs().length>0&&this.fs([]),this.ys());}getActivatedIds(){return [...new Set([...this.vs(),...this.Zn])].filter((t=>!this.ks(t)))}reset(){this.Zn=[],this.gs().length>0&&this.fs([]),this.ys();}getEventToItemsMap(){return this.Gn}Ss(){return this.ss}}class pl extends fl{constructor(t){super(t);}bs(){return ir$1}_s(){return rr$1}Cs(){return Vn.SHOWN}es(t){var e;null==(e=this._instance)||e.getSurveys(t);}ds(t){var e;null==(e=this._instance)||e.cancelPendingSurvey(t);}os(){return ya$1}fs(t){var e;null==(e=this._instance)||null==(e=e.persistence)||e.register({[ir$1]:t});}ws(t){var e;null==(e=this._instance)||null==(e=e.persistence)||e.register({[rr$1]:t});}xs(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(rr$1);}ks(){return false}ls(t,e){var i;this.es((t=>{i=t.find((t=>t.id===e));}));var r=!i||function(t){var e;return ma$1(t)&&!(null==(e=t.conditions)||null==(e=e.events)||!e.repeatedActivation)||"always"===t.schedule}(i);return r?t===Vn.SHOWN?"consume":"ignore":t===Vn.SHOWN?"persist":t===Vn.DISMISSED||t===Vn.SENT?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}var _l="SDK is not enabled or survey functionality is not yet loaded",gl="Disabled. Not loading surveys.",ml=null!=t&&t.location?pn$1(t.location.hash,"__posthog")||pn$1(location.hash,"state"):null,yl="_postHogToolbarParams",bl=gi("[Toolbar]"),wl=gi("[FeatureFlags]"),El=gi("[FeatureFlags]",{debugEnabled:true}),xl="\" failed. Feature flags didn't load in time.",Sl=t=>{for(var e={},i=0;t.length>i;i++)e[t[i]]=true;return e},kl=t=>{var e={};for(var i of Dr(t||{})){var r=i[1];r&&(e[i[0]]=r);}return e},$l=gi("[Error tracking]"),Tl="Refusing to render web experiment since the viewer is a likely bot",Rl={icontains:(t,e)=>e.toLowerCase().indexOf(t.toLowerCase())>-1,not_icontains:(t,e)=>-1===e.toLowerCase().indexOf(t.toLowerCase()),regex:(t,e)=>ua$1(e,t),not_regex:(t,e)=>!ua$1(e,t),exact:(t,e)=>e===t,is_not:(t,e)=>e!==t};class Pl{get Te(){return this._instance.config}constructor(t){var e=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){ void 0===t&&(t=false),e.getWebExperiments((t=>{Pl.Is("retrieved web experiments from the server"),e.Ts=new Map,t.forEach((t=>{if(t.feature_flag_key){var i;e.Ts&&(Pl.Is("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(i=e.Ts)||i.set(t.feature_flag_key,t));var r=e._instance.getFeatureFlag(t.feature_flag_key);Y$1(r)&&t.variants[r]&&e.Ms(t.name,r,t.variants[r].transforms);}else if(t.variants)for(var s in t.variants){var n=t.variants[s];Pl.Es(n,e._instance)&&e.Ms(t.name,s,n.transforms);}}));}),t);},this._instance=t,this._instance.onFeatureFlags((t=>{this.onFeatureFlags(t);}));}initialize(){}onFeatureFlags(t){if(this._is_bot())Pl.Is(Tl);else if(!this.Te.disable_web_experiments){if(Z$1(this.Ts))return this.Ts=new Map,this.loadIfEnabled(),void this.previewWebExperiment();Pl.Is("applying feature flags",t),t.forEach((t=>{var e;if(this.Ts&&null!=(e=this.Ts)&&e.has(t)){var i,r=this._instance.getFeatureFlag(t),s=null==(i=this.Ts)?void 0:i.get(t);r&&null!=s&&s.variants[r]&&this.Ms(s.name,r,s.variants[r].transforms);}}));}}previewWebExperiment(){var t=Pl.getWindowLocation();if(null!=t&&t.search){var e=cn$1(null==t?void 0:t.search,"__experiment_id"),i=cn$1(null==t?void 0:t.search,"__experiment_variant");e&&i&&(Pl.Is("previewing web experiments "+e+" && "+i),this.getWebExperiments((t=>{this.Rs(parseInt(e),i,t);}),false,true));}}loadIfEnabled(){this.Te.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic();}getWebExperiments(t,e,i){if(this.Te.disable_web_experiments&&!i)return t([]);var r=this._instance.get_property("$web_experiments");if(r&&!e)return t(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this.Te.token),method:"GET",timestampMode:"query",callback:e=>t(200===e.statusCode&&e.json&&e.json.experiments||[])});}Rs(t,e,i){var r=i.filter((e=>e.id===t));r&&r.length>0&&(Pl.Is("Previewing web experiment ["+r[0].name+"] with variant ["+e+"]"),this.Ms(r[0].name,e,r[0].variants[e].transforms));}static Es(t,e){return !Z$1(t.conditions)&&Pl.Ps(t,e)&&Pl.Os(t)}static Ps(t,e){var i;if(Z$1(t.conditions)||Z$1(null==(i=t.conditions)?void 0:i.url))return true;var r=Pl.getWindowLocation();if(r){var s,n,o,a=us(e,r.href);return null==(s=t.conditions)||!s.url||Rl[null!==(n=null==(o=t.conditions)?void 0:o.urlMatchType)&&void 0!==n?n:"icontains"](t.conditions.url,a)}return false}static getWindowLocation(){return null==t?void 0:t.location}static Os(t){var e;if(Z$1(t.conditions)||Z$1(null==(e=t.conditions)?void 0:e.utm))return true;var i=xn$1();if(i.utm_source){var r,s,n,o,a,l,u,h,d=null==(r=t.conditions)||null==(r=r.utm)||!r.utm_campaign||(null==(s=t.conditions)||null==(s=s.utm)?void 0:s.utm_campaign)==i.utm_campaign,v=null==(n=t.conditions)||null==(n=n.utm)||!n.utm_source||(null==(o=t.conditions)||null==(o=o.utm)?void 0:o.utm_source)==i.utm_source,c=null==(a=t.conditions)||null==(a=a.utm)||!a.utm_medium||(null==(l=t.conditions)||null==(l=l.utm)?void 0:l.utm_medium)==i.utm_medium,f=null==(u=t.conditions)||null==(u=u.utm)||!u.utm_term||(null==(h=t.conditions)||null==(h=h.utm)?void 0:h.utm_term)==i.utm_term;return d&&c&&f&&v}return false}static Is(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];_i.info("[WebExperiments] "+t,i);}Ms(t,e,i){this._is_bot()?Pl.Is(Tl):"control"!==e?i.forEach((i=>{if(i.selector){var r;Pl.Is("applying transform of variant "+e+" for experiment "+t+" ",i);var s=null==(r=document)?void 0:r.querySelectorAll(i.selector);null==s||s.forEach((t=>{var e=t;i.html&&(e.innerHTML=i.html),i.css&&e.setAttribute("style",i.css);}));}})):Pl.Is("Control variants leave the page unmodified.");}_is_bot(){return i$1&&this._instance?aa$1(i$1,this.Te.custom_blocked_useragents):void 0}}var Ol=gi("[Conversations]"),Il="Conversations not available yet.",Cl="console",Ml={featureFlags:class{constructor(e){this.Fs=false,this.Ls=false,this.$s=false,this.As=false,this.Ns=false,this.Ds=false,this.qs=false,this.js=false,this.Hs=0,this.Bs=()=>{var t=this.Us();this.Hs=0,t&&this.reloadFeatureFlags();},this._instance=e,this.featureFlagEventHandlers=[],t&&zr(t,"online",this.Bs);}destroy(){null==t||t.removeEventListener("online",this.Bs);}get Te(){return this._instance.config}get mi(){return this._instance.persistence}zs(t){return this._instance.get_property(t)}Vs(){var t,e;return null!==(t=null==(e=this.mi)?void 0:e._r(this.Te.feature_flag_cache_ttl_ms))&&void 0!==t&&t}Ws(){return !!this.Vs()&&(this.js||this.$s||(this.js=true,wl.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),true)}Zs(){var t,e=null!==(t=this.Te.evaluation_contexts)&&void 0!==t?t:this.Te.evaluation_environments;return !this.Te.evaluation_environments||this.Te.evaluation_contexts||this.qs||(wl.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.qs=true),null!=e&&e.length?e.filter((t=>{var e=t&&"string"==typeof t&&t.trim().length>0;return e||wl.error("Invalid evaluation context found:",t,"Expected non-empty string"),e})):[]}Gs(){return this.Zs().length>0}Qs(){var t=this.Te.flag_keys;if(!K$1(t)){if(V$1(t))return t.filter((t=>{var e=t&&"string"==typeof t&&t.trim().length>0;return e||wl.error("Invalid flag key found:",t,"Expected non-empty string"),e}));wl.error("Invalid flag_keys found:",t,"Expected array of non-empty strings");}}initialize(){var t,e,i=this._instance.config,r=null!==(t=null==(e=i.bootstrap)?void 0:e.featureFlags)&&void 0!==t?t:{};if(Object.keys(r).length){var s,n,o=null!==(s=null==(n=i.bootstrap)?void 0:n.featureFlagPayloads)&&void 0!==s?s:{},a=Object.keys(r).filter((t=>!!r[t])).reduce(((t,e)=>(t[e]=r[e]||false,t)),{}),l=Object.keys(o).filter((t=>a[t])).reduce(((t,e)=>(o[e]&&(t[e]=o[e]),t)),{});this.receivedFeatureFlags({featureFlags:a,featureFlagPayloads:l});}}updateFlags(t,e,i){var r,s,n=null!=i&&i.merge&&null!==(r=this.zs(Hi))&&void 0!==r?r:{},o=null!=i&&i.merge&&null!==(s=this.zs(Wi))&&void 0!==s?s:{},a=g({},n,t),l=g({},o,e),u={};for(var h of Object.entries(a)){var d=h[0],v=h[1];u[d]={key:d,enabled:b(v),variant:w$1(v),reason:void 0,metadata:K$1(null==l?void 0:l[d])?void 0:{id:0,version:void 0,description:void 0,payload:l[d]}};}this.receivedFeatureFlags({flags:u});}get hasLoadedFlags(){return this.Ls}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var t=this.zs(Gi),e=this.zs(Yi),i=this.zs(Qi);if(!i&&!e)return t||{};var r=Fr({},t||{}),s=[...new Set([...Object.keys(i||{}),...Object.keys(e||{})])];for(var n of s){var o,a,l=r[n],u=null==e?void 0:e[n],h=K$1(u)?null!==(o=null==l?void 0:l.enabled)&&void 0!==o&&o:!!u,d=K$1(u)?l.variant:"string"==typeof u?u:void 0,v=null==i?void 0:i[n],c=g({},l,{enabled:h,variant:h?null!=d?d:null==l?void 0:l.variant:void 0});h!==(null==l?void 0:l.enabled)&&(c.original_enabled=null==l?void 0:l.enabled),d!==(null==l?void 0:l.variant)&&(c.original_variant=null==l?void 0:l.variant),v&&(c.metadata=g({},null==l?void 0:l.metadata,{payload:v,original_payload:null==l||null==(a=l.metadata)?void 0:a.payload})),r[n]=c;}return this.Fs||(wl.warn(" Overriding feature flag details!",{flagDetails:t,overriddenPayloads:i,finalDetails:r}),this.Fs=true),r}getAllFeatureFlags(){var t=this.getFlagVariants(),e=this.getFlagPayloads();return Object.keys(t).map((i=>{var r=t[i];return {key:i,enabled:b(r),variant:w$1(r),payload:y$1(e[i])}}))}getFlagVariants(){var t=this.zs(Hi),e=this.zs(Yi);if(!e)return t||{};for(var i=Fr({},t),r=Object.keys(e),s=0;r.length>s;s++)i[r[s]]=e[r[s]];return this.Fs||(wl.warn(" Overriding feature flags!",{enabledFlags:t,overriddenFlags:e,finalFlags:i}),this.Fs=true),i}getFlagPayloads(){var t=this.zs(Wi),e=this.zs(Qi);if(!e)return t||{};for(var i=Fr({},t||{}),r=Object.keys(e),s=0;r.length>s;s++)i[r[s]]=e[r[s]];return this.Fs||(wl.warn(" Overriding feature flag payloads!",{flagPayloads:t,overriddenPayloads:e,finalPayloads:i}),this.Fs=true),i}reloadFeatureFlags(){this.As||this.Te.advanced_disable_feature_flags||this.Us()||this.Js||(this._instance.tn.emit("featureFlagsReloading",true),this.Js=setTimeout((()=>{this.Ks();}),5));}Ys(){clearTimeout(this.Js),this.Js=void 0;}ensureFlagsLoaded(){this.Ls||this.$s||this.Js||this.reloadFeatureFlags();}setAnonymousDistinctId(t){this.$anon_distinct_id=t;}setReloadingPaused(t){this.As=t;}Ks(t){var e;if(this.Ys(),!this._instance.Ur()&&!this.Us())if(this.$s)this.Ns=true;else {var i=this.Te.token,r=this.zs(Ei),s={token:i,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:g({},(null==(e=this.mi)?void 0:e.get_initial_props())||{},this.zs(Xi)||{}),group_properties:this.zs(Zi),timezone:In$1()};X$1(r)||K$1(r)||(s.$device_id=r),(null!=t&&t.disableFlags||this.Te.advanced_disable_feature_flags)&&(s.disable_flags=true),this.Gs()&&(s.evaluation_contexts=this.Zs());var n=this.Qs();K$1(n)||(s.flag_keys=n);var o=!!this.Te.advanced_only_evaluate_survey_feature_flags,a=this._instance.requestRouter.endpointFor("flags","/flags/?v=2"+(this.Te.advanced_only_evaluate_survey_feature_flags?"&only_evaluate_survey_feature_flags=true":""));this.$s=true,this._instance._send_request({method:"POST",url:a,data:s,compression:this.Te.disable_compression?void 0:io.Base64,timestampMode:"body",timeout:this.Te.feature_flag_request_timeout_ms,callback:t=>{var e,i,r,n=true;if(this.Xs(t.statusCode),200===t.statusCode&&(this.Ns||(this.$anon_distinct_id=void 0),n=false),this.$s=false,!s.disable_flags||this.Ns){this.Ds=!n;var a=[];t.error?t.error instanceof Error?a.push("AbortError"===t.error.name?"timeout":"connection_error"):a.push("unknown_error"):200!==t.statusCode&&a.push("api_error_"+t.statusCode),null!=(e=t.json)&&e.errorsWhileComputingFlags&&a.push("errors_while_computing_flags");var l,u=!(null==(i=t.json)||null==(i=i.quotaLimited)||!i.includes("feature_flags"));if(u&&a.push("quota_limited"),null==(r=this.mi)||r.register({[ar$1]:a}),u)wl.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more.");else s.disable_flags||this.receivedFeatureFlags(null!==(l=t.json)&&void 0!==l?l:{},n,{partialResponse:o}),this.Ns&&(this.Ns=false,this.Ks());}}});}}Us(){return _n(this.Hs,3)}Xs(t){this.Hs=gn$1(t,this.Hs,3,(()=>wl.warn("Feature flag requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped refreshing feature flags; will try again when connectivity changes.")));}getFeatureFlag(t,e){var i;if(void 0===e&&(e={}),!e.fresh||this.Ds)if(this.Ls||this.getFlags()&&this.getFlags().length>0){if(!this.Ws()){var r=this.getFeatureFlagResult(t,e);return null!==(i=null==r?void 0:r.variant)&&void 0!==i?i:null==r?void 0:r.enabled}}else wl.warn('getFeatureFlag for key "'+t+xl);}getFeatureFlagDetails(t){return this.getFlagsWithDetails()[t]}getFeatureFlagPayload(t){var e=this.getFeatureFlagResult(t,{send_event:false});return null==e?void 0:e.payload}getFeatureFlagResult(t,e){if(void 0===e&&(e={}),!e.fresh||this.Ds)if(this.Ls||this.getFlags()&&this.getFlags().length>0){if(!this.Ws()){var i=this.getFlagVariants(),r=t in i,s=i[t],n=this.getFlagPayloads()[t],o=String(s),a=this.zs(Ji)||void 0,l=this.zs(lr$1)||void 0,u=this.zs(nr$1)||{};if(this.Te.advanced_feature_flags_dedup_per_session){var h,d=this._instance.get_session_id(),v=this.zs(or$1);d&&d!==v&&(u={},null==(h=this.mi)||h.register({[nr$1]:u,[or$1]:d}));}if((e.send_event||!("send_event"in e))&&(!(t in u)||!u[t].includes(o))){var c,f,p,_,g,m,b,w,E,x,S;V$1(u[t])?u[t].push(o):u[t]=[o],null==(c=this.mi)||c.register({[nr$1]:u});var k=this.getFeatureFlagDetails(t),T=[...null!==(f=this.zs(ar$1))&&void 0!==f?f:[]];K$1(s)&&T.push("flag_missing");var R={$feature_flag:t,$feature_flag_response:s,$feature_flag_payload:n||null,$feature_flag_request_id:a,$feature_flag_evaluated_at:l,$feature_flag_bootstrapped_response:(null==(p=this.Te.bootstrap)||null==(p=p.featureFlags)?void 0:p[t])||null,$feature_flag_bootstrapped_payload:(null==(_=this.Te.bootstrap)||null==(_=_.featureFlagPayloads)?void 0:_[t])||null,$used_bootstrap_value:!this.Ds};K$1(null==k||null==(g=k.metadata)?void 0:g.has_experiment)||(R.$feature_flag_has_experiment=k.metadata.has_experiment),K$1(null==k||null==(m=k.metadata)?void 0:m.version)||(R.$feature_flag_version=k.metadata.version);var P,O=null!==(b=null==k||null==(w=k.reason)?void 0:w.description)&&void 0!==b?b:null==k||null==(E=k.reason)?void 0:E.code;O&&(R.$feature_flag_reason=O),null!=k&&null!=(x=k.metadata)&&x.id&&(R.$feature_flag_id=k.metadata.id),K$1(null==k?void 0:k.original_variant)&&K$1(null==k?void 0:k.original_enabled)||(R.$feature_flag_original_response=K$1(k.original_variant)?k.original_enabled:k.original_variant),null!=k&&null!=(S=k.metadata)&&S.original_payload&&(R.$feature_flag_original_payload=null==k||null==(P=k.metadata)?void 0:P.original_payload),T.length&&(R.$feature_flag_error=T.join(",")),this._instance.capture("$feature_flag_called",R);}if(r)return {key:t,enabled:!!s,variant:"string"==typeof s?s:void 0,payload:y$1(n)}}}else wl.warn('getFeatureFlagResult for key "'+t+xl);}getRemoteConfigPayload(t,e){var i=this.Te.token,r={distinct_id:this._instance.get_distinct_id(),token:i};this.Gs()&&(r.evaluation_contexts=this.Zs());var s=this.Qs();K$1(s)||(r.flag_keys=s),this._instance._send_request({method:"POST",url:this._instance.requestRouter.endpointFor("flags","/flags/?v=2"),data:r,compression:this.Te.disable_compression?void 0:io.Base64,timestampMode:"body",timeout:this.Te.feature_flag_request_timeout_ms,callback(i){var r,s=null==(r=i.json)?void 0:r.featureFlagPayloads;e((null==s?void 0:s[t])||void 0);}});}isFeatureEnabled(t,e){if(void 0===e&&(e={}),e.fresh&&!this.Ds)return e.defaultValue;if(!(this.Ls||this.getFlags()&&this.getFlags().length>0))return wl.warn('isFeatureEnabled for key "'+t+xl),e.defaultValue;var i=this.getFeatureFlag(t,e);return K$1(i)?e.defaultValue:!!i}addFeatureFlagsHandler(t){this.featureFlagEventHandlers.push(t);}removeFeatureFlagsHandler(t){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((e=>e!==t));}receivedFeatureFlags(t,e,i){if(this.mi){this.Ls=true;var r=this.getFlagVariants(),s=this.getFlagPayloads(),n=this.getFlagsWithDetails();!function(t,e,i,r,s,n){ void 0===i&&(i={}),void 0===r&&(r={}),void 0===s&&(s={});var o=(t=>{var e=t.flags;return e?(t.featureFlags=Object.fromEntries(Object.keys(e).map((t=>{var i;return [t,null!==(i=e[t].variant)&&void 0!==i?i:e[t].enabled]}))),t.featureFlagPayloads=Object.fromEntries(Object.keys(e).filter((t=>e[t].enabled)).filter((t=>{var i;return null==(i=e[t].metadata)?void 0:i.payload})).map((t=>{var i;return [t,null==(i=e[t].metadata)?void 0:i.payload]})))):t.featureFlags&&wl.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),t})(t),a=o.flags,l=o.featureFlags,u=o.featureFlagPayloads;if(l){var h=t.requestId,d=t.evaluatedAt;if(V$1(l)){wl.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var v={};if(l)for(var c=0;l.length>c;c++)v[l[c]]=true;e&&e.register({[qi]:l,[Hi]:v,[Ki]:false});}else {var f=l,p=u,_=a;if(null!=n&&n.partialResponse)f=g({},i,f),p=g({},r,p),_=g({},s,_);else if(t.errorsWhileComputingFlags)if(a){var m=new Set(Object.keys(a).filter((t=>{var e;return !(null!=(e=a[t])&&e.failed)})));f=g({},i,Object.fromEntries(Object.entries(f).filter((t=>m.has(t[0]))))),p=g({},r,Object.fromEntries(Object.entries(p||{}).filter((t=>m.has(t[0]))))),_=g({},s,Object.fromEntries(Object.entries(_||{}).filter((t=>m.has(t[0])))));}else f=g({},i,f),p=g({},r,p),_=g({},s,_);e&&e.register(g({[qi]:Object.keys(kl(f)),[Hi]:f||{},[Wi]:p||{},[Gi]:_||{},[Ki]:true===t.minimalFlagCalledEvents},h?{[Ji]:h}:{},d?{[lr$1]:d}:{}));}}}(t,this.mi,r,s,n,i),e||(this.js=false),this.eo(e);}}override(t,e){ void 0===e&&(e=false),wl.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:t,suppressWarning:e});}overrideFeatureFlags(t){if(!this._instance.__loaded||!this.mi)return wl.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(false===t)return this.mi.unregister(Yi),this.mi.unregister(Qi),this.eo(),El.info("All overrides cleared");if(V$1(t)){var e=Sl(t);return this.mi.register({[Yi]:e}),this.eo(),El.info("Flag overrides set",{flags:t})}if(t&&"object"==typeof t&&("flags"in t||"payloads"in t)){var i,r=t;if(this.Fs=Boolean(null!==(i=r.suppressWarning)&&void 0!==i&&i),"flags"in r)if(false===r.flags)this.mi.unregister(Yi),El.info("Flag overrides cleared");else if(r.flags){if(V$1(r.flags)){var s=Sl(r.flags);this.mi.register({[Yi]:s});}else this.mi.register({[Yi]:r.flags});El.info("Flag overrides set",{flags:r.flags});}return "payloads"in r&&(false===r.payloads?(this.mi.unregister(Qi),El.info("Payload overrides cleared")):r.payloads&&(this.mi.register({[Qi]:r.payloads}),El.info("Payload overrides set",{payloads:r.payloads}))),void this.eo()}if(t&&"object"==typeof t)return this.mi.register({[Yi]:t}),this.eo(),El.info("Flag overrides set",{flags:t});wl.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:t});}onFeatureFlags(t){if(this.addFeatureFlagsHandler(t),this.Ls){var e=this.ro(),i=e.flags,r=e.flagVariants;try{t(i,r);}catch(t){wl.error("Error while running feature flags callback",t);}}return ()=>this.removeFeatureFlagsHandler(t)}updateEarlyAccessFeatureEnrollment(t,e,i){var r,s=(this.zs(Vi)||[]).find((e=>e.flagKey===t)),n={["$feature_enrollment/"+t]:e},o={$feature_flag:t,$feature_enrollment:e,$set:n};s&&(o.$early_access_feature_name=s.name),i&&(o.$feature_enrollment_stage=i),this._instance.capture("$feature_enrollment_update",o),this.setPersonPropertiesForFlags(n,false);var a=g({},this.getFlagVariants(),{[t]:e});null==(r=this.mi)||r.register({[qi]:Object.keys(kl(a)),[Hi]:a}),this.eo();}getEarlyAccessFeatures(t,e,i){ void 0===e&&(e=false);var r=this.zs(Vi),s=i?"&"+i.map((t=>"stage="+t)).join("&"):"";if(r&&!e)return t(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/early_access_features/?token="+this.Te.token+s),method:"GET",timestampMode:"query",callback:e=>{var i,r;if(e.json){var s=e.json.earlyAccessFeatures;return null==(i=this.mi)||i.unregister(Vi),null==(r=this.mi)||r.register({[Vi]:s}),t(s)}}});}ro(){var t=this.getFlags(),e=this.getFlagVariants();return {flags:t.filter((t=>e[t])),flagVariants:Object.keys(e).filter((t=>e[t])).reduce(((t,i)=>(t[i]=e[i],t)),{})}}eo(t){var e=this.ro(),i=e.flags,r=e.flagVariants;this.featureFlagEventHandlers.forEach((e=>{try{e(i,r,{errorsLoading:t});}catch(t){wl.error("Error while running feature flags callback",t);}}));}setPersonPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=this.zs(Xi)||{},r=(null==t?void 0:t.$set)||(null!=t&&t.$set_once?{}:t),s=null==t?void 0:t.$set_once,n={};if(s)for(var o in s)({}).hasOwnProperty.call(s,o)&&(o in i||(n[o]=s[o]));this._instance.register({[Xi]:g({},i,n,r)}),e&&this._instance.reloadFeatureFlags();}unsetPersonPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=g({},this.zs(Xi)||{});t.forEach((t=>{delete i[t];})),this._instance.register({[Xi]:i}),e&&this._instance.reloadFeatureFlags();}resetPersonPropertiesForFlags(t){ void 0===t&&(t=true),this._instance.unregister(Xi),t&&this._instance.reloadFeatureFlags();}setGroupPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=this.zs(Zi)||{};0!==Object.keys(i).length&&Object.keys(i).forEach((e=>{i[e]=g({},i[e],t[e]),delete t[e];})),this._instance.register({[Zi]:g({},i,t)}),e&&this._instance.reloadFeatureFlags();}resetGroupPropertiesForFlags(t){if(t){var e=this.zs(Zi)||{};this._instance.register({[Zi]:g({},e,{[t]:{}})});}else this._instance.unregister(Zi);}reset(){this.Ls=false,this.$s=false,this.As=false,this.Ns=false,this.Ds=false,this.$anon_distinct_id=void 0,this.Ys(),this.Fs=false,this.Hs=0;}}},Al={sessionRecording:class{get Te(){return this._instance.config}get mi(){return this._instance.persistence}get started(){var t;return !(null==(t=this.io)||!t.isStarted)}get status(){var t,e;return this.no===el||this.no===il?this.no:null!==(t=null==(e=this.io)?void 0:e.status)&&void 0!==t?t:this.no}constructor(t){if(this._forceAllowLocalhostNetworkCapture=false,this.no=Za$1,this.so=void 0,this._instance=t,!this._instance.sessionManager)throw sl.error("started without valid sessionManager"),new Error(rl+" started without valid sessionManager. This is a bug.");if(this.Te.cookieless_mode===xr)throw new Error(rl+' cannot be used with cookieless_mode="always"')}initialize(){this.startIfEnabledOrStop();}get oo(){var e,i=!(null==(e=this._instance.get_property(Fi))||!e.enabled),r=!this.Te.disable_session_recording,s=this.Te.disable_session_recording||this._instance.consent.isOptedOut();return t&&i&&r&&!s}startIfEnabledOrStop(t){var e;if(!this.oo||null==(e=this.io)||!e.isStarted){var i=!K$1(Object.assign)&&!K$1(Array.from);this.oo&&i?(this.ao(t),sl.info("starting")):(this.no=Za$1,this.stopRecording());}}ao(t){var e,i,r;this.oo&&(this.no!==el&&this.no!==il&&(this.no=tl),null!=v$1&&null!=(e=v$1.__PosthogExtensions__)&&null!=(e=e.rrweb)&&e.record&&null!=(i=v$1.__PosthogExtensions__)&&i.initSessionRecording?this.lo(t):null==(r=v$1.__PosthogExtensions__)||null==r.loadExternalDependency||r.loadExternalDependency(this._instance,this.uo,(e=>{if(e)return sl.error("could not load recorder",e);this.lo(t);})));}stopRecording(){var t,e;null==(t=this.so)||t.call(this),this.so=void 0,null==(e=this.io)||e.stop();}ho(){var t,e;null==(t=this.so)||t.call(this),this.so=void 0,null==(e=this.io)||e.discard();}do(){var t,e;null==(t=this.mi)||t.unregister(zi),null==(e=this.mi)||e.unregister(Di);}co(t,e){if(Z$1(t))return null;var i,r=tt$1(t)?t:parseFloat(t);return "number"!=typeof(i=r)||!Number.isFinite(i)||0>i||i>1?(sl.warn(e+" must be between 0 and 1. Ignoring invalid value:",t),null):r}vo(t){if(this.mi){var e,i,r=this.mi,s=()=>{var e,i=false===t.sessionRecording?void 0:t.sessionRecording,s=this.co(null==(e=this.Te.session_recording)?void 0:e.sampleRate,"session_recording.sampleRate"),n=this.co(null==i?void 0:i.sampleRate,"remote config sampleRate"),o=null!=s?s:n;Z$1(o)&&this.do();var a=null==i?void 0:i.minimumDurationMilliseconds;r.register({[Fi]:g({cache_timestamp:Date.now(),enabled:!!i},i,{networkPayloadCapture:g({capturePerformance:t.capturePerformance},null==i?void 0:i.networkPayloadCapture),canvasRecording:{enabled:null==i?void 0:i.recordCanvas,fps:null==i?void 0:i.canvasFps,quality:null==i?void 0:i.canvasQuality},sampleRate:o,minimumDurationMilliseconds:K$1(a)?null:a,endpoint:null==i?void 0:i.endpoint,triggerMatchType:null==i?void 0:i.triggerMatchType,masking:null==i?void 0:i.masking,urlTriggers:null==i?void 0:i.urlTriggers,version:null==i?void 0:i.version,triggerGroups:null==i?void 0:i.triggerGroups})});};s(),null==(e=this.so)||e.call(this),this.so=null==(i=this._instance.sessionManager)?void 0:i.onSessionId(s);}}onRemoteConfig(t){var e=t.ok?t.config:void 0;return e&&"sessionRecording"in e?false===e.sessionRecording?(this.vo(e),void this.ho()):(this.vo(e),void this.startIfEnabledOrStop()):(this.no===el&&(this.no=il,sl.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(t,e){var i;void 0===e&&(e="log"),null!=(i=this.io)&&i.log?this.io.log(t,e):sl.warn("log called before recorder was ready");}get uo(){var t,e,i=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.get_property(Fi);return (null==i||null==(e=i.scriptConfig)?void 0:e.script)||"lazy-recorder"}fo(){var t,e,i=this._instance.get_property(Fi);if(!i)return false;try{e="object"==typeof i?i:JSON.parse(i);}catch(t){return sl.warn("persisted remote config for session recording is invalid and will be ignored",t),false}var r=null!==(t=e.cache_timestamp)&&void 0!==t?t:Date.now();return 36e5>=Date.now()-r}lo(t){var e,i;if(null==(e=v$1.__PosthogExtensions__)||!e.initSessionRecording)return sl.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[br$1]:true});if(this.io||(this.io=null==(i=v$1.__PosthogExtensions__)?void 0:i.initSessionRecording(this._instance),this.io._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.fo()){if(this.no===il||this.no===el)return;return this.no=el,sl.info("persisted remote config is stale, requesting fresh config before starting"),void new to(this._instance).load()}this.no=tl,this.io.start(t);}onRRwebEmit(t){var e;null==(e=this.io)||null==e.onRRwebEmit||e.onRRwebEmit(t);}overrideLinkedFlag(){var t,e;this.io||null==(e=this.mi)||e.register({[Ui]:true}),null==(t=this.io)||t.overrideLinkedFlag();}overrideSampling(){var t,e;this.io||null==(e=this.mi)||e.register({[Ni]:true}),null==(t=this.io)||t.overrideSampling();}overrideTrigger(t){var e,i;this.io||null==(i=this.mi)||i.register({["url"===t?Li:ji]:true}),null==(e=this.io)||e.overrideTrigger(t);}get sdkDebugProperties(){var t;return (null==(t=this.io)?void 0:t.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(t,e){var i;return !(null==(i=this.io)||!i.tryAddCustomEvent(t,e))}}},Fl={autocapture:class{constructor(t){this.po=false,this.mo=null,this.yo=false,this.bo=false,this.instance=t,this.rageclicks=new za$1(t.config.rageclick),this._o=null;}initialize(){this.startIfEnabled();}get Te(){var t,e,i=W$1(this.instance.config.autocapture)?this.instance.config.autocapture:{};return i.url_allowlist=null==(t=i.url_allowlist)?void 0:t.map((t=>new RegExp(t))),i.url_ignorelist=null==(e=i.url_ignorelist)?void 0:e.map((t=>new RegExp(t))),i}wo(){if(this.isBrowserSupported()){if(t&&r){var e=e=>{e=e||(null==t?void 0:t.event);try{this.xo(e);}catch(t){qa$1.error("Failed to capture event",t);}};if(zr(r,"submit",e,{capture:true}),zr(r,"change",e,{capture:true}),zr(r,"click",e,{capture:true}),this.Te.capture_copied_text){var i=e=>{e=e||(null==t?void 0:t.event);try{this.xo(e,Ha$1);}catch(t){qa$1.error("Failed to capture copy/cut event",t);}};zr(r,"copy",i,{capture:true}),zr(r,"cut",i,{capture:true});}}}else qa$1.info("Disabling Automatic Event Collection because this browser is not supported");}startIfEnabled(){this.isEnabled&&!this.po&&(this.wo(),this.po=true);}onRemoteConfig(t){if(this.yo=true,t.ok){var e=t.config;e.elementsChainAsString&&(this.bo=e.elementsChainAsString);var i=e.autocapture_opt_out;it$1(i)&&(this.instance.persistence&&this.instance.persistence.register({[$i]:i}),this.mo=i),this.startIfEnabled();}else this.startIfEnabled();}setElementSelectors(t){this._o=t;}getElementSelectors(t){var e,i=[];return null==(e=this._o)||e.forEach((e=>{var s=null==r?void 0:r.querySelectorAll(e);null==s||s.forEach((r=>{t===r&&i.push(e);}));})),i}get isEnabled(){var t,e,i=null==(t=this.instance.persistence)?void 0:t.props[$i],r=this.mo,s=this.instance.Ur()&&!this.yo;if(X$1(r)&&!it$1(i)&&!s)return false;var n=null!==(e=this.mo)&&void 0!==e?e:!!i;return !!this.instance.config.autocapture&&!n}xo(e,i){if(void 0===i&&(i="$autocapture"),this.isEnabled){var r,s=ks(e);gs(s)&&(s=s.parentNode||null),"$autocapture"===i&&"click"===e.type&&e instanceof MouseEvent&&this.instance.config.rageclick&&null!=(r=this.rageclicks)&&r.isRageClick(e.clientX,e.clientY,e.timeStamp||(new Date).getTime())&&Fs(s,this.instance.config.rageclick)&&this.xo(e,"$rageclick");var n=i===Ha$1;if(s&&function(e,i,r,s,n,o){var a;if(!t||Ds(e))return false;if(null!=r&&r.url_allowlist&&!ws(r.url_allowlist,o))return false;if(null!=r&&r.url_ignorelist&&ws(r.url_ignorelist,o))return false;if(null!=r&&r.dom_event_allowlist){var l=r.dom_event_allowlist;if(l&&!l.some((t=>i.type===t)))return false}var u=Ns(e,s),h=u.parentIsUsefulElement,d=u.targetElementList;if(!function(t,e){var i=null==e?void 0:e.element_allowlist;if(K$1(i))return true;var r,s=function(t){if(i.some((e=>t.tagName.toLowerCase()===e)))return {v:true}};for(var n of t)if(r=s(n))return r.v;return false}(d,r))return false;if(!Ts(d,null==r?void 0:r.css_selector_allowlist))return false;if(Ts(d,null!==(a=null==r?void 0:r.css_selector_ignorelist)&&void 0!==a?a:Ps))return false;try{var v=t.getComputedStyle(e);if(v&&"pointer"===v.getPropertyValue("cursor")&&"click"===i.type)return !0}catch(t){}var c=e.tagName.toLowerCase();switch(c){case "html":return false;case "form":return (n||["submit"]).indexOf(i.type)>=0;case "input":case "select":case "textarea":return (n||["change","click"]).indexOf(i.type)>=0;default:return h?(n||["click"]).indexOf(i.type)>=0:(n||["click"]).indexOf(i.type)>=0&&($s.indexOf(c)>-1||"true"===e.getAttribute("contenteditable"))}}(s,e,this.Te,n,n?["copy","cut"]:void 0,this.instance)){var o=Wa$1(s,{e:e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.Te.element_attribute_ignorelist,elementsChainAsString:this.bo,disableCaptureUrlHashes:this.instance.config.disable_capture_url_hashes}),a=o.props;if(o.explicitNoCapture)return false;var l=this.getElementSelectors(s);if(l&&l.length>0&&(a.$element_selectors=l),i===Ha$1){var u,h=xs(null==t||null==(u=t.getSelection())?void 0:u.toString()),d=e.type||"clipboard";if(!h)return false;a.$selected_content=h,a.$copy_type=d;}return this.instance.capture(i,a),true}}}isBrowserSupported(){return G$1(null==r?void 0:r.querySelectorAll)}},historyAutocapture:class{constructor(e){var i;this._instance=e,this.ko=(null==t||null==(i=t.location)?void 0:i.pathname)||"";}initialize(){this.startIfEnabled();}get isEnabled(){return "history_change"===this._instance.config.capture_pageview}startIfEnabled(){this.isEnabled&&(_i.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges());}stop(){this.So&&this.So(),this.So=void 0,_i.info("History API monitoring stopped");}monitorHistoryChanges(){t&&t.history&&(this.Co("pushState"),this.Co("replaceState"),this.Io());}Co(e){var i;if(t&&(null==(i=t.history[e])||!i.__posthog_wrapped__)){var r=this;!function(t,e,i){try{if(!(e in t))return Ka$1;var r={next:t[e]},s=i((function(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];return r.next.apply(this,e)}));return G$1(s)&&(s.prototype=s.prototype||{},Object.defineProperties(s,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:r}})),t[e]=s,()=>{if(t[e]!==s)for(var i=t[e];G$1(i)&&i.__posthog_layer__;){var n=i.__posthog_layer__;if(n.next===s)return void(n.next=r.next);i=n.next;}else t[e]=r.next;}}catch(t){return Ka$1}}(t.history,e,(t=>function(i,s,n){t.call(this,i,s,n),r.To(e);}));}}To(e){try{var i,r=null==t||null==(i=t.location)?void 0:i.pathname;if(!r)return;r!==this.ko&&this.isEnabled&&this._instance.capture(Pr,{navigation_type:e}),this.ko=r;}catch(t){_i.error("Error capturing "+e+" pageview",t);}}Io(){if(!this.So){var e=()=>{this.To("popstate");};zr(t,"popstate",e),this.So=()=>{t&&t.removeEventListener("popstate",e);};}}},heatmaps:class{get Te(){return this.instance.config}constructor(t){var e;this.Mo=false,this.po=false,this.Eo=null,this.instance=t,this.Mo=!(null==(e=this.instance.persistence)||!e.props[Ti]),this.rageclicks=new za$1(t.config.rageclick);}initialize(){this.startIfEnabled();}get flushIntervalMilliseconds(){var t=5e3;return W$1(this.Te.capture_heatmaps)&&this.Te.capture_heatmaps.flush_interval_milliseconds&&(t=this.Te.capture_heatmaps.flush_interval_milliseconds),t}get isEnabled(){return Z$1(this.Te.capture_heatmaps)?Z$1(this.Te.enable_heatmaps)?this.Mo:this.Te.enable_heatmaps:false!==this.Te.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.po)return;nl.info("starting..."),this.Ro(),this.ke();}else {var t;clearInterval(null!==(t=this.Eo)&&void 0!==t?t:void 0),this.Po(),this.getAndClearBuffer();}}onRemoteConfig(t){if(t.ok){var e=t.config;if("heatmaps"in e){var i=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[Ti]:i}),this.Mo=i,this.startIfEnabled();}}}getAndClearBuffer(){var t=this.R;return this.R=void 0,t}Oo(t){ol(t.originalEvent)&&this.pe(t.originalEvent,"deadclick");}ke(){this.Eo&&clearInterval(this.Eo),this.Eo="visible"===(null==r?void 0:r.visibilityState)?setInterval(this.oi.bind(this),this.flushIntervalMilliseconds):null;}Ro(){t&&r&&(this.Fo=this.oi.bind(this),zr(t,Rr,this.Fo),this.Lo=e=>this.pe(e||(null==t?void 0:t.event)),zr(r,"click",this.Lo,{capture:true}),this.$o=e=>this.Ao(e||(null==t?void 0:t.event)),zr(r,"mousemove",this.$o,{capture:true}),this.No=new tn$1(this.instance,Xs,this.Oo.bind(this)),this.No.startIfEnabledOrStop(),this.Do=this.ke.bind(this),zr(r,Tr,this.Do),this.po=true);}Po(){var e;t&&r&&(this.Fo&&t.removeEventListener(Rr,this.Fo),this.Lo&&r.removeEventListener("click",this.Lo,{capture:true}),this.$o&&r.removeEventListener("mousemove",this.$o,{capture:true}),this.Do&&r.removeEventListener(Tr,this.Do),clearTimeout(this.qo),null==(e=this.No)||e.stop(),this.po=false);}jo(e,i){var r=this.instance.scrollManager.scrollY(),s=this.instance.scrollManager.scrollX(),n=this.instance.scrollManager.scrollElement(),o=function(e,i,r){for(var s=e;s&&ps(s)&&!_s(s,"body");){if(s===r)return false;var n=void 0;try{var o,a,l;n=null==(o=null!==(a=null==(l=s.ownerDocument)?void 0:l.defaultView)&&void 0!==a?a:t)?void 0:o.getComputedStyle(s).position;}catch(t){return false}if(U$1(i,n))return true;s=Rs(s);}return false}(ks(e),["fixed","sticky"],n);return {x:e.clientX+(o?0:s),y:e.clientY+(o?0:r),target_fixed:o,type:i}}pe(t,e){var i;if(void 0===e&&(e="click"),!fs(t.target)&&ol(t)){var r=this.jo(t,e);null!=(i=this.rageclicks)&&i.isRageClick(t.clientX,t.clientY,(new Date).getTime())&&Fs(ks(t),this.instance.config.rageclick)&&this.Wt(g({},r,{type:"rageclick"})),this.Wt(r);}}Ao(t){!fs(t.target)&&ol(t)&&(clearTimeout(this.qo),this.qo=setTimeout((()=>{this.Wt(this.jo(t,"mousemove"));}),500));}Wt(e){if(t){var i=this.Te.disable_capture_url_hashes?be$1(t.location.href):t.location.href,r=this.Te.custom_personal_data_properties,s=this.Te.mask_personal_data_properties?[...yn$1,...r||[]]:[],n=fn$1(i,s,wn$1);this.R=this.R||{},this.R[n]||(this.R[n]=[]),this.R[n].push(e);}}oi(){this.R&&!J$1(this.R)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()});}},deadClicksAutocapture:tn$1,webVitalsAutocapture:class{constructor(t){var e;this.Mo=false,this.po=false,this.R={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Ho=()=>{clearTimeout(this.Bo),0!==this.R.metrics.length&&(this._instance.capture("$web_vitals",this.R.metrics.reduce(((t,e)=>g({},t,{["$web_vitals_"+e.name+"_event"]:g({},e),["$web_vitals_"+e.name+"_value"]:e.value})),{})),this.R={url:void 0,metrics:[],firstMetricTimestamp:void 0});},this.Uo=t=>{var e;this.R=this.R||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var i=this.zo();if(!K$1(i))if(Z$1(null==t?void 0:t.name)||Z$1(null==t?void 0:t.value))Qa$1.error("Invalid metric received",t);else if(!this.Vo||this.Vo>t.value){this.R.url!==i&&(this.Ho(),this.Bo=setTimeout(this.Ho,this.flushToCaptureTimeoutMs)),K$1(this.R.url)&&(this.R.url=i),this.R.firstMetricTimestamp=K$1(this.R.firstMetricTimestamp)?Date.now():this.R.firstMetricTimestamp,t.attribution&&t.attribution.interactionTargetElement&&(t.attribution.interactionTargetElement=void 0);var r=null==(e=this._instance.sessionManager)?void 0:e.checkAndGetSessionAndWindowId(true),s=g({},t,{$current_url:i,timestamp:Date.now()});K$1(r)||(s.$session_id=r.sessionId,s.$window_id=r.windowId),this.R.metrics.push(s),this.R.metrics.length===this.allowedMetrics.length&&this.Ho();}else Qa$1.error("Ignoring metric with value >= "+this.Vo,t);},this.Wo=()=>{if(!this.po){var t,e,i,r,s=v$1.__PosthogExtensions__;if(!K$1(s)&&!K$1(s.postHogWebVitalsCallbacks)){var n=s.postHogWebVitalsCallbacks;t=n.onLCP,e=n.onCLS,i=n.onFCP,r=n.onINP;}t&&e&&i&&r?(this.allowedMetrics.indexOf("LCP")>-1&&t(this.Uo.bind(this)),this.allowedMetrics.indexOf("CLS")>-1&&e(this.Uo.bind(this)),this.allowedMetrics.indexOf("FCP")>-1&&i(this.Uo.bind(this)),this.allowedMetrics.indexOf("INP")>-1&&r(this.Uo.bind(this)),this.po=true):Qa$1.error("web vitals callbacks not loaded - not starting");}},this._instance=t,this.Mo=!(null==(e=this._instance.persistence)||!e.props[Ii]),this.startIfEnabled();}get Zo(){return this._instance.config.capture_performance}get allowedMetrics(){var t,e,i=W$1(this.Zo)?null==(t=this.Zo)?void 0:t.web_vitals_allowed_metrics:void 0;return Z$1(i)?(null==(e=this._instance.persistence)?void 0:e.props[Ai])||["CLS","FCP","INP","LCP"]:i}get flushToCaptureTimeoutMs(){return (W$1(this.Zo)?this.Zo.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var t=W$1(this.Zo)?this.Zo.web_vitals_attribution:void 0;return null!=t&&t}get Vo(){var t=W$1(this.Zo)&&tt$1(this.Zo.__web_vitals_max_value)?this.Zo.__web_vitals_max_value:Xa$1;return t>0&&6e4>=t?Xa$1:t}get isEnabled(){var t=null==s$1?void 0:s$1.protocol;if("http:"!==t&&"https:"!==t)return Qa$1.info("Web Vitals are disabled on non-http/https protocols"),false;var e=W$1(this.Zo)?this.Zo.web_vitals:it$1(this.Zo)?this.Zo:void 0;return it$1(e)?e:this.Mo}startIfEnabled(){this.isEnabled&&!this.po&&(Qa$1.info("enabled, starting..."),this.tr(this.Wo));}onRemoteConfig(t){if(t.ok){var e=t.config;if("capturePerformance"in e){var i=W$1(e.capturePerformance)&&!!e.capturePerformance.web_vitals,r=W$1(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[Ii]:i}),this._instance.persistence.register({[Ai]:r})),this.Mo=i,this.startIfEnabled();}}}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.postHogWebVitalsCallbacks?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,this.useAttribution?"web-vitals-with-attribution":"web-vitals",(e=>{e?Qa$1.error("failed to load script",e):t();}));}zo(){var e=t?this._instance.config.disable_capture_url_hashes?be$1(t.location.href):t.location.href:void 0;if(e){var i=this._instance.config.custom_personal_data_properties,r=this._instance.config.mask_personal_data_properties?[...yn$1,...i||[]]:[];return fn$1(e,r,wn$1)}Qa$1.error("Could not determine current URL");}}},Dl={exceptionObserver:class{constructor(e){var i;this.Wo=()=>{var e;if(t&&this.isEnabled&&null!=(e=v$1.__PosthogExtensions__)&&e.errorWrappingFunctions){var i=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,r=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,s=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.Go&&this.Te.capture_unhandled_errors&&(this.Go=i(this.captureException.bind(this))),!this.Qo&&this.Te.capture_unhandled_rejections&&(this.Qo=r(this.captureException.bind(this))),!this.Jo&&this.Te.capture_console_errors&&(this.Jo=s(this.captureException.bind(this)));}catch(t){Ja$1.error("failed to start",t),this.Ko();}}},this._instance=e,this.Yo=!(null==(i=this._instance.persistence)||!i.props[Ri]),this.Xo=new ct$1(g({},function(t){var e,i,r,s;return void 0===t&&(t={}),{refillRate:null!==(e=null!==(i=t.exceptionRateLimiterRefillRate)&&void 0!==i?i:t.__exceptionRateLimiterRefillRate)&&void 0!==e?e:1,bucketSize:null!==(r=null!==(s=t.exceptionRateLimiterBucketSize)&&void 0!==s?s:t.__exceptionRateLimiterBucketSize)&&void 0!==r?r:10}}(this._instance.config.error_tracking),{refillInterval:1e4,it:Ja$1})),this.Te=this.ta(),this.startIfEnabledOrStop();}ta(){var t=this._instance.config.capture_exceptions,e={capture_unhandled_errors:false,capture_unhandled_rejections:false,capture_console_errors:false};return W$1(t)?e=g({},e,t):(K$1(t)?this.Yo:t)&&(e=g({},e,{capture_unhandled_errors:true,capture_unhandled_rejections:true})),e}get isEnabled(){return this.Te.capture_console_errors||this.Te.capture_unhandled_errors||this.Te.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Ja$1.info("enabled"),this.Ko(),this.tr(this.Wo)):this.Ko();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.errorWrappingFunctions?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"exception-autocapture",(e=>{if(e)return Ja$1.error("failed to load script",e);t();}));}Ko(){var t,e,i;null==(t=this.Go)||t.call(this),this.Go=void 0,null==(e=this.Qo)||e.call(this),this.Qo=void 0,null==(i=this.Jo)||i.call(this),this.Jo=void 0;}onRemoteConfig(t){if(t.ok){var e=t.config;"autocaptureExceptions"in e&&(this.Yo=!!e.autocaptureExceptions||false,this._instance.persistence&&this._instance.persistence.register({[Ri]:this.Yo}),this.Te=this.ta(),this.startIfEnabledOrStop());}}onConfigChange(){this.Te=this.ta();}captureException(t){var e,i,r,s=null!==(e=null==t||null==(i=t.$exception_list)||null==(i=i[0])?void 0:i.type)&&void 0!==e?e:"Exception";this.Xo.consumeRateLimit(s)?Ja$1.info("Skipping exception capture because of client rate limiting.",{exception:s}):null==(r=this._instance.exceptions)||r.sendExceptionEvent(t);}},exceptions:class{constructor(t){var e,i;this.ea=[],this.ra=new Le$2([new Qe$2,new ai,new Ze$2,new Xe$1,new ni,new si,new ei,new oi],function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];return function(e,r){ void 0===r&&(r=0);for(var s=[],n=e.split("\n"),o=r;n.length>o;o++){var a=n[o];if(1024>=a.length){var l=Ye$1.test(a)?a.replace(Ye$1,"$1"):a;if(!l.match(/\S*Error: /)){for(var u of i){var h=u(l,t);if(h){s.push(h);break}}if(s.length>=50)break}}}return function(t){if(!t.length)return [];var e=Array.from(t);return e.reverse(),e.slice(0,50).map((t=>{return g({},t,{filename:t.filename||(i=e,i[i.length-1]||{}).filename,function:t.function||je$2});var i;}))}(s)}}("web:javascript",Ge$2,Ke$2)),this._instance=t,this.ea=null!==(e=null==(i=this._instance.persistence)?void 0:i.get_property(Pi))&&void 0!==e?e:[],this.ia=vi(this.na()),this.sa=new ci(this.ia);}onConfigChange(){this.ia=vi(this.na()),this.sa.setConfig(this.ia);}onRemoteConfig(t){var e,i,r;if(t.ok){var s=t.config;if("errorTracking"in s){var n=null!==(e=null==(i=s.errorTracking)?void 0:i.suppressionRules)&&void 0!==e?e:[],o=null==(r=s.errorTracking)?void 0:r.captureExtensionExceptions;this.ea=n,this._instance.persistence&&this._instance.persistence.register({[Pi]:this.ea,[Oi]:o});}}}get oa(){var t,e=!!this._instance.get_property(Oi),i=this._instance.config.error_tracking.captureExtensionExceptions;return null!==(t=null!=i?i:e)&&void 0!==t&&t}buildProperties(t,e){return this.ra.buildFromUnknown(t,{syntheticException:null==e?void 0:e.syntheticException,mechanism:{handled:null==e?void 0:e.handled}})}addExceptionStep(t,e){if(this.ia.enabled)try{if(!Y$1(t)||0===t.trim().length)return void $l.warn("Ignoring exception step because message must be a non-empty string");var i=function(t){if(!t)return {sanitizedProperties:{},droppedKeys:[]};var e=[];return {sanitizedProperties:Object.keys(t).reduce(((i,r)=>hi.has(r)?(e.push(r),i):(i[r]=t[r],i)),{}),droppedKeys:e}}(this.aa(e)),r=i.sanitizedProperties,s=i.droppedKeys;s.length>0&&$l.warn("Ignoring reserved exception step fields",{droppedKeys:s}),this.sa.add(g({[li]:t,[ui]:(new Date).toISOString()},r));}catch(t){$l.error("Failed to add exception step. Ignoring breadcrumb.",t);}}sendExceptionEvent(t){try{var e=t.$exception_list;if(this.la(e)){if(this.ua(e))return this.ha("Exception dropped: matched a suppression rule"),void $l.info("Skipping exception capture because a suppression rule matched");if(!this.oa&&this.da(e))return this.ha("Exception dropped: thrown by a browser extension"),void $l.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ca(e))return this.ha("Exception dropped: thrown by the PostHog SDK"),void $l.info("Skipping exception capture because it was thrown by the PostHog SDK")}var i=this.ia.enabled&&Z$1(t.$exception_steps)?this.va(t):t;try{var r=this._instance.capture("$exception",i,{_noTruncate:!0,_batchKey:"exceptionEvent",kn:!0});return r&&this.sa.clear(),r}catch(t){return $l.error("Failed to capture exception event. Dropping this exception.",t),void this.sa.clear()}}catch(t){return void $l.error("Failed to process exception event. Ignoring this exception.",t)}}va(t){try{var e=this.sa.getAttachable();return 0===e.length?t:g({},t,{$exception_steps:e})}catch(e){return $l.error("Failed to read buffered exception steps. Capturing exception without steps.",e),t}}ha(t){this.ia.enabled&&this.sa.add({[li]:t,[ui]:(new Date).toISOString()});}aa(t){return W$1(t)?g({},t):{}}na(){var t,e;return null!==(t=null==(e=this._instance.config.error_tracking)?void 0:e.exception_steps)&&void 0!==t?t:{}}ua(t){if(0===t.length)return false;var e=t.reduce(((t,e)=>{var i=e.type,r=e.value;return Y$1(i)&&i.length>0&&t.$exception_types.push(i),Y$1(r)&&r.length>0&&t.$exception_values.push(r),t}),{$exception_types:[],$exception_values:[]});return this.ea.some((t=>{var i=t.values.map((t=>{var i,r=da$1[t.operator],s=V$1(t.value)?t.value:[t.value],n=null!==(i=e[t.key])&&void 0!==i?i:[];return s.length>0&&r(s,n)}));return "OR"===t.type?i.some(Boolean):i.every(Boolean)}))}da(t){return t.flatMap((t=>{var e,i;return null!==(e=null==(i=t.stacktrace)?void 0:i.frames)&&void 0!==e?e:[]})).some((t=>t.filename&&t.filename.startsWith("chrome-extension://")))}ca(t){if(t.length>0){var e,i,r,s,n=null!==(e=null==(i=t[0].stacktrace)?void 0:i.frames)&&void 0!==e?e:[],o=n[n.length-1];return null!==(r=null==o||null==(s=o.filename)?void 0:s.includes("posthog.com/static"))&&void 0!==r&&r}return false}la(t){return !Z$1(t)&&V$1(t)}}},Nl=g({productTours:class{get mi(){return this._instance.persistence}constructor(t){this.fa=null,this.pa=null,this._instance=t;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(t.ok){var e=t.config;if("productTours"in e){var i,r;if(this.mi&&this.mi.register({[Mi]:!!e.productTours}),!ll(this._instance))return !this.fa&&Z$1(null==(i=this.mi)?void 0:i.props[sr$1])||al.info("product tours disabled; stopping and clearing cached tours"),null==(r=this.fa)||r.stop(),this.fa=null,void this.clearCache();this.loadIfEnabled();}}}loadIfEnabled(){!this.fa&&ll(this._instance)&&this.tr((()=>this.ga()));}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.generateProductTours?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"product-tours",(e=>{e?al.error("Could not load product tours script",e):t();}));}ga(){var t;!this.fa&&null!=(t=v$1.__PosthogExtensions__)&&t.generateProductTours&&(this.fa=v$1.__PosthogExtensions__.generateProductTours(this._instance,true));}getProductTours(t,e){if(void 0===e&&(e=false),!V$1(this.pa)||e){var i=this.mi;if(i){var r=i.props[sr$1];if(V$1(r)&&!e)return this.pa=r,void t(r,{isLoaded:true})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/product_tours/?token="+this._instance.config.token),method:"GET",timestampMode:"query",callback:e=>{if(ll(this._instance)){var r=e.statusCode;if(200!==r||!e.json){var s="Product Tours API could not be loaded, status: "+r;return al.error(s),void t([],{isLoaded:false,error:s})}var n=V$1(e.json.product_tours)?e.json.product_tours:[];this.pa=n,i&&i.register({[sr$1]:n}),t(n,{isLoaded:true});}else t([],{isLoaded:true});}});}else t(this.pa,{isLoaded:true});}getActiveProductTours(t){Z$1(this.fa)?t([],{isLoaded:false,error:"Product tours not loaded"}):this.fa.getActiveProductTours(t);}showProductTour(t){var e;null==(e=this.fa)||e.showTourById(t);}previewTour(t){this.fa?this.fa.previewTour(t):this.tr((()=>{var e;this.ga(),null==(e=this.fa)||e.previewTour(t);}));}dismissProductTour(){var t;null==(t=this.fa)||t.dismissTour("user_clicked_skip");}nextStep(){var t;null==(t=this.fa)||t.nextStep();}previousStep(){var t;null==(t=this.fa)||t.previousStep();}clearCache(){var t;this.pa=null,null==(t=this.mi)||t.unregister(sr$1);}resetTour(t){var e;null==(e=this.fa)||e.resetTour(t);}resetAllTours(){var t;null==(t=this.fa)||t.resetAllTours();}cancelPendingTour(t){var e;null==(e=this.fa)||e.cancelPendingTour(t);}}},Ml),Ul={siteApps:class{constructor(t){this.ma=0,this._instance=t,this.ya=[],this.apps={};}get isEnabled(){return !!this._instance.config.opt_in_site_apps}ba(t,e){if(e){var i=this.globalsForEvent(e);this.ya.push(i),this.ya.length>1e3&&(this.ya=this.ya.slice(10));}}get siteAppLoaders(){var t;return null==(t=v$1._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.siteApps}initialize(){if(this.isEnabled){var t=this._instance._addCaptureHook(this.ba.bind(this));this._a=()=>{t(),this.ya=[],this._a=void 0;};}}globalsForEvent(t){var e,i,r,s,n,o,a;if(!t)throw new Error("Event payload is required");var l={},u=this._instance.get_property("$groups")||[],h=this._instance.get_property("$stored_group_properties")||{};for(var d of Object.entries(h)){var v=d[0];l[v]={id:u[v],type:v,properties:d[1]};}var c=t.$set_once,f=t.$set;return {event:g({},m(t,ul),{properties:g({},t.properties,f?{$set:g({},null!==(e=null==(i=t.properties)?void 0:i.$set)&&void 0!==e?e:{},f)}:{},c?{$set_once:g({},null!==(r=null==(s=t.properties)?void 0:s.$set_once)&&void 0!==r?r:{},c)}:{}),elements_chain:null!==(n=null==(o=t.properties)?void 0:o.$elements_chain)&&void 0!==n?n:"",distinct_id:null==(a=t.properties)?void 0:a.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:l}}wa(t){var e,i=null==(e=t.tagName)?void 0:e.toLowerCase();return "style"===i&&this._instance.config.prepare_external_dependency_stylesheet?this._instance.config.prepare_external_dependency_stylesheet(t)||(hl.error("prepare_external_dependency_stylesheet returned null"),null):"script"===i&&this._instance.config.prepare_external_dependency_script?this._instance.config.prepare_external_dependency_script(t)||(hl.error("prepare_external_dependency_script returned null"),null):t}xa(){var t,e,i,s,n,o,a,l;if(!this._instance.config.prepare_external_dependency_stylesheet&&!this._instance.config.prepare_external_dependency_script)return ()=>{};var u=null==r?void 0:r.defaultView,h=null==u||null==(t=u.Node)?void 0:t.prototype;if(!u||!h)return ()=>{};if(this.ma++,this.ka)return this.Sa();var d=[],v=this,c=new WeakSet,f=(t,e,i)=>{if(null!=t&&t[e]){var r=t[e];t[e]=i(r),d.push((()=>{t[e]=r;}));}},p=t=>{if(c.has(t))return t;var e=v.wa(t);return e&&c.add(e),e},_=t=>t.map((t=>"string"==typeof t?t:p(t))).filter((t=>!X$1(t)));return f(h,"appendChild",(t=>function(e){var i=p(e);return i?t.call(this,i):e})),f(h,"insertBefore",(t=>function(e,i){var r=p(e);return r?t.call(this,r,i):e})),f(h,"replaceChild",(t=>function(e,i){var r=p(e);return r?t.call(this,r,i):i})),[null==(e=u.Element)?void 0:e.prototype,null==(i=u.Document)?void 0:i.prototype,null==(s=u.DocumentFragment)?void 0:s.prototype].forEach((t=>{f(t,"append",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"prepend",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))}));})),[null==(n=u.Element)?void 0:n.prototype,null==(o=u.CharacterData)?void 0:o.prototype,null==(a=u.DocumentType)?void 0:a.prototype].forEach((t=>{f(t,"before",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"after",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"replaceWith",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];var s=_(i);return i.length&&!s.length?void 0:t.apply(this,s)}));})),f(null==(l=u.Element)?void 0:l.prototype,"insertAdjacentElement",(t=>function(e,i){var r=p(i);return r?t.call(this,e,r):null})),this.ka=()=>{d.forEach((t=>t())),this.ka=void 0;},this.Sa()}Sa(){var t=false;return ()=>{var e;t||(t=true,this.ma--,0===this.ma&&(null==(e=this.ka)||e.call(this)));}}Ca(t,e){ void 0===e&&(e=true);var i=this.xa();try{var r=t(i);return e&&i(),r}catch(t){throw i(),t}}setupSiteApp(t){var e=this.apps[t.id],i=()=>{var i;!e.errored&&this.ya.length&&(hl.info("Processing "+this.ya.length+" events for site app with id "+t.id),this.ya.forEach((t=>this.Ca((()=>null==e.processEvent?void 0:e.processEvent(t))))),e.processedBuffer=true),Object.values(this.apps).every((t=>t.processedBuffer||t.errored))&&(null==(i=this._a)||i.call(this));},r=false,s=s=>{e.errored=!s,e.loaded=true,hl.info("Site app with id "+t.id+" "+(s?"loaded":"errored")),r&&i();};try{var n=this.Ca((e=>t.init({posthog:this._instance,callback(t){e(),s(t);}})),!1).processEvent;n&&(e.processEvent=n),r=!0;}catch(e){hl.error(dl+t.id,e),s(false);}if(r&&e.loaded)try{i();}catch(i){hl.error("Error while processing buffered events PostHog app with config id "+t.id,i),e.errored=true;}}Ia(){var t=this.siteAppLoaders||[];for(var e of t)this.apps[e.id]={id:e.id,loaded:false,errored:false,processedBuffer:false};for(var i of t)this.setupSiteApp(i);}Ta(t){var e=this;if(0!==Object.keys(this.apps).length){var i=this.globalsForEvent(t),r=function(r){try{e.Ca((()=>null==r.processEvent?void 0:r.processEvent(i)));}catch(e){hl.error("Error while processing event "+t.event+" for site app "+r.id,e);}};for(var s of Object.values(this.apps))r(s);}}onRemoteConfig(t){var e,i,r,s=this;if(null!=(e=this.siteAppLoaders)&&e.length)return this.isEnabled?(this.Ia(),void this._instance.on("eventCaptured",(t=>this.Ta(t)))):void hl.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(i=this._a)||i.call(this),t.ok){var n=t.config;if(null!=(r=n.siteApps)&&r.length)if(this.isEnabled){var o=function(){var t,e=a.id,i=a.url;v$1["__$$ph_site_app_"+e]=s._instance,null==(t=v$1.__PosthogExtensions__)||null==t.loadSiteApp||t.loadSiteApp(s._instance,i,(t=>{if(t)return hl.error(dl+e,t)}));};for(var a of n.siteApps)o();}else hl.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');}}}},Ll={tracingHeaders:class{constructor(t){this.Ma=void 0,this.Ea=void 0,this.Ra=void 0,this.Wo=()=>{var t,e,i=this.Pa();i?(K$1(this.Ma)&&(this.Ma=null==(t=v$1.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchXHR(i,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),K$1(this.Ea)&&(this.Ea=null==(e=v$1.__PosthogExtensions__)||null==(e=e.tracingHeadersPatchFns)?void 0:e._patchFetch(i,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.Ko();},this._instance=t;}initialize(){this.startIfEnabledOrStop();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.tracingHeadersPatchFns?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"tracing-headers",(e=>{if(e)return Ya$1.error("failed to load script",e);t();}));}Oa(){var t,e;return null!==(t=null!==(e=this._instance.config.tracing_headers)&&void 0!==e?e:this._instance.config.addTracingHeaders)&&void 0!==t?t:this._instance.config.__add_tracing_headers}Pa(){var t=this.Oa();return V$1(t)?(V$1(this.Ra)?this.Ra.splice(0,this.Ra.length,...t):this.Ra=[...t],t.length>0?this.Ra:void 0):(V$1(this.Ra)&&this.Ra.splice(0),this.Ra=t||void 0,this.Ra)}Ko(){var t,e;null==(t=this.Ma)||t.call(this),null==(e=this.Ea)||e.call(this),this.Ma=void 0,this.Ea=void 0;}startIfEnabledOrStop(){this.Pa()?this.tr(this.Wo):this.Ko();}}},jl=g({surveys:class{get Te(){return this._instance.config}constructor(t){this.Fa=void 0,this._surveyManager=null,this.La=false,this.$a=[],this.Aa=null,this.Na=null,this._instance=t,this._surveyEventReceiver=null;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(!this.Te.disable_surveys){if(!t.ok)return ya$1.warn("Remote config unavailable. Not loading surveys.");var e=t.config.surveys;if(Z$1(e))return ya$1.warn("Flags not loaded yet. Not loading surveys.");var i=V$1(e);this.Fa=i?e.length>0:e,ya$1.info("flags response received, isSurveysEnabled: "+this.Fa),this.loadIfEnabled();}}reset(){try{var t;null==(t=this._surveyEventReceiver)||t.reset(),localStorage.removeItem("lastSeenSurveyDate");for(var e=[],i=0;i<localStorage.length;i++){var r=localStorage.key(i);(null!=r&&r.startsWith(ba$1)||null!=r&&r.startsWith("inProgressSurvey_"))&&e.push(r);}e.forEach((t=>localStorage.removeItem(t)));}catch(t){}}loadIfEnabled(){if(!this._surveyManager)if(this.La)ya$1.info("Already initializing surveys, skipping...");else if(this.Te.disable_surveys)ya$1.info(gl);else if(this.Te.cookieless_mode&&this._instance.consent.isOptedOut())ya$1.info("Not loading surveys in cookieless mode without consent.");else {var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t){if(!K$1(this.Fa)||this.Te.advanced_enable_surveys){var e=this.Fa||this.Te.advanced_enable_surveys;this.La=true;try{var i=t.generateSurveys;if(i)return void this.Da(i,e);var r=t.loadExternalDependency;if(!r)return void this.qa(wr);r(this._instance,"surveys",(i=>{i||!t.generateSurveys?this.qa("Could not load surveys script",i):this.Da(t.generateSurveys,e);}));}catch(t){throw this.qa("Error initializing surveys",t),t}finally{this.La=false;}}}else ya$1.error("PostHog Extensions not found.");}}Da(t,e){this._surveyManager=t(this._instance,e),this._surveyEventReceiver=new pl(this._instance),ya$1.info("Surveys loaded successfully"),this.ja({isLoaded:true});}qa(t,e){ya$1.error(t,e),this.ja({isLoaded:false,error:t});}onSurveysLoaded(t){return this.$a.push(t),this._surveyManager&&this.ja({isLoaded:true}),()=>{this.$a=this.$a.filter((e=>e!==t));}}getSurveys(t,e){if(void 0===e&&(e=false),this.Te.disable_surveys)return ya$1.info(gl),t([]);var i,r=this._instance.get_property(tr$1);if(r&&!e)return t(r,{isLoaded:true}),void(this.Ha()&&this.getSurveys((()=>{}),true));"undefined"!=typeof Promise&&this.Aa?this.Aa.then((e=>t(e.surveys,e.context))):("undefined"!=typeof Promise&&(this.Aa=new Promise((t=>{i=t;}))),this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/surveys/?token="+this.Te.token),method:"GET",timestampMode:"query",timeout:this.Te.surveys_request_timeout_ms,callback:e=>{var r;this.Aa=null;var s=e.statusCode;if(200!==s||!e.json){var n="Surveys API could not be loaded, status: "+s;ya$1.error(n),this.Na=Date.now();var o={isLoaded:false,error:n};return t([],o),void(null==i||i({surveys:[],context:o}))}this.Na=null;var a,l=e.json.surveys||[],u=l.filter((t=>function(t){return !(!t.start_date||t.end_date)}(t)&&(ma$1(t)||function(t){var e;return !(null==(e=t.conditions)||null==(e=e.actions)||null==(e=e.values)||!e.length)}(t))));u.length>0&&(null==(a=this._surveyEventReceiver)||a.register(u)),null==(r=this._instance.persistence)||r.register({[tr$1]:l,[er$1]:Date.now()});var h={isLoaded:true};t(l,h),null==i||i({surveys:l,context:h});}}));}Ha(){return this.Ba()&&!this.Aa&&!this.Ua()}Ba(){var t=this._instance.get_property(er$1);return tt$1(t)&&Date.now()-t>3e5}Ua(){return tt$1(this.Na)&&3e5>Date.now()-this.Na}markSurveyAsSeen(t,e){var i,r={id:t,current_iteration:null!==(i=null==e?void 0:e.iteration)&&void 0!==i?i:null};wa$1(r);try{localStorage.setItem("lastSeenSurveyDate",(new Date).toISOString());}catch(t){}}ja(t){for(var e of this.$a)try{if(!t.isLoaded)return e([],t);this.getSurveys(e);}catch(t){ya$1.error("Error in survey callback",t);}}getActiveMatchingSurveys(t,e){if(void 0===e&&(e=false),!Z$1(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(t,e);ya$1.warn("init was not called");}za(t){var e=null;return this.getSurveys((i=>{var r;e=null!==(r=i.find((e=>e.id===t)))&&void 0!==r?r:null;})),e}Va(t){if(Z$1(this._surveyManager))return {eligible:false,reason:_l};var e="string"==typeof t?this.za(t):t;return e?this._surveyManager.checkSurveyEligibility(e):{eligible:false,reason:"Survey not found"}}canRenderSurvey(t){if(Z$1(this._surveyManager))return ya$1.warn("init was not called"),{visible:false,disabledReason:_l};var e=this.Va(t);return {visible:e.eligible,disabledReason:e.reason}}canRenderSurveyAsync(t,e){return Z$1(this._surveyManager)?(ya$1.warn("init was not called"),Promise.resolve({visible:false,disabledReason:_l})):new Promise((i=>{this.getSurveys((e=>{var r,s=null!==(r=e.find((e=>e.id===t)))&&void 0!==r?r:null;if(s){var n=this.Va(s);i({visible:n.eligible,disabledReason:n.reason});}else i({visible:false,disabledReason:"Survey not found"});}),e);}))}renderSurvey(t,e,i){var s;if(Z$1(this._surveyManager))ya$1.warn("init was not called");else {var n="string"==typeof t?this.za(t):t;if(null!=n&&n.id)if(Ea$1.includes(n.type)){var o=null==r?void 0:r.querySelector(e);if(o)return null!=(s=n.appearance)&&s.surveyPopupDelaySeconds?(ya$1.info("Rendering survey "+n.id+" with delay of "+n.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout((()=>{var t,e;ya$1.info("Rendering survey "+n.id+" with delay of "+(null==(t=n.appearance)?void 0:t.surveyPopupDelaySeconds)+" seconds"),null==(e=this._surveyManager)||e.renderSurvey(n,o,i),ya$1.info("Survey "+n.id+" rendered");}),1e3*n.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(n,o,i);ya$1.warn("Survey element not found");}else ya$1.warn("Surveys of type "+n.type+" cannot be rendered in the app");else ya$1.warn("Survey not found");}}displaySurvey(t,e){var i;if(Z$1(this._surveyManager))ya$1.warn("init was not called");else {var r=this.za(t);if(r){var s=r;if(null!=(i=r.appearance)&&i.surveyPopupDelaySeconds&&e.ignoreDelay&&(s=g({},r,{appearance:g({},r.appearance,{surveyPopupDelaySeconds:0})})),e.displayType!==Wn.Popover&&e.initialResponses&&ya$1.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),false===e.ignoreConditions){var n=this.canRenderSurvey(r);if(!n.visible)return void ya$1.warn("Survey is not eligible to be displayed: ",n.disabledReason)}e.displayType!==Wn.Inline?this._surveyManager.handlePopoverSurvey(s,e):this.renderSurvey(s,e.selector,e.properties);}else ya$1.warn("Survey not found");}}cancelPendingSurvey(t){Z$1(this._surveyManager)?ya$1.warn("init was not called"):this._surveyManager.cancelSurvey(t);}handlePageUnload(){var t;null==(t=this._surveyManager)||null==t.handlePageUnload||t.handlePageUnload();}}},Ml),Bl={toolbar:class{constructor(t){this.instance=t;}Wa(t){v$1.ph_toolbar_state=t;}Za(){var t;return null!==(t=v$1.ph_toolbar_state)&&void 0!==t?t:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(e,i,s){if(void 0===e&&(e=void 0),void 0===i&&(i=void 0),void 0===s&&(s=void 0),Hr(this.instance.config))return false;if(!t||!r)return false;e=null!=e?e:t.location,s=null!=s?s:t.history;try{if(!i){try{t.localStorage.setItem("test","test"),t.localStorage.removeItem("test");}catch(t){return !1}i=null==t?void 0:t.localStorage;}var n,o=ml||pn$1(e.hash,"__posthog")||pn$1(e.hash,"state"),a=o?Nr((()=>JSON.parse(atob(decodeURIComponent(o)))))||Nr((()=>JSON.parse(decodeURIComponent(o)))):null;return a&&"ph_authorize"===a.action?((n=a).source="url",n&&Object.keys(n).length>0&&(a.desiredHash?e.hash=a.desiredHash:s?s.replaceState(s.state,"",e.pathname+e.search):e.hash="")):((n=JSON.parse(i.getItem(yl)||"{}")).source="localstorage",delete n.userIntent),!(!n.token||this.instance.config.token!==n.token||(this.loadToolbar(n),0))}catch(t){return false}}Ga(t){var e=v$1.ph_load_toolbar||v$1.ph_load_editor;!Z$1(e)&&G$1(e)?e(t,this.instance):bl.warn("No toolbar load function found");}loadToolbar(e){var i=!(null==r||!r.getElementById(hs));if(!t||i)return false;var s="custom"===this.instance.requestRouter.region&&this.instance.config.advanced_disable_toolbar_metrics,n=g({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor("ui")},s?{instrument:false}:{});if(t.localStorage.setItem(yl,JSON.stringify(g({},n,{source:void 0}))),2===this.Za())this.Ga(n);else if(0===this.Za()){var o;this.Wa(1),null==(o=v$1.__PosthogExtensions__)||null==o.loadExternalDependency||o.loadExternalDependency(this.instance,"toolbar",(t=>{if(t)return bl.error("[Toolbar] Failed to load",t),void this.Wa(0);this.Wa(2),this.Ga(n);})),zr(t,"turbolinks:load",(()=>{this.Wa(0),this.loadToolbar(n);}));}return true}Qa(t){return this.loadToolbar(t)}maybeLoadEditor(t,e,i){return void 0===t&&(t=void 0),void 0===e&&(e=void 0),void 0===i&&(i=void 0),this.maybeLoadToolbar(t,e,i)}}},zl=g({experiments:Pl},Ml),Hl={conversations:class{constructor(t){this.Ja=void 0,this._conversationsManager=null,this.Ka=false,this.Ya=null,this._instance=t;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(!this._instance.config.disable_conversations&&t.ok){var e=t.config.conversations;Z$1(e)||(it$1(e)?this.Ja=e:(this.Ja=e.enabled,this.Ya=e),this.loadIfEnabled());}}reset(){var t;null==(t=this._conversationsManager)||t.reset(),this._conversationsManager=null,this.Ja=void 0,this.Ya=null;}loadIfEnabled(){if(!(this._conversationsManager||this.Ka||this._instance.config.disable_conversations||Hr(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t&&!K$1(this.Ja)&&this.Ja)if(this.Ya&&this.Ya.token){this.Ka=true;try{var e=t.initConversations;if(e)return this.Xa(e),void(this.Ka=!1);var i=t.loadExternalDependency;if(!i)return void this.tl(wr);i(this._instance,"conversations",(e=>{e||!t.initConversations?this.tl("Could not load conversations script",e):this.Xa(t.initConversations),this.Ka=!1;}));}catch(t){this.tl("Error initializing conversations",t),this.Ka=false;}}else Ol.error("Conversations enabled but missing token in remote config.");}}Xa(t){if(this.Ya)try{this._conversationsManager=t(this.Ya,this._instance),Ol.info("Conversations loaded successfully");}catch(t){this.tl("Error completing conversations initialization",t);}else Ol.error("Cannot complete initialization: remote config is null");}tl(t,e){Ol.error(t,e),this._conversationsManager=null,this.Ka=false;}show(){this._conversationsManager?this._conversationsManager.show():Ol.warn("Conversations not loaded yet.");}hide(){this._conversationsManager&&this._conversationsManager.hide();}isAvailable(){return true===this.Ja&&!X$1(this._conversationsManager)}isVisible(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.isVisible())&&void 0!==t&&t}sendMessage(t,e,i){var r=this;return _$3((function*(){return r._conversationsManager?r._conversationsManager.sendMessage(t,e,i):(Ol.warn(Il),null)}))()}getMessages(t,e){var i=this;return _$3((function*(){return i._conversationsManager?i._conversationsManager.getMessages(t,e):(Ol.warn(Il),null)}))()}markAsRead(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.markAsRead(t):(Ol.warn(Il),null)}))()}getTickets(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.getTickets(t):(Ol.warn(Il),null)}))()}requestRestoreLink(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.requestRestoreLink(t):(Ol.warn(Il),null)}))()}restoreFromToken(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.restoreFromToken(t):(Ol.warn(Il),null)}))()}restoreFromUrlToken(){var t=this;return _$3((function*(){return t._conversationsManager?t._conversationsManager.restoreFromUrlToken():(Ol.warn(Il),null)}))()}getCurrentTicketId(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.getCurrentTicketId())&&void 0!==t?t:null}getWidgetSessionId(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.getWidgetSessionId())&&void 0!==t?t:null}En(){var t;null==(t=this._conversationsManager)||t.setIdentity();}Rn(){var t;null==(t=this._conversationsManager)||t.clearIdentity();}}},ql={logs:class{constructor(e){var i;this.el=false,this.rl=false,this.it=gi("[logs]"),this.Gr=[],this.il=[],this.Hs=0,this.nl=()=>{var t,e;this.Hs=0,null==(t=this.sl)||t.onReconnect(),null==(e=this.ol)||e.onReconnect();},this._instance=e,this._instance&&null!=(i=this._instance.config.logs)&&i.captureConsoleLogs&&(this.el=true),t&&zr(t,"online",this.nl);}al(t,e,i,r){var s,n=function(t,e){var i,r,s,n,o,a,l,u=null!==(i=null==t?void 0:t.flushIntervalMs)&&void 0!==i?i:3e3,h=null!==(r=null==t?void 0:t.maxBufferSize)&&void 0!==r?r:100,d=null!=e&&e.consoleCapture?void 0:null!==(s=null==t?void 0:t.maxLogsPerInterval)&&void 0!==s?s:1e3,v=K$1(d)?Math.max(h,2048):Math.max(h,d),c=null==t?void 0:t.resourceAttributes;return {serviceName:null!==(n=null!==(o=null==c?void 0:c["service.name"])&&void 0!==o?o:null==t?void 0:t.serviceName)&&void 0!==n?n:null==e?void 0:e.serviceNameDefault,serviceVersion:null!==(a=null==c?void 0:c["service.version"])&&void 0!==a?a:null==t?void 0:t.serviceVersion,environment:null!==(l=null==c?void 0:c["deployment.environment"])&&void 0!==l?l:null==t?void 0:t.environment,resourceAttributes:c,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:u,maxBufferSize:h,maxQueueSize:v,maxBatchRecordsPerPost:100,rateCapWindowMs:u,maxLogsPerInterval:d,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}(null==(s=this._instance)||null==(s=s.config)?void 0:s.logs,i);return [new Oe$2(this.ll(t,e),n,this.it,(()=>this.ul()),(t=>t()),void 0,r),n]}hl(){var t,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.sl||this.dl!==e){var i;null==(i=this.sl)||i.reset(),this.dl=e;var r=this.al((()=>this.Gr),(t=>{this.Gr=t;}));this.sl=r[0],this.cl=r[1];}return this.sl}vl(){var t,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.ol||this.fl!==e){var i;null==(i=this.ol)||i.reset(),this.fl=e;var r=this.al((()=>this.il),(t=>{this.il=t;}),{serviceNameDefault:"posthog-browser-logs",consoleCapture:true},Cl);this.ol=r[0],this.pl=r[1];}return this.ol}initialize(){this.loadIfEnabled();}onRemoteConfig(t){var e;if(t.ok){var i=null==(e=t.config.logs)?void 0:e.captureConsoleLogs;!Z$1(i)&&i&&(this.el=true,this.loadIfEnabled());}}reset(){var t,e;this.Gr=[],null==(t=this.sl)||t.reset(),this.il=[],null==(e=this.ol)||e.reset(),this.Hs=0;}captureLog(t){this.hl().captureLog(t);}le(t){this.vl().captureLog(t);}get logger(){return this.gl||(this.gl={trace:(t,e)=>this.captureLog({body:t,level:"trace",attributes:e}),debug:(t,e)=>this.captureLog({body:t,level:"debug",attributes:e}),info:(t,e)=>this.captureLog({body:t,level:"info",attributes:e}),warn:(t,e)=>this.captureLog({body:t,level:"warn",attributes:e}),error:(t,e)=>this.captureLog({body:t,level:"error",attributes:e}),fatal:(t,e)=>this.captureLog({body:t,level:"fatal",attributes:e})}),this.gl}flushLogs(t){t?this.ml(t):(this.sl&&this.sl.flush().catch((t=>this.it.error("PostHog logs flush failed:",t))),this.ol&&this.ol.flush().catch((t=>this.it.error("PostHog logs flush failed:",t))));}loadIfEnabled(){if(this.el&&!this.rl){var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t){var e=t.loadExternalDependency;e?e(this._instance,"logs",(e=>{var i;e||null==(i=t.logs)||!i.initializeLogs?this.it.error("Could not load logs script",e):(t.logs.initializeLogs(this._instance),this.rl=true);})):this.it.error(wr);}else this.it.error("PostHog Extensions not found.");}}ll(t,e){var i=this._instance;return {get isDisabled(){return false},get optedOut(){return !i.is_capturing()},getPersistedProperty:e=>e===S$1.LogsQueue?t():void 0,setPersistedProperty(t,i){var r;t===S$1.LogsQueue&&e(null!==(r=i)&&void 0!==r?r:[]);},$t:t=>this.$t(t),getLibraryId:()=>f.LIB_NAME,getLibraryVersion:()=>f.LIB_VERSION}}$t(t){return new Promise((e=>{if(_n(this.Hs,3))e({kind:"fatal",error:new Error("logs endpoint is unreachable, dropping batch")});else {var i=false,r=t=>{i||(i=true,clearTimeout(s),e(t));},s=setTimeout((()=>r({kind:"retry-later",error:new Error("logs request timed out")})),9e4);this._instance._send_request({method:"POST",url:this.yl(),data:t,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:true,callback:t=>{var e=t.statusCode;if(this.bl(e),e>=200&&300>e)r({kind:"ok"});else if(413===e)r({kind:"too-large"});else if(0!==e&&429!==e&&500>e)r({kind:"fatal",error:new Error("logs request failed with status "+e)});else {var i;r({kind:"retry-later",error:null!==(i=t.error)&&void 0!==i?i:new Error("logs request failed with status "+e)});}}});}}))}bl(t){(0!==t||this._instance.__loaded)&&(this.Hs=gn$1(t,this.Hs,3,(()=>this.it.warn("Log requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped sending logs; will try again when connectivity changes."))));}ml(t){this.Gr.length>0&&this._l(t,this.Gr,this.cl,f.LIB_NAME,(t=>{this.Gr=t;})),this.il.length>0&&this._l(t,this.il,this.pl,Cl,(t=>{this.il=t;}));}_l(t,e,i,r,s){if(0!==e.length){var n=e.map((t=>t.record));s([]);var o=Pe$2(n,Re$2(i,f.LIB_NAME,f.LIB_VERSION),r,f.LIB_VERSION);this._instance._send_request({method:"POST",url:this.yl(),data:o,compression:"best-available",batchKey:"logs",transport:t});}}yl(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}ul(){var t,e={};if(e.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){var i=this._instance.sessionManager.checkAndGetSessionAndWindowId(true),r=i.windowId,s=i.sessionStartTimestamp,n=i.lastActivityTimestamp;e.sessionId=i.sessionId,e.windowId=r,Z$1(s)||(e.sessionStartTimestamp=s),Z$1(n)||(e.lastActivityTimestamp=n);}if(null!=v$1&&null!=(t=v$1.location)&&t.href&&(e.currentUrl=this._instance.config.disable_capture_url_hashes?be$1(v$1.location.href):v$1.location.href),this._instance.featureFlags){var o=this._instance.featureFlags.getFlags();o&&o.length>0&&(e.activeFeatureFlags=o);}return e}}},Vl={metrics:class{constructor(t){this.it=gi("[metrics]"),this._instance=t;}initialize(){}hl(){var t,e,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.metrics;return this.sl&&this.dl===i||(null==(e=this.sl)||e.reset(),this.dl=i,this.sl=new Ae$2(this.ll(),function(t){var e,i,r,s,n,o=null==t?void 0:t.resourceAttributes;return {serviceName:null!==(e=null==o?void 0:o["service.name"])&&void 0!==e?e:null==t?void 0:t.serviceName,serviceVersion:null!==(i=null==o?void 0:o["service.version"])&&void 0!==i?i:null==t?void 0:t.serviceVersion,environment:null!==(r=null==o?void 0:o["deployment.environment"])&&void 0!==r?r:null==t?void 0:t.environment,resourceAttributes:o,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:null!==(s=null==t?void 0:t.flushIntervalMs)&&void 0!==s?s:1e4,maxSeriesPerFlush:null!==(n=null==t?void 0:t.maxSeriesPerFlush)&&void 0!==n?n:1e3}}(i),this.it)),this.sl}count(t,e,i){ void 0===e&&(e=1),this.hl().count(t,e,i);}gauge(t,e,i){this.hl().gauge(t,e,i);}histogram(t,e,i){this.hl().histogram(t,e,i);}flush(t){if(!this.sl)return Promise.resolve();if(t){var e=this.sl.drainWindow();return e&&this.Kt(e,t),Promise.resolve()}return this.sl.flush().catch((t=>this.it.error("PostHog metrics flush failed:",t)))}reset(){var t;null==(t=this.sl)||t.reset();}ll(){var t=this._instance,e=this;return {get isDisabled(){return false},get optedOut(){return !t.is_capturing()},Kt:t=>e.Kt(t),getLibraryId:()=>f.LIB_NAME,getLibraryVersion:()=>f.LIB_VERSION}}Kt(t,e){return new Promise((i=>{var r=false,s=t=>{r||(r=true,clearTimeout(n),i(t));},n=setTimeout((()=>s({kind:"retry-later",error:new Error("metrics request timed out")})),9e4);this._instance._send_request(g({method:"POST",url:this.wl(),data:t,compression:"best-available",batchKey:"metrics"},e&&{transport:e},{fireCallbackOnDrop:true,callback(t){var e=t.statusCode;if(e>=200&&300>e)s({kind:"ok"});else if(413===e)s({kind:"too-large"});else if(0!==e&&429!==e&&500>e)s({kind:"fatal",error:new Error("metrics request failed with status "+e)});else {var i;s({kind:"retry-later",error:null!==(i=t.error)&&void 0!==i?i:new Error("metrics request failed with status "+e)});}}}));}))}wl(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},Gl=g({},Ml,Al,Fl,Dl,Nl,Ul,jl,Ll,Bl,zl,Hl,ql,Vl);Ba$1.__defaultExtensionClasses=g({},Gl);var Wl=function(){f.SDK_DIST_CHANNEL="npm";var e=Ta$1[Fa$1]=new Ba$1;return function(){function e(){e.done||(e.done=true,Da$1=false,Ar(Ta$1,(function(t){t._dom_loaded();})));}null!=r&&r.addEventListener?"complete"===r.readyState?e():zr(r,"DOMContentLoaded",e,{capture:false}):t&&_i.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized");}(),e}();
12027
+
12028
+ var defaultPostHogInstance;
12029
+ function setDefaultPostHogInstance(instance) {
12030
+ defaultPostHogInstance = instance;
12031
+ }
12032
+ function getDefaultPostHogInstance() {
12033
+ return defaultPostHogInstance;
12034
+ }
12035
+
12036
+ var PostHogContext = React.createContext({
12037
+ get client() {
12038
+ return getDefaultPostHogInstance();
12039
+ },
12040
+ bootstrap: undefined,
12041
+ });
12042
+
12043
+ var isFunction = function (f) {
12044
+ return typeof f === 'function';
12045
+ };
12046
+
12047
+ function useFeatureFlagVariantKey(flag) {
12048
+ var _a;
12049
+ var _b = React.useContext(PostHogContext), client = _b.client, bootstrap = _b.bootstrap;
12050
+ var _c = React.useState(function () {
12051
+ return client.getFeatureFlag(flag);
12052
+ }), featureFlagVariantKey = _c[0], setFeatureFlagVariantKey = _c[1];
12053
+ React.useEffect(function () {
12054
+ return client.onFeatureFlags(function () {
12055
+ setFeatureFlagVariantKey(client.getFeatureFlag(flag));
12056
+ });
12057
+ }, [client, flag]);
12058
+ if (!((_a = client === null || client === void 0 ? void 0 : client.featureFlags) === null || _a === void 0 ? void 0 : _a.hasLoadedFlags) && (bootstrap === null || bootstrap === void 0 ? void 0 : bootstrap.featureFlags)) {
12059
+ return bootstrap.featureFlags[flag];
12060
+ }
12061
+ return featureFlagVariantKey;
12062
+ }
12063
+
12064
+ /******************************************************************************
12065
+ Copyright (c) Microsoft Corporation.
12066
+
12067
+ Permission to use, copy, modify, and/or distribute this software for any
12068
+ purpose with or without fee is hereby granted.
12069
+
12070
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12071
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
12072
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12073
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12074
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12075
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
12076
+ PERFORMANCE OF THIS SOFTWARE.
12077
+ ***************************************************************************** */
12078
+ /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
12079
+
12080
+ var extendStatics = function(d, b) {
12081
+ extendStatics = Object.setPrototypeOf ||
12082
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
12083
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
12084
+ return extendStatics(d, b);
12085
+ };
12086
+
12087
+ function __extends(d, b) {
12088
+ if (typeof b !== "function" && b !== null)
12089
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12090
+ extendStatics(d, b);
12091
+ function __() { this.constructor = d; }
12092
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12093
+ }
12094
+
12095
+ typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
12096
+ var e = new Error(message);
12097
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
12098
+ };
12099
+
12100
+ var INITIAL_STATE = {
12101
+ componentStack: null,
12102
+ exceptionEvent: null,
12103
+ error: null,
12104
+ };
12105
+ var __POSTHOG_ERROR_MESSAGES = {
12106
+ INVALID_FALLBACK: '[PostHog.js][PostHogErrorBoundary] Invalid fallback prop, provide a valid React element or a function that returns a valid React element.',
12107
+ };
12108
+ ((function (_super) {
12109
+ __extends(PostHogErrorBoundary, _super);
12110
+ function PostHogErrorBoundary(props) {
12111
+ var _this = _super.call(this, props) || this;
12112
+ _this.state = INITIAL_STATE;
12113
+ return _this;
12114
+ }
12115
+ PostHogErrorBoundary.prototype.componentDidCatch = function (error, errorInfo) {
12116
+ var additionalProperties = this.props.additionalProperties;
12117
+ var currentProperties;
12118
+ if (isFunction(additionalProperties)) {
12119
+ currentProperties = additionalProperties(error);
12120
+ }
12121
+ else if (typeof additionalProperties === 'object') {
12122
+ currentProperties = additionalProperties;
12123
+ }
12124
+ var client = this.context.client;
12125
+ var exceptionEvent = client.captureException(error, currentProperties);
12126
+ var componentStack = errorInfo.componentStack;
12127
+ this.setState({
12128
+ error: error,
12129
+ componentStack: componentStack !== null && componentStack !== void 0 ? componentStack : null,
12130
+ exceptionEvent: exceptionEvent,
12131
+ });
12132
+ };
12133
+ PostHogErrorBoundary.prototype.render = function () {
12134
+ var _a = this.props, children = _a.children, fallback = _a.fallback;
12135
+ var state = this.state;
12136
+ if (state.componentStack == null) {
12137
+ return isFunction(children) ? children() : children;
12138
+ }
12139
+ var element = isFunction(fallback)
12140
+ ? React.createElement(fallback, {
12141
+ error: state.error,
12142
+ componentStack: state.componentStack,
12143
+ exceptionEvent: state.exceptionEvent,
12144
+ })
12145
+ : fallback;
12146
+ if (React.isValidElement(element)) {
12147
+ return element;
12148
+ }
12149
+ console.warn(__POSTHOG_ERROR_MESSAGES.INVALID_FALLBACK);
12150
+ return React.createElement(React.Fragment, null);
12151
+ };
12152
+ PostHogErrorBoundary.contextType = PostHogContext;
12153
+ return PostHogErrorBoundary;
12154
+ })(React.Component));
12155
+
12156
+ setDefaultPostHogInstance(Wl);
12157
+
12158
+ /** Nav item `action` of the Automations entry in the management submenu. */
12159
+ const AUTOMATIONS_NAV_ACTION = 'automations';
12160
+
11836
12161
  const ManagementSubmenu = [{
11837
12162
  title: 'management.team_management',
11838
12163
  hide: false,
@@ -11872,6 +12197,18 @@ const ManagementSubmenu = [{
11872
12197
  action: 'apikey',
11873
12198
  description: 'Generate and manage API keys for external integrations.',
11874
12199
  tags: ['api', 'token', 'credentials', 'generate', 'security', 'key']
12200
+ }, {
12201
+ label: 'management.automations',
12202
+ title: 'Automations',
12203
+ link: bcShared.BCRoutes.AutomationManagemnet,
12204
+ icon: jsx$1(bcUi.BCIcons.Automation, {
12205
+ width: 20,
12206
+ height: 20
12207
+ }),
12208
+ action: AUTOMATIONS_NAV_ACTION,
12209
+ description: 'Send WhatsApp templates to contacts automatically after a contact date.',
12210
+ tags: ['automation', 'schedule', 'follow up', 'drip', 'reminder', 'template', 'campaign'],
12211
+ requiredPermissions: [bcShared.Permission.MANAGE_CONVS]
11875
12212
  },
11876
12213
  // {
11877
12214
  // label: 'management.ai_assistant',
@@ -12312,138 +12649,6 @@ const useMobileInboxVersion = () => {
12312
12649
  };
12313
12650
  };
12314
12651
 
12315
- var t="undefined"!=typeof window?window:void 0,e$1="undefined"!=typeof globalThis?globalThis:t,i$1=null==e$1?void 0:e$1.navigator,r=null==e$1?void 0:e$1.document,s$1=null==e$1?void 0:e$1.location,n=null==e$1?void 0:e$1.fetch,o$1=null!=e$1&&e$1.XMLHttpRequest&&"withCredentials"in new e$1.XMLHttpRequest?e$1.XMLHttpRequest:void 0,a=null==e$1?void 0:e$1.AbortController,l=null==e$1?void 0:e$1.CompressionStream,u=null==i$1?void 0:i$1.userAgent;function h$2(){return !(!t||false===t.navigator.onLine)}var d="undefined"!=typeof globalThis?globalThis:t;d&&"undefined"==typeof self&&(d.self=d),d&&"undefined"==typeof File&&(d.File=function(){});var v$1=null!=t?t:{},c="0.2.0",f={DEBUG:false,LIB_VERSION:c,LIB_NAME:"browser-common",JS_SDK_VERSION:c};function p(t,e,i,r,s,n,o){try{var a=t[n](o),l=a.value;}catch(t){return void i(t)}a.done?e(l):Promise.resolve(l).then(r,s);}function _$3(t){return function(){var e=this,i=arguments;return new Promise((function(r,s){var n=t.apply(e,i);function o(t){p(n,r,s,o,a,"next",t);}function a(t){p(n,r,s,o,a,"throw",t);}o(void 0);}))}}function g(){return g=Object.assign?Object.assign.bind():function(t){for(var e=1;arguments.length>e;e++){var i=arguments[e];for(var r in i)({}).hasOwnProperty.call(i,r)&&(t[r]=i[r]);}return t},g.apply(null,arguments)}function m(t,e){if(null==t)return {};var i={};for(var r in t)if({}.hasOwnProperty.call(t,r)){if(-1!==e.indexOf(r))continue;i[r]=t[r];}return i}var y$1=t=>{if("string"!=typeof t)return t;try{return JSON.parse(t)}catch(e){return t}};function b(t){return "string"==typeof t||t}function w$1(t){return "string"==typeof t?t:void 0}var E$1,x$1=["$feature_flag","$feature_flag_response","$feature_flag_has_experiment","$feature_flag_id","$feature_flag_version","$feature_flag_reason","$feature_flag_request_id","$feature_flag_evaluated_at","$feature_flag_error","locally_evaluated","$groups","$process_person_profile","$geoip_disable","$current_url","$pathname","$session_id","$window_id","$lib","$lib_version","$device_id","$is_server"],S$1=function(t){return t.AnonymousId="anonymous_id",t.DistinctId="distinct_id",t.Props="props",t.EnablePersonProcessing="enable_person_processing",t.PersonMode="person_mode",t.FeatureFlagDetails="feature_flag_details",t.FeatureFlags="feature_flags",t.FeatureFlagPayloads="feature_flag_payloads",t.BootstrapFeatureFlagDetails="bootstrap_feature_flag_details",t.BootstrapFeatureFlags="bootstrap_feature_flags",t.BootstrapFeatureFlagPayloads="bootstrap_feature_flag_payloads",t.OverrideFeatureFlags="override_feature_flags",t.Queue="queue",t.AiQueue="ai_queue",t.LogsQueue="logs_queue",t.OptedOut="opted_out",t.SessionId="session_id",t.SessionStartTimestamp="session_start_timestamp",t.SessionLastTimestamp="session_timestamp",t.PersonProperties="person_properties",t.GroupProperties="group_properties",t.InstalledAppBuild="installed_app_build",t.InstalledAppVersion="installed_app_version",t.SessionReplay="session_replay",t.SessionReplayEventTriggerActivatedSession="session_replay_event_trigger_activated_session",t.SurveyLastSeenDate="survey_last_seen_date",t.SurveysSeen="surveys_seen",t.Surveys="surveys",t.RemoteConfig="remote_config",t.FlagsEndpointWasHit="flags_endpoint_was_hit",t.DeviceId="device_id",t}({}),k$1=function(t){return t.GZipJS="gzip-js",t.Base64="base64",t}({}),T$1=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"],R$1=["token"],P$1="NativeGzipValidationError",O$1=t=>t.length>=2&&31===t[0]&&139===t[1],I$1=(t,e)=>t===k$1.GZipJS||e===k$1.GZipJS||"gzip"===e,C=t=>!(!t||"object"!=typeof t)&&"NotReadableError"===("name"in t?String(t.name):""),M$1=t=>{var e=new Error("Native gzip produced invalid output: "+t);throw e.name=P$1,e},A$1=function(){var t=_$3((function*(t,e){18>t.size&&M$1("too-short");var i=new Uint8Array(yield t.slice(0,10).arrayBuffer());O$1(i)&&8===i[2]||M$1("invalid-header");var r=new DataView(yield t.slice(t.size-8).arrayBuffer());r.getUint32(0,true)!==(t=>{for(var e=(()=>{if(E$1)return E$1;E$1=[];for(var t=0;256>t;t++){for(var e=t,i=0;8>i;i++)e=1&e?3988292384^e>>>1:e>>>1;E$1[t]=e>>>0;}return E$1})(),i=4294967295,r=0;t.length>r;r++)i=e[255&(i^t[r])]^i>>>8;return (4294967295^i)>>>0})(e)&&M$1("invalid-crc");var s=e.length>>>0;r.getUint32(4,true)!==s&&M$1("invalid-size");}));return function(e,i){return t.apply(this,arguments)}}();function F$1(){return F$1=_$3((function*(t,e,i){ void 0===e&&(e=true);try{var r=(new TextEncoder).encode(t),s=new globalThis.CompressionStream("gzip"),n=s.writable.getWriter(),o=n.write(r).then((()=>n.close())).catch(function(){var t=_$3((function*(t){try{yield n.abort(t);}catch(t){}throw t}));return function(e){return t.apply(this,arguments)}}()),a=new Response(s.readable).blob(),l=(yield Promise.all([a,o]))[0];return yield A$1(l,r),l}catch(t){if(null!=i&&i.rethrow)throw t;return e&&console.error("Failed to gzip compress data",t),null}})),F$1.apply(this,arguments)}var D$1=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],N$1=function(t,e){if(void 0===e&&(e=[]),!t)return false;var i=t.toLowerCase();return D$1.concat(e).some((t=>{var e=t.toLowerCase();return -1!==i.indexOf(e)}))};function U$1(t,e){return -1!==t.indexOf(e)}var L$1=function(t){return t.trim()},j$1=function(t){return t.replace(/^\$/,"")};function B$1(t){var e,i=[];return null!==(e=JSON.stringify(t,(function(t,e){if("bigint"==typeof e)return e.toString();if("function"!=typeof e&&"symbol"!=typeof e){if(e instanceof Error)return {name:e.name,message:e.message,stack:e.stack};if(e&&"object"==typeof e){for(;i.length>0&&i[i.length-1]!==this;)i.pop();if(i.includes(e))return "[Circular]";i.push(e);}return e}})))&&void 0!==e?e:"null"}var z$1=Object.prototype,H$1=z$1.hasOwnProperty,q$1=z$1.toString,V$1=Array.isArray||function(t){return "[object Array]"===q$1.call(t)},G$1=t=>"function"==typeof t,W$1=t=>t===Object(t)&&!V$1(t),J$1=t=>{if(W$1(t)){for(var e in t)if(H$1.call(t,e))return false;return true}return false},K$1=t=>void 0===t,Y$1=t=>"[object String]"==q$1.call(t),Q$1=t=>Y$1(t)&&0===t.trim().length,X$1=t=>null===t,Z$1=t=>K$1(t)||X$1(t),tt$1=t=>"[object Number]"==q$1.call(t)&&t==t,et$1=t=>tt$1(t)&&t>0,it$1=t=>"[object Boolean]"===q$1.call(t),rt$1=t=>t instanceof FormData,st$1=t=>U$1(T$1,t),nt$1=t=>U$1(R$1,t);function ot$1(t){return null===t||"object"!=typeof t}function at$1(t,e){return {}.toString.call(t)==="[object "+e+"]"}function lt$1(t){return "undefined"!=typeof Event&&function(t,e){try{return t instanceof e}catch(t){return false}}(t,Event)}var ut$1=[true,"true",1,"1","yes"],ht$1=t=>U$1(ut$1,t),dt$1=[false,"false",0,"0","no"];function vt$1(t,e,i,r,s){return e>i&&(r.warn("min cannot be greater than max."),e=i),tt$1(t)?t>i?(r.warn(" cannot be greater than max: "+i+". Using max value instead."),i):e>t?(r.warn(" cannot be less than min: "+e+". Using min value instead."),e):t:(r.warn(" must be a number. using max or fallback. max: "+i+", fallback: "+s),vt$1(s||i,e,i,r))}let ct$1 = class ct{constructor(t){this.tt={},this.et=t.et,this.rt=vt$1(t.bucketSize,0,100,t.it),this.nt=vt$1(t.refillRate,0,this.rt,t.it),this.st=vt$1(t.refillInterval,0,864e5,t.it);}ot(t,e){var i=Math.floor((e-t.lastAccess)/this.st);i>0&&(t.tokens=Math.min(t.tokens+i*this.nt,this.rt),t.lastAccess=t.lastAccess+i*this.st);}consumeRateLimit(t){var e,i=Date.now(),r=String(t),s=this.tt[r];return s?this.ot(s,i):this.tt[r]=s={tokens:this.rt,lastAccess:i},0===s.tokens||(s.tokens--,0===s.tokens&&(null==(e=this.et)||e.call(this,t)),0===s.tokens)}stop(){this.tt={};}};var ft$1="Mobile",pt$1="iOS",_t$2="Android",gt$1="Tablet",mt$1=_t$2+" "+gt$1,yt$1="iPad",bt$1="Apple",wt$1=bt$1+" Watch",Et$1="Safari",xt$1="BlackBerry",St$1="Samsung",kt$1=St$1+"Browser",$t$1=St$1+" Internet",Tt$1="Chrome",Rt$1=Tt$1+" OS",Pt$1=Tt$1+" "+pt$1,Ot$1="Internet Explorer",It$1=Ot$1+" "+ft$1,Ct$1="Opera",Mt$1=Ct$1+" Mini",At$1="Edge",Ft$1="Microsoft "+At$1,Dt$1="Firefox",Nt$1=Dt$1+" "+pt$1,Ut$1="Nintendo",Lt$1="PlayStation",jt$1="Xbox",Bt$1=_t$2+" "+ft$1,zt$1=ft$1+" "+Et$1,Ht$1="Windows",qt$1=Ht$1+" Phone",Vt$1="Nokia",Gt$1="Ouya",Wt$1="Generic",Jt$1=Wt$1+" "+ft$1.toLowerCase(),Kt$1=Wt$1+" "+gt$1.toLowerCase(),Yt$1="Konqueror",Qt$1="Oculus Browser",Xt$1="Vivaldi",Zt$1="Yandex",te$2="Whale",ee$2="DuckDuckGo",ie$2="Pale Moon",re$3="Waterfox",se$2="Brave",ne$2="Google Search App",oe$1="(\\d+(\\.\\d+)?)",ae$2=new RegExp("Version/"+oe$1),le$1=new RegExp(jt$1,"i"),ue$1=new RegExp(Lt$1+" \\w+","i"),he$1=new RegExp(Ut$1+" \\w+","i"),de$2=new RegExp(xt$1+"|PlayBook|BB10","i"),ve$1={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},ce$2=function(t,e,i,r){e=e||"";var s=function(t){return null!=t&&t.brave?se$2:null}(i);return s||(null!=r&&r.detectGoogleSearchApp&&U$1(t,"GSA/")?ne$2:U$1(t," OPR/")&&U$1(t,"Mini")?Mt$1:U$1(t," OPR/")?Ct$1:de$2.test(t)?xt$1:U$1(t,"IE"+ft$1)||U$1(t,"WPDesktop")?It$1:U$1(t,"OculusBrowser")?Qt$1:U$1(t,kt$1)?$t$1:U$1(t,At$1)||U$1(t,"Edg/")?Ft$1:U$1(t,Xt$1+"/")?Xt$1:U$1(t,"YaBrowser/")?Zt$1:U$1(t,te$2+"/")?te$2:U$1(t,ee$2+"/")||U$1(t,"Ddg/")?ee$2:U$1(t,"FBIOS")?"Facebook "+ft$1:U$1(t,"UCWEB")||U$1(t,"UCBrowser")?"UC Browser":U$1(t,"CriOS")?Pt$1:U$1(t,"CrMo")||U$1(t,Tt$1)?Tt$1:U$1(t,_t$2)&&U$1(t,Et$1)?Bt$1:U$1(t,"FxiOS")?Nt$1:U$1(t.toLowerCase(),Yt$1.toLowerCase())?Yt$1:U$1(t,se$2+"/")?se$2:((t,e)=>e&&U$1(e,bt$1)||function(t){return U$1(t,Et$1)&&!U$1(t,Tt$1)&&!U$1(t,_t$2)}(t))(t,e)?U$1(t,ft$1)?zt$1:Et$1:U$1(t,"PaleMoon/")?ie$2:U$1(t,re$3+"/")?re$3:U$1(t,Dt$1)?Dt$1:U$1(t,"MSIE")||U$1(t,"Trident/")?Ot$1:U$1(t,"Gecko")?Dt$1:"")},fe$1={[It$1]:[new RegExp("rv:"+oe$1)],[Ft$1]:[new RegExp(At$1+"?\\/"+oe$1)],[Tt$1]:[new RegExp("("+Tt$1+"|CrMo)\\/"+oe$1)],[Pt$1]:[new RegExp("CriOS\\/"+oe$1)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+oe$1)],[Et$1]:[ae$2],[zt$1]:[ae$2],[Ct$1]:[new RegExp("(Opera|OPR)\\/"+oe$1)],[Dt$1]:[new RegExp(Dt$1+"\\/"+oe$1)],[Nt$1]:[new RegExp("FxiOS\\/"+oe$1)],[Yt$1]:[new RegExp("Konqueror[:/]?"+oe$1,"i")],[xt$1]:[new RegExp(xt$1+" "+oe$1),ae$2],[Bt$1]:[new RegExp("android\\s"+oe$1,"i")],[$t$1]:[new RegExp(kt$1+"\\/"+oe$1)],[Qt$1]:[new RegExp("OculusBrowser\\/"+oe$1)],[Xt$1]:[new RegExp(Xt$1+"\\/"+oe$1)],[Zt$1]:[new RegExp("YaBrowser\\/"+oe$1)],[te$2]:[new RegExp(te$2+"\\/"+oe$1)],[se$2]:[new RegExp(se$2+"\\/"+oe$1)],[ee$2]:[new RegExp("(DuckDuckGo|Ddg)\\/"+oe$1)],[ie$2]:[new RegExp("PaleMoon\\/"+oe$1)],[re$3]:[new RegExp(re$3+"\\/"+oe$1)],[ne$2]:[new RegExp("GSA\\/"+oe$1)],[Ot$1]:[new RegExp("(rv:|MSIE )"+oe$1)],Mozilla:[new RegExp("rv:"+oe$1)]},pe$2=function(t,e,i,r){var s=ce$2(t,e,i,r),n=fe$1[s];if(K$1(n))return null;for(var o=0;n.length>o;o++){var a=t.match(n[o]);if(a)return parseFloat(a[a.length-2])}return null},_e$2=[[new RegExp(jt$1+"; "+jt$1+" (.*?)[);]","i"),t=>[jt$1,t&&t[1]||""]],[new RegExp(Ut$1,"i"),[Ut$1,""]],[new RegExp(Lt$1,"i"),[Lt$1,""]],[de$2,[xt$1,""]],[new RegExp(Ht$1,"i"),(t,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return [qt$1,""];if(new RegExp(ft$1).test(e)&&!/IEMobile\b/.test(e))return [Ht$1+" "+ft$1,""];var i=/Windows NT ([0-9.]+)/i.exec(e);if(i&&i[1]){var r=ve$1[i[1]]||"";return /arm/i.test(e)&&(r="RT"),[Ht$1,r]}return [Ht$1,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,t=>t&&t[3]?[pt$1,[t[3],t[4],t[5]||"0"].join(".")]:[pt$1,""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,t=>{var e="";return t&&t.length>=3&&(e=K$1(t[2])?t[3]:t[2]),["watchOS",e]}],[new RegExp("("+_t$2+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+_t$2+")","i"),t=>t&&t[2]?[_t$2,[t[2],t[3],t[4]||"0"].join(".")]:[_t$2,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,t=>{var e=["Mac OS X",""];return t&&t[1]&&(e[1]=[t[1],t[2],t[3]||"0"].join(".")),e}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Rt$1,""]],[/Linux|debian/i,["Linux",""]]],ge$2=function(t){return he$1.test(t)?Ut$1:ue$1.test(t)?Lt$1:le$1.test(t)?jt$1:new RegExp(Gt$1,"i").test(t)?Gt$1:new RegExp("("+qt$1+"|WPDesktop)","i").test(t)?qt$1:/iPad/.test(t)?yt$1:/iPod/.test(t)?"iPod Touch":/iPhone/.test(t)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(t)?wt$1:de$2.test(t)?xt$1:/(kobo)\s(ereader|touch)/i.test(t)?"Kobo":new RegExp(Vt$1,"i").test(t)?Vt$1:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(t)||/(kf[a-z]+)( bui|\)).+silk\//i.test(t)?"Kindle Fire":/(Android|ZTE)/i.test(t)?new RegExp(ft$1).test(t)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(t)||/pixel[\daxl ]{1,6}/i.test(t)&&!/pixel c/i.test(t)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(t)||/lmy47v/i.test(t)&&!/QTAQZ3/i.test(t)?_t$2:mt$1:new RegExp("(pda|"+ft$1+")","i").test(t)?Jt$1:new RegExp(gt$1,"i").test(t)&&!new RegExp(gt$1+" pc","i").test(t)?Kt$1:""},me$1=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function ye$2(t,e){return "string"==typeof(i=t)&&me$1.test(i)?t:e();var i;}function be$1(t){return t?t.split("#")[0]:t}function we$2(t,e){var i=setTimeout(t,e);return (null==i?void 0:i.unref)&&(null==i||i.unref()),i}var Ee$2=t=>t instanceof Error,xe$2={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},Se$2=xe$2.info;function ke$1(t){if(it$1(t))return {boolValue:t};if("number"==typeof t)return Number.isFinite(t)?Number.isInteger(t)?{intValue:t}:{doubleValue:t}:{stringValue:String(t)};if("string"==typeof t)return {stringValue:t};if(V$1(t))return {arrayValue:{values:t.map((t=>ke$1(t)))}};try{return {stringValue:JSON.stringify(t)}}catch(e){return {stringValue:String(t)}}}function $e$2(t){var e=[];for(var i in t){var r=t[i];X$1(r)||K$1(r)||e.push({key:i,value:ke$1(r)});}return e}function Te$2(t,e){var i=xe$2[t.level||"info"]||Se$2,r=i.text,s=i.number,n=String(Date.now())+"000000",o={};e.distinctId&&(o.posthogDistinctId=e.distinctId),e.sessionId&&(o.sessionId=e.sessionId),e.windowId&&(o["window.id"]=e.windowId),Z$1(e.sessionStartTimestamp)||(o.sessionStartTimestamp=String(e.sessionStartTimestamp)),Z$1(e.lastActivityTimestamp)||(o.lastActivityTimestamp=String(e.lastActivityTimestamp)),e.currentUrl&&(o["url.full"]=e.currentUrl),e.screenName&&(o["screen.name"]=e.screenName),e.appState&&(o["app.state"]=e.appState),e.activeFeatureFlags&&e.activeFeatureFlags.length>0&&(o.feature_flags=e.activeFeatureFlags);var a=g({},o,t.attributes||{}),l={timeUnixNano:n,observedTimeUnixNano:n,severityNumber:s,severityText:r,body:{stringValue:t.body},attributes:$e$2(a)};return t.trace_id&&(l.traceId=t.trace_id),t.span_id&&(l.spanId=t.span_id),K$1(t.trace_flags)||(l.flags=t.trace_flags),l}function Re$2(t,e,i){return g({},t.resourceAttributes,{"service.name":t.serviceName||"unknown_service"},t.environment&&{"deployment.environment":t.environment},t.serviceVersion&&{"service.version":t.serviceVersion},{"telemetry.sdk.name":e,"telemetry.sdk.version":i})}function Pe$2(t,e,i,r){return {resourceLogs:[{resource:{attributes:$e$2(e)},scopeLogs:[{scope:{name:i,version:r},logRecords:t}]}]}}let Oe$2=class Oe{constructor(t,e,i,r,s,n,o){var a;void 0===n&&(n=()=>Promise.resolve()),this._instance=t,this.Te=e,this.it=i,this.ut=r,this.ht=s,this.dt=n,this.ct=o,this.vt=null,this.ft=0,this.yt=0,this.bt=0,this._t=0,this.wt=false,this.xt=e.maxBufferSize,this.kt=Math.max(null!==(a=e.maxQueueSize)&&void 0!==a?a:e.maxBufferSize,e.maxBufferSize),this.St=e.flushIntervalMs,this.Ct=e.maxBatchRecordsPerPost,this.It=e.rateCapWindowMs,this.Tt=e.maxLogsPerInterval;}reset(){this.Mt(),this.vt=null,this.bt=0,this._t=0,this.wt=false,this.ft=0,this.yt=0,this.Ct=this.Te.maxBatchRecordsPerPost;}onReconnect(){this.yt=0,this.Et();}captureLog(t){if(!this._instance.isDisabled&&!this._instance.optedOut&&null!=t&&t.body){var e=this.Rt(t);if(null!==e)if(e.body){if(this.Pt()){var i={record:Te$2(e,this.ut())};this.ht((()=>this.Ot(i)));}}else this.it.info("Log was rejected in beforeSend function");}}Rt(t){var e=this.Te.beforeSend;if(!e)return t;var i=V$1(e)?e:[e],r=t;for(var s of i)try{var n=s(r);if(!n)return this.it.info("Log was rejected in beforeSend function"),null;r=n;}catch(t){return this.it.error("Error in beforeSend function for log:",t),null}return r}Pt(){if(void 0===this.Tt)return true;var t=Date.now(),e=t-this.bt;return this.It>e&&e>=0||(this.bt=t,this._t=0,this.wt=false),this.Tt>this._t?(this._t++,true):(this.wt||(this.it.warn("captureLog dropping logs: exceeded "+this.Tt+" logs per "+this.It+"ms"),this.wt=true),false)}flush(){var t=this;return _$3((function*(){if(!t._instance.isDisabled)return t.vt||(t.vt=t.Ft().finally((()=>{t.vt=null;}))),t.vt}))()}Ft(){var t=this;return _$3((function*(){var e;t.Mt();var i=null!==(e=t._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==e?e:[];if(0!==i.length)for(var r=i.length,s=0;i.length>0&&r>s;){var n,o;t.ft=0;var a=Math.min(i.length,t.Ct),l=i.slice(0,a),u=Pe$2(l.map((t=>t.record)),t.Lt(),null!==(n=t.ct)&&void 0!==n?n:t._instance.getLibraryId(),t._instance.getLibraryVersion()),h=yield t._instance.$t(u);if("too-large"===h.kind&&l.length>1)t.Ct=Math.max(1,Math.floor(l.length/2)),t.it.warn("Received 413 when sending logs batch of size "+l.length+", reducing batch size to "+t.Ct);else {if("retry-later"===h.kind)throw h.error;if("too-large"===h.kind?t.it.warn("Dropping a single log record after 413 with batch size 1 — the record is larger than the server cap and cannot be split further."):"ok"===h.kind&&t.Te.maxBatchRecordsPerPost>t.Ct&&(t.Ct=Math.min(t.Te.maxBatchRecordsPerPost,t.Ct+1)),yield t.At(l.length),i=null!==(o=t._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==o?o:[],s+=l.length,"fatal"===h.kind)throw h.error}}}))()}At(t){var e=this;return _$3((function*(){var i,r=Math.max(0,t-e.ft),s=null!==(i=e._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==i?i:[];e._instance.setPersistedProperty(S$1.LogsQueue,s.slice(r)),yield e.dt();}))()}Lt(){return Re$2(this.Te,this._instance.getLibraryId(),this._instance.getLibraryVersion())}Ot(t){var e;if(!this._instance.optedOut){var i=null!==(e=this._instance.getPersistedProperty(S$1.LogsQueue))&&void 0!==e?e:[];this.kt>i.length||(i.shift(),this.ft++,this.it.info("Logs queue is full, dropping oldest record.")),i.push(t),this._instance.setPersistedProperty(S$1.LogsQueue,i),this.xt>i.length?this.Nt():this.Et();}}Nt(t){ void 0===t&&(t=this.St),this.Dt||(this.Dt=we$2((()=>{this.Dt=void 0,this.Et();}),t));}qt(){var t=Math.min(Math.max(0,this.yt-1),6);return this.St*Math.pow(2,t)}jt(){var t=this._instance.getPersistedProperty(S$1.LogsQueue);return !!t&&t.length>0}shutdown(t){var e=this;return _$3((function*(){e.Mt();var i=e.flush().catch((()=>{}));void 0!==t?yield Promise.race([i,new Promise((e=>we$2(e,t)))]):yield i;}))()}flushWithTimeout(t){var e=this;return _$3((function*(){var i=false,r=e.flush(),s=new Promise((e=>we$2((()=>{i=true,e();}),t)));try{yield Promise.race([r,s]);}finally{i&&r.catch((()=>{}));}}))()}Et(){this.flush().then((()=>{this.yt=0;}),(t=>{this.yt++,this.it.error("PostHog logs flush failed:",t);})).finally((()=>{!this._instance.isDisabled&&this.jt()&&this.Nt(this.qt());}));}Mt(){this.Dt&&(clearTimeout(this.Dt),this.Dt=void 0);}};var Ie$2=[0,5,10,25,50,75,100,250,500,750,1e3,2500,5e3,7500,1e4];function Ce$1(t){return String(t)+"000000"}function Me$2(t,e,i,r){var s="";return r&&(s=Object.keys(r).sort().map((t=>JSON.stringify(t)+":"+JSON.stringify(r[t]))).join(",")),t+"\0"+e+"\0"+(null!=i?i:"")+"\0"+s}let Ae$2=class Ae{constructor(t,e,i){this._instance=t,this.Te=e,this.it=i,this.Ht=new Map,this.vt=null,this.Bt=false,this.Ut=new Map,this.zt=new Set,this.Vt=0;}count(t,e,i){ void 0===e&&(e=1),this.Wt({name:t,type:"count",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}gauge(t,e,i){this.Wt({name:t,type:"gauge",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}histogram(t,e,i){this.Wt({name:t,type:"histogram",value:e,unit:null==i?void 0:i.unit,attributes:null==i?void 0:i.attributes});}flush(){var t=this,e=this.vt,i=function(){var i=_$3((function*(){e&&(yield e.catch((()=>{}))),yield t.Zt();}));return function(){return i.apply(this,arguments)}}(),r=i().finally((()=>{this.vt===r&&(this.vt=null);}));return this.vt=r,r}drainWindow(){if(0===this.Ht.size)return null;var t=this.Ht;return this.Ht=new Map,this.Bt=false,this.Ut=new Map,this.zt=new Set,this.Gt(t)}reset(){this.Vt++,this.Mt(),this.Ht=new Map,this.vt=null,this.Bt=false,this.Ut=new Map,this.zt=new Set;}Wt(t){if(!this._instance.isDisabled&&!this._instance.optedOut){var e=this.Rt(t);if(null!==e)if(e.name&&"string"==typeof e.name)if("number"==typeof e.value&&Number.isFinite(e.value))if("count"===e.type&&0>e.value)this.it.warn("Dropping count '"+e.name+"': counters are monotonic, value must be >= 0");else {var i,r;try{i=e.attributes?g({},e.attributes):void 0,r=Me$2(e.type,e.name,e.unit,i);}catch(t){return void this.it.warn("Dropping metric '"+e.name+"': attributes could not be serialized",t)}var s=this.Ht.get(r);if(!s){if(!this.Qt())return;s={name:e.name,type:e.type,unit:e.unit,attributes:i,windowStartMs:Date.now()},this.Ht.set(r,s);}var n=this.Ut.get(e.name);void 0===n?this.Ut.set(e.name,e.type):n===e.type||this.zt.has(e.name)||(this.zt.add(e.name),this.it.warn("Metric name '"+e.name+"' is already used as a "+n+"; recording it as a "+e.type+" too will blend both series in charts. Use a distinct name.")),this.Jt(s,e.value),this.Nt();}else this.it.warn("Dropping metric '"+e.name+"': value must be a finite number");else this.it.warn("Dropping metric with empty name");}}Qt(){return this.Te.maxSeriesPerFlush>this.Ht.size||(this.Bt||(this.Bt=true,this.it.warn("Metric series cap reached ("+this.Te.maxSeriesPerFlush+" per flush window); dropping new series until the next flush. Reduce attribute cardinality.")),false)}Jt(t,e){var i;switch(t.type){case "count":t.total=(null!==(i=t.total)&&void 0!==i?i:0)+e;break;case "gauge":t.last=e;break;case "histogram":t.hist||(t.hist={count:0,sum:0,min:e,max:e,bucketCounts:new Array(Ie$2.length+1).fill(0)});var r=t.hist;r.count+=1,r.sum+=e,r.min=Math.min(r.min,e),r.max=Math.max(r.max,e),r.bucketCounts[function(t,e){for(var i=0;e.length>i;i++)if(e[i]>=t)return i;return e.length}(e,Ie$2)]+=1;}}Rt(t){var e=this.Te.beforeSend;if(!e)return t;var i=V$1(e)?e:[e],r=t;for(var s of i)try{var n=s(r);if(!n)return this.it.info("Metric was rejected in beforeSend function"),null;r=n;}catch(t){return this.it.error("Error in beforeSend function for metric:",t),null}return r}Nt(){this.Dt||(this.Dt=we$2((()=>{this.Dt=void 0,this.flush().catch((t=>{this.it.error("Metrics flush failed:",t);}));}),this.Te.flushIntervalMs));}Mt(){this.Dt&&(clearTimeout(this.Dt),this.Dt=void 0);}Zt(){var t=this;return _$3((function*(){if(0!==t.Ht.size){var e=t.Ht;t.Ht=new Map,t.Bt=false,t.Ut=new Map,t.zt=new Set;var i=t.Vt,r=yield t._instance.Kt(t.Gt(e));if(i===t.Vt)switch(r.kind){case "ok":return;case "retry-later":return t.Yt(e),void t.Nt();case "too-large":return void t.it.warn("Metrics batch exceeded the server size limit and was dropped");case "fatal":return void t.it.error("Failed to send metrics batch:",r.error)}}}))()}Gt(t){return e=this.Xt(t),i=function(t,e,i){return g({},t.resourceAttributes,{"service.name":t.serviceName||"unknown_service"},t.environment&&{"deployment.environment":t.environment},t.serviceVersion&&{"service.version":t.serviceVersion},{"telemetry.sdk.name":e,"telemetry.sdk.version":i})}(this.Te,this._instance.getLibraryId(),this._instance.getLibraryVersion()),r=this._instance.getLibraryId(),s=this._instance.getLibraryVersion(),{resourceMetrics:[{resource:{attributes:$e$2(i)},scopeMetrics:[{scope:{name:r,version:s},metrics:e}]}]};var e,i,r,s;}Xt(t){var e=Ce$1(Date.now()),i=new Map;for(var r of t.values()){var s,n=Me$2(r.type,r.name,r.unit,void 0),o=i.get(n);o||(o=g({name:r.name},r.unit&&{unit:r.unit}),"count"===r.type?o.sum={aggregationTemporality:1,isMonotonic:true,dataPoints:[]}:"gauge"===r.type?o.gauge={dataPoints:[]}:o.histogram={aggregationTemporality:1,dataPoints:[]},i.set(n,o));var a=$e$2(null!==(s=r.attributes)&&void 0!==s?s:{}),l=Ce$1(r.windowStartMs);if("count"===r.type){var u,h={attributes:a,startTimeUnixNano:l,timeUnixNano:e,asDouble:null!==(u=r.total)&&void 0!==u?u:0};o.sum.dataPoints.push(h);}else if("gauge"===r.type){var d,v={attributes:a,timeUnixNano:e,asDouble:null!==(d=r.last)&&void 0!==d?d:0};o.gauge.dataPoints.push(v);}else r.hist&&o.histogram.dataPoints.push({attributes:a,startTimeUnixNano:l,timeUnixNano:e,count:r.hist.count,sum:r.hist.sum,min:r.hist.min,max:r.hist.max,bucketCounts:r.hist.bucketCounts,explicitBounds:Ie$2});}return Array.from(i.values())}Yt(t){var e,i;for(var r of t){var s=r[0],n=r[1],o=this.Ht.get(s);if(o)switch(o.windowStartMs=Math.min(o.windowStartMs,n.windowStartMs),o.type){case "count":o.total=(null!==(e=o.total)&&void 0!==e?e:0)+(null!==(i=n.total)&&void 0!==i?i:0);break;case "gauge":break;case "histogram":if(n.hist)if(o.hist){o.hist.count+=n.hist.count,o.hist.sum+=n.hist.sum,o.hist.min=Math.min(o.hist.min,n.hist.min),o.hist.max=Math.max(o.hist.max,n.hist.max);for(var a=0;o.hist.bucketCounts.length>a;a++)o.hist.bucketCounts[a]+=n.hist.bucketCounts[a];}else o.hist=n.hist;}else this.Qt()&&this.Ht.set(s,n);}}};var Fe$1,De$2,Ne$2;function Ue$2(t){var e=globalThis._posthogChunkIds;if(e){var i=Object.keys(e);return Ne$2&&i.length===De$2||(De$2=i.length,Ne$2=i.reduce(((i,r)=>{Fe$1||(Fe$1={});var s=Fe$1[r];if(s)i[s[0]]=s[1];else for(var n=t(r),o=n.length-1;o>=0;o--){var a=n[o],l=null==a?void 0:a.filename,u=e[r];if(l&&u){i[l]=u,Fe$1[r]=[l,u];break}}return i}),{})),Ne$2}}let Le$2 = class Le{constructor(t,e,i){ void 0===i&&(i=[]),this.coercers=t,this.stackParser=e,this.modifiers=i;}buildFromUnknown(t,e){ void 0===e&&(e={});var i=e&&e.mechanism||{handled:true,type:"generic"},r=this.buildCoercingContext(i,e,0).apply(t),s=this.buildParsingContext(e),n=this.parseStacktrace(r,s);return {$exception_list:this.convertToExceptionList(n,i),$exception_level:"error"}}modifyFrames(t){var e=this;return _$3((function*(){for(var i of t)i.stacktrace&&i.stacktrace.frames&&V$1(i.stacktrace.frames)&&(i.stacktrace.frames=yield e.applyModifiers(i.stacktrace.frames));return t}))()}coerceFallback(t){var e;return {type:"Error",value:"Unknown error",stack:null==(e=t.syntheticException)?void 0:e.stack,synthetic:true}}parseStacktrace(t,e){var i,r;return null!=t.cause&&(i=this.parseStacktrace(t.cause,e)),""!=t.stack&&null!=t.stack&&(r=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?e.skipFirstLines:0),e.chunkIdMap)),g({},t,{cause:i,stack:r})}applyChunkIds(t,e){return t.map((t=>(t.filename&&e&&(t.chunk_id=e[t.filename]),t)))}applyCoercers(t,e){for(var i of this.coercers)if(i.match(t))return i.coerce(t,e);return this.coerceFallback(e)}applyModifiers(t){var e=this;return _$3((function*(){var i=t;for(var r of e.modifiers)i=yield r(i);return i}))()}convertToExceptionList(t,e){var i,r,s,n={type:t.type,value:t.value,mechanism:{type:null!==(i=e.type)&&void 0!==i?i:"generic",handled:null===(r=e.handled)||void 0===r||r,synthetic:null!==(s=t.synthetic)&&void 0!==s&&s}};t.stack&&(n.stacktrace={type:"raw",frames:t.stack});var o=[n];return null!=t.cause&&o.push(...this.convertToExceptionList(t.cause,g({},e,{handled:true}))),o}buildParsingContext(t){var e;return {chunkIdMap:Ue$2(this.stackParser),skipFirstLines:null!==(e=t.skipFirstLines)&&void 0!==e?e:1}}buildCoercingContext(t,e,i){ void 0===i&&(i=0);var r=(i,r)=>{if(4>=r){var s=this.buildCoercingContext(t,e,r);return this.applyCoercers(i,s)}};return g({},e,{syntheticException:0==i?e.syntheticException:void 0,mechanism:t,apply:t=>r(t,i),next:t=>r(t,i+1)})}};var je$2="?";function Be$2(t,e,i,r,s){var n={platform:t,filename:e,function:"<anonymous>"===i?je$2:i,in_app:true};return K$1(r)||(n.lineno=r),K$1(s)||(n.colno=s),n}var ze$2=(t,e)=>{var i=-1!==t.indexOf("safari-extension"),r=-1!==t.indexOf("safari-web-extension");return i||r?[-1!==t.indexOf("@")?t.split("@")[0]:je$2,i?"safari-extension:"+e:"safari-web-extension:"+e]:[t,e]},He$2=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,qe$1=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Ve$2=/\((\S*)(?::(\d+))(?::(\d+))\)/,Ge$2=(t,e)=>{var i=He$2.exec(t);if(i)return Be$2(e,i[1],je$2,+i[2],+i[3]);var r=qe$1.exec(t);if(r){if(r[2]&&0===r[2].indexOf("eval")){var s=Ve$2.exec(r[2]);s&&(r[2]=s[1],r[3]=s[2],r[4]=s[3]);}var n=ze$2(r[1]||je$2,r[2]);return Be$2(e,n[1],n[0],r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},We$2=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Je$2=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Ke$2=(t,e)=>{var i=We$2.exec(t);if(i){if(i[3]&&i[3].indexOf(" > eval")>-1){var r=Je$2.exec(i[3]);r&&(i[1]=i[1]||"eval",i[3]=r[1],i[4]=r[2],i[5]="");}var s=i[3],n=i[1]||je$2,o=ze$2(n,s);return Be$2(e,s=o[1],n=o[0],i[4]?+i[4]:void 0,i[5]?+i[5]:void 0)}},Ye$1=/\(error: (.*)\)/;let Qe$2 = class Qe{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,e){var i=Y$1(t.stack);return {type:this.getType(t),value:this.getValue(t),stack:i?t.stack:void 0,cause:t.cause?e.next(t.cause):void 0,synthetic:false}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){var e=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?e+": "+t.message:e}isDOMException(t){return at$1(t,"DOMException")}isDOMError(t){return at$1(t,"DOMError")}};let Xe$1 = class Xe{match(t){return (t=>t instanceof Error)(t)}coerce(t,e){return {type:this.getType(t),value:this.getMessage(t,e),stack:this.getStack(t),cause:t.cause?e.next(t.cause):void 0,synthetic:false}}getType(t){return t.name||t.constructor.name}getMessage(t,e){var i=t.message;return String(i.error&&"string"==typeof i.error.message?i.error.message:i)}getStack(t){return t.stacktrace||t.stack||void 0}};let Ze$2 = class Ze{constructor(){}match(t){return at$1(t,"ErrorEvent")&&null!=t.error}coerce(t,e){var i;return e.apply(t.error)||{type:"ErrorEvent",value:t.message,stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}};var ti=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class ei{match(t){return "string"==typeof t}coerce(t,e){var i,r=this.getInfos(t),s=r[0],n=r[1];return {type:null!=s?s:"Error",value:null!=n?n:t,stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}getInfos(t){var e="Error",i=t,r=t.match(ti);return r&&(e=r[1],i=r[2]),[e,i]}}var ii=["fatal","error","warning","log","info","debug"];function ri(t,e){ void 0===e&&(e=40);var i=Object.keys(t);if(i.sort(),!i.length)return "[object has no keys]";for(var r=i.length;r>0;r--){var s=i.slice(0,r).join(", ");if(e>=s.length)return r===i.length?s:s.length>e?s.slice(0,e)+"...":s}return ""}class si{match(t){return "object"==typeof t&&null!==t}coerce(t,e){var i,r=this.getErrorPropertyFromObject(t);return r?e.apply(r):{type:this.getType(t),value:this.getValue(t),stack:null==(i=e.syntheticException)?void 0:i.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:true}}getType(t){return lt$1(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&"string"==typeof t.name){var e="'"+t.name+"' captured as exception";return "message"in t&&"string"==typeof t.message&&(e+=" with message: '"+t.message+"'"),e}if("message"in t&&"string"==typeof t.message)return t.message;var i=this.getObjectClassName(t);return (i&&"Object"!==i?"'"+i+"'":"Object")+" captured as exception with keys: "+ri(t)}isSeverityLevel(t){return Y$1(t)&&!Q$1(t)&&ii.indexOf(t)>=0}getErrorPropertyFromObject(t){for(var e in t)if({}.hasOwnProperty.call(t,e)){var i=t[e];if(Ee$2(i))return i}}getObjectClassName(t){try{var e=Object.getPrototypeOf(t);return e?e.constructor.name:void 0}catch(t){return}}}class ni{match(t){return lt$1(t)}coerce(t,e){var i,r=t.constructor.name;return {type:r,value:r+" captured as exception with keys: "+ri(t),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}}class oi{match(t){return ot$1(t)}coerce(t,e){var i;return {type:"Error",value:"Primitive value captured as exception: "+String(t),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}}}class ai{match(t){return at$1(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!lt$1(t))return false;try{var e=t.detail;return null!=e&&"object"==typeof e&&"reason"in e}catch(t){return false}}coerce(t,e){var i,r=this.getUnhandledRejectionReason(t);return ot$1(r)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(r),stack:null==(i=e.syntheticException)?void 0:i.stack,synthetic:true}:e.apply(r)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&null!=t.detail&&"object"==typeof t.detail&&"reason"in t.detail)return t.detail.reason}catch(t){}return t}}var li="$message",ui="$timestamp",hi=new Set([li,ui]),di={enabled:true,max_bytes:32768};function vi(t){var e;return t?{enabled:null!==(e=t.enabled)&&void 0!==e?e:di.enabled,max_bytes:fi(t.max_bytes,di.max_bytes)}:g({},di)}class ci{constructor(t){this.$e=[],this.ze=0,this.Te=vi(t);}setConfig(t){this.Te=vi(t),this.Ze();}add(t){var e=function(t){var e;try{e=B$1(t);}catch(t){return}try{var i=JSON.parse(e);if(!W$1(i))return;var r=i,s=r[li],n=r[ui];if(!Y$1(s)||0===s.trim().length)return;if(!Y$1(n)&&!tt$1(n))return;return {step:r,json:e}}catch(t){return}}(t);if(e){var i=function(t){if("undefined"!=typeof TextEncoder)return (new TextEncoder).encode(t).length;for(var e=encodeURIComponent(t),i=0,r=0;e.length>r;r++)"%"===e[r]?(i+=1,r+=2):i+=1;return i}(e.json);i>this.Te.max_bytes||(this.$e.push({step:e.step,bytes:i}),this.ze+=i,this.Ze());}}getAttachable(){return this.$e.map((t=>t.step))}clear(){this.$e=[],this.ze=0;}size(){return this.$e.length}Ze(){for(;this.ze>this.Te.max_bytes&&this.$e.length>0;){var t=this.$e.shift();t&&(this.ze-=t.bytes);}}}function fi(t,e){if(!tt$1(t)||t===1/0||t===-1/0)return e;var i=Math.floor(t);return 0>i?e:i}var pi=function(e,i){var r=(void 0===i?{}:i).debugEnabled,s={k(i){if(t&&(f.DEBUG||t.POSTHOG_DEBUG||r)&&!K$1(t.console)&&t.console){for(var s=("__rrweb_original__"in t.console[i]?t.console[i].__rrweb_original__:t.console[i]),n=arguments.length,o=new Array(n>1?n-1:0),a=1;n>a;a++)o[a-1]=arguments[a];s(e,...o);}},debug(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("debug",...e);},info(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("log",...e);},warn(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("warn",...e);},error(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];s.k("error",...e);},critical(){for(var t=arguments.length,i=new Array(t),r=0;t>r;r++)i[r]=arguments[r];console.error(e,...i);},uninitializedWarning(t){s.error("You must initialize PostHog before calling "+t);},createLogger:(t,i)=>pi(e+" "+t,i)};return s},_i=pi("[PostHog.js]"),gi=_i.createLogger,mi=gi("[ExternalScriptsLoader]"),yi=(t,e,i)=>{if(t.config.disable_external_dependency_loading)return mi.warn(e+" was requested but loading of external scripts is disabled."),i("Loading of external scripts is disabled");var s=null==r?void 0:r.querySelectorAll("script");if(s)for(var n,o=function(){if(s[a].src===e){var t=s[a];return t.__posthog_loading_callback_fired?{v:i()}:(t.addEventListener("load",(e=>{t.__posthog_loading_callback_fired=true,i(void 0,e);})),t.onerror=t=>i(t),{v:void 0})}},a=0;s.length>a;a++)if(n=o())return n.v;var l=()=>{if(!r)return i("document not found");var s=r.createElement("script");if(s.type="text/javascript",s.crossOrigin="anonymous",s.src=e,s.onload=t=>{s.__posthog_loading_callback_fired=true,i(void 0,t);},s.onerror=t=>i(t),t.config.prepare_external_dependency_script&&(s=t.config.prepare_external_dependency_script(s)),!s)return i("prepare_external_dependency_script returned null");if("head"===t.config.external_scripts_inject_target)r.head.appendChild(s);else {var n,o=r.querySelectorAll("body > script");o.length>0?null==(n=o[0].parentNode)||n.insertBefore(s,o[0]):r.body.appendChild(s);}};null!=r&&r.body?l():null==r||r.addEventListener("DOMContentLoaded",l);};v$1.__PosthogExtensions__=v$1.__PosthogExtensions__||{},v$1.__PosthogExtensions__.loadExternalDependency=(t,e,i)=>{if("remote-config"!==e){var r;if(t.config.strict_script_versioning)r=t.requestRouter.endpointFor("assets","/static/"+t.version+"/"+e+".js");else {var s="/static/"+e+".js?v="+t.version;if("toolbar"===e){var n=3e5;s=s+"&t="+Math.floor(Date.now()/n)*n;}r=t.requestRouter.endpointFor("assets",s);}yi(t,r,i);}else {var o=t.requestRouter.endpointFor("assets","/array/"+t.config.token+"/config.js");yi(t,o,i);}},v$1.__PosthogExtensions__.loadSiteApp=(t,e,i)=>{var r=t.requestRouter.endpointFor("api",e);yi(t,r,i);};var bi="1.407.2";f.DEBUG=false,f.LIB_VERSION=bi,f.LIB_NAME="web",f.JS_SDK_VERSION=bi;var wi="$people_distinct_id",Ei="$device_id",xi="$device_model",Si="__alias",ki="__timers",$i="$autocapture_disabled_server_side",Ti="$heatmaps_enabled_server_side",Ri="$exception_capture_enabled_server_side",Pi="$error_tracking_suppression_rules",Oi="$error_tracking_capture_extension_exceptions",Ii="$web_vitals_enabled_server_side",Ci="$dead_clicks_enabled_server_side",Mi="$product_tours_enabled_server_side",Ai="$web_vitals_allowed_metrics",Fi="$session_recording_remote_config",Di="$replay_sample_rate",Ni="$replay_override_sampling",Ui="$replay_override_linked_flag",Li="$replay_override_url_trigger",ji="$replay_override_event_trigger",Bi="$sesid",zi="$session_is_sampled",Hi="$enabled_feature_flags",qi="$active_feature_flags",Vi="$early_access_features",Gi="$feature_flag_details",Wi="$feature_flag_payloads",Ji="$feature_flag_request_id",Ki="$minimal_flag_called_events",Yi="$override_feature_flags",Qi="$override_feature_flag_payloads",Xi="$stored_person_properties",Zi="$stored_group_properties",tr$1="$surveys",er$1="$surveys_loaded_at",ir$1="$surveys_activated",rr$1="$surveys_activated_session",sr$1="ph_product_tours",nr$1="$flag_call_reported",or$1="$flag_call_reported_session_id",ar$1="$feature_flag_errors",lr$1="$feature_flag_evaluated_at",ur$1="$user_state",hr$1="$client_session_props",dr="$capture_rate_limit",vr$1="$initial_campaign_params",cr$1="$initial_referrer_info",fr$1="$initial_person_info",pr="$epp",_r$1="$posthog_cookieless",gr="$cookieless_mode",mr$1="$sdk_debug_extensions_init_method",yr="$sdk_debug_extensions_init_time_ms",br$1="$sdk_debug_recording_script_not_loaded",wr="PostHog loadExternalDependency extension not found.",Er="on_reject",xr="always",Sr$1="anonymous",kr="identified",$r="identified_only",Tr="visibilitychange",Rr="beforeunload",Pr="$pageview",Or="$pageleave",Ir="$identify",Cr="$groupidentify";function Mr(t,e){V$1(t)&&t.forEach(e);}function Ar(t,e){if(!Z$1(t))if(V$1(t))t.forEach(e);else if(rt$1(t))t.forEach(((t,i)=>e(t,i)));else for(var i in t)H$1.call(t,i)&&e(t[i],i);}var Fr=function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];for(var s of i)for(var n in s) void 0!==s[n]&&(t[n]=s[n]);return t};function Dr(t){for(var e=Object.keys(t),i=e.length,r=new Array(i);i--;)r[i]=[e[i],t[e[i]]];return r}var Nr=function(t){try{return t()}catch(t){return}},Ur=function(t){return function(){try{for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,i)}catch(t){_i.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),_i.critical(t);}}},Lr=function(t){var e={};return Ar(t,(function(t,i){(Y$1(t)&&t.length>0||tt$1(t))&&(e[i]=t);})),e};var jr=["herokuapp.com","vercel.app","netlify.app"];function Br(t){var e=null==t?void 0:t.hostname;if(!Y$1(e))return false;var i=e.split(".").slice(-2).join(".");for(var r of jr)if(i===r)return false;return true}function zr(t,e,i,r){var s=null!=r?r:{},n=s.capture,o=s.passive;null==t||t.addEventListener(e,i,{capture:void 0!==n&&n,passive:void 0===o||o});}function Hr(t){return "ph_toolbar_internal"===t.name}var qr=t=>{if(r){try{for(var e=t+"=",i=r.cookie.split(";").filter((t=>t.length)),s=0;i.length>s;s++){for(var n=i[s];" "==n.charAt(0);)n=n.substring(1,n.length);if(0===n.indexOf(e))return decodeURIComponent(n.substring(e.length,n.length))}}catch(t){}return null}};Math.trunc||(Math.trunc=function(t){return 0>t?Math.ceil(t):Math.floor(t)}),Number.isInteger||(Number.isInteger=function(t){return tt$1(t)&&isFinite(t)&&Math.floor(t)===t});class Vr{constructor(t){if(this.bytes=t,16!==t.length)throw new TypeError("not 128-bit length")}static fromFieldsV7(t,e,i,r){if(!Number.isInteger(t)||!Number.isInteger(e)||!Number.isInteger(i)||!Number.isInteger(r)||0>t||0>e||0>i||0>r||t>0xffffffffffff||e>4095||i>1073741823||r>4294967295)throw new RangeError("invalid field value");var s=new Uint8Array(16);return s[0]=t/Math.pow(2,40),s[1]=t/Math.pow(2,32),s[2]=t/Math.pow(2,24),s[3]=t/Math.pow(2,16),s[4]=t/256,s[5]=t,s[6]=112|e>>>8,s[7]=e,s[8]=128|i>>>24,s[9]=i>>>16,s[10]=i>>>8,s[11]=i,s[12]=r>>>24,s[13]=r>>>16,s[14]=r>>>8,s[15]=r,new Vr(s)}toString(){for(var t="",e=0;this.bytes.length>e;e++)t=t+(this.bytes[e]>>>4).toString(16)+(15&this.bytes[e]).toString(16),3!==e&&5!==e&&7!==e&&9!==e||(t+="-");if(36!==t.length)throw new Error("Invalid UUIDv7 was generated");return t}clone(){return new Vr(this.bytes.slice(0))}equals(t){return 0===this.compareTo(t)}compareTo(t){for(var e=0;16>e;e++){var i=this.bytes[e]-t.bytes[e];if(0!==i)return Math.sign(i)}return 0}}class Gr{generate(){var t=this.generateOrAbort();if(!K$1(t))return t;this.S=0;var e=this.generateOrAbort();if(K$1(e))throw new Error("Could not generate UUID after timestamp reset");return e}generateOrAbort(){var t=Date.now();if(t>this.S)this.S=t,this.C();else {if(this.S>=t+1e4)return;this.I++,this.I>4398046511103&&(this.S++,this.C());}return Vr.fromFieldsV7(this.S,Math.trunc(this.I/Math.pow(2,30)),this.I&Math.pow(2,30)-1,this.M.nextUint32())}C(){this.I=1024*this.M.nextUint32()+(1023&this.M.nextUint32());}constructor(){this.S=0,this.I=0,this.M=new Kr;}}var Wr,Jr=t=>{if("undefined"!=typeof UUIDV7_DENY_WEAK_RNG&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var e=0;t.length>e;e++)t[e]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return t};t&&!K$1(t.crypto)&&crypto.getRandomValues&&(Jr=t=>crypto.getRandomValues(t));class Kr{nextUint32(){return this.R.length>this.O||(Jr(this.R),this.O=0),this.R[this.O++]}constructor(){this.R=new Uint32Array(8),this.O=1/0;}}var Yr=()=>Qr().toString(),Qr=()=>(Wr||(Wr=new Gr)).generate(),Xr="",Zr=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;var ts={N:()=>!!r,D(t){_i.error("cookieStore error: "+t);},A:qr,F(t){var e;try{e=JSON.parse(ts.A(t))||{};}catch(t){}return e},q(t,e,i,s,n){if(!r)return false;try{var o="",a="",l=function(t,e){if(e){var i=function(t,e){if(void 0===e&&(e=r),Xr)return Xr;if(!e)return "";if(["localhost","127.0.0.1"].includes(t))return "";for(var i=t.split("."),s=Math.min(i.length,8),n="dmn_chk_"+Yr();!Xr&&s--;){var o=i.slice(s).join("."),a=n+"=1;domain=."+o+";path=/";e.cookie=a+";max-age=3",e.cookie.includes(n)&&(e.cookie=a+";max-age=0",Xr=o);}return Xr}(t);if(!i){var s=(t=>{var e=t.match(Zr);return e?e[0]:""})(t);s!==i&&_i.info("Warning: cookie subdomain discovery mismatch",s,i),i=s;}return i?"; domain=."+i:""}return ""}(r.location.hostname,s);if(i){var u=new Date;u.setTime(u.getTime()+864e5*i),o="; expires="+u.toUTCString();}n&&(a="; secure");var h=t+"="+encodeURIComponent(JSON.stringify(e))+o+"; SameSite=Lax; path=/"+l+a;return h.length>3686.4&&_i.warn("cookieStore warning: large cookie, len="+h.length),r.cookie=h,!0}catch(t){return false}},P(t,e){if(null!=r&&r.cookie)try{ts.q(t,"",-1,e);}catch(t){return}}},es=null,is={N(){if(!X$1(es))return es;var e=true;if(K$1(t))e=false;else try{var i="__mplssupport__";is.q(i,"xyz"),'"xyz"'!==is.A(i)&&(e=!1),is.P(i);}catch(t){e=false;}return e||_i.error("localStorage unsupported; falling back to cookie store"),es=e,e},D(t){_i.error("localStorage error: "+t);},A(e){try{return null==t?void 0:t.localStorage.getItem(e)}catch(t){is.D(t);}return null},F(t){try{return JSON.parse(is.A(t))||{}}catch(t){}return null},q(e,i){try{return null==t||t.localStorage.setItem(e,JSON.stringify(i)),!0}catch(t){is.D(t);}return false},P(e){try{null==t||t.localStorage.removeItem(e);}catch(t){is.D(t);}}},rs=[Ei,"distinct_id",Bi,zi,pr,fr$1,ur$1],ss={},ns={N:()=>true,D(t){_i.error("memoryStorage error: "+t);},A:t=>ss[t]||null,F:t=>ss[t]||null,q:(t,e)=>(ss[t]=e,true),P(t){delete ss[t];}},os=null,as={N(){if(!X$1(os))return os;if(os=true,K$1(t))os=false;else try{var e="__support__";as.q(e,"xyz"),'"xyz"'!==as.A(e)&&(os=!1),as.P(e);}catch(t){os=false;}return os},D(t){_i.error("sessionStorage error: ",t);},A(e){try{return null==t?void 0:t.sessionStorage.getItem(e)}catch(t){as.D(t);}return null},F(t){try{return JSON.parse(as.A(t))||null}catch(t){}return null},q(e,i){try{return null==t||t.sessionStorage.setItem(e,JSON.stringify(i)),!0}catch(t){as.D(t);}return false},P(e){try{null==t||t.sessionStorage.removeItem(e);}catch(t){as.D(t);}}};class ls{constructor(t){this._instance=t;}get Te(){return this._instance.config}get consent(){return this.Ge()?0:this.Qe}isOptedOut(){return this.Te.cookieless_mode===xr||this.isRejected()||-1===this.consent&&this.Te.cookieless_mode===Er}isOptedIn(){return !this.isOptedOut()}isExplicitlyOptedOut(){return 0===this.consent}isRejected(){return 0===this.consent||-1===this.consent&&this.Te.opt_out_capturing_by_default}optInOut(t){this.Je.q(this.Ke,t?1:0,this.Te.cookie_expiration,this.Te.cross_subdomain_cookie,this.Te.secure_cookie);}reset(){this.Je.P(this.Ke,this.Te.cross_subdomain_cookie);}get Ke(){var t=this._instance.config,e=t.token,i=t.opt_out_capturing_cookie_prefix;return t.consent_persistence_name||(i?i+e:"__ph_opt_in_out_"+e)}get Qe(){var t=this.Je.A(this.Ke);return ht$1(t)?1:U$1(dt$1,t)?0:-1}get Je(){var t=this.Te.opt_out_capturing_persistence_type,e="localStorage"===t?is:ts;if(!this.Ye||this.Ye!==e){this.Ye=e;var i="localStorage"===t?ts:is;i.A(this.Ke)&&(this.Ye.A(this.Ke)||this.optInOut(ht$1(i.A(this.Ke))),i.P(this.Ke,this.Te.cross_subdomain_cookie));}return this.Ye}Ge(){return !!this.Te.respect_dnt&&[null==i$1?void 0:i$1.doNotTrack,null==i$1?void 0:i$1.msDoNotTrack,v$1.doNotTrack].some((t=>ht$1(t)))}}function us(t,e){var i,r=null==t||null==(i=t.config)?void 0:i.get_current_url;if(!G$1(r))return e;try{var s=r(e);return Y$1(s)&&s?s:e}catch(t){return _i.error("Error in get_current_url, falling back to window.location.href",t),e}}var hs="__POSTHOG_TOOLBAR__",ds=1,vs=3,cs=11;function fs(t){return t instanceof Element&&(t.id===hs||!(null==t.closest||!t.closest(".toolbar-global-fade-container")))}function ps(t){return !!t&&t.nodeType===ds}function _s(t,e){return !!t&&!!t.tagName&&t.tagName.toLowerCase()===e.toLowerCase()}function gs(t){return !!t&&t.nodeType===vs}function ms(t){return !!t&&t.nodeType===cs&&ps(t.host)}var ys=1e3;function bs(t){return t?L$1(t).split(/\s+/):[]}function ws(e,i){var r=function(e){var i,r=null==t||null==(i=t.location)?void 0:i.href;return K$1(r)?void 0:us(e,r)}(i);return !!(r&&e&&e.some((t=>r.match(t))))}function Es(t){var e="";switch(typeof t.className){case "string":e=t.className;break;case "object":e=(t.className&&"baseVal"in t.className?t.className.baseVal:null)||t.getAttribute("class")||"";break;default:e="";}return bs(e)}function xs(t){return Z$1(t)?null:L$1(t).split(/(\s+)/).filter((t=>Gs(t))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function Ss(t){var e="";return Us(t)&&!Ls(t)&&t.childNodes&&t.childNodes.length&&Ar(t.childNodes,(function(t){var i;gs(t)&&t.textContent&&(e+=null!==(i=xs(t.textContent))&&void 0!==i?i:"");})),L$1(e)}function ks(t){var e;return K$1(t.target)?t.srcElement||null:null!=(e=t.target)&&e.shadowRoot?t.composedPath()[0]||null:t.target||null}var $s=["a","button","form","input","select","textarea","label"];function Ts(t,e){if(K$1(e))return true;var i,r=function(t){if(e.some((e=>function(t,e){var i=t.matches||t.matchesSelector||t.msMatchesSelector||t.mozMatchesSelector||t.webkitMatchesSelector||t.oMatchesSelector;try{return !!i&&i.call(t,e)}catch(t){return false}}(t,e))))return {v:true}};for(var s of t)if(i=r(s))return i.v;return false}function Rs(t){var e=t.parentNode;return !(!e||!ps(e))&&e}var Ps=[".ph-no-autocapture","[data-ph-no-autocapture]"],Os=["next","previous","prev",">","<"],Is=[...Os,"+","-","−","–"],Cs=(t,e)=>/[a-z0-9]/i.test(e)?t.includes(e):t===e,Ms=[".ph-no-rageclick",".ph-no-capture"],As=["","text","search","email","password","url","tel","number"];function Fs(e,i){if(!t||Ds(e))return false;var r,s,n,o,a;if(it$1(i)?(r=!!i&&Ms,s=void 0,n=false):(r=null!==(o=null==i?void 0:i.css_selector_ignorelist)&&void 0!==o?o:Ms,s=null==i?void 0:i.content_ignorelist,n=null!==(a=null==i?void 0:i.ignore_text_selection)&&void 0!==a&&a),false===r)return false;if(n&&function(t){return !(!t||!ps(t))&&(!!_s(t,"textarea")||(_s(t,"input")?U$1(As,(t.getAttribute("type")||"").toLowerCase()):function(t){if(t.isContentEditable)return true;var e=null==t.getAttribute?void 0:t.getAttribute("contenteditable");return "true"===e||""===e}(t)))}(e))return false;var l=Ns(e,false).targetElementList;return !function(t,e){if(false===t||K$1(t))return false;var i;if(true===t)i=Os;else {if(!V$1(t))return false;if(t.length>10)return _i.error("[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching."),false;i=t.map((t=>t.toLowerCase()));}return e.some((t=>{var e=t.safeText,r=t.ariaLabel;return i.some((t=>Cs(e,t)||Cs(r,t)))}))}(s,l.map((t=>{var e;return {safeText:Ss(t).toLowerCase(),ariaLabel:(null==(e=t.getAttribute("aria-label"))?void 0:e.toLowerCase().trim())||""}})))&&!Ts(l,r)}var Ds=t=>!t||_s(t,"html")||!ps(t),Ns=(e,i)=>{if(!t||Ds(e))return {parentIsUsefulElement:false,targetElementList:[]};for(var r=false,s=[e],n=e;n.parentNode&&!_s(n,"body");)if(ms(n.parentNode))s.push(n.parentNode.host),n=n.parentNode.host;else {var o=Rs(n);if(!o)break;if(i||$s.indexOf(o.tagName.toLowerCase())>-1)r=true;else try{var a=t.getComputedStyle(o);a&&"pointer"===a.getPropertyValue("cursor")&&(r=!0);}catch(t){}s.push(o),n=o;}return {parentIsUsefulElement:r,targetElementList:s}};function Us(t){for(var e=new Set,i=0,r=t;r.parentNode&&!_s(r,"body");r=r.parentNode){if(i++>=ys||e.has(r))return false;e.add(r);var s=Es(r);if(U$1(s,"ph-sensitive")||U$1(s,"ph-no-capture"))return false}if(U$1(Es(t),"ph-include"))return true;var n=t.type||"";if(Y$1(n))switch(n.toLowerCase()){case "hidden":case "password":return false}var o=t.name||t.id||"";return !Y$1(o)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(o.replace(/[^a-zA-Z0-9]/g,""))}function Ls(t){return !!(_s(t,"input")&&!["button","checkbox","submit","reset"].includes(t.type)||_s(t,"select")||_s(t,"textarea")||"true"===t.getAttribute("contenteditable"))}var js$1="(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11})",Bs=new RegExp("^(?:"+js$1+")$"),zs=new RegExp(js$1),Hs="\\d{3}-?\\d{2}-?\\d{4}",qs=new RegExp("^("+Hs+")$"),Vs=new RegExp("("+Hs+")");function Gs(t,e){if(void 0===e&&(e=true),Z$1(t))return false;if(Y$1(t)){if(t=L$1(t),(e?Bs:zs).test((t||"").replace(/[- ]/g,"")))return false;if((e?qs:Vs).test(t))return false}return true}function Ws(t){var e=Ss(t);return Gs(e=(e+" "+Js(t)).trim())?e:""}function Js(t){var e="";return t&&t.childNodes&&t.childNodes.length&&Ar(t.childNodes,(function(t){var i;if(t&&"span"===(null==(i=t.tagName)?void 0:i.toLowerCase()))try{var r=Ss(t);e=(e+" "+r).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+Js(t)).trim());}catch(t){_i.error("[AutoCapture]",t);}})),e}function Ks(t){return t.replace(/"|\\"/g,'\\"')}function Ys(t){var e=t.attr__class;if(e)return V$1(e)?e:bs(e)}var Qs=gi("[Dead Clicks]"),Xs=()=>true,Zs=t=>{var e,i=!(null==(e=t.instance.persistence)||!e.get_property(Ci)),r=t.instance.config.capture_dead_clicks;return it$1(r)?r:!!W$1(r)||i};let tn$1 = class tn{get lazyLoadedDeadClicksAutocapture(){return this.Xe}constructor(t,e,i){this.instance=t,this.isEnabled=e,this.onCapture=i,this.startIfEnabledOrStop();}onRemoteConfig(t){if(t.ok){var e=t.config;"captureDeadClicks"in e&&(this.instance.persistence&&this.instance.persistence.register({[Ci]:e.captureDeadClicks}),this.startIfEnabledOrStop());}}startIfEnabledOrStop(){this.isEnabled(this)?this.tr((()=>{this.er();})):this.stop();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.initDeadClicksAutocapture?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this.instance,"dead-clicks-autocapture",(e=>{e?Qs.error("failed to load script",e):t();}));}er(){var t;if(r){if(!this.Xe&&null!=(t=v$1.__PosthogExtensions__)&&t.initDeadClicksAutocapture){var e=W$1(this.instance.config.capture_dead_clicks)?g({},this.instance.config.capture_dead_clicks):{};e.__onCapture=this.onCapture,this.onCapture&&(e.capture_dead_swipes=false),this.Xe=v$1.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,e),this.Xe.start(r),Qs.info("starting...");}}else Qs.error("`document` not found. Cannot start.");}stop(){this.Xe&&(this.Xe.stop(),this.Xe=void 0,Qs.info("stopping..."));}};var en$1=gi("[SegmentIntegration]");var rn$1="posthog-js";function sn$1(t,e){var i=void 0===e?{}:e,r=i.organization,s=i.projectId,n=i.prefix,o=i.severityAllowList,a=void 0===o?["error"]:o,l=i.sendExceptionsToPostHog,u=void 0===l||l;return e=>{var i,o,l,h,d;if("*"!==a&&!a.includes(e.level)||!t.__loaded)return e;e.tags||(e.tags={});var v=t.requestRouter.endpointFor("ui","/project/"+t.config.token+"/person/"+t.get_distinct_id());e.tags["PostHog Person URL"]=v,t.sessionRecordingStarted()&&(e.tags["PostHog Recording URL"]=t.get_session_replay_url({withTimestamp:true}));var c,f=(null==(i=e.exception)?void 0:i.values)||[],p=f.map((t=>g({},t,{stacktrace:t.stacktrace?g({},t.stacktrace,{type:"raw",frames:(t.stacktrace.frames||[]).map((t=>g({},t,{platform:"web:javascript"})))}):void 0}))),_={$exception_message:(null==(o=f[0])?void 0:o.value)||e.message,$exception_type:null==(l=f[0])?void 0:l.type,$exception_level:e.level,$exception_list:p,$sentry_event_id:e.event_id,$sentry_exception:e.exception,$sentry_exception_message:(null==(h=f[0])?void 0:h.value)||e.message,$sentry_exception_type:null==(d=f[0])?void 0:d.type,$sentry_tags:e.tags};return r&&s&&(_.$sentry_url=(n||"https://sentry.io/organizations/")+r+"/issues/?project="+s+"&query="+e.event_id),u&&(null==(c=t.exceptions)||c.sendExceptionEvent(_)),e}}let nn$1 = class nn{constructor(t,e,i,r,s,n){this.name=rn$1,this.setupOnce=function(o){o(sn$1(t,{organization:e,projectId:i,prefix:r,severityAllowList:s,sendExceptionsToPostHog:null==n||n}));};}};let on$2 = class on{constructor(t){this.rr=(t,e,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength||i.crossTabAdoption)&&(_i.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:t,changeReason:i}),this.ir=void 0,this._instance.scrollManager.resetContext());},this._instance=t,this.nr();}nr(){var t;this.sr=null==(t=this._instance.sessionManager)?void 0:t.onSessionId(this.rr);}destroy(){var t;null==(t=this.sr)||t.call(this),this.sr=void 0;}doPageView(e,i){var r,s=this.ar(e,i);return this.ir={pathname:null!==(r=null==t?void 0:t.location.pathname)&&void 0!==r?r:"",pageViewId:i,timestamp:e},this._instance.scrollManager.resetContext(),s}doPageLeave(t){var e;return this.ar(t,null==(e=this.ir)?void 0:e.pageViewId)}doEvent(){var t;return {$pageview_id:null==(t=this.ir)?void 0:t.pageViewId}}ar(t,e){var i=this.ir;if(!i)return {$pageview_id:e};var r={$pageview_id:e,$prev_pageview_id:i.pageViewId},s=this._instance.scrollManager.getContext();if(s&&!this._instance.config.disable_scroll_properties){var n=s.maxScrollHeight,o=s.lastScrollY,a=s.maxScrollY,l=s.maxContentHeight,u=s.lastContentY,h=s.maxContentY;if(!(K$1(n)||K$1(o)||K$1(a)||K$1(l)||K$1(u)||K$1(h))){n=Math.ceil(n),o=Math.ceil(o),a=Math.ceil(a),l=Math.ceil(l),u=Math.ceil(u),h=Math.ceil(h);var d=n>1?vt$1(o/n,0,1,_i):1,v=n>1?vt$1(a/n,0,1,_i):1,c=l>1?vt$1(u/l,0,1,_i):1,f=l>1?vt$1(h/l,0,1,_i):1;r=Fr(r,{$prev_pageview_last_scroll:o,$prev_pageview_last_scroll_percentage:d,$prev_pageview_max_scroll:a,$prev_pageview_max_scroll_percentage:v,$prev_pageview_last_content:u,$prev_pageview_last_content_percentage:c,$prev_pageview_max_content:h,$prev_pageview_max_content_percentage:f});}}return i.pathname&&(r.$prev_pageview_pathname=i.pathname),i.timestamp&&(r.$prev_pageview_duration=(t.getTime()-i.timestamp.getTime())/1e3),r}};var an$1=["flags","surveys"],ln$1={[wi]:{exposure:"hidden"},[Si]:{exposure:"hidden"},__cmpns:{exposure:"hidden"},[ki]:{exposure:"hidden"},[$i]:{exposure:"event"},[Ti]:{exposure:"hidden"},[Ri]:{exposure:"event"},[Pi]:{exposure:"hidden"},[Oi]:{exposure:"event"},[Ii]:{exposure:"event"},[Ci]:{exposure:"event"},[Mi]:{exposure:"hidden"},[Ai]:{exposure:"event"},[Fi]:{exposure:"hidden"},$session_recording_enabled_server_side:{exposure:"hidden"},[Bi]:{exposure:"hidden"},[zi]:{exposure:"event"},[Di]:{exposure:"event",shouldSkipFromEventProperties:t=>X$1(t)},$session_past_minimum_duration:{exposure:"event"},$session_recording_url_trigger_activated_session:{exposure:"event"},$session_recording_event_trigger_activated_session:{exposure:"event"},$debug_first_full_snapshot_timestamp:{exposure:"event"},$sess_rec_flush_size:{exposure:"hidden"},[Hi]:{exposure:"derived",storageGroup:"flags",shouldSkipFromEventProperties:(t,e)=>e(),transformToEventProperties(t){if(!W$1(t))return {};for(var e={},i=Object.keys(t),r=0;i.length>r;r++)e["$feature/"+i[r]]=t[i[r]];return e}},[qi]:{exposure:"event",storageGroup:"flags"},[Vi]:{exposure:"hidden"},[Gi]:{exposure:"hidden",storageGroup:"flags"},[Wi]:{exposure:"event",storageGroup:"flags"},[Ji]:{exposure:"event",storageGroup:"flags",volatile:true},[Ki]:{exposure:"hidden",storageGroup:"flags"},[Yi]:{exposure:"event"},[Qi]:{exposure:"hidden"},[Xi]:{exposure:"hidden"},[Zi]:{exposure:"hidden"},[tr$1]:{exposure:"hidden",storageGroup:"surveys"},[er$1]:{exposure:"hidden",storageGroup:"surveys",volatile:true},[ir$1]:{exposure:"event"},[rr$1]:{exposure:"hidden"},[sr$1]:{exposure:"hidden"},$product_tours_activated:{exposure:"hidden"},$product_tours_activated_session:{exposure:"hidden"},$conversations_widget_session_id:{exposure:"event"},$conversations_ticket_id:{exposure:"event"},$conversations_widget_state:{exposure:"event"},$conversations_user_traits:{exposure:"event"},[nr$1]:{exposure:"hidden"},[or$1]:{exposure:"hidden"},[ar$1]:{exposure:"hidden"},[lr$1]:{exposure:"hidden",storageGroup:"flags",volatile:true},[ur$1]:{exposure:"hidden"},[hr$1]:{exposure:"hidden"},[dr]:{exposure:"hidden"},[vr$1]:{exposure:"hidden"},[cr$1]:{exposure:"hidden"},[fr$1]:{exposure:"hidden"},[pr]:{exposure:"hidden"},[Ni]:{exposure:"event"},[Ui]:{exposure:"event"},[Li]:{exposure:"event"},[ji]:{exposure:"event"},[mr$1]:{exposure:"event"},[yr]:{exposure:"event"},[br$1]:{exposure:"event"},$sdk_debug_replay_event_trigger_status:{exposure:"event"},$sdk_debug_replay_linked_flag_trigger_status:{exposure:"event"},$sdk_debug_replay_matched_recording_trigger_groups:{exposure:"event"},$sdk_debug_replay_remote_trigger_matching_config:{exposure:"event"},$sdk_debug_replay_trigger_groups_count:{exposure:"event"},$sdk_debug_replay_url_trigger_status:{exposure:"event"},$session_recording_start_reason:{exposure:"event"}},un$1=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],hn$1=t=>{var e=ln$1[t];if(e)return e;for(var i of un$1){var r=i[1];if(0===t.indexOf(i[0]))return r}},dn$1=(t,e)=>{try{return JSON.stringify(t,((t,e)=>"bigint"==typeof e?e.toString():e),e)}catch(e){return B$1(t)}},vn$1=t=>{var e=null==r?void 0:r.createElement("a");return K$1(e)?null:(e.href=t,e)},cn$1=function(t,e){for(var i,r=((t.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),s=0;r.length>s;s++){var n=r[s].split("=");if(n[0]===e){i=n;break}}if(!V$1(i)||2>i.length)return "";var o=i[1];try{o=decodeURIComponent(o);}catch(t){_i.error("Skipping decoding for malformed query param: "+o);}return o.replace(/\+/g," ")},fn$1=function(t,e,i){if(!t||!e||!e.length)return t;for(var r=t.split("#"),s=r[1],n=(r[0]||"").split("?"),o=n[1],a=n[0],l=(o||"").split("&"),u=[],h=0;l.length>h;h++){var d=l[h].split("=");V$1(d)&&(e.includes(d[0])?u.push(d[0]+"="+i):u.push(l[h]));}var v=a;return null!=o&&(v+="?"+u.join("&")),null!=s&&(v+="#"+s),v},pn$1=function(t,e){var i=t.match(new RegExp(e+"=([^&]*)"));return i?i[1]:null},_n=(t,e)=>t>=e&&h$2(),gn$1=(t,e,i,r)=>{if(0===t){if(h$2()){var s=e+1;return s===i&&r(),s}return e}return 0},mn$1="https?://(.*)",yn$1=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],bn$1=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...yn$1],wn$1="<masked>",En$1=["li_fat_id"];function xn$1(t,e,i){if(!r)return {};var s,n=e?[...yn$1,...i||[]]:[],o=Sn$1(fn$1(r.URL,n,wn$1),t),a=(s={},Ar(En$1,(function(t){var e=qr(t);s[t]=e||null;})),s);return Fr(a,o)}function Sn$1(t,e){var i=bn$1.concat(e||[]),r={};return Ar(i,(function(e){var i=cn$1(t,e);r[e]=i||null;})),r}function kn$1(t){var e=function(t){return t?0===t.search(mn$1+"google.([^/?]*)")?"google":0===t.search(mn$1+"bing.com")?"bing":0===t.search(mn$1+"yahoo.com")?"yahoo":0===t.search(mn$1+"duckduckgo.com")?"duckduckgo":null:null}(t),i="yahoo"!=e?"q":"p",s={};if(!X$1(e)){s.$search_engine=e;var n=r?cn$1(r.referrer,i):"";n.length&&(s.ph_keyword=n);}return s}function $n(){return navigator.language||navigator.userLanguage}var Tn="$direct";function Rn$1(){return (null==r?void 0:r.referrer)||Tn}function Pn(t,e,i){ void 0===i&&(i=false);var r=t?[...yn$1,...e||[]]:[],n=i?be$1(null==s$1?void 0:s$1.href):null==s$1?void 0:s$1.href,o=null==n?void 0:n.substring(0,1e3);return {r:Rn$1().substring(0,1e3),u:o?fn$1(o,r,wn$1):void 0}}function On(t,e){var i;void 0===e&&(e=false);var r=t.r,s=t.u,n=e?be$1(s):s,o={$referrer:r,$referring_domain:null==r?void 0:r==Tn?Tn:null==(i=vn$1(r))?void 0:i.host};if(n){o.$current_url=n;var a=vn$1(n);o.$host=null==a?void 0:a.host,o.$pathname=null==a?void 0:a.pathname;var l=Sn$1(n);Fr(o,l);}if(r){var u=kn$1(r);Fr(o,u);}return o}function In$1(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch(t){return}}function Cn$1(){try{return (new Date).getTimezoneOffset()}catch(t){return}}var Mn$1={flags:lr$1,surveys:er$1},An$1=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],Fn$1="main";let Dn$1 = class Dn{constructor(e,i,r){if(void 0===r&&(r=true),this.lr={},this.ur=false,this.hr=false,this.Te=e,this.dr=r,this.props={},this.cr=false,this.vr=(t=>{var e="";return t.token&&(e=t.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),t.persistence_name?"ph_"+t.persistence_name:"ph_"+e+"_posthog"})(e),this.Je=this.pr(e),this.hr=this.gr(e),this.load(),e.debug&&_i.info("Persistence loaded",e.persistence,g({},this.props)),this.update_config(e,e,i),this.save(),t){var s=()=>this.flush();zr(t,"beforeunload",s,{capture:false}),zr(t,"pagehide",s,{capture:false});}}mr(){var t,e=null==(t=this.Te)?void 0:t.persistence_save_debounce_ms;return tt$1(e)&&e>0?e:0}isDisabled(){return !!this.yr}pr(e){ -1===An$1.indexOf(e.persistence.toLowerCase())&&(_i.critical("Unknown persistence type "+e.persistence+"; falling back to localStorage+cookie"),e.persistence="localStorage+cookie");var i,r=function(e,i){ void 0===e&&(e=[]),void 0===i&&(i=false);var r=[...rs,...e];return g({},is,{F(t){try{var e={};try{e=ts.F(t)||{};}catch(t){}var r,s=JSON.parse(is.A(t)||"{}");if(i){var n={};for(var o in e){var a=e[o];X$1(a)||""===a||(n[o]=a);}r=Fr(s,n);}else r=Fr(e,s);return is.q(t,r),r}catch(t){}return null},q(t,e,i,s,n,o){var a=is.q(t,e,void 0,void 0,o);try{var l={};r.forEach((t=>{e[t]&&(l[t]=e[t]);})),Object.keys(l).length&&ts.q(t,l,i,s,n,o);}catch(t){is.D(t);}return a},P(e,i){try{null==t||t.localStorage.removeItem(e),ts.P(e,i);}catch(t){is.D(t);}}})}(e.cookie_persisted_properties||[],e.__preview_cookie_wins_on_conflict||false),s=false,n=e.persistence.toLowerCase();return "localstorage"===n&&is.N()?(i=is,s=true):"localstorage+cookie"===n&&r.N()?(i=r,s=true):"sessionstorage"===n&&as.N()?i=as:"memory"===n?i=ns:"cookie"===n?i=ts:r.N()?(i=r,s=true):i=ts,this.ur=s,i}br(t){return this.vr+"__"+t}gr(t){return this.ur&&!!t.split_storage}_r(t){var e=null!=t?t:this.Te.feature_flag_cache_ttl_ms;if(!e||0>=e)return false;var i=this.props[lr$1];return !i||"number"!=typeof i||Date.now()-i>e}properties(){var t={};return Ar(this.props,((e,i)=>{var r=hn$1(i);if("derived"===(null==r?void 0:r.exposure)){if(null!=r.shouldSkipFromEventProperties&&r.shouldSkipFromEventProperties(e,i===Hi?()=>this._r():()=>false))return;r.transformToEventProperties&&Fr(t,r.transformToEventProperties(e));}else if(!r||"event"===r.exposure){if(null!=r&&null!=r.shouldSkipFromEventProperties&&r.shouldSkipFromEventProperties(e,(()=>false)))return;t[i]=e;}})),t}load(){if(!this.yr){var t=this.Je.F(this.vr);t&&(this.props=Fr({},t)),this.hr&&this.wr();}}wr(){for(var t of an$1){var e=is.F(this.br(t));if(e&&!J$1(e)){var i=this.kr(t);i.persisted=true,this.Sr(t)||(i.fingerprint=this.Cr(e,t)),this.Ir(t,e)||Fr(this.props,e);}}}Sr(t){return Object.keys(this.props).some((e=>{var i;return (null==(i=hn$1(e))?void 0:i.storageGroup)===t}))}Ir(t,e){var i=Mn$1[t];if(!i)return false;var r=e[i],s=this.props[i];return tt$1(r)&&tt$1(s)&&s>r}refreshKey(t){var e;if(!this.yr){var i=this.hr?null==(e=hn$1(t))?void 0:e.storageGroup:void 0,r=i?is.F(this.br(i)):this.Je.F(this.vr);if(r&&t in r)this.Tr(t,r[t]);else {if(i){var s=this.Je.F(this.vr);if(s&&t in s)return void this.Tr(t,s[t])}this.Mr(t);}}}save(){if(!this.yr){var t=this.mr();t>0?K$1(this.Er)&&(this.Er=setTimeout((()=>{this.Er=void 0,this.Rr();}),t)):this.Rr();}}flush(){K$1(this.Er)||(clearTimeout(this.Er),this.Er=void 0,this.Rr());}Rr(){this.yr||(this.hr?this.Pr():this.Or(this.Je,this.vr,this.props,Fn$1));}Pr(){var t=this.Fr(),e=t.main,i=t.groups;for(var r of(this.Or(this.Je,this.vr,e,Fn$1),an$1)){var s,n=i[r];(!J$1(n)||null!=(s=this.lr[r])&&s.persisted)&&this.Or(is,this.br(r),n,r);}}Fr(){var t={},e={flags:{},surveys:{}};return Ar(this.props,((i,r)=>{var s,n=null==(s=hn$1(r))?void 0:s.storageGroup;n?e[n][r]=i:t[r]=i;})),{main:t,groups:e}}Cr(t,e){if(e===Fn$1)return JSON.stringify(t)+"|"+this.Lr+"|"+this.$r+"|"+this.Ar;var i={};return Ar(t,((t,e)=>{var r;i[e]=null!=(r=hn$1(e))&&r.volatile?"__volatile__":t;})),JSON.stringify(i)}Or(t,e,i,r){var s=this.kr(r);if(r===Fn$1||s.dirty||K$1(s.fingerprint)){var n;try{if((n=this.Cr(i,r))===s.fingerprint)return void(s.dirty=!1)}catch(t){n=void 0;}t.q(e,i,this.Lr,this.$r,this.Ar,this.Te.debug)?(s.dirty=false,r!==Fn$1&&(s.persisted=true),K$1(n)||(s.fingerprint=n)):this.Te.debug&&_i.warn('failed to persist storage entry "'+e+'"; will retry on next save');}}remove(t){var e=(void 0===t?{}:t).keepGroupEntries,i=void 0!==e&&e;if(K$1(this.Er)||(clearTimeout(this.Er),this.Er=void 0),this.Je.P(this.vr,false),this.Je.P(this.vr,true),!i&&this.dr)for(var r of an$1)is.P(this.br(r));i?delete this.lr[Fn$1]:this.lr={};}clear(){this.remove(),this.props={};}register_once(t,e,i){if(W$1(t)){K$1(e)&&(e="None"),this.Lr=K$1(i)?this.Nr:i;var r=false;if(Ar(t,((t,i)=>{this.props.hasOwnProperty(i)&&this.props[i]!==e||(this.Tr(i,t),r=true);})),r)return this.save(),true}return false}register(t,e){if(W$1(t)){this.Lr=K$1(e)?this.Nr:e;var i=false;if(Ar(t,((e,r)=>{t.hasOwnProperty(r)&&this.props[r]!==e&&(this.Tr(r,e),i=true);})),i)return this.save(),true}return false}unregister(t){t in this.props&&(this.Mr(t),this.save());}update_campaign_params(){if(!this.cr){var t=xn$1(this.Te.custom_campaign_params,this.Te.mask_personal_data_properties,this.Te.custom_personal_data_properties);J$1(Lr(t))||this.register(t),this.cr=true;}}update_search_keyword(){var t;this.register((t=null==r?void 0:r.referrer)?kn$1(t):{});}update_referrer_info(){var t;this.register_once({$referrer:Rn$1(),$referring_domain:null!=r&&r.referrer&&(null==(t=vn$1(r.referrer))?void 0:t.host)||Tn},void 0);}set_initial_person_info(){this.props[vr$1]||this.props[cr$1]||this.register_once({[fr$1]:Pn(this.Te.mask_personal_data_properties,this.Te.custom_personal_data_properties,this.Te.disable_capture_url_hashes)},void 0);}get_initial_props(){var t={};Ar([cr$1,vr$1],(e=>{var i=this.props[e];i&&Ar(i,(function(e,i){t["$initial_"+j$1(i)]=e;}));}));var e=this.props[fr$1];if(e){var i=function(t,e){ void 0===e&&(e=false);var i=On(t,e),r={};return Ar(i,(function(t,e){r["$initial_"+j$1(e)]=t;})),r}(e,this.Te.disable_capture_url_hashes);Fr(t,i);}return t}safe_merge(t){return Ar(this.props,(function(e,i){i in t||(t[i]=e);})),t}update_config(t,e,i){this.Nr=this.Lr=t.cookie_expiration,this.set_disabled(t.disable_persistence||!!i),this.set_cross_subdomain(t.cross_subdomain_cookie),this.set_secure(t.secure_cookie);var r=t.persistence!==e.persistence||!((t,e)=>{if(t.length!==e.length)return false;var i=[...t].sort(),r=[...e].sort();return i.every(((t,e)=>t===r[e]))})(t.cookie_persisted_properties||[],e.cookie_persisted_properties||[]),s=r?this.pr(t):this.Je,n=this.gr(t);if(r||n!==this.hr){var o=this.props;this.clear(),this.Je=s,this.hr=n,this.props=o,this.save();}}set_disabled(t){this.yr=t,this.yr?this.remove():this.save();}set_cross_subdomain(t){t!==this.$r&&(this.$r=t,this.remove({keepGroupEntries:true}),this.save());}set_secure(t){t!==this.Ar&&(this.Ar=t,this.remove({keepGroupEntries:true}),this.save());}set_event_timer(t,e){var i=this.props[ki]||{};i[t]=e,this.Tr(ki,i),this.save();}remove_event_timer(t){var e=this.props[ki]||{},i=e[t];return K$1(i)||(delete e[t],this.Tr(ki,e),this.save()),i}get_property(t){return this.props[t]}set_property(t,e){this.Tr(t,e),this.save();}Tr(t,e){var i;this.props[t]=e,null!=(i=hn$1(t))&&i.volatile||this.Dr(t);}Mr(t){delete this.props[t],this.Dr(t);}Dr(t){var e,i=null==(e=hn$1(t))?void 0:e.storageGroup;i&&(this.kr(i).dirty=true);}kr(t){return this.lr[t]||(this.lr[t]={})}};var Nn={Activation:"events",Cancellation:"cancelEvents"},Bn$1={Popover:"popover",API:"api",Widget:"widget"},Vn={SHOWN:"survey shown",DISMISSED:"survey dismissed",SENT:"survey sent"},Gn={SURVEY_ID:"$survey_id",SURVEY_ITERATION:"$survey_iteration",SURVEY_LAST_SEEN_DATE:"$survey_last_seen_date"},Wn={Popover:"popover",Inline:"inline"},Kn={SHOWN:"product tour shown"},Yn={TOUR_LAST_SEEN_DATE:"$product_tour_last_seen_date",TOUR_TYPE:"$product_tour_type"},Qn=gi("[RateLimiter]");class Xn{constructor(t){this.serverLimits={},this.lastEventRateLimited=false,this.checkForLimiting=t=>{var e=t.text;if(e&&e.length)try{(JSON.parse(e).quota_limited||[]).forEach((t=>{Qn.info((t||"events")+" is quota limited."),this.serverLimits[t]=(new Date).getTime()+6e4;}));}catch(t){return void Qn.warn('could not rate limit - continuing. Error: "'+(null==t?void 0:t.message)+'"',{text:e})}},this.instance=t,this.lastEventRateLimited=this.clientRateLimitContext(true).isRateLimited;}get captureEventsPerSecond(){var t;return (null==(t=this.instance.config.rate_limiting)?void 0:t.events_per_second)||10}get captureEventsBurstLimit(){var t;return Math.max((null==(t=this.instance.config.rate_limiting)?void 0:t.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(t){var e,i,r;void 0===t&&(t=false);var s=this.captureEventsBurstLimit,n=this.captureEventsPerSecond,o=(new Date).getTime(),a=null!==(e=null==(i=this.instance.persistence)?void 0:i.get_property(dr))&&void 0!==e?e:{tokens:s,last:o};a.tokens+=(o-a.last)/1e3*n,a.last=o,a.tokens>s&&(a.tokens=s);var l=1>a.tokens;return l||t||(a.tokens=Math.max(0,a.tokens-1)),!l||this.lastEventRateLimited||t||this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:"posthog-js client rate limited. Config is set to "+n+" events per second and "+s+" events burst limit."},{skip_client_rate_limiting:true}),this.lastEventRateLimited=l,null==(r=this.instance.persistence)||r.set_property(dr,a),{isRateLimited:l,remainingTokens:a.tokens}}isServerRateLimited(t){var e=this.serverLimits[t||"events"]||false;return false!==e&&(new Date).getTime()<e}}var Zn=gi("[RemoteConfig]");class to{constructor(t){this._instance=t;}get remoteConfig(){var t;return null==(t=v$1._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.config}qr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.loadExternalDependency?null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"remote-config",(()=>t(this.remoteConfig))):t();}jr(t){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback(e){t(e.json);}});}load(){try{if(this.remoteConfig)return Zn.info("Using preloaded remote config",this.remoteConfig),this.Hr(this.remoteConfig),void this.Br();if(this._instance.Ur())return void Zn.warn("Remote config is disabled. Falling back to local config.");this.qr((t=>{if(!t)return Zn.info("No config found after loading remote JS config. Falling back to JSON."),void this.jr((t=>{this.Hr(t),this.Br();}));this.Hr(t),this.Br();}));}catch(t){Zn.error("Error loading remote config",t);}}stop(){this.zr&&(clearInterval(this.zr),this.zr=void 0);}refresh(){!this._instance.Ur()&&r&&"hidden"!==r.visibilityState&&this._instance.reloadFeatureFlags();}Br(){var t;if(!this.zr){var e=null!==(t=this._instance.config.remote_config_refresh_interval_ms)&&void 0!==t?t:3e5;0!==e&&(this.zr=setInterval((()=>{this.refresh();}),e));}}Hr(t){var e;t||Zn.error("Failed to fetch remote config from PostHog."),this._instance.Hr(t?{ok:true,config:t}:{ok:false}),false!==(null==t?void 0:t.hasFeatureFlags)&&(this._instance.config.advanced_disable_feature_flags_on_first_load||null==(e=this._instance.featureFlags)||e.ensureFlagsLoaded());}}var io={GZipJS:"gzip-js",Base64:"base64"},ro=Uint8Array,so=Uint16Array,no=Uint32Array,oo=new ro([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),ao=new ro([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),lo=new ro([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),uo=function(t,e){for(var i=new so(31),r=0;31>r;++r)i[r]=e+=1<<t[r-1];var s=new no(i[30]);for(r=1;30>r;++r)for(var n=i[r];i[r+1]>n;++n)s[n]=n-i[r]<<5|r;return [i,s]},ho=uo(oo,2),vo=ho[1];ho[0][28]=258,vo[258]=28;for(var co=uo(ao,0)[1],fo=new so(32768),po=0;32768>po;++po){var _o=(43690&po)>>>1|(21845&po)<<1;fo[po]=((65280&(_o=(61680&(_o=(52428&_o)>>>2|(13107&_o)<<2))>>>4|(3855&_o)<<4))>>>8|(255&_o)<<8)>>>1;}var go=function(t,e,i){for(var r=t.length,s=0,n=new so(e);r>s;++s)++n[t[s]-1];var o,a=new so(e);for(s=0;e>s;++s)a[s]=a[s-1]+n[s-1]<<1;for(o=new so(r),s=0;r>s;++s)o[s]=fo[a[t[s]-1]++]>>>15-t[s];return o},mo=new ro(288);for(po=0;144>po;++po)mo[po]=8;for(po=144;256>po;++po)mo[po]=9;for(po=256;280>po;++po)mo[po]=7;for(po=280;288>po;++po)mo[po]=8;var yo=new ro(32);for(po=0;32>po;++po)yo[po]=5;var bo=go(mo,9),wo=go(yo,5),Eo=function(t){return (t/8>>0)+(7&t&&1)},xo=function(t,e,i){(null==i||i>t.length)&&(i=t.length);var r=new(t instanceof so?so:t instanceof no?no:ro)(i-e);return r.set(t.subarray(e,i)),r},So=function(t,e,i){var r=e/8>>0;t[r]|=i<<=7&e,t[r+1]|=i>>>8;},ko=function(t,e,i){var r=e/8>>0;t[r]|=i<<=7&e,t[r+1]|=i>>>8,t[r+2]|=i>>>16;},$o=function(t,e){for(var i=[],r=0;t.length>r;++r)t[r]&&i.push({s:r,f:t[r]});var s=i.length,n=i.slice();if(!s)return [new ro(0),0];if(1==s){var o=new ro(i[0].s+1);return o[i[0].s]=1,[o,1]}i.sort((function(t,e){return t.f-e.f})),i.push({s:-1,f:25001});var a=i[0],l=i[1],u=0,h=1,d=2;for(i[0]={s:-1,f:a.f+l.f,l:a,r:l};h!=s-1;)a=i[i[d].f>i[u].f?u++:d++],l=i[u!=h&&i[d].f>i[u].f?u++:d++],i[h++]={s:-1,f:a.f+l.f,l:a,r:l};var v=n[0].s;for(r=1;s>r;++r)n[r].s>v&&(v=n[r].s);var c=new so(v+1),f=To(i[h-1],c,0);if(f>e){r=0;var p=0,_=f-e,g=1<<_;for(n.sort((function(t,e){return c[e.s]-c[t.s]||t.f-e.f}));s>r;++r){var m=n[r].s;if(e>=c[m])break;p+=g-(1<<f-c[m]),c[m]=e;}for(p>>>=_;p>0;){var y=n[r].s;e>c[y]?p-=1<<e-c[y]++-1:++r;}for(;r>=0&&p;--r){var b=n[r].s;c[b]==e&&(--c[b],++p);}f=e;}return [new ro(c),f]},To=function(t,e,i){return -1==t.s?Math.max(To(t.l,e,i+1),To(t.r,e,i+1)):e[t.s]=i},Ro=function(t){for(var e=t.length;e&&!t[--e];);for(var i=new so(++e),r=0,s=t[0],n=1,o=function(t){i[r++]=t;},a=1;e>=a;++a)if(t[a]==s&&a!=e)++n;else {if(!s&&n>2){for(;n>138;n-=138)o(32754);n>2&&(o(n>10?n-11<<5|28690:n-3<<5|12305),n=0);}else if(n>3){for(o(s),--n;n>6;n-=6)o(8304);n>2&&(o(n-3<<5|8208),n=0);}for(;n--;)o(s);n=1,s=t[a];}return [i.subarray(0,r),e]},Po=function(t,e){for(var i=0,r=0;e.length>r;++r)i+=t[r]*e[r];return i},Oo=function(t,e,i){var r=i.length,s=Eo(e+2);t[s]=255&r,t[s+1]=r>>>8,t[s+2]=255^t[s],t[s+3]=255^t[s+1];for(var n=0;r>n;++n)t[s+n+4]=i[n];return 8*(s+4+r)},Io=function(t,e,i,r,s,n,o,a,l,u,h){So(e,h++,i),++s[256];for(var d=$o(s,15),v=d[0],c=d[1],f=$o(n,15),p=f[0],_=f[1],g=Ro(v),m=g[0],y=g[1],b=Ro(p),w=b[0],E=b[1],x=new so(19),S=0;m.length>S;++S)x[31&m[S]]++;for(S=0;w.length>S;++S)x[31&w[S]]++;for(var k=$o(x,7),T=k[0],R=k[1],P=19;P>4&&!T[lo[P-1]];--P);var O,I,C,M,A=u+5<<3,F=Po(s,mo)+Po(n,yo)+o,D=Po(s,v)+Po(n,p)+o+14+3*P+Po(x,T)+(2*x[16]+3*x[17]+7*x[18]);if(F>=A&&D>=A)return Oo(e,h,t.subarray(l,l+u));if(So(e,h,1+(F>D)),h+=2,F>D){O=go(v,c),I=v,C=go(p,_),M=p;var N=go(T,R);for(So(e,h,y-257),So(e,h+5,E-1),So(e,h+10,P-4),h+=14,S=0;P>S;++S)So(e,h+3*S,T[lo[S]]);h+=3*P;for(var U=[m,w],L=0;2>L;++L){var j=U[L];for(S=0;j.length>S;++S)So(e,h,N[B=31&j[S]]),h+=T[B],B>15&&(So(e,h,j[S]>>>5&127),h+=j[S]>>>12);}}else O=bo,I=mo,C=wo,M=yo;for(S=0;a>S;++S)if(r[S]>255){var B;ko(e,h,O[257+(B=r[S]>>>18&31)]),h+=I[B+257],B>7&&(So(e,h,r[S]>>>23&31),h+=oo[B]);var z=31&r[S];ko(e,h,C[z]),h+=M[z],z>3&&(ko(e,h,r[S]>>>5&8191),h+=ao[z]);}else ko(e,h,O[r[S]]),h+=I[r[S]];return ko(e,h,O[256]),h+I[256]},Co=new no([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Mo=function(){for(var t=new no(256),e=0;256>e;++e){for(var i=e,r=9;--r;)i=(1&i&&3988292384)^i>>>1;t[e]=i;}return t}(),Ao=function(t,e,i){for(;i;++e)t[e]=i,i>>>=8;};function Fo(t,e){ void 0===e&&(e={});var i=function(){var t=4294967295;return {p(e){for(var i=t,r=0;e.length>r;++r)i=Mo[255&i^e[r]]^i>>>8;t=i;},d(){return 4294967295^t}}}(),r=t.length;i.p(t);var s,n,o,a,l,u=(a=10+((s=e).filename&&s.filename.length+1||0),l=8,function(t,e,i,r,s,n){var o=t.length,a=new ro(r+o+5*(1+Math.floor(o/7e3))+s),l=a.subarray(r,a.length-s),u=0;if(!e||8>o)for(var h=0;o>=h;h+=65535){var d=h+65535;o>d?u=Oo(l,u,t.subarray(h,d)):(l[h]=true,u=Oo(l,u,t.subarray(h,o)));}else {for(var v=Co[e-1],c=v>>>13,f=8191&v,p=(1<<i)-1,_=new so(32768),g=new so(p+1),m=Math.ceil(i/3),y=2*m,b=function(e){return (t[e]^t[e+1]<<m^t[e+2]<<y)&p},w=new no(25e3),E=new so(288),x=new so(32),S=0,k=0,T=(h=0,0),R=0,P=0;o>h;++h){var O=b(h),I=32767&h,C=g[O];if(_[I]=C,g[O]=I,h>=R){var M=o-h;if((S>7e3||T>24576)&&M>423){u=Io(t,l,0,w,E,x,k,T,P,h-P,u),T=S=k=0,P=h;for(var A=0;286>A;++A)E[A]=0;for(A=0;30>A;++A)x[A]=0;}var F=2,D=0,N=f,U=I-C&32767;if(M>2&&O==b(h-U))for(var L=Math.min(c,M)-1,j=Math.min(32767,h),B=Math.min(258,M);j>=U&&--N&&I!=C;){if(t[h+F]==t[h+F-U]){for(var z=0;B>z&&t[h+z]==t[h+z-U];++z);if(z>F){if(F=z,D=U,z>L)break;var H=Math.min(U,z-2),q=0;for(A=0;H>A;++A){var V=h-U+A+32768&32767,G=V-_[V]+32768&32767;G>q&&(q=G,C=V);}}}U+=(I=C)-(C=_[I])+32768&32767;}if(D){w[T++]=268435456|vo[F]<<18|co[D];var W=31&vo[F],J=31&co[D];k+=oo[W]+ao[J],++E[257+W],++x[J],R=h+F,++S;}else w[T++]=t[h],++E[t[h]];}}u=Io(t,l,true,w,E,x,k,T,P,h-P,u);}return xo(a,0,r+Eo(u)+s)}(n=t,null==(o=e).level?6:o.level,null==o.mem?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(n.length)))):12+o.mem,a,l)),h=u.length;return function(t,e){var i=e.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=2>e.level?4:9==e.level?2:0,t[9]=3,0!=e.mtime&&Ao(t,4,Math.floor(new Date(e.mtime||Date.now())/1e3)),i){t[3]=8;for(var r=0;i.length>=r;++r)t[r+10]=i.charCodeAt(r);}}(u,e),Ao(u,h-8,i.d()),Ao(u,h-4,r),u}var Do=!!o$1||!!n,No="text/plain",Uo=false,Lo=(t,e)=>{var i=t.split("#"),r=i[1],s=i[0].split("?"),n=s[0],o=s[1];if(!o)return t;var a=o.split("&").filter((t=>t.split("=")[0]!==e)).join("&");return n+(a?"?"+a:"")+(r?"#"+r:"")},jo=function(t,e,i){var r;void 0===i&&(i=true);var s=t.split("?"),n=s[0],o=s[1],a=g({},e),l=null!==(r=null==o?void 0:o.split("&").map((t=>{var e,r=t.split("="),s=r[0],n=i&&null!==(e=a[s])&&void 0!==e?e:r[1];return delete a[s],s+"="+n})))&&void 0!==r?r:[],u=function(t,e){var i,r;void 0===e&&(e="&");var s=[];return Ar(t,(function(t,e){K$1(t)||K$1(e)||"undefined"===e||(i=encodeURIComponent((t=>t instanceof File)(t)?t.name:t.toString()),r=encodeURIComponent(e),s[s.length]=r+"="+i);})),s.join(e)}(a);return u&&l.push(u),l.length>0?n+"?"+l.join("&"):n},Bo=t=>{if(t.Vr)return t.Vr;var e=t.data,i=t.compression;if(e){if(i===io.GZipJS){var r=Fo(function(t,e){var i=t.length;if("undefined"!=typeof TextEncoder)return (new TextEncoder).encode(t);for(var r=new ro(t.length+(t.length>>>1)),s=0,n=function(t){r[s++]=t;},o=0;i>o;++o){if(s+5>r.length){var a=new ro(s+8+(i-o<<1));a.set(r),r=a;}var l=t.charCodeAt(o);128>l?n(l):2048>l?(n(192|l>>>6),n(128|63&l)):l>55295&&57344>l?(n(240|(l=65536+(1047552&l)|1023&t.charCodeAt(++o))>>>18),n(128|l>>>12&63),n(128|l>>>6&63),n(128|63&l)):(n(224|l>>>12),n(128|l>>>6&63),n(128|63&l));}return xo(r,0,s)}(dn$1(e)),{mtime:0});return {contentType:No,body:r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength),estimatedSize:r.byteLength}}if(i===io.Base64){var s=function(t){return t?btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,((t,e)=>String.fromCharCode(parseInt(e,16))))):t}(dn$1(e)),n=(t=>"data="+encodeURIComponent("string"==typeof t?t:dn$1(t)))(s);return {contentType:"application/x-www-form-urlencoded",body:n,estimatedSize:new Blob([n]).size}}var o=dn$1(e);return {contentType:"application/json",body:o,estimatedSize:new Blob([o]).size}}},zo=t=>{var e,i,r=()=>"sendBeacon"===t.transport?{url:jo(t.url,{compression:io.Base64}),encodedBody:Bo(g({},t,{compression:io.Base64,Vr:void 0}))}:{url:Lo(t.url,"compression"),encodedBody:Bo(g({},t,{compression:void 0,Vr:void 0}))};try{e=Bo(t);}catch(e){if(I$1(t.compression,cn$1(t.url,"compression")))return _i.error("Failed to gzip request body, sending uncompressed payload",e),r();throw e}return e&&I$1(t.compression,cn$1(t.url,"compression"))&&!((i=e.body)instanceof ArrayBuffer?O$1(new Uint8Array(i)):ArrayBuffer.isView(i)&&O$1(new Uint8Array(i.buffer,i.byteOffset,i.byteLength)))?(Uo=true,r()):{url:t.url,encodedBody:e}},Ho=t=>{try{return zo(t)}catch(e){return _i.error(e),void(null==t.callback||t.callback({statusCode:0,error:e}))}},qo=function(){var t=_$3((function*(t){var e=dn$1(t.data),i=yield function(t,e,i){return F$1.apply(this,arguments)}(e,f.DEBUG,{rethrow:true});if(!i)return t;var r=yield i.arrayBuffer();return g({},t,{Vr:{contentType:No,body:r,estimatedSize:r.byteLength}})}));return function(e){return t.apply(this,arguments)}}(),Vo=/Failed to fetch|NetworkError|Load failed/i,Go=t=>{var e=Ho(t);if(e){var i=e.url,r=e.encodedBody,s=null!=r?r:{},o=s.contentType,l=s.body,u=s.estimatedSize,h=new Headers;Ar(t.headers,(function(t,e){h.append(e,t);})),o&&h.append("Content-Type",o);var d=null,v=false;if(a){var c=new a;d={signal:c.signal,timeout:setTimeout((()=>{var e,i;v=true,c.abort((e=t.timeout,(i=new Error("PostHog request timed out"+(e?" after "+e+"ms":""))).name="AbortError",i));}),t.timeout)};}var f=e=>{v&&"AbortError"===(null==e?void 0:e.name)||(t=>"TypeError"===(null==t?void 0:t.name)&&Vo.test((null==t?void 0:t.message)||""))(e)?_i.warn(e):_i.error(e),null==t.callback||t.callback({statusCode:0,error:e});};try{var p;n(i,g({method:(null==t?void 0:t.method)||"GET",headers:h,keepalive:"POST"===t.method&&!t.Wr&&52428.8>(u||0),body:l,signal:null==(p=d)?void 0:p.signal},t.fetchOptions)).then((e=>e.text().then((i=>{var r={statusCode:e.status,text:i};if(200===e.status)try{r.json=JSON.parse(i);}catch(t){_i.error(t);}null==t.callback||t.callback(r);})))).catch(f).finally((()=>d?clearTimeout(d.timeout):null));}catch(t){d&&clearTimeout(d.timeout),f(t);}}},Wo=t=>{try{var e=zo(t),r=e.url,s=e.encodedBody,n=null!=s?s:{},o=n.body,a=n.estimatedSize;if(!o)return;var l=o instanceof Blob?o:new Blob([o],{type:n.contentType});if(i$1.sendBeacon(r,l))return;if(V$1(t.data)&&t.data.length>1&&(null!=a?a:0)>16384){var u=Math.ceil(t.data.length/2);return Wo(g({},t,{data:t.data.slice(0,u)})),void Wo(g({},t,{data:t.data.slice(u)}))}_i.warn("Beacon of ~"+(null!=a?a:0)+" bytes was rejected by the browser, falling back to fetch"),Go(g({},t,{Wr:!0}));}catch(t){_i.warn("Beacon send failed",t);}},Jo=["/e/","/s/"],Ko=(t,e,i,r)=>{var s=(t=>{var e=(t=>{var e=vn$1(t),i=(null==e?void 0:e.pathname)||t.split(/[?#]/)[0];return i?"/"===i[0]?i:"/"+i:"/"})(t);return Jo.some((t=>((t,e)=>t.slice(t.length-e.length)===e)(e,t)))})(t),n=s?Lo(t,"ver"):t,o="query"===r?"POST"===e?"sent_at":"_":void 0;return jo(i===io.GZipJS?Lo(n,"compression"):n,g({},o?{[o]:Date.now().toString()}:{},s?{}:{ver:f.JS_SDK_VERSION},i===io.GZipJS?{}:{compression:i}))},Yo=[];n&&Yo.push({transport:"fetch",method:Go}),o$1&&Yo.push({transport:"XHR",method(t){var e=Ho(t);if(e){var i=new o$1,r=e.encodedBody;i.open(t.method||"GET",e.url,true);var s=null!=r?r:{},n=s.contentType,a=s.body;Ar(t.headers,(function(t,e){i.setRequestHeader(e,t);})),n&&i.setRequestHeader("Content-Type",n),t.timeout&&(i.timeout=t.timeout),i.onreadystatechange=()=>{if(4===i.readyState){var e={statusCode:i.status,text:i.responseText};if(200===i.status)try{e.json=JSON.parse(i.responseText);}catch(t){}null==t.callback||t.callback(e);}},i.send(a);}}}),null!=i$1&&i$1.sendBeacon&&Yo.push({transport:"sendBeacon",method:Wo});var Qo=3e3;class Xo{constructor(t,e){this.Zr=true,this.Gr=[],this.Qr=vt$1((null==e?void 0:e.flush_interval_ms)||Qo,250,5e3,_i.createLogger("flush interval"),Qo),this.Jr=t;}enqueue(t){this.Gr.push(t),this.Kr||this.Yr();}unload(){this.Xr();var t=this.Gr.length>0?this.ti():{},e=Object.values(t);[...e.filter((t=>0===t.url.indexOf("/e"))),...e.filter((t=>0!==t.url.indexOf("/e")))].map((t=>{this.ei(g({},t,{transport:"sendBeacon"}));}));}enable(){this.Zr=false,this.Yr();}Yr(){var t=this;this.Zr||(this.Kr=setTimeout((()=>{if(this.Xr(),this.Gr.length>0){var e=this.ti(),i=function(){var i=e[r],s=(new Date).getTime();i.data&&V$1(i.data)&&Ar(i.data,(t=>{t.offset=Math.abs(t.timestamp-s),delete t.timestamp;})),t.ei(i);};for(var r in e)i();}}),this.Qr));}ei(t){try{this.Jr(t);}catch(t){_i.error(t);}}Xr(){clearTimeout(this.Kr),this.Kr=void 0;}ti(){var t={};return Ar(this.Gr,(e=>{var i,r=e,s=(r?r.batchKey:null)||r.url;K$1(t[s])&&(t[s]=g({},r,{data:[]})),null==(i=t[s].data)||i.push(r.data);})),this.Gr=[],t}}var Zo=["retriesPerformedSoFar"];let ta$1 = class ta{constructor(e){this.ri=false,this.ii=3e3,this.Gr=[],this._instance=e,this.Gr=[],this.ni=true,!K$1(t)&&"onLine"in t.navigator&&(this.ni=t.navigator.onLine,this.si=()=>{this.ni=true,this.oi();},this.ai=()=>{this.ni=false;},zr(t,"online",this.si),zr(t,"offline",this.ai));}get length(){return this.Gr.length}retriableRequest(t){var e=t.retriesPerformedSoFar,i=m(t,Zo);et$1(e)&&(i.url=jo(i.url,{retry_count:e})),this._instance._send_request(g({},i,{callback:t=>{if(200!==t.statusCode&&(400>t.statusCode||t.statusCode>=500)){if((0===t.statusCode?3:10)>(null!=e?e:0))return void this.Ot(g({retriesPerformedSoFar:e},i));0===t.statusCode&&_i.warn("Request failed before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped retrying after "+(null!=e?e:0)+" retries.");}null==i.callback||i.callback(t);}}));}Ot(t){var e=t.retriesPerformedSoFar||0;t.retriesPerformedSoFar=e+1;var i=function(t){var e=3e3*Math.pow(2,t),i=e/2,r=Math.min(18e5,e),s=Math.random()-.5;return Math.ceil(r+s*(r-i))}(e),r=Date.now()+i;this.Gr.push({retryAt:r,requestOptions:t});var s="Enqueued failed request for retry in "+i;navigator.onLine||(s+=" (Browser is offline)"),_i.warn(s),this.ri||(this.ri=true,this.li());}li(){if(this.ui&&clearTimeout(this.ui),0===this.Gr.length)return this.ri=false,void(this.ui=void 0);this.ui=setTimeout((()=>{this.ni&&this.Gr.length>0&&this.oi(),this.li();}),this.ii);}oi(){var t=Date.now(),e=[],i=this.Gr.filter((i=>t>i.retryAt||(e.push(i),false)));if(this.Gr=e,i.length>0)for(var r of i)this.retriableRequest(r.requestOptions);}unload(){for(var e of(this.ui&&(clearTimeout(this.ui),this.ui=void 0),this.ri=false,K$1(t)||(this.si&&(t.removeEventListener("online",this.si),this.si=void 0),this.ai&&(t.removeEventListener("offline",this.ai),this.ai=void 0)),this.Gr)){var i=e.requestOptions;try{this._instance._send_request(g({},i,{transport:"sendBeacon"}));}catch(t){_i.error(t);}}this.Gr=[];}};let ea$1 = class ea{constructor(t){this.hi=()=>{var t,e,i,r;this.di||(this.di={});var s=this.scrollElement(),n=this.scrollY(),o=s?Math.max(0,s.scrollHeight-s.clientHeight):0,a=n+((null==s?void 0:s.clientHeight)||0),l=(null==s?void 0:s.scrollHeight)||0;this.di.lastScrollY=Math.ceil(n),this.di.maxScrollY=Math.max(n,null!==(t=this.di.maxScrollY)&&void 0!==t?t:0),this.di.maxScrollHeight=Math.max(o,null!==(e=this.di.maxScrollHeight)&&void 0!==e?e:0),this.di.lastContentY=a,this.di.maxContentY=Math.max(a,null!==(i=this.di.maxContentY)&&void 0!==i?i:0),this.di.maxContentHeight=Math.max(l,null!==(r=this.di.maxContentHeight)&&void 0!==r?r:0);},this._instance=t;}get ci(){return this._instance.config.scroll_root_selector}getContext(){return this.di}resetContext(){var t=this.di;return setTimeout(this.hi,0),t}startMeasuringScrollPosition(){zr(t,"scroll",this.hi,{capture:true}),zr(t,"scrollend",this.hi,{capture:true}),zr(t,"resize",this.hi);}scrollElement(){if(!this.ci)return null==t?void 0:t.document.documentElement;var e=V$1(this.ci)?this.ci:[this.ci];for(var i of e){var r=null==t?void 0:t.document.querySelector(i);if(r)return r}}vi(e){var i="y"===e?"scrollTop":"scrollLeft";if(this.ci){var r=this.scrollElement();return r&&r[i]||0}return t?"y"===e?t.scrollY||t.pageYOffset||t.document.documentElement.scrollTop||0:t.scrollX||t.pageXOffset||t.document.documentElement.scrollLeft||0:0}scrollY(){return this.vi("y")}scrollX(){return this.vi("x")}};var ia$1=t=>Pn(null==t?void 0:t.config.mask_personal_data_properties,null==t?void 0:t.config.custom_personal_data_properties,null==t?void 0:t.config.disable_capture_url_hashes);let ra$1 = class ra{constructor(t,e,i,r){this.fi=t=>{var e=this.pi();if(!e||e.sessionId!==t){var i={sessionId:t,props:this.gi(this._instance)};this.mi.register({[hr$1]:i});}},this._instance=t,this.yi=e,this.mi=i,this.gi=r||ia$1,this.yi.onSessionId(this.fi);}pi(){return this.mi.props[hr$1]}getSetOnceProps(){var t,e=null==(t=this.pi())?void 0:t.props;return e?"r"in e?On(e,this._instance.config.disable_capture_url_hashes):{$referring_domain:e.referringDomain,$pathname:e.initialPathName,utm_source:e.utm_source,utm_campaign:e.utm_campaign,utm_medium:e.utm_medium,utm_content:e.utm_content,utm_term:e.utm_term}:{}}getSessionProps(){var t={};return Ar(Lr(this.getSetOnceProps()),((e,i)=>{"$current_url"===i&&(i="url"),t["$session_entry_"+j$1(i)]=e;})),t}};let sa$1 = class sa{on(t,e){return this.bi[t]||(this.bi[t]=[]),this.bi[t].push(e),()=>{this.bi[t]=this.bi[t].filter((t=>t!==e));}}emit(t,e){for(var i of this.bi[t]||[])i(e);for(var r of this.bi["*"]||[])r(t,e);}constructor(){this.bi={};}};var na$1=gi("[SessionId]");let oa$1 = class oa{on(t,e){return this.wi.on(t,e)}constructor(t,e,i){var r;if(this.xi=null,this.ki=[],this.Si=void 0,this.Ci=false,this.wi=new sa$1,this.Ii=(t,e)=>!(!et$1(t)||!et$1(e))&&Math.abs(t-e)>this.sessionTimeoutMs,!t.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(t.config.cookieless_mode===xr)throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Te=t.config,this.mi=t.persistence,this.Ti=void 0,this.Mi=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.Ei=e||Yr,this.Ri=i||Yr;var s=this.Te.persistence_name||this.Te.token;if(this._sessionTimeoutMs=1e3*vt$1(this.Te.session_idle_timeout_seconds||1800,60,36e3,na$1.createLogger("session_idle_timeout_seconds"),1800),t.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.Pi(),this.Oi="ph_"+s+"_window_id",this.Fi="ph_"+s+"_primary_window_exists",this.Li()){var n=as.F(this.Oi),o=as.F(this.Fi);n&&!o?this.Ti=n:as.P(this.Oi),as.q(this.Fi,true);}if(null!=(r=this.Te.bootstrap)&&r.sessionID)try{var a=(t=>{var e=this.Te.bootstrap.sessionID.replace(/-/g,"");if(32!==e.length)throw new Error("Not a valid UUID");if("7"!==e[12])throw new Error("Not a UUIDv7");return parseInt(e.substring(0,12),16)})();this.$i(this.Te.bootstrap.sessionID,(new Date).getTime(),a);}catch(t){na$1.error("Invalid sessionID in bootstrap",t);}this.Ai();}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(t){return K$1(this.ki)&&(this.ki=[]),this.ki.push(t),this.Mi&&t(this.Mi,this.Ti),()=>{this.ki=this.ki.filter((e=>e!==t));}}Li(){return "memory"!==this.Te.persistence&&!this.mi.yr&&as.N()}Ni(t){t!==this.Ti&&(this.Ti=t,this.Li()&&as.q(this.Oi,t));}Di(){return this.Ti?this.Ti:this.Li()?as.F(this.Oi):null}qi(t){var e=this.xi;return !X$1(e)&&!X$1(t)&&5e3>Math.abs(t-e)}$i(t,e,i){var r=e!==this._sessionActivityTimestamp,s=!(t!==this.Mi||i!==this._sessionStartTimestamp);this._sessionStartTimestamp=i,this._sessionActivityTimestamp=e,this.Mi=t,s&&!r||s&&this.qi(e)||(this.xi=e,this.mi.register({[Bi]:[e,t,i]}));}ji(){var t,e=null==(t=this.Te)?void 0:t.persistence_save_debounce_ms;return et$1(e)&&e>0}Hi(){this.ji()?this.mi.refreshKey(Bi):(this.mi.flush(),this.mi.load());}Bi(){var t;if(!X$1(this._sessionActivityTimestamp)&&this._sessionActivityTimestamp!==this.xi){this.Hi();var e=this.Ui();e[1]===this.Mi&&e[2]===this._sessionStartTimestamp&&(this.xi=this._sessionActivityTimestamp,this.mi.register({[Bi]:[this._sessionActivityTimestamp,null!==(t=this.Mi)&&void 0!==t?t:null,this._sessionStartTimestamp]}),this.mi.flush());}}zi(){var t=this.Ui()[0],e=et$1(t)?t:0,i=et$1(this._sessionActivityTimestamp)?this._sessionActivityTimestamp:0;return Math.max(e,i)}Vi(t){return this.Hi(),this.Ii(t,this.zi())}Ui(){var t=this.mi.props[Bi];return V$1(t)&&2===t.length&&t.push(t[0]),t||[0,null,0]}resetSessionId(){this.xi=null,clearTimeout(this.Wi),this.Wi=void 0,this.$i(null,null,null);}destroy(){this.Ci=true,this.Bi(),clearTimeout(this.Wi),this.Wi=void 0,this.Si&&t&&(t.removeEventListener(Rr,this.Si,{capture:false}),this.Si=void 0),this.ki=[];}Ai(){this.Si=()=>{this.Bi(),this.Li()&&as.P(this.Fi);},zr(t,Rr,this.Si,{capture:false});}checkAndGetSessionAndWindowId(t,e){if(void 0===t&&(t=false),void 0===e&&(e=null),this.Te.cookieless_mode===xr)throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');var i=e||(new Date).getTime(),r=this.Ui(),s=r[1],n=r[2],o=this.zi(),a=this.Di(),l=et$1(n)&&Math.abs(i-n)>864e5,u=false,h=false,d=!s,v=s,c=!d&&!t&&this.Ii(i,o);if(c){(c=this.Vi(i))||na$1.info("cross-tab refresh kept the session alive",{sessionId:s});var f=this.Ui();s=f[1],n=f[2];}d||c||l?(s=this.Ei(),a=this.Ri(),na$1.info("new session ID generated",{sessionId:s,windowId:a,changeReason:{noSessionId:d,activityTimeout:c,sessionPastMaximumLength:l}}),n=i,u=true):(a||(a=this.Ri(),u=true),(h=s!==v)&&(na$1.info("adopted cross-tab session id",{sessionId:s,windowId:a}),u=true));var p=et$1(o)&&t&&!l?o:i,_=et$1(n)?n:(new Date).getTime();this.Ni(a),this.$i(s,p,_),t||this.Pi();var g={noSessionId:d,activityTimeout:c,sessionPastMaximumLength:l,crossTabAdoption:h};return u&&this.ki.forEach((t=>t(s,a,g))),{sessionId:s,windowId:a,sessionStartTimestamp:_,changeReason:u?g:void 0,lastActivityTimestamp:o}}Pi(){this.Ci||(clearTimeout(this.Wi),this.Wi=setTimeout((()=>{if(!this.Ci)if(this.Vi((new Date).getTime())){var t=this.Mi;this.resetSessionId(),this.wi.emit("forcedIdleReset",{idleSessionId:t});}else this.Pi();}),1.1*this.sessionTimeoutMs));}};var aa$1=function(t,e){if(!t)return false;var i=t.userAgent;if(i&&N$1(i,e))return true;try{var r=null==t?void 0:t.userAgentData;if(null!=r&&r.brands&&r.brands.some((t=>N$1(null==t?void 0:t.brand,e))))return !0}catch(t){}return !!t.webdriver};function la$1(){return (la$1=_$3((function*(){var t=null==i$1?void 0:i$1.userAgentData;if(null!=t&&t.getHighEntropyValues)try{var e=yield t.getHighEntropyValues(["model"]),r=null==e?void 0:e.model;return Y$1(r)&&r.length>0?r:void 0}catch(t){return void _i.info("Unable to resolve $device_model from userAgentData.getHighEntropyValues",t)}}))).apply(this,arguments)}var ua$1=function(t,e){if(!function(t){try{new RegExp(t);}catch(t){return false}return true}(e))return false;try{return new RegExp(e).test(t)}catch(t){return false}};function ha$1(t,e,i){return dn$1({distinct_id:t,userPropertiesToSet:e,userPropertiesToSetOnce:i})}var da$1={exact:(t,e)=>e.some((e=>t.some((t=>e===t)))),is_not:(t,e)=>e.every((e=>t.every((t=>e!==t)))),regex:(t,e)=>e.some((e=>t.some((t=>ua$1(e,t))))),not_regex:(t,e)=>e.every((e=>t.every((t=>!ua$1(e,t))))),icontains:(t,e)=>e.map(va$1).some((e=>t.map(va$1).some((t=>e.includes(t))))),not_icontains:(t,e)=>e.map(va$1).every((e=>t.map(va$1).every((t=>!e.includes(t))))),gt:(t,e)=>e.some((e=>{var i=parseFloat(e);return !isNaN(i)&&t.some((t=>i>parseFloat(t)))})),lt:(t,e)=>e.some((e=>{var i=parseFloat(e);return !isNaN(i)&&t.some((t=>i<parseFloat(t)))}))},va$1=t=>t.toLowerCase();function ca$1(t,e){return !t||Object.entries(t).every((t=>{var i=t[1],r=null==e?void 0:e[t[0]];if(K$1(r)||X$1(r))return false;var s=[String(r)],n=da$1[i.operator];return !!n&&n(i.values,s)}))}var fa="custom",pa$1="i.posthog.com",_a$2=/^\/static\//;let ga$1 = class ga{constructor(t){this.Zi={},this.instance=t;}get apiHost(){var t=this.instance.config.api_host.trim().replace(/\/$/,"");return "https://app.posthog.com"===t?"https://us.i.posthog.com":t}get flagsApiHost(){var t=this.instance.config.flags_api_host;return t?t.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var t,e=null==(t=this.instance.config.ui_host)?void 0:t.replace(/\/$/,"");return e||(e=this.apiHost.replace("."+pa$1,".posthog.com")),"https://app.posthog.com"===e?"https://us.posthog.com":e}get region(){return this.Zi[this.apiHost]||(this.Zi[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":fa),this.Zi[this.apiHost]}Gi(t){if(_a$2.test(t)){var e=this.instance.config.asset_host;if("string"==typeof e)return e.trim().replace(/\/$/,"")||void 0}}endpointFor(t,e){if(void 0===e&&(e=""),e&&(e="/"===e[0]?e:"/"+e),"ui"===t)return this.uiHost+e;if("flags"===t)return this.flagsApiHost+e;if("assets"===t){var i=this.Gi(e);if(i)return ""+i+e}if(this.region===fa)return this.apiHost+e;var r=pa$1+e;switch(t){case "assets":return "https://"+this.region+"-assets."+r;case "api":return "https://"+this.region+"."+r}}};function ma$1(t){var e;return !(null==(e=t.conditions)||null==(e=e.events)||null==(e=e.values)||!e.length)}var ya$1=gi("[Surveys]"),ba$1="seenSurvey_",wa$1=t=>{try{var e=(t=>((t,e)=>""+ba$1+function(t){return t.current_iteration&&t.current_iteration>0?t.id+"_"+t.current_iteration:t.id}(e))(0,t))(t);if(localStorage.getItem(e))return;localStorage.setItem(e,"true");}catch(t){ya$1.error("Failed to persist survey seen state",t);}},Ea$1=[Bn$1.Popover,Bn$1.Widget,Bn$1.API],xa$1={ignoreConditions:false,ignoreDelay:false,displayType:Wn.Popover},Sa$1=gi("[PostHog ExternalIntegrations]"),ka={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};let $a$1 = class $a{constructor(t){this._instance=t;}tr(t,e){var i;null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,t,(t=>{if(t)return Sa$1.error("failed to load script",t);e();}));}startIfEnabledOrStop(){var t=this,e=function(){var e,r,s,n=i[0],o=i[1];!o||null!=(e=v$1.__PosthogExtensions__)&&null!=(e=e.integrations)&&e[n]||t.tr(ka[n],(()=>{var e;null==(e=v$1.__PosthogExtensions__)||null==(e=e.integrations)||null==(e=e[n])||e.start(t._instance);})),!o&&null!=(r=v$1.__PosthogExtensions__)&&null!=(r=r.integrations)&&r[n]&&(null==(s=v$1.__PosthogExtensions__)||null==(s=s.integrations)||null==(s=s[n])||s.stop());};for(var i of Object.entries(null!==(r=this._instance.config.integrations)&&void 0!==r?r:{})){var r;e();}}};var Ta$1={},Ra$1=0,Pa$1=()=>{},Oa$1='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',Ia$1="Surveys module not available",Ca$1="sanitize_properties is deprecated. Use before_send instead",Ma$1="Invalid value for property_denylist config: ",Aa$1=["token","distinct_id",gr],Fa$1="posthog",Da$1=!Do&&-1===(null==u?void 0:u.indexOf("MSIE"))&&-1===(null==u?void 0:u.indexOf("Mozilla")),Na$1=e=>{var i;return g({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,asset_host:null,token:"",autocapture:true,cross_subdomain_cookie:Br(null==r?void 0:r.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:Pa$1,save_campaign_params:true,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:true,capture_pageleave:"if_capture_pageview",defaults:null!=e?e:"unset",__preview_deferred_init_extensions:false,__preview_external_dependency_versioned_paths:false,__preview_cookie_wins_on_conflict:false,debug:s$1&&Y$1(null==s$1?void 0:s$1.search)&&-1!==s$1.search.indexOf("__posthog_debug=true")||false,cookie_expiration:365,upgrade:false,disable_session_recording:false,disable_persistence:false,disable_web_experiments:true,disable_surveys:false,disable_surveys_automatic_display:false,disable_conversations:false,disable_product_tours:false,disableDeviceModel:false,disable_external_dependency_loading:false,strict_script_versioning:false,enable_recording_console_log:void 0,secure_cookie:"https:"===(null==t||null==(i=t.location)?void 0:i.protocol),ip:false,opt_out_capturing_by_default:false,opt_out_persistence_by_default:false,opt_out_useragent_filter:false,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:false,property_denylist:[],respect_dnt:false,sanitize_properties:null,request_headers:{},request_batching:true,properties_string_max_length:65535,mask_all_element_attributes:false,mask_all_text:false,mask_personal_data_properties:false,custom_personal_data_properties:[],advanced_disable_flags:false,advanced_disable_decide:false,advanced_disable_feature_flags:false,advanced_disable_feature_flags_on_first_load:false,advanced_only_evaluate_survey_feature_flags:false,advanced_feature_flags_dedup_per_session:false,advanced_enable_surveys:false,advanced_disable_toolbar_metrics:false,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error(t){_i.error("Bad HTTP status: "+t.statusCode+" "+t.text);},get_device_id:t=>t,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:false,session_idle_timeout_seconds:1800,person_profiles:$r,before_send:void 0,get_current_url:void 0,request_queue_config:{flush_interval_ms:Qo},error_tracking:{},_onCapture:Pa$1},(t=>({rageclick:t&&t>="2026-05-30"?{content_ignorelist:Is,ignore_text_selection:true}:!t||"2025-11-30">t||{content_ignorelist:true},capture_pageview:!t||"2025-05-24">t||"history_change",session_recording:t&&t>="2026-06-25"?{strictMinimumDuration:true,canvasCapture:{resolutionScale:.6},streamNetworkBody:true}:t&&t>="2026-05-30"?{strictMinimumDuration:true,canvasCapture:{resolutionScale:.6}}:t&&t>="2025-11-30"?{strictMinimumDuration:true}:{},external_scripts_inject_target:t&&t>="2026-01-30"?"head":"body",internal_or_test_user_hostname:t&&t>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0,persistence_save_debounce_ms:t&&t>="2026-05-30"?250:0,split_storage:!(!t||"2026-05-30">t),detect_google_search_app:!(!t||"2026-05-30">t),disable_capture_url_hashes:!(!t||"2026-06-25">t)}))(e))},Ua$1=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["__preview_disable_beacon","disable_beacon"],["store_google","save_campaign_params"],["verbose","debug"]],La$1=t=>{var e={};for(var i of Ua$1){var r=i[0],s=i[1];K$1(t[r])||(e[s]=t[r]);}var n=Fr({},e,t),o=t.__preview_external_dependency_versioned_paths;return K$1(o)||(K$1(t.strict_script_versioning)&&(n.strict_script_versioning=!!o),Y$1(o)&&K$1(t.asset_host)&&(n.asset_host=o)),V$1(t.property_blacklist)&&(K$1(t.property_denylist)?n.property_denylist=t.property_blacklist:V$1(t.property_denylist)?n.property_denylist=[...t.property_blacklist,...t.property_denylist]:_i.error(Ma$1+t.property_denylist)),n};let ja$1 = class ja{constructor(){this.__forceAllowLocalhost=false;}get Qi(){return this.__forceAllowLocalhost}set Qi(t){_i.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=t;}};let Ba$1 = class Ba{Ji(t,e){if(t){var i=this.Ki.indexOf(t);-1!==i&&this.Ki.splice(i,1);}return this.Ki.push(e),null==e.initialize||e.initialize(),e}Yi(){return this.config.cookieless_mode===xr||this.config.cookieless_mode===Er&&this.consent.isRejected()}get decideEndpointWasHit(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.hasLoadedFlags)&&void 0!==t&&t}get flagsEndpointWasHit(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.hasLoadedFlags)&&void 0!==t&&t}constructor(){var t;this.webPerformance=new ja$1,this.Xi=false,this.version=f.LIB_VERSION,this.tn=new sa$1,this.Ki=[],this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=Na$1(),this.SentryIntegration=nn$1,this.sentryIntegration=t=>function(t,e){var i=sn$1(t,e);return {name:rn$1,processEvent:t=>i(t)}}(this,t),this.__request_queue=[],this.__loaded=false,this.analyticsDefaultEndpoint="/e/",this.en=false,this.rn=null,this.nn=null,this.sn=null,this.scrollManager=new ea$1(this),this.pageViewManager=new on$2(this),this.rateLimiter=new Xn(this),this.requestRouter=new ga$1(this),this.consent=new ls(this),this.externalIntegrations=new $a$1(this);var e=null!==(t=Ba.__defaultExtensionClasses)&&void 0!==t?t:{};this.featureFlags=e.featureFlags&&new e.featureFlags(this),this.toolbar=e.toolbar&&new e.toolbar(this),this.surveys=e.surveys&&new e.surveys(this),this.conversations=e.conversations&&new e.conversations(this),this.logs=e.logs&&new e.logs(this),this.metrics=e.metrics&&new e.metrics(this),this.experiments=e.experiments&&new e.experiments(this),this.exceptions=e.exceptions&&new e.exceptions(this),this.people={set:(t,e,i)=>{var r=Y$1(t)?{[t]:e}:t;this.setPersonProperties(r),null==i||i({});},set_once:(t,e,i)=>{var r=Y$1(t)?{[t]:e}:t;this.setPersonProperties(void 0,r),null==i||i({});}},this.on("eventCaptured",(t=>_i.info('send "'+(null==t?void 0:t.event)+'"',t)));}init(t,e,i){if(i&&i!==Fa$1){var r,s=null!==(r=Ta$1[i])&&void 0!==r?r:new Ba;return s._init(t,e,i),Ta$1[i]=s,Ta$1[Fa$1][i]=s,s}return this._init(t,e,i)}_init(e,i,r){var s,n;void 0===i&&(i={});var o=Y$1(e)?e.trim():"";if(!o)return _i.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;if(this.__loaded)return console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=true,this.config=Na$1(i.defaults),i.debug=this.an(i.debug),this.ln=i,this.un=[],i.person_profiles?this.nn=i.person_profiles:i.process_person&&(this.nn=i.process_person);var a=Na$1(i.defaults),l=La$1(i),u=Fr({},a,l,{name:r,token:o});W$1(a.rageclick)&&W$1(l.rageclick)&&(u.rageclick=Fr({},a.rageclick,l.rageclick)),W$1(a.session_recording)&&W$1(l.session_recording)&&(u.session_recording=Fr({},a.session_recording,l.session_recording)),this.set_config(u),this.config.on_xhr_error&&_i.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=i.disable_compression?void 0:io.GZipJS;var h=this.hn();this.persistence=new Dn$1(this.config,h),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new Dn$1(g({},this.config,{persistence:"sessionStorage"}),h,false);var d=g({},this.persistence.props),v=g({},this.sessionPersistence.props);this.register({$initialization_time:(new Date).toISOString()}),this.dn=new Xo((t=>this.cn(t)),this.config.request_queue_config),this.vn=new ta$1(this),this.__request_queue=[];var c=this.Yi();if(c||(this.sessionManager=new oa$1(this),this.sessionPropsManager=new ra$1(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(_i.info("Deferring extension initialization to improve startup performance"),setTimeout((()=>{this.fn(c);}),0)):(_i.info("Initializing extensions synchronously"),this.fn(c)),f.DEBUG=f.DEBUG||this.config.debug,f.DEBUG&&_i.info("Starting in debug mode",{this:this,config:i,thisC:g({},this.config),p:d,s:v}),!this.config.identity_distinct_id||null!=(s=i.bootstrap)&&s.distinctID||(i.bootstrap=g({},i.bootstrap,{distinctID:this.config.identity_distinct_id,isIdentifiedID:true})),void 0!==(null==(n=i.bootstrap)?void 0:n.distinctID)){var p=i.bootstrap.distinctID,_=this.get_distinct_id(),m=this.persistence.get_property(ur$1);if(i.bootstrap.isIdentifiedID&&null!=_&&_!==p&&m===Sr$1)this.identify(p);else if(i.bootstrap.isIdentifiedID&&null!=_&&_!==p&&m===kr)_i.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else {var y=this.config.get_device_id(Yr()),b=i.bootstrap.isIdentifiedID?y:p;this.persistence.set_property(ur$1,i.bootstrap.isIdentifiedID?kr:Sr$1),this.register({distinct_id:p,$device_id:b});}}if(c)this.register_once({distinct_id:_r$1,$device_id:null},"");else if(!this.get_distinct_id()){var w=this.config.get_device_id(Yr());this.register_once({distinct_id:w,$device_id:w},""),this.persistence.set_property(ur$1,Sr$1);}return zr(t,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:false}),i.segment?function(t,e){var i=t.config.segment;if(!i)return e();!function(t,e){var i=t.config.segment;if(!i)return e();var r=i=>{var r=()=>i.anonymousId()||Yr();t.config.get_device_id=r,i.id()&&(t.register({distinct_id:i.id(),$device_id:r()}),t.persistence.set_property(ur$1,kr)),e();},s=i.user();"then"in s&&G$1(s.then)?s.then(r):r(s);}(t,(()=>{i.register((t=>{"undefined"!=typeof Promise&&Promise.resolve||en$1.warn("This browser does not have Promise support, and can not use the segment integration");var e=(e,i)=>{if(!i)return e;e.event.userId||e.event.anonymousId===t.get_distinct_id()||(en$1.info("No userId set, resetting PostHog"),t.reset()),e.event.userId&&e.event.userId!==t.get_distinct_id()&&(en$1.info("UserId set, identifying with PostHog"),t.identify(e.event.userId));var r=t.calculateEventProperties(i,e.event.properties);return e.event.properties=Object.assign({},r,e.event.properties),e};return {name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>true,load:()=>Promise.resolve(),track:t=>e(t,t.event.event),page:t=>e(t,Pr),identify:t=>e(t,Ir),screen:t=>e(t,"$screen")}})(t)).then((()=>{e();}));}));}(this,(()=>this.pn())):this.pn(),G$1(this.config._onCapture)&&this.config._onCapture!==Pa$1&&(_i.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",(t=>this.config._onCapture(t.event,t)))),this.config.ip&&_i.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this.config.disableDeviceModel||function(){return la$1.apply(this,arguments)}().then((t=>{t&&this.register({[xi]:t});})).catch(Pa$1),this}fn(t){var e,i,r,s,n,o,a,l,u=performance.now(),h=g({},Ba.__defaultExtensionClasses,this.config.__extensionClasses),d=[];h.featureFlags&&this.Ki.push(this.featureFlags=null!==(e=this.featureFlags)&&void 0!==e?e:new h.featureFlags(this)),h.exceptions&&this.Ki.push(this.exceptions=null!==(i=this.exceptions)&&void 0!==i?i:new h.exceptions(this)),h.historyAutocapture&&this.Ki.push(this.historyAutocapture=new h.historyAutocapture(this)),h.tracingHeaders&&this.Ki.push(this.tracingHeaders=new h.tracingHeaders(this)),h.siteApps&&this.Ki.push(this.siteApps=new h.siteApps(this)),h.sessionRecording&&!t&&this.Ki.push(this.sessionRecording=new h.sessionRecording(this)),this.config.disable_scroll_properties||d.push((()=>{this.scrollManager.startMeasuringScrollPosition();})),h.autocapture&&this.Ki.push(this.autocapture=new h.autocapture(this)),h.surveys&&this.Ki.push(this.surveys=null!==(r=this.surveys)&&void 0!==r?r:new h.surveys(this)),h.logs&&this.Ki.push(this.logs=null!==(s=this.logs)&&void 0!==s?s:new h.logs(this)),h.metrics&&this.Ki.push(this.metrics=null!==(n=this.metrics)&&void 0!==n?n:new h.metrics(this)),h.conversations&&this.Ki.push(this.conversations=null!==(o=this.conversations)&&void 0!==o?o:new h.conversations(this)),h.productTours&&this.Ki.push(this.productTours=new h.productTours(this)),h.heatmaps&&this.Ki.push(this.heatmaps=new h.heatmaps(this)),h.webVitalsAutocapture&&this.Ki.push(this.webVitalsAutocapture=new h.webVitalsAutocapture(this)),h.exceptionObserver&&this.Ki.push(this.exceptionObserver=new h.exceptionObserver(this)),h.deadClicksAutocapture&&this.Ki.push(this.deadClicksAutocapture=new h.deadClicksAutocapture(this,Zs)),h.toolbar&&this.Ki.push(this.toolbar=null!==(a=this.toolbar)&&void 0!==a?a:new h.toolbar(this)),h.experiments&&this.Ki.push(this.experiments=null!==(l=this.experiments)&&void 0!==l?l:new h.experiments(this)),this.Ki.forEach((t=>{t.initialize&&d.push((()=>{null==t.initialize||t.initialize();}));})),d.push((()=>{if(this.gn){var t=this.gn;this.gn=void 0,this.Hr(t);}})),this.mn(d,u);}mn(t,e){for(;t.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-e>=30&&t.length>0)return void setTimeout((()=>{this.mn(t,e);}),0);var i=t.shift();if(i)try{i();}catch(t){_i.error("Error initializing extension:",t);}}var r=Math.round(performance.now()-e);this.register_for_session({[mr$1]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[yr]:r}),this.config.__preview_deferred_init_extensions&&_i.info("PostHog extensions initialized ("+r+"ms)");}Hr(t){if(!r||!r.body)return _i.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout((()=>{this.Hr(t);}),500);if(this.config.__preview_deferred_init_extensions&&(this.gn=t),this.yn=t,this.compression=void 0,t.ok){var e,i=t.config;i.supportedCompression&&!this.config.disable_compression&&(this.compression=U$1(i.supportedCompression,io.GZipJS)?io.GZipJS:U$1(i.supportedCompression,io.Base64)?io.Base64:void 0),null!=(e=i.analytics)&&e.endpoint&&(this.analyticsDefaultEndpoint=i.analytics.endpoint);}this.set_config({person_profiles:this.nn?this.nn:$r}),this.Ki.forEach((e=>null==e.onRemoteConfig?void 0:e.onRemoteConfig(t)));}pn(){try{this.config.loaded(this);}catch(t){_i.critical("`loaded` function failed",t);}if(this.bn(),this.config.internal_or_test_user_hostname&&null!=s$1&&s$1.hostname){var t=s$1.hostname,e=this.config.internal_or_test_user_hostname;("string"==typeof e?t===e:e.test(t))&&this.setInternalOrTestUser();}this.config.capture_pageview&&setTimeout((()=>{(this.consent.isOptedIn()||this.Yi())&&this._n();}),1),this.wn=new to(this),this.wn.load();}bn(){var t;this.is_capturing()&&this.config.request_batching&&(null==(t=this.dn)||t.enable());}_dom_loaded(){this.is_capturing()&&Mr(this.__request_queue,(t=>this.cn(t))),this.__request_queue=[],this.bn();}_handle_unload(){var t,e,i,r,s;null==(t=this.surveys)||null==t.handlePageUnload||t.handlePageUnload(),null==(e=this.metrics)||e.flush("sendBeacon"),this.config.request_batching?(this.xn()&&this.capture(Or),null==(i=this.logs)||i.flushLogs("sendBeacon"),null==(r=this.dn)||r.unload(),null==(s=this.vn)||s.unload()):this.xn()&&this.capture(Or,null,{transport:"sendBeacon"});}_send_request(t){this.__loaded?Da$1?this.__request_queue.push(t):this.rateLimiter.isServerRateLimited(t.batchKey)?t.fireCallbackOnDrop&&(null==t.callback||t.callback({statusCode:429})):(t.transport=t.transport||this.config.api_transport,t.headers=g({},this.config.request_headers,t.headers),t.compression="best-available"===t.compression?this.compression:t.compression,(K$1(this.config.disable_beacon)?this.config.__preview_disable_beacon:this.config.disable_beacon)&&(t.disableTransport=["sendBeacon"]),t.fetchOptions=t.fetchOptions||this.config.fetch_options,(t=>{var e,i,r,s=g({},t);s.timeout=s.timeout||6e4;var n=null!==(e=s.transport)&&void 0!==e?e:"fetch";"sendBeacon"===n&&K$1(s.compression)&&s.data&&(s.compression=io.Base64),"body"===s.timestampMode&&"POST"===s.method&&s.data&&!V$1(s.data)&&(s.data=g({},s.data,{sent_at:(new Date).toISOString()})),s.url=Ko(s.url,s.method,s.compression,s.timestampMode);var o=Yo.filter((t=>!s.disableTransport||!t.transport||!s.disableTransport.includes(t.transport))),a=null!==(i=null==(r=function(t,e){for(var i=0;t.length>i;i++)if(t[i].transport===n)return t[i]}(o))?void 0:r.method)&&void 0!==i?i:o[0].method;if(!a)throw new Error("No available transport method");"sendBeacon"!==n&&s.data&&s.compression===io.GZipJS&&l&&"undefined"!=typeof Promise&&!Uo?qo(s).then((t=>{a(t);})).catch((e=>{if(C(e))return Uo=true,void a(g({},s,{compression:void 0,url:Ko(t.url,t.method,void 0,t.timestampMode)}));(t=>{if(!t||"object"!=typeof t)return false;var e="name"in t?String(t.name):"";return C(t)||e===P$1})(e)&&(Uo=true),a(s);})):a(s);})(g({},t,{callback:e=>{var i,r;this.rateLimiter.checkForLimiting(e),400>e.statusCode||null==(i=(r=this.config).on_request_error)||i.call(r,e),null==t.callback||t.callback(e);}}))):t.fireCallbackOnDrop&&(null==t.callback||t.callback({statusCode:0}));}cn(t){this.vn?this.vn.retriableRequest(t):this._send_request(t);}_execute_array(t){Ra$1++;try{var e,i=[],r=[],s=[];Mr(t,(t=>{if(t)if(V$1(e=t[0]))s.push(t);else if(G$1(t))try{t.call(this);}catch(e){_i.error("Error executing queued PostHog call",t,e);}else V$1(t)&&"alias"===e?i.push(t):V$1(t)&&-1!==e.indexOf("capture")&&G$1(this[e])?s.push(t):r.push(t);}));var n=function(t,e){Mr(t,(function(t){try{if(V$1(t[0])){var i=e;Ar(t,(function(t){i=i[t[0]].apply(i,t.slice(1));}));}else e[t[0]].apply(e,t.slice(1));}catch(e){_i.error("Error executing queued PostHog call",t,e);}}));};n(i,this),n(r,this),n(s,this);}finally{Ra$1--;}}push(t){if(Ra$1>0&&V$1(t)&&Y$1(t[0])){var e=Ba.prototype[t[0]];G$1(e)&&e.apply(this,t.slice(1));}else this._execute_array([t]);}capture(t,e,i){var r,s,n,o,a;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.dn){if(this.is_capturing())if(!K$1(t)&&Y$1(t)){var l=!this.config.opt_out_useragent_filter&&this._is_bot();if(!l||this.config.__preview_capture_bot_pageviews){var u=null!=i&&i.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(null==u||!u.isRateLimited){null!=e&&e.$current_url&&!Y$1(null==e?void 0:e.$current_url)&&(_i.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),null==e||delete e.$current_url),"$exception"!==t||null!=i&&i.kn||_i.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&this.sessionPersistence.update_campaign_params(),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();var h=new Date,d=(null==i?void 0:i.timestamp)||h,v=ye$2(null==i?void 0:i.uuid,Yr),c={uuid:v,event:t,properties:this.calculateEventProperties(t,e||{},d,v)};t===Pr&&this.config.__preview_capture_bot_pageviews&&l&&(c.event="$bot_pageview",c.properties.$browser_type="bot"),u&&(c.properties.$lib_rate_limit_remaining_tokens=u.remainingTokens);var f="$feature_flag_called"===t&&false===c.properties.$feature_flag_has_experiment&&true===this.get_property(Ki);(null==i?void 0:i.$set)&&!f&&(c.$set=null==i?void 0:i.$set);var p=null==i?void 0:i.$unset;p&&(c.$unset=p);var _,m,y,b=f?void 0:this.Sn(null==i?void 0:i.$set_once,t!==Cr,t===Ir);if(b&&(c.$set_once=b),null!=i&&i._noTruncate||(s=this.config.properties_string_max_length,n=c,o=t=>Y$1(t)?t.slice(0,s):t,a=new Set,c=function t(e,i){if(e!==Object(e))return o?o(e):e;if(!a.has(e)){var r;if(a.add(e),V$1(e))r=[],Mr(e,(e=>{r.push(t(e));}));else {var s={};Ar(e,((e,i)=>{a.has(e)||(s[i]=t(e));})),r=s;}return r}}(n)),c.timestamp=d,K$1(null==i?void 0:i.timestamp)||(c.properties.$event_time_override_provided=true,c.properties.$event_time_override_system_time=h),f&&(c.properties=function(t,e){ void 0===e&&(e=[]);var i={},r=e=>{ void 0!==t[e]&&(i[e]=t[e]);};return x$1.forEach(r),e.forEach(r),i}(c.properties,Aa$1)),t===Vn.DISMISSED||t===Vn.SENT){var w=null==e?void 0:e[Gn.SURVEY_ID],E=null==e?void 0:e[Gn.SURVEY_ITERATION];wa$1({id:w,current_iteration:E}),c.$set=g({},c.$set,{[(_={id:w,current_iteration:E},m=t===Vn.SENT?"responded":"dismissed",y="$survey_"+m+"/"+_.id,_.current_iteration&&_.current_iteration>0&&(y="$survey_"+m+"/"+_.id+"/"+_.current_iteration),y)]:true});}else t===Vn.SHOWN&&(c.$set=g({},c.$set,{[Gn.SURVEY_LAST_SEEN_DATE]:(new Date).toISOString()}));if(t===Kn.SHOWN){var S=null==e?void 0:e[Yn.TOUR_TYPE];S&&(c.$set=g({},c.$set,{[Yn.TOUR_LAST_SEEN_DATE+"/"+S]:(new Date).toISOString()}));}var k=g({},c.properties.$set,c.$set);if(J$1(k)||this.setPersonPropertiesForFlags(k),!Z$1(this.config.before_send)){var T=this.Rt(c);if(!T)return;(c=T).uuid=ye$2(c.uuid,Yr);}this.tn.emit("eventCaptured",c);var R={method:"POST",url:null!==(r=null==i?void 0:i._url)&&void 0!==r?r:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),data:c,compression:"best-available",timestampMode:"query",batchKey:null==i?void 0:i._batchKey,transport:null==i?void 0:i.transport};return !this.config.request_batching||i&&(null==i||!i._batchKey)||null!=i&&i.send_instantly?this.cn(R):this.dn.enqueue(R),c}_i.critical("This capture call is ignored due to client rate limiting.");}}else _i.error("No event name provided to posthog.capture");}else _i.uninitializedWarning("posthog.capture");}_addCaptureHook(t){return this.on("eventCaptured",(e=>t(e.event,e)))}calculateEventProperties(e,i,n,o,a){if(n=n||new Date,!this.persistence||!this.sessionPersistence)return i;var l=a?void 0:this.persistence.remove_event_timer(e),h=g({},i);if(h.token=this.config.token,h.$config_defaults=this.config.defaults,this.Yi()&&(h[gr]=true),"$snapshot"===e){var d=g({},this.persistence.properties(),this.sessionPersistence.properties());return h.distinct_id=d.distinct_id,(!Y$1(h.distinct_id)&&!tt$1(h.distinct_id)||Q$1(h.distinct_id))&&_i.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),h}var v,c=function(e,i,r,n){var o,a,l,h;if(void 0===n&&(n=false),!u)return {};var d,v=e?[...yn$1,...i||[]]:[],c=function(t){for(var e=0;_e$2.length>e;e++){var i=_e$2[e],r=i[1],s=i[0].exec(t),n=s&&(G$1(r)?r(s,t):r);if(n)return n}return ["",""]}(u),p=c[0],_=c[1],g=null!=(d="undefined"!=typeof navigator?navigator:void 0)&&d.brave?{brave:true}:{},m={};K$1(r)||(m.detectGoogleSearchApp=r);var y={},b=null==(o=navigator)||null==(o=o.userAgentData)?void 0:o.platform,w=null==(a=navigator)?void 0:a.maxTouchPoints,E=null==t||null==(l=t.screen)?void 0:l.width,x=null==t||null==(h=t.screen)?void 0:h.height,S=null==t?void 0:t.devicePixelRatio;K$1(b)||(y.userAgentDataPlatform=b),K$1(w)||(y.maxTouchPoints=w),K$1(E)||(y.screenWidth=E),K$1(x)||(y.screenHeight=x),K$1(S)||(y.devicePixelRatio=S);var k,T,R,P,O,I,C,M,A=Fr(Lr({$os:p,$os_version:_,$browser:ce$2(u,navigator.vendor,g,m),$device:ge$2(u),$device_type:(T=u,R=y,M=ge$2(T),M===yt$1||M===mt$1||"Kobo"===M||"Kindle Fire"===M||M===Kt$1?gt$1:M===Ut$1||M===jt$1||M===Lt$1||M===Gt$1?"Console":M===wt$1?"Wearable":M?ft$1:"Android"===(null==R?void 0:R.userAgentDataPlatform)&&(null!==(P=null==R?void 0:R.maxTouchPoints)&&void 0!==P?P:0)>0?600>Math.min(null!==(O=null==R?void 0:R.screenWidth)&&void 0!==O?O:0,null!==(I=null==R?void 0:R.screenHeight)&&void 0!==I?I:0)/(null!==(C=null==R?void 0:R.devicePixelRatio)&&void 0!==C?C:1)?ft$1:gt$1:"Desktop"),$timezone:In$1(),$timezone_offset:Cn$1()}),{$current_url:fn$1(n?be$1(null==s$1?void 0:s$1.href):null==s$1?void 0:s$1.href,v,wn$1),$host:null==s$1?void 0:s$1.host,$pathname:null==s$1?void 0:s$1.pathname,$raw_user_agent:u.length>1e3?u.substring(0,997)+"...":u,$browser_version:pe$2(u,navigator.vendor,g,m),$browser_language:$n(),$browser_language_prefix:(k=$n(),"string"==typeof k?k.split("-")[0]:void 0),$screen_height:null==t?void 0:t.screen.height,$screen_width:null==t?void 0:t.screen.width,$viewport_height:null==t?void 0:t.innerHeight,$viewport_width:null==t?void 0:t.innerWidth,$lib:f.LIB_NAME,$lib_version:f.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3});return f.SDK_DIST_CHANNEL&&(A.$sdk_dist_channel=f.SDK_DIST_CHANNEL),A}(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties,this.config.detect_google_search_app,this.config.disable_capture_url_hashes);if(this.sessionManager){var p=this.sessionManager.checkAndGetSessionAndWindowId(a,n.getTime()),_=p.windowId;h.$session_id=p.sessionId,h.$window_id=_;}this.sessionPropsManager&&Fr(h,this.sessionPropsManager.getSessionProps());try{var m;this.sessionRecording&&Fr(h,this.sessionRecording.sdkDebugProperties),h.$sdk_debug_retry_queue_size=null==(m=this.vn)?void 0:m.length;}catch(t){h.$sdk_debug_error_capturing_properties=String(t);}if(this.requestRouter.region===fa&&(h.$lib_custom_api_host=this.config.api_host),v=e!==Pr||a?e!==Or||a?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(n):this.pageViewManager.doPageView(n,o),h=Fr(h,v),e===Pr&&r&&(h.title=r.title),!K$1(l)){var y=n.getTime()-l;h.$duration=parseFloat((y/1e3).toFixed(3));}u&&this.config.opt_out_useragent_filter&&(h.$browser_type=this._is_bot()?"bot":"browser");var b=this.persistence.properties(),w=this.sessionPersistence.properties();Ar(["$referrer","$referring_domain"],(t=>{t in b&&delete w[t];})),(h=Fr({},c,b,w,h)).$is_identified=this._isIdentified(),V$1(this.config.property_denylist)?Ar(this.config.property_denylist,(function(t){delete h[t];})):_i.error(Ma$1+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);var E=this.config.sanitize_properties;E&&(_i.error(Ca$1),h=E(h,e));var x=this.Cn();return h.$process_person_profile=x,x&&!a&&this.In("_calculate_event_properties"),h}Sn(t,e,i){var r;if(void 0===e&&(e=true),void 0===i&&(i=false),!this.persistence||!this.Cn())return t;if(this.Xi&&!i)return t;var s=this.persistence.get_initial_props(),n=null==(r=this.sessionPropsManager)?void 0:r.getSetOnceProps(),o=Fr({},s,n||{},t||{}),a=this.config.sanitize_properties;return a&&(_i.error(Ca$1),o=a(o,"$set_once")),e&&(this.Xi=true),J$1(o)?void 0:o}register(t,e){var i;null==(i=this.persistence)||i.register(t,e);}register_once(t,e,i){var r;null==(r=this.persistence)||r.register_once(t,e,i);}register_for_session(t){var e;null==(e=this.sessionPersistence)||e.register(t);}unregister(t){var e;null==(e=this.persistence)||e.unregister(t);}unregister_for_session(t){var e;null==(e=this.sessionPersistence)||e.unregister(t);}Tn(t,e){this.register({[t]:e});}getFeatureFlag(t,e){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlag(t,e)}getFeatureFlagPayload(t){var e;return null==(e=this.featureFlags)?void 0:e.getFeatureFlagPayload(t)}getFeatureFlagResult(t,e){var i;return null==(i=this.featureFlags)?void 0:i.getFeatureFlagResult(t,e)}getAllFeatureFlags(){var t,e;return null!==(t=null==(e=this.featureFlags)?void 0:e.getAllFeatureFlags())&&void 0!==t?t:[]}isFeatureEnabled(t,e){var i,r;return null!==(i=null==(r=this.featureFlags)?void 0:r.isFeatureEnabled(t,e))&&void 0!==i?i:null==e?void 0:e.defaultValue}reloadFeatureFlags(){var t;null==(t=this.featureFlags)||t.reloadFeatureFlags();}updateFlags(t,e,i){var r;null==(r=this.featureFlags)||r.updateFlags(t,e,i);}updateEarlyAccessFeatureEnrollment(t,e,i){var r;null==(r=this.featureFlags)||r.updateEarlyAccessFeatureEnrollment(t,e,i);}getEarlyAccessFeatures(t,e,i){var r;return void 0===e&&(e=false),null==(r=this.featureFlags)?void 0:r.getEarlyAccessFeatures(t,e,i)}on(t,e){return this.tn.on(t,e)}onFeatureFlags(t){return this.featureFlags?this.featureFlags.onFeatureFlags(t):(t([],{},{errorsLoading:true}),()=>{})}onSurveysLoaded(t){return this.surveys?this.surveys.onSurveysLoaded(t):(t([],{isLoaded:false,error:Ia$1}),()=>{})}onSessionId(t){var e,i;return null!==(e=null==(i=this.sessionManager)?void 0:i.onSessionId(t))&&void 0!==e?e:()=>{}}getSurveys(t,e){ void 0===e&&(e=false),this.surveys?this.surveys.getSurveys(t,e):t([],{isLoaded:false,error:Ia$1});}getActiveMatchingSurveys(t,e){ void 0===e&&(e=false),this.surveys?this.surveys.getActiveMatchingSurveys(t,e):t([],{isLoaded:false,error:Ia$1});}renderSurvey(t,e){var i;null==(i=this.surveys)||i.renderSurvey(t,e);}displaySurvey(t,e){var i;void 0===e&&(e=xa$1),null==(i=this.surveys)||i.displaySurvey(t,e);}cancelPendingSurvey(t){var e;null==(e=this.surveys)||e.cancelPendingSurvey(t);}canRenderSurvey(t){var e,i;return null!==(e=null==(i=this.surveys)?void 0:i.canRenderSurvey(t))&&void 0!==e?e:{visible:false,disabledReason:Ia$1}}canRenderSurveyAsync(t,e){var i,r;return void 0===e&&(e=false),null!==(i=null==(r=this.surveys)?void 0:r.canRenderSurveyAsync(t,e))&&void 0!==i?i:Promise.resolve({visible:false,disabledReason:Ia$1})}Mn(t){return !t||Q$1(t)?(_i.critical("Unique user id has not been set in posthog.identify"),false):t===_r$1?(_i.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.'),false):!["distinct_id","distinctid"].includes(t.toLowerCase())&&!["undefined","null"].includes(t.toLowerCase())||(_i.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.'),false)}identify(t,e,i){if(!this.__loaded||!this.persistence)return _i.uninitializedWarning("posthog.identify");if(tt$1(t)&&(t=t.toString(),_i.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),this.Mn(t)&&this.In("posthog.identify")){var r=this.get_distinct_id();this.register({$user_id:t}),this.get_property(Ei)||this.register_once({$had_persisted_distinct_id:true,$device_id:r},""),t!==r&&t!==this.get_property(Si)&&(this.unregister(Si),this.register({distinct_id:t}));var s,n=(this.persistence.get_property(ur$1)||Sr$1)===Sr$1;t!==r&&n?(this.persistence.set_property(ur$1,kr),this.setPersonPropertiesForFlags({$set:e||{},$set_once:i||{}},false),this.capture(Ir,{distinct_id:t,$anon_distinct_id:r},{$set:e||{},$set_once:i||{}}),this.sn=ha$1(t,e,i),null==(s=this.featureFlags)||s.setAnonymousDistinctId(r)):(e||i)&&this.setPersonProperties(e,i),t!==r&&(this.reloadFeatureFlags(),this.unregister(nr$1));}}setPersonProperties(t,e){if((t||e)&&this.In("posthog.setPersonProperties")){var i=ha$1(this.get_distinct_id(),t,e);this.sn!==i?(this.setPersonPropertiesForFlags({$set:t||{},$set_once:e||{}},true),this.capture("$set",{$set:t||{},$set_once:e||{}}),this.sn=i):_i.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.");}}unsetPersonProperties(t){var e,i=(V$1(t)?t:[t]).filter((t=>Y$1(t)&&t.length>0));0!==i.length&&this.In("posthog.unsetPersonProperties")&&(null==(e=this.featureFlags)||e.unsetPersonPropertiesForFlags(i,true),this.capture("$set",{$unset:i}),this.sn=null);}group(t,e,i){if(t&&e){var r=this.getGroups(),s=r[t]!==e;if(s&&this.resetGroupPropertiesForFlags(t),this.register({$groups:g({},r,{[t]:e})}),s||i){var n={$group_type:t,$group_key:e};i&&(n.$group_set=i),this.capture(Cr,n);}i&&this.setGroupPropertiesForFlags({[t]:i}),s&&!i&&this.reloadFeatureFlags();}else _i.error("posthog.group requires a group type and group key");}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags();}setPersonPropertiesForFlags(t,e){var i;void 0===e&&(e=true),null==(i=this.featureFlags)||i.setPersonPropertiesForFlags(t,e);}resetPersonPropertiesForFlags(t){var e;void 0===t&&(t=true),null==(e=this.featureFlags)||e.resetPersonPropertiesForFlags(t);}setGroupPropertiesForFlags(t,e){var i;void 0===e&&(e=true),this.In("posthog.setGroupPropertiesForFlags")&&(null==(i=this.featureFlags)||i.setGroupPropertiesForFlags(t,e));}resetGroupPropertiesForFlags(t){var e;null==(e=this.featureFlags)||e.resetGroupPropertiesForFlags(t);}reset(t){var e,i,r,s,n,o,a,l,u,h;if(_i.info("reset"),!this.__loaded)return _i.uninitializedWarning("posthog.reset");var d,v=this.get_property(Ei),c=this.get_property(xi),f=this.get_property(Fi);if(this.consent.reset(),null==(e=this.persistence)||e.clear(),null==(i=this.sessionPersistence)||i.clear(),K$1(f)||null==(d=this.persistence)||d.register({[Fi]:f}),null==(r=this.surveys)||r.reset(),null==(s=this.wn)||s.stop(),null==(n=this.featureFlags)||n.reset(),null==(o=this.conversations)||o.reset(),null==(a=this.logs)||a.reset(),null==(l=this.metrics)||l.reset(),null==(u=this.persistence)||u.set_property(ur$1,Sr$1),null==(h=this.sessionManager)||h.resetSessionId(),this.sn=null,this.config.cookieless_mode===xr)this.register_once({distinct_id:_r$1,$device_id:null},"");else {var p=this.config.get_device_id(Yr());this.register_once({distinct_id:p,$device_id:t?p:v},""),t||K$1(c)||this.register({[xi]:c});}this.register({$last_posthog_reset:(new Date).toISOString()},1),delete this.config.identity_distinct_id,delete this.config.identity_hash,this.reloadFeatureFlags();}shutdown(t){var e=this;return _$3((function*(){var t,i,r,s,n;e.__loaded?(null==(t=e.logs)||t.flushLogs("sendBeacon"),null==(i=e.metrics)||i.flush("sendBeacon"),null==(r=e.dn)||r.unload(),null==(s=e.vn)||s.unload(),null==(n=e.featureFlags)||n.destroy()):_i.uninitializedWarning("posthog.shutdown");}))()}setIdentity(t,e){var i;this.config.identity_distinct_id=t,this.config.identity_hash=e,this.alias(t),null==(i=this.conversations)||i.En();}clearIdentity(){var t;delete this.config.identity_distinct_id,delete this.config.identity_hash,null==(t=this.conversations)||t.Rn();}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var t,e;return null!==(t=null==(e=this.sessionManager)?void 0:e.checkAndGetSessionAndWindowId(true).sessionId)&&void 0!==t?t:""}get_session_replay_url(t){if(!this.sessionManager)return "";var e=this.sessionManager.checkAndGetSessionAndWindowId(true),i=e.sessionStartTimestamp,r=this.requestRouter.endpointFor("ui","/project/"+this.config.token+"/replay/"+e.sessionId);if(null!=t&&t.withTimestamp&&i){var s,n=null!==(s=t.timestampLookBack)&&void 0!==s?s:10;if(!i)return r;r+="?t="+Math.max(Math.floor(((new Date).getTime()-i)/1e3)-n,0);}return r}alias(t,e){return t===this.get_property(wi)?(_i.critical("Attempting to create alias for existing People user - aborting."),-2):this.In("posthog.alias")?(K$1(e)&&(e=this.get_distinct_id()),t!==e?(this.Tn(Si,t),this.capture("$create_alias",{alias:t,distinct_id:e})):(_i.warn("alias matches current distinct_id - skipping api call."),this.identify(t),-1)):void 0}set_config(t){var e=g({},this.config);if(W$1(t)){var i,r,s,n,o,a,l,u,h,d,v;Fr(this.config,La$1(t));var c=this.hn();null==(i=this.persistence)||i.update_config(this.config,e,c),this.sessionPersistence="sessionStorage"===this.config.persistence||"memory"===this.config.persistence?this.persistence:new Dn$1(g({},this.config,{persistence:"sessionStorage"}),c,false);var p=this.an(this.config.debug);it$1(p)&&(this.config.debug=p),it$1(this.config.debug)&&(this.config.debug?(f.DEBUG=true,is.N()&&is.q("ph_debug",true),_i.info("set_config",{config:t,oldConfig:e,newConfig:g({},this.config)})):(f.DEBUG=false,is.N()&&is.P("ph_debug"))),null==(r=this.exceptionObserver)||r.onConfigChange(),null==(s=this.exceptions)||s.onConfigChange(),null==(n=this.sessionRecording)||n.startIfEnabledOrStop(),null==(o=this.tracingHeaders)||o.startIfEnabledOrStop(),null==(a=this.autocapture)||a.startIfEnabled(),null==(l=this.heatmaps)||l.startIfEnabled(),null==(u=this.exceptionObserver)||u.startIfEnabledOrStop(),null==(h=this.deadClicksAutocapture)||h.startIfEnabledOrStop(),null==(d=this.surveys)||d.loadIfEnabled(),this.Pn(),null==(v=this.externalIntegrations)||v.startIfEnabledOrStop();}}_overrideSDKInfo(t,e){f.LIB_NAME=t,f.LIB_VERSION=e;}startSessionRecording(t){var e,i,r,s,n,o=true===t,a={sampling:o||!(null==t||!t.sampling),linked_flag:o||!(null==t||!t.linked_flag),url_trigger:o||!(null==t||!t.url_trigger),event_trigger:o||!(null==t||!t.event_trigger)};Object.values(a).some(Boolean)&&(null==(e=this.sessionManager)||e.checkAndGetSessionAndWindowId(),a.sampling&&(null==(i=this.sessionRecording)||i.overrideSampling()),a.linked_flag&&(null==(r=this.sessionRecording)||r.overrideLinkedFlag()),a.url_trigger&&(null==(s=this.sessionRecording)||s.overrideTrigger("url")),a.event_trigger&&(null==(n=this.sessionRecording)||n.overrideTrigger("event")));this.set_config({disable_session_recording:false});}stopSessionRecording(){this.set_config({disable_session_recording:true});}sessionRecordingStarted(){var t;return !(null==(t=this.sessionRecording)||!t.started)}captureException(t,e){if(this.exceptions){var i=new Error("PostHog syntheticException"),r=this.exceptions.buildProperties(t,{handled:true,syntheticException:i});return this.exceptions.sendExceptionEvent(g({},r,e))}}addExceptionStep(t,e){var i;null==(i=this.exceptions)||i.addExceptionStep(t,e);}captureLog(t){var e;null==(e=this.logs)||e.captureLog(t);}get logger(){var t,e;return null!==(t=null==(e=this.logs)?void 0:e.logger)&&void 0!==t?t:Ba.On}startExceptionAutocapture(t){this.set_config({capture_exceptions:null==t||t});}stopExceptionAutocapture(){this.set_config({capture_exceptions:false});}loadToolbar(t){var e,i;return null!==(e=null==(i=this.toolbar)?void 0:i.loadToolbar(t))&&void 0!==e&&e}get_property(t){var e;return null==(e=this.persistence)?void 0:e.props[t]}getSessionProperty(t){var e;return null==(e=this.sessionPersistence)?void 0:e.props[t]}toString(){var t,e=null!==(t=this.config.name)&&void 0!==t?t:Fa$1;return e!==Fa$1&&(e=Fa$1+"."+e),e}_isIdentified(){var t,e;return (null==(t=this.persistence)?void 0:t.get_property(ur$1))===kr||(null==(e=this.sessionPersistence)?void 0:e.get_property(ur$1))===kr}Cn(){var t,e;return !("never"===this.config.person_profiles||this.config.person_profiles===$r&&!this._isIdentified()&&J$1(this.getGroups())&&(null==(t=this.persistence)||null==(t=t.props)||!t[Si])&&(null==(e=this.persistence)||null==(e=e.props)||!e[pr]))}xn(){return true===this.config.capture_pageleave||"if_capture_pageview"===this.config.capture_pageleave&&(true===this.config.capture_pageview||"history_change"===this.config.capture_pageview)}createPersonProfile(){this.Cn()||this.In("posthog.createPersonProfile")&&this.setPersonProperties({},{});}setInternalOrTestUser(){this.In("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:true});}In(t){return "never"===this.config.person_profiles?(_i.error(t+' was called, but process_person is set to "never". This call will be ignored.'),false):(this.Tn(pr,true),true)}hn(){if("always"===this.config.cookieless_mode)return true;var t=this.consent.isOptedOut();return this.config.disable_persistence||t&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!==Er)}Pn(){var t,e,i,r,s=this.hn();return (null==(t=this.persistence)?void 0:t.yr)!==s&&(null==(i=this.persistence)||i.set_disabled(s)),(null==(e=this.sessionPersistence)?void 0:e.yr)!==s&&(null==(r=this.sessionPersistence)||r.set_disabled(s)),s}opt_in_capturing(t){var e;if(this.config.cookieless_mode!==xr){if(this.Yi()){var i,r,s,n,o;this.reset(true),null==(i=this.sessionManager)||i.destroy(),null==(r=this.pageViewManager)||r.destroy(),this.sessionManager=new oa$1(this),this.pageViewManager=new on$2(this),this.persistence&&(this.sessionPropsManager=new ra$1(this,this.sessionManager,this.persistence));var a,l=null!==(s=null==(n=this.config.__extensionClasses)?void 0:n.sessionRecording)&&void 0!==s?s:null==(o=Ba.__defaultExtensionClasses)?void 0:o.sessionRecording;l&&(this.sessionRecording=this.Ji(this.sessionRecording,new l(this)),this.yn&&(null==(a=this.sessionRecording)||null==a.onRemoteConfig||a.onRemoteConfig(this.yn)));}var u,h;this.consent.optInOut(true),this.Pn(),this.bn(),null==(e=this.sessionRecording)||e.startIfEnabledOrStop(),this.config.cookieless_mode==Er&&(null==(u=this.surveys)||u.loadIfEnabled()),(K$1(null==t?void 0:t.captureEventName)||null!=t&&t.captureEventName)&&this.capture(null!==(h=null==t?void 0:t.captureEventName)&&void 0!==h?h:"$opt_in",null==t?void 0:t.captureProperties,{send_instantly:true}),this.config.capture_pageview&&this._n();}else _i.warn(Oa$1);}opt_out_capturing(){var t,e,i;this.config.cookieless_mode!==xr?(this.config.cookieless_mode===Er&&this.consent.isOptedIn()&&this.reset(true),this.consent.optInOut(false),this.Pn(),this.config.cookieless_mode===Er&&(this.register({distinct_id:_r$1,$device_id:null}),null==(t=this.sessionRecording)||t.stopRecording(),this.sessionRecording=void 0,null==(e=this.sessionManager)||e.destroy(),null==(i=this.pageViewManager)||i.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,this.config.capture_pageview&&this._n(),this.bn())):_i.warn(Oa$1);}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var t=this.consent.consent;return 1===t?"granted":0===t?"denied":"pending"}is_capturing(){return this.config.cookieless_mode===xr||(this.config.cookieless_mode===Er?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this.Pn();}_is_bot(){return i$1?aa$1(i$1,this.config.custom_blocked_useragents):void 0}_n(){r&&("visible"===r.visibilityState?this.en||(this.en=true,this.capture(Pr,{title:r.title},{send_instantly:true}),this.rn&&(r.removeEventListener(Tr,this.rn),this.rn=null)):this.rn||(this.rn=this._n.bind(this),zr(r,Tr,this.rn)));}debug(e){ false===e?(null==t||t.console.log("You've disabled debug mode."),this.set_config({debug:false})):(null==t||t.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:true}));}Ur(){var t=this.ln||{};return "advanced_disable_flags"in t?!!t.advanced_disable_flags:false!==this.config.advanced_disable_flags?!!this.config.advanced_disable_flags:true===this.config.advanced_disable_decide?(_i.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),true):function(t,e,i,r,s){var n=e in t&&!Z$1(t[e]),o=i in t&&!Z$1(t[i]);return n?t[e]:!!o&&(s&&s.warn("Config field '"+i+"' is deprecated. Please use '"+e+"' instead. The old field will be removed in a future major version."),t[i])}(t,"advanced_disable_flags","advanced_disable_decide",0,_i)}Rt(t){var e;if(Z$1(this.config.before_send))return t;var i=Object.keys(null!==(e=t.properties)&&void 0!==e?e:{}).filter(nt$1),r=V$1(this.config.before_send)?this.config.before_send:[this.config.before_send],s=t;for(var n of r){if(s=n(s),Z$1(s)){var o="Event '"+t.event+"' was rejected in beforeSend function";return st$1(t.event)?_i.warn(o+". This can cause unexpected behavior."):_i.info(o),null}s.properties&&!J$1(s.properties)||_i.warn("Event '"+t.event+"' has no properties after beforeSend function, this is likely an error.");}for(var a of i)if(s.properties&&Z$1(s.properties[a]))return _i.warn("Event '"+t.event+"' had its '"+a+"' property removed in a beforeSend function. This property is required for ingestion, so the event will be dropped."),null;return s}getPageViewId(){var t;return null==(t=this.pageViewManager.ir)?void 0:t.pageViewId}captureTraceFeedback(t,e){this.capture("$ai_feedback",{$ai_trace_id:String(t),$ai_feedback_text:e});}captureTraceMetric(t,e,i){this.capture("$ai_metric",{$ai_trace_id:String(t),$ai_metric_name:e,$ai_metric_value:String(i)});}an(t){var e=it$1(t)&&!t,i=is.N()&&"true"===is.A("ph_debug");return !e&&(!!i||t)}};Ba$1.__defaultExtensionClasses={},Ba$1.On=(()=>{var t=()=>{};return {trace:t,debug:t,info:t,warn:t,error:t,fatal:t}})(),function(t,e){for(var i=0;e.length>i;i++)t.prototype[e[i]]=Ur(t.prototype[e[i]]);}(Ba$1,["identify"]);let za$1 = class za{constructor(t){this.disabled=false===t;var e=W$1(t)?t:{};this.thresholdPx=e.threshold_px||30,this.timeoutMs=e.timeout_ms||1e3,this.clickCount=e.click_count||3,this.clicks=[];}isRageClick(t,e,i){if(this.disabled)return false;var r=this.clicks[this.clicks.length-1];if(r&&Math.abs(t-r.x)+Math.abs(e-r.y)<this.thresholdPx&&this.timeoutMs>i-r.timestamp){if(this.clicks.push({x:t,y:e,timestamp:i}),this.clicks.length===this.clickCount)return true}else this.clicks=[{x:t,y:e,timestamp:i}];return false}};var Ha$1="$copy_autocapture",qa$1=gi("[AutoCapture]");function Va$1(t,e){return e.length>t?e.slice(0,t)+"...":e}function Ga$1(t){if(t.previousElementSibling)return t.previousElementSibling;var e=t;do{e=e.previousSibling;}while(e&&!ps(e));return e}function Wa$1(e,i){var r,s,n=i.e,o=i.maskAllElementAttributes,a=i.maskAllText,l=i.elementAttributeIgnoreList,u=i.elementsChainAsString,h=i.disableCaptureUrlHashes;if(!ps(e))return {props:{}};for(var d=[e],v=new Set([e]),c=e;c.parentNode&&!_s(c,"body")&&ys>d.length;)if(ms(c.parentNode)){var f=c.parentNode.host;if(v.has(f))break;v.add(f),d.push(f),c=f;}else {if(!ps(c.parentNode))break;if(v.has(c.parentNode))break;v.add(c.parentNode),d.push(c.parentNode),c=c.parentNode;}var p,_,m=[],y={},b=false,w=false;if(Ar(d,(t=>{var e=Us(t);if(_s(t,"a")){var i=t.getAttribute("href");b=!!(e&&i&&Gs(i))&&(h?be$1(i):i);}U$1(Es(t),"ph-no-capture")&&(w=true),m.push(function(t,e,i,r,s){ void 0===s&&(s=false);var n=t.tagName.toLowerCase(),o={tag_name:n};$s.indexOf(n)>-1&&!i&&(o.$el_text="a"===n.toLowerCase()||"button"===n.toLowerCase()?Va$1(1024,Ws(t)):Va$1(1024,Ss(t)));var a=Es(t);a.length>0&&(o.classes=a.filter((function(t){return ""!==t}))),Ar(t.attributes,(function(i){var n;if((!Ls(t)||-1!==["name","id","class","aria-label"].indexOf(i.name))&&(null==r||!r.includes(i.name))&&!e&&Gs(i.value)&&(!Y$1(n=i.name)||"_ngcontent"!==n.substring(0,10)&&"_nghost"!==n.substring(0,7))){var a=i.value;"class"===i.name&&(a=bs(a).join(" ")),o["attr__"+i.name]=Va$1(1024,"href"===i.name&&s?be$1(a):a);}}));for(var l=1,u=1,h=t;h=Ga$1(h);)l++,h.tagName===t.tagName&&u++;return o.nth_child=l,o.nth_of_type=u,o}(t,o,a,l,h));var r=function(t){if(!Us(t))return {};var e={};return Ar(t.attributes,(function(t){if(t.name&&0===t.name.indexOf("data-ph-capture-attribute")){var i=t.name.replace("data-ph-capture-attribute-",""),r=t.value;i&&r&&Gs(r)&&(e[i]=r);}})),e}(t);Fr(y,r);})),w)return {props:{},explicitNoCapture:w};if(a||(m[0].$el_text=_s(e,"a")||_s(e,"button")?Ws(e):Ss(e)),b){var E,x;m[0].attr__href=b;var S=null==(E=vn$1(b))?void 0:E.host,k=null==t||null==(x=t.location)?void 0:x.host;S&&k&&S!==k&&(p=b);}return {props:Fr({$event_type:n.type,$ce_version:1},u?{}:{$elements:m},{$elements_chain:(_=m,function(t){return t.map((t=>{var e,i,r="";if(t.tag_name&&(r+=t.tag_name),t.attr_class)for(var s of(t.attr_class.sort(),t.attr_class))r+="."+s.replace(/"/g,"");var n=g({},t.text?{text:t.text}:{},{"nth-child":null!==(e=t.nth_child)&&void 0!==e?e:0,"nth-of-type":null!==(i=t.nth_of_type)&&void 0!==i?i:0},t.href?{href:t.href}:{},t.attr_id?{attr_id:t.attr_id}:{},t.attributes),o={};return Dr(n).sort(((t,e)=>t[0].localeCompare(e[0]))).forEach((t=>{var e=t[1];return o[Ks(t[0].toString())]=Ks(e.toString())})),(r+=":")+Dr(o).map((t=>t[0]+'="'+t[1]+'"')).join("")})).join(";")}(function(t){return t.map((t=>{var e,i,r={text:null==(e=t.$el_text)?void 0:e.slice(0,400),tag_name:t.tag_name,href:null==(i=t.attr__href)?void 0:i.slice(0,2048),attr_class:Ys(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return Dr(t).filter((t=>0===t[0].indexOf("attr__"))).forEach((t=>r.attributes[t[0]]=t[1])),r}))}(_)))},null!=(r=m[0])&&r.$el_text?{$el_text:null==(s=m[0])?void 0:s.$el_text}:{},p&&"click"===n.type?{$external_click_url:p}:{},y)}}var Ja$1=gi("[ExceptionAutocapture]"),Ka$1=()=>{},Ya$1=gi("[TracingHeaders]"),Qa$1=gi("[Web Vitals]"),Xa$1=9e5,Za$1="disabled",tl="lazy_loading",el="awaiting_config",il="missing_config";gi("[SessionRecording]"),gi("[SessionRecording]");var rl="[SessionRecording]",sl=gi(rl),nl=gi("[Heatmaps]");function ol(t){return W$1(t)&&"clientX"in t&&"clientY"in t&&tt$1(t.clientX)&&tt$1(t.clientY)}var al=gi("[Product Tours]"),ll=t=>{var e;return !t.config.disable_product_tours&&!(null==(e=t.persistence)||!e.get_property(Mi))},ul=["$set_once","$set"],hl=gi("[SiteApps]"),dl="Error while initializing PostHog app with config id ";function vl(t,e,i){if(Z$1(t))return false;switch(i){case "exact":return t===e;case "contains":var r=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(r,"i").test(t);case "regex":try{return new RegExp(e).test(t)}catch(t){return false}default:return false}}class cl{constructor(t){this.Fn=new sa$1,this.Ln=(t,e)=>this.$n(t,e)&&this.An(t,e)&&this.Nn(t,e)&&this.Dn(t,e),this.$n=(t,e)=>null==e||!e.event||(null==t?void 0:t.event)===(null==e?void 0:e.event),this._instance=t,this.qn=new Set,this.jn=new Set;}init(){var t,e;K$1(null==(t=this._instance)?void 0:t._addCaptureHook)||(null==(e=this._instance)||e._addCaptureHook(((t,e)=>{this.on(t,e);})));}register(t){var e,i;if(!K$1(null==(e=this._instance)?void 0:e._addCaptureHook)&&(t.forEach((t=>{var e,i;null==(e=this.jn)||e.add(t),null==(i=t.steps)||i.forEach((t=>{var e;null==(e=this.qn)||e.add((null==t?void 0:t.event)||"");}));})),null!=(i=this._instance)&&i.autocapture)){var r,s=new Set;t.forEach((t=>{var e;null==(e=t.steps)||e.forEach((t=>{null!=t&&t.selector&&s.add(null==t?void 0:t.selector);}));})),null==(r=this._instance)||r.autocapture.setElementSelectors(s);}}on(t,e){var i;null!=e&&0!=t.length&&(this.qn.has(t)||this.qn.has(e.event))&&this.jn&&(null==(i=this.jn)?void 0:i.size)>0&&this.jn.forEach((t=>{this.Hn(e,t)&&this.Fn.emit("actionCaptured",t.name);}));}Bn(t){this.onAction("actionCaptured",(e=>t(e)));}Hn(t,e){if(null==(null==e?void 0:e.steps))return false;for(var i of e.steps)if(this.Ln(t,i))return true;return false}onAction(t,e){return this.Fn.on(t,e)}An(t,e){if(null!=e&&e.url){var i,r=null==t||null==(i=t.properties)?void 0:i.$current_url;if(!r||"string"!=typeof r)return false;if(!vl(r,e.url,e.url_matching||"contains"))return false}return true}Nn(t,e){return !!this.Un(t,e)&&!!this.zn(t,e)&&!!this.Vn(t,e)}Un(t,e){var i;if(null==e||!e.href)return true;var r=this.Wn(t);if(r.length>0)return r.some((t=>vl(t.href,e.href,e.href_matching||"exact")));var s,n=(null==t||null==(i=t.properties)?void 0:i.$elements_chain)||"";return !!n&&vl((s=n.match(/(?::|")href="(.*?)"/))?s[1]:"",e.href,e.href_matching||"exact")}zn(t,e){var i;if(null==e||!e.text)return true;var r=this.Wn(t);if(r.length>0)return r.some((t=>vl(t.text,e.text,e.text_matching||"exact")||vl(t.$el_text,e.text,e.text_matching||"exact")));var s,n,o,a=(null==t||null==(i=t.properties)?void 0:i.$elements_chain)||"";return !!a&&(s=function(t){for(var e,i=[],r=/(?::|")text="(.*?)"/g;!Z$1(e=r.exec(t));)i.includes(e[1])||i.push(e[1]);return i}(a),n=e.text,o=e.text_matching||"exact",s.some((t=>vl(t,n,o))))}Vn(t,e){var i,r;if(null==e||!e.selector)return true;var s=null==t||null==(i=t.properties)?void 0:i.$element_selectors;if(null!=s&&s.includes(e.selector))return true;var n=(null==t||null==(r=t.properties)?void 0:r.$elements_chain)||"";if(e.selector_regex&&n)try{return new RegExp(e.selector_regex).test(n)}catch(t){return false}return false}Wn(t){var e;return null==(null==t||null==(e=t.properties)?void 0:e.$elements)?[]:null==t?void 0:t.properties.$elements}Dn(t,e){return null==e||!e.properties||0===e.properties.length||ca$1(e.properties.reduce(((t,e)=>{var i=V$1(e.value)?e.value.map(String):null!=e.value?[String(e.value)]:[];return t[e.key]={values:i,operator:e.operator||"exact"},t}),{}),null==t?void 0:t.properties)}}class fl{constructor(t){var e;this.Zn=[],this._instance=t,this.Gn=new Map,this.Qn=new Map,this.Jn=new Map,null==(e=this._instance)||null==e.onSessionId||e.onSessionId((t=>this.Kn(t)));}Yn(t,e){return !!t&&ca$1(t.propertyFilters,null==e?void 0:e.properties)}Xn(t,e){var i=new Map;return t.forEach((t=>{var r;null==(r=t.conditions)||null==(r=r[e])||null==(r=r.values)||r.forEach((e=>{if(null!=e&&e.name){var r=i.get(e.name)||[];r.push(t.id),i.set(e.name,r);}}));})),i}ts(t,e,i){var r=(i===Nn.Activation?this.Gn:this.Qn).get(t),s=[];return this.es((t=>{s=t.filter((t=>null==r?void 0:r.includes(t.id)));})),s.filter((r=>{var s,n=null==(s=r.conditions)||null==(s=s[i])||null==(s=s.values)?void 0:s.find((e=>e.name===t));return this.Yn(n,e)}))}register(t){var e;K$1(null==(e=this._instance)?void 0:e._addCaptureHook)||(this.rs(t),this.ns(t));}ns(t){var e=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.actions)&&(null==(i=t.conditions)||null==(i=i.actions)||null==(i=i.values)?void 0:i.length)>0}));0!==e.length&&(null==this.ss&&(this.ss=new cl(this._instance),this.ss.init(),this.ss.Bn((t=>{this.onAction(t);}))),e.forEach((t=>{var e,i,r,s,n;t.conditions&&null!=(e=t.conditions)&&e.actions&&null!=(i=t.conditions)&&null!=(i=i.actions)&&i.values&&(null==(r=t.conditions)||null==(r=r.actions)||null==(r=r.values)?void 0:r.length)>0&&(null==(s=this.ss)||s.register(t.conditions.actions.values),null==(n=t.conditions)||null==(n=n.actions)||null==(n=n.values)||n.forEach((e=>{if(e&&e.name){var i=this.Jn.get(e.name);i&&i.push(t.id),this.Jn.set(e.name,i||[t.id]);}})));})));}rs(t){var e,i=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.events)&&(null==(i=t.conditions)||null==(i=i.events)||null==(i=i.values)?void 0:i.length)>0})),r=t.filter((t=>{var e,i;return (null==(e=t.conditions)?void 0:e.cancelEvents)&&(null==(i=t.conditions)||null==(i=i.cancelEvents)||null==(i=i.values)?void 0:i.length)>0}));0===i.length&&0===r.length||(null==(e=this._instance)||e._addCaptureHook(((t,e)=>{this.onEvent(t,e);})),this.Gn=this.Xn(t,Nn.Activation),this.Qn=this.Xn(t,Nn.Cancellation));}onEvent(t,e){var i,r,s=this.os(),n=(null==e||null==(i=e.properties)?void 0:i.$survey_id)||(null==e||null==(r=e.properties)?void 0:r.$product_tour_id);if(n&&this.getActivatedIds().includes(n)){var o=this.ls(t,n);if("consume"===o)return s.info("event consumed activated item, removing it",{event:t,itemId:n}),void this.us([n]);if("persist"===o)return s.info("shown item promoted to persisted activation",{event:t,itemId:n}),void this.hs(n)}if(this.Qn.has(t)){var a=this.ts(t,e,Nn.Cancellation);a.length>0&&(s.info("cancel event matched, cancelling items",{event:t,itemsToCancel:a.map((t=>t.id))}),this.us(a.map((t=>t.id))),a.forEach((t=>this.ds(t.id))));}if(this.Gn.has(t)){s.info("event name matched",{event:t,eventPayload:e,items:this.Gn.get(t)});var l=this.ts(t,e,Nn.Activation);this.cs(l.map((t=>t.id)));}}onAction(t){this.Jn.has(t)&&this.cs(this.Jn.get(t)||[]);}cs(t){0!==t.length&&(this.Zn=[...new Set([...this.Zn,...t])],this.os().info("updating activated items",{activatedItems:this.getActivatedIds()}));}hs(t){this.Zn=this.Zn.filter((e=>e!==t));var e=this.vs();e.includes(t)||(this.fs([...e,t]),this.ps());}us(t){var e=new Set(t);this.Zn=this.Zn.filter((t=>!e.has(t)));var i=this.gs(),r=i.filter((t=>!e.has(t)));r.length!==i.length&&(this.fs(r),0===r.length&&this.ys());}gs(){var t,e=this.bs();return (null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[e])||[]}vs(){var t,e,i=this.gs();if(0===i.length)return [];var r=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.props[this._s()],s=null==(e=this._instance)||null==e.get_session_id?void 0:e.get_session_id();return s&&r===s?i:[]}ps(){var t,e=null==(t=this._instance)||null==t.get_session_id?void 0:t.get_session_id();e&&this.ws(e);}ys(){this.xs();}Kn(t){var e,i=null==(e=this._instance)||null==(e=e.persistence)?void 0:e.props[this._s()];i&&i!==t&&(this.gs().length>0&&this.fs([]),this.ys());}getActivatedIds(){return [...new Set([...this.vs(),...this.Zn])].filter((t=>!this.ks(t)))}reset(){this.Zn=[],this.gs().length>0&&this.fs([]),this.ys();}getEventToItemsMap(){return this.Gn}Ss(){return this.ss}}class pl extends fl{constructor(t){super(t);}bs(){return ir$1}_s(){return rr$1}Cs(){return Vn.SHOWN}es(t){var e;null==(e=this._instance)||e.getSurveys(t);}ds(t){var e;null==(e=this._instance)||e.cancelPendingSurvey(t);}os(){return ya$1}fs(t){var e;null==(e=this._instance)||null==(e=e.persistence)||e.register({[ir$1]:t});}ws(t){var e;null==(e=this._instance)||null==(e=e.persistence)||e.register({[rr$1]:t});}xs(){var t;null==(t=this._instance)||null==(t=t.persistence)||t.unregister(rr$1);}ks(){return false}ls(t,e){var i;this.es((t=>{i=t.find((t=>t.id===e));}));var r=!i||function(t){var e;return ma$1(t)&&!(null==(e=t.conditions)||null==(e=e.events)||!e.repeatedActivation)||"always"===t.schedule}(i);return r?t===Vn.SHOWN?"consume":"ignore":t===Vn.SHOWN?"persist":t===Vn.DISMISSED||t===Vn.SENT?"consume":"ignore"}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}var _l="SDK is not enabled or survey functionality is not yet loaded",gl="Disabled. Not loading surveys.",ml=null!=t&&t.location?pn$1(t.location.hash,"__posthog")||pn$1(location.hash,"state"):null,yl="_postHogToolbarParams",bl=gi("[Toolbar]"),wl=gi("[FeatureFlags]"),El=gi("[FeatureFlags]",{debugEnabled:true}),xl="\" failed. Feature flags didn't load in time.",Sl=t=>{for(var e={},i=0;t.length>i;i++)e[t[i]]=true;return e},kl=t=>{var e={};for(var i of Dr(t||{})){var r=i[1];r&&(e[i[0]]=r);}return e},$l=gi("[Error tracking]"),Tl="Refusing to render web experiment since the viewer is a likely bot",Rl={icontains:(t,e)=>e.toLowerCase().indexOf(t.toLowerCase())>-1,not_icontains:(t,e)=>-1===e.toLowerCase().indexOf(t.toLowerCase()),regex:(t,e)=>ua$1(e,t),not_regex:(t,e)=>!ua$1(e,t),exact:(t,e)=>e===t,is_not:(t,e)=>e!==t};class Pl{get Te(){return this._instance.config}constructor(t){var e=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(t){ void 0===t&&(t=false),e.getWebExperiments((t=>{Pl.Is("retrieved web experiments from the server"),e.Ts=new Map,t.forEach((t=>{if(t.feature_flag_key){var i;e.Ts&&(Pl.Is("setting flag key ",t.feature_flag_key," to web experiment ",t),null==(i=e.Ts)||i.set(t.feature_flag_key,t));var r=e._instance.getFeatureFlag(t.feature_flag_key);Y$1(r)&&t.variants[r]&&e.Ms(t.name,r,t.variants[r].transforms);}else if(t.variants)for(var s in t.variants){var n=t.variants[s];Pl.Es(n,e._instance)&&e.Ms(t.name,s,n.transforms);}}));}),t);},this._instance=t,this._instance.onFeatureFlags((t=>{this.onFeatureFlags(t);}));}initialize(){}onFeatureFlags(t){if(this._is_bot())Pl.Is(Tl);else if(!this.Te.disable_web_experiments){if(Z$1(this.Ts))return this.Ts=new Map,this.loadIfEnabled(),void this.previewWebExperiment();Pl.Is("applying feature flags",t),t.forEach((t=>{var e;if(this.Ts&&null!=(e=this.Ts)&&e.has(t)){var i,r=this._instance.getFeatureFlag(t),s=null==(i=this.Ts)?void 0:i.get(t);r&&null!=s&&s.variants[r]&&this.Ms(s.name,r,s.variants[r].transforms);}}));}}previewWebExperiment(){var t=Pl.getWindowLocation();if(null!=t&&t.search){var e=cn$1(null==t?void 0:t.search,"__experiment_id"),i=cn$1(null==t?void 0:t.search,"__experiment_variant");e&&i&&(Pl.Is("previewing web experiments "+e+" && "+i),this.getWebExperiments((t=>{this.Rs(parseInt(e),i,t);}),false,true));}}loadIfEnabled(){this.Te.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic();}getWebExperiments(t,e,i){if(this.Te.disable_web_experiments&&!i)return t([]);var r=this._instance.get_property("$web_experiments");if(r&&!e)return t(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this.Te.token),method:"GET",timestampMode:"query",callback:e=>t(200===e.statusCode&&e.json&&e.json.experiments||[])});}Rs(t,e,i){var r=i.filter((e=>e.id===t));r&&r.length>0&&(Pl.Is("Previewing web experiment ["+r[0].name+"] with variant ["+e+"]"),this.Ms(r[0].name,e,r[0].variants[e].transforms));}static Es(t,e){return !Z$1(t.conditions)&&Pl.Ps(t,e)&&Pl.Os(t)}static Ps(t,e){var i;if(Z$1(t.conditions)||Z$1(null==(i=t.conditions)?void 0:i.url))return true;var r=Pl.getWindowLocation();if(r){var s,n,o,a=us(e,r.href);return null==(s=t.conditions)||!s.url||Rl[null!==(n=null==(o=t.conditions)?void 0:o.urlMatchType)&&void 0!==n?n:"icontains"](t.conditions.url,a)}return false}static getWindowLocation(){return null==t?void 0:t.location}static Os(t){var e;if(Z$1(t.conditions)||Z$1(null==(e=t.conditions)?void 0:e.utm))return true;var i=xn$1();if(i.utm_source){var r,s,n,o,a,l,u,h,d=null==(r=t.conditions)||null==(r=r.utm)||!r.utm_campaign||(null==(s=t.conditions)||null==(s=s.utm)?void 0:s.utm_campaign)==i.utm_campaign,v=null==(n=t.conditions)||null==(n=n.utm)||!n.utm_source||(null==(o=t.conditions)||null==(o=o.utm)?void 0:o.utm_source)==i.utm_source,c=null==(a=t.conditions)||null==(a=a.utm)||!a.utm_medium||(null==(l=t.conditions)||null==(l=l.utm)?void 0:l.utm_medium)==i.utm_medium,f=null==(u=t.conditions)||null==(u=u.utm)||!u.utm_term||(null==(h=t.conditions)||null==(h=h.utm)?void 0:h.utm_term)==i.utm_term;return d&&c&&f&&v}return false}static Is(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];_i.info("[WebExperiments] "+t,i);}Ms(t,e,i){this._is_bot()?Pl.Is(Tl):"control"!==e?i.forEach((i=>{if(i.selector){var r;Pl.Is("applying transform of variant "+e+" for experiment "+t+" ",i);var s=null==(r=document)?void 0:r.querySelectorAll(i.selector);null==s||s.forEach((t=>{var e=t;i.html&&(e.innerHTML=i.html),i.css&&e.setAttribute("style",i.css);}));}})):Pl.Is("Control variants leave the page unmodified.");}_is_bot(){return i$1&&this._instance?aa$1(i$1,this.Te.custom_blocked_useragents):void 0}}var Ol=gi("[Conversations]"),Il="Conversations not available yet.",Cl="console",Ml={featureFlags:class{constructor(e){this.Fs=false,this.Ls=false,this.$s=false,this.As=false,this.Ns=false,this.Ds=false,this.qs=false,this.js=false,this.Hs=0,this.Bs=()=>{var t=this.Us();this.Hs=0,t&&this.reloadFeatureFlags();},this._instance=e,this.featureFlagEventHandlers=[],t&&zr(t,"online",this.Bs);}destroy(){null==t||t.removeEventListener("online",this.Bs);}get Te(){return this._instance.config}get mi(){return this._instance.persistence}zs(t){return this._instance.get_property(t)}Vs(){var t,e;return null!==(t=null==(e=this.mi)?void 0:e._r(this.Te.feature_flag_cache_ttl_ms))&&void 0!==t&&t}Ws(){return !!this.Vs()&&(this.js||this.$s||(this.js=true,wl.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),true)}Zs(){var t,e=null!==(t=this.Te.evaluation_contexts)&&void 0!==t?t:this.Te.evaluation_environments;return !this.Te.evaluation_environments||this.Te.evaluation_contexts||this.qs||(wl.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.qs=true),null!=e&&e.length?e.filter((t=>{var e=t&&"string"==typeof t&&t.trim().length>0;return e||wl.error("Invalid evaluation context found:",t,"Expected non-empty string"),e})):[]}Gs(){return this.Zs().length>0}Qs(){var t=this.Te.flag_keys;if(!K$1(t)){if(V$1(t))return t.filter((t=>{var e=t&&"string"==typeof t&&t.trim().length>0;return e||wl.error("Invalid flag key found:",t,"Expected non-empty string"),e}));wl.error("Invalid flag_keys found:",t,"Expected array of non-empty strings");}}initialize(){var t,e,i=this._instance.config,r=null!==(t=null==(e=i.bootstrap)?void 0:e.featureFlags)&&void 0!==t?t:{};if(Object.keys(r).length){var s,n,o=null!==(s=null==(n=i.bootstrap)?void 0:n.featureFlagPayloads)&&void 0!==s?s:{},a=Object.keys(r).filter((t=>!!r[t])).reduce(((t,e)=>(t[e]=r[e]||false,t)),{}),l=Object.keys(o).filter((t=>a[t])).reduce(((t,e)=>(o[e]&&(t[e]=o[e]),t)),{});this.receivedFeatureFlags({featureFlags:a,featureFlagPayloads:l});}}updateFlags(t,e,i){var r,s,n=null!=i&&i.merge&&null!==(r=this.zs(Hi))&&void 0!==r?r:{},o=null!=i&&i.merge&&null!==(s=this.zs(Wi))&&void 0!==s?s:{},a=g({},n,t),l=g({},o,e),u={};for(var h of Object.entries(a)){var d=h[0],v=h[1];u[d]={key:d,enabled:b(v),variant:w$1(v),reason:void 0,metadata:K$1(null==l?void 0:l[d])?void 0:{id:0,version:void 0,description:void 0,payload:l[d]}};}this.receivedFeatureFlags({flags:u});}get hasLoadedFlags(){return this.Ls}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var t=this.zs(Gi),e=this.zs(Yi),i=this.zs(Qi);if(!i&&!e)return t||{};var r=Fr({},t||{}),s=[...new Set([...Object.keys(i||{}),...Object.keys(e||{})])];for(var n of s){var o,a,l=r[n],u=null==e?void 0:e[n],h=K$1(u)?null!==(o=null==l?void 0:l.enabled)&&void 0!==o&&o:!!u,d=K$1(u)?l.variant:"string"==typeof u?u:void 0,v=null==i?void 0:i[n],c=g({},l,{enabled:h,variant:h?null!=d?d:null==l?void 0:l.variant:void 0});h!==(null==l?void 0:l.enabled)&&(c.original_enabled=null==l?void 0:l.enabled),d!==(null==l?void 0:l.variant)&&(c.original_variant=null==l?void 0:l.variant),v&&(c.metadata=g({},null==l?void 0:l.metadata,{payload:v,original_payload:null==l||null==(a=l.metadata)?void 0:a.payload})),r[n]=c;}return this.Fs||(wl.warn(" Overriding feature flag details!",{flagDetails:t,overriddenPayloads:i,finalDetails:r}),this.Fs=true),r}getAllFeatureFlags(){var t=this.getFlagVariants(),e=this.getFlagPayloads();return Object.keys(t).map((i=>{var r=t[i];return {key:i,enabled:b(r),variant:w$1(r),payload:y$1(e[i])}}))}getFlagVariants(){var t=this.zs(Hi),e=this.zs(Yi);if(!e)return t||{};for(var i=Fr({},t),r=Object.keys(e),s=0;r.length>s;s++)i[r[s]]=e[r[s]];return this.Fs||(wl.warn(" Overriding feature flags!",{enabledFlags:t,overriddenFlags:e,finalFlags:i}),this.Fs=true),i}getFlagPayloads(){var t=this.zs(Wi),e=this.zs(Qi);if(!e)return t||{};for(var i=Fr({},t||{}),r=Object.keys(e),s=0;r.length>s;s++)i[r[s]]=e[r[s]];return this.Fs||(wl.warn(" Overriding feature flag payloads!",{flagPayloads:t,overriddenPayloads:e,finalPayloads:i}),this.Fs=true),i}reloadFeatureFlags(){this.As||this.Te.advanced_disable_feature_flags||this.Us()||this.Js||(this._instance.tn.emit("featureFlagsReloading",true),this.Js=setTimeout((()=>{this.Ks();}),5));}Ys(){clearTimeout(this.Js),this.Js=void 0;}ensureFlagsLoaded(){this.Ls||this.$s||this.Js||this.reloadFeatureFlags();}setAnonymousDistinctId(t){this.$anon_distinct_id=t;}setReloadingPaused(t){this.As=t;}Ks(t){var e;if(this.Ys(),!this._instance.Ur()&&!this.Us())if(this.$s)this.Ns=true;else {var i=this.Te.token,r=this.zs(Ei),s={token:i,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:g({},(null==(e=this.mi)?void 0:e.get_initial_props())||{},this.zs(Xi)||{}),group_properties:this.zs(Zi),timezone:In$1()};X$1(r)||K$1(r)||(s.$device_id=r),(null!=t&&t.disableFlags||this.Te.advanced_disable_feature_flags)&&(s.disable_flags=true),this.Gs()&&(s.evaluation_contexts=this.Zs());var n=this.Qs();K$1(n)||(s.flag_keys=n);var o=!!this.Te.advanced_only_evaluate_survey_feature_flags,a=this._instance.requestRouter.endpointFor("flags","/flags/?v=2"+(this.Te.advanced_only_evaluate_survey_feature_flags?"&only_evaluate_survey_feature_flags=true":""));this.$s=true,this._instance._send_request({method:"POST",url:a,data:s,compression:this.Te.disable_compression?void 0:io.Base64,timestampMode:"body",timeout:this.Te.feature_flag_request_timeout_ms,callback:t=>{var e,i,r,n=true;if(this.Xs(t.statusCode),200===t.statusCode&&(this.Ns||(this.$anon_distinct_id=void 0),n=false),this.$s=false,!s.disable_flags||this.Ns){this.Ds=!n;var a=[];t.error?t.error instanceof Error?a.push("AbortError"===t.error.name?"timeout":"connection_error"):a.push("unknown_error"):200!==t.statusCode&&a.push("api_error_"+t.statusCode),null!=(e=t.json)&&e.errorsWhileComputingFlags&&a.push("errors_while_computing_flags");var l,u=!(null==(i=t.json)||null==(i=i.quotaLimited)||!i.includes("feature_flags"));if(u&&a.push("quota_limited"),null==(r=this.mi)||r.register({[ar$1]:a}),u)wl.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset. Please visit https://posthog.com/docs/billing/limits-alerts to learn more.");else s.disable_flags||this.receivedFeatureFlags(null!==(l=t.json)&&void 0!==l?l:{},n,{partialResponse:o}),this.Ns&&(this.Ns=false,this.Ks());}}});}}Us(){return _n(this.Hs,3)}Xs(t){this.Hs=gn$1(t,this.Hs,3,(()=>wl.warn("Feature flag requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped refreshing feature flags; will try again when connectivity changes.")));}getFeatureFlag(t,e){var i;if(void 0===e&&(e={}),!e.fresh||this.Ds)if(this.Ls||this.getFlags()&&this.getFlags().length>0){if(!this.Ws()){var r=this.getFeatureFlagResult(t,e);return null!==(i=null==r?void 0:r.variant)&&void 0!==i?i:null==r?void 0:r.enabled}}else wl.warn('getFeatureFlag for key "'+t+xl);}getFeatureFlagDetails(t){return this.getFlagsWithDetails()[t]}getFeatureFlagPayload(t){var e=this.getFeatureFlagResult(t,{send_event:false});return null==e?void 0:e.payload}getFeatureFlagResult(t,e){if(void 0===e&&(e={}),!e.fresh||this.Ds)if(this.Ls||this.getFlags()&&this.getFlags().length>0){if(!this.Ws()){var i=this.getFlagVariants(),r=t in i,s=i[t],n=this.getFlagPayloads()[t],o=String(s),a=this.zs(Ji)||void 0,l=this.zs(lr$1)||void 0,u=this.zs(nr$1)||{};if(this.Te.advanced_feature_flags_dedup_per_session){var h,d=this._instance.get_session_id(),v=this.zs(or$1);d&&d!==v&&(u={},null==(h=this.mi)||h.register({[nr$1]:u,[or$1]:d}));}if((e.send_event||!("send_event"in e))&&(!(t in u)||!u[t].includes(o))){var c,f,p,_,g,m,b,w,E,x,S;V$1(u[t])?u[t].push(o):u[t]=[o],null==(c=this.mi)||c.register({[nr$1]:u});var k=this.getFeatureFlagDetails(t),T=[...null!==(f=this.zs(ar$1))&&void 0!==f?f:[]];K$1(s)&&T.push("flag_missing");var R={$feature_flag:t,$feature_flag_response:s,$feature_flag_payload:n||null,$feature_flag_request_id:a,$feature_flag_evaluated_at:l,$feature_flag_bootstrapped_response:(null==(p=this.Te.bootstrap)||null==(p=p.featureFlags)?void 0:p[t])||null,$feature_flag_bootstrapped_payload:(null==(_=this.Te.bootstrap)||null==(_=_.featureFlagPayloads)?void 0:_[t])||null,$used_bootstrap_value:!this.Ds};K$1(null==k||null==(g=k.metadata)?void 0:g.has_experiment)||(R.$feature_flag_has_experiment=k.metadata.has_experiment),K$1(null==k||null==(m=k.metadata)?void 0:m.version)||(R.$feature_flag_version=k.metadata.version);var P,O=null!==(b=null==k||null==(w=k.reason)?void 0:w.description)&&void 0!==b?b:null==k||null==(E=k.reason)?void 0:E.code;O&&(R.$feature_flag_reason=O),null!=k&&null!=(x=k.metadata)&&x.id&&(R.$feature_flag_id=k.metadata.id),K$1(null==k?void 0:k.original_variant)&&K$1(null==k?void 0:k.original_enabled)||(R.$feature_flag_original_response=K$1(k.original_variant)?k.original_enabled:k.original_variant),null!=k&&null!=(S=k.metadata)&&S.original_payload&&(R.$feature_flag_original_payload=null==k||null==(P=k.metadata)?void 0:P.original_payload),T.length&&(R.$feature_flag_error=T.join(",")),this._instance.capture("$feature_flag_called",R);}if(r)return {key:t,enabled:!!s,variant:"string"==typeof s?s:void 0,payload:y$1(n)}}}else wl.warn('getFeatureFlagResult for key "'+t+xl);}getRemoteConfigPayload(t,e){var i=this.Te.token,r={distinct_id:this._instance.get_distinct_id(),token:i};this.Gs()&&(r.evaluation_contexts=this.Zs());var s=this.Qs();K$1(s)||(r.flag_keys=s),this._instance._send_request({method:"POST",url:this._instance.requestRouter.endpointFor("flags","/flags/?v=2"),data:r,compression:this.Te.disable_compression?void 0:io.Base64,timestampMode:"body",timeout:this.Te.feature_flag_request_timeout_ms,callback(i){var r,s=null==(r=i.json)?void 0:r.featureFlagPayloads;e((null==s?void 0:s[t])||void 0);}});}isFeatureEnabled(t,e){if(void 0===e&&(e={}),e.fresh&&!this.Ds)return e.defaultValue;if(!(this.Ls||this.getFlags()&&this.getFlags().length>0))return wl.warn('isFeatureEnabled for key "'+t+xl),e.defaultValue;var i=this.getFeatureFlag(t,e);return K$1(i)?e.defaultValue:!!i}addFeatureFlagsHandler(t){this.featureFlagEventHandlers.push(t);}removeFeatureFlagsHandler(t){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((e=>e!==t));}receivedFeatureFlags(t,e,i){if(this.mi){this.Ls=true;var r=this.getFlagVariants(),s=this.getFlagPayloads(),n=this.getFlagsWithDetails();!function(t,e,i,r,s,n){ void 0===i&&(i={}),void 0===r&&(r={}),void 0===s&&(s={});var o=(t=>{var e=t.flags;return e?(t.featureFlags=Object.fromEntries(Object.keys(e).map((t=>{var i;return [t,null!==(i=e[t].variant)&&void 0!==i?i:e[t].enabled]}))),t.featureFlagPayloads=Object.fromEntries(Object.keys(e).filter((t=>e[t].enabled)).filter((t=>{var i;return null==(i=e[t].metadata)?void 0:i.payload})).map((t=>{var i;return [t,null==(i=e[t].metadata)?void 0:i.payload]})))):t.featureFlags&&wl.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),t})(t),a=o.flags,l=o.featureFlags,u=o.featureFlagPayloads;if(l){var h=t.requestId,d=t.evaluatedAt;if(V$1(l)){wl.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var v={};if(l)for(var c=0;l.length>c;c++)v[l[c]]=true;e&&e.register({[qi]:l,[Hi]:v,[Ki]:false});}else {var f=l,p=u,_=a;if(null!=n&&n.partialResponse)f=g({},i,f),p=g({},r,p),_=g({},s,_);else if(t.errorsWhileComputingFlags)if(a){var m=new Set(Object.keys(a).filter((t=>{var e;return !(null!=(e=a[t])&&e.failed)})));f=g({},i,Object.fromEntries(Object.entries(f).filter((t=>m.has(t[0]))))),p=g({},r,Object.fromEntries(Object.entries(p||{}).filter((t=>m.has(t[0]))))),_=g({},s,Object.fromEntries(Object.entries(_||{}).filter((t=>m.has(t[0])))));}else f=g({},i,f),p=g({},r,p),_=g({},s,_);e&&e.register(g({[qi]:Object.keys(kl(f)),[Hi]:f||{},[Wi]:p||{},[Gi]:_||{},[Ki]:true===t.minimalFlagCalledEvents},h?{[Ji]:h}:{},d?{[lr$1]:d}:{}));}}}(t,this.mi,r,s,n,i),e||(this.js=false),this.eo(e);}}override(t,e){ void 0===e&&(e=false),wl.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:t,suppressWarning:e});}overrideFeatureFlags(t){if(!this._instance.__loaded||!this.mi)return wl.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(false===t)return this.mi.unregister(Yi),this.mi.unregister(Qi),this.eo(),El.info("All overrides cleared");if(V$1(t)){var e=Sl(t);return this.mi.register({[Yi]:e}),this.eo(),El.info("Flag overrides set",{flags:t})}if(t&&"object"==typeof t&&("flags"in t||"payloads"in t)){var i,r=t;if(this.Fs=Boolean(null!==(i=r.suppressWarning)&&void 0!==i&&i),"flags"in r)if(false===r.flags)this.mi.unregister(Yi),El.info("Flag overrides cleared");else if(r.flags){if(V$1(r.flags)){var s=Sl(r.flags);this.mi.register({[Yi]:s});}else this.mi.register({[Yi]:r.flags});El.info("Flag overrides set",{flags:r.flags});}return "payloads"in r&&(false===r.payloads?(this.mi.unregister(Qi),El.info("Payload overrides cleared")):r.payloads&&(this.mi.register({[Qi]:r.payloads}),El.info("Payload overrides set",{payloads:r.payloads}))),void this.eo()}if(t&&"object"==typeof t)return this.mi.register({[Yi]:t}),this.eo(),El.info("Flag overrides set",{flags:t});wl.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:t});}onFeatureFlags(t){if(this.addFeatureFlagsHandler(t),this.Ls){var e=this.ro(),i=e.flags,r=e.flagVariants;try{t(i,r);}catch(t){wl.error("Error while running feature flags callback",t);}}return ()=>this.removeFeatureFlagsHandler(t)}updateEarlyAccessFeatureEnrollment(t,e,i){var r,s=(this.zs(Vi)||[]).find((e=>e.flagKey===t)),n={["$feature_enrollment/"+t]:e},o={$feature_flag:t,$feature_enrollment:e,$set:n};s&&(o.$early_access_feature_name=s.name),i&&(o.$feature_enrollment_stage=i),this._instance.capture("$feature_enrollment_update",o),this.setPersonPropertiesForFlags(n,false);var a=g({},this.getFlagVariants(),{[t]:e});null==(r=this.mi)||r.register({[qi]:Object.keys(kl(a)),[Hi]:a}),this.eo();}getEarlyAccessFeatures(t,e,i){ void 0===e&&(e=false);var r=this.zs(Vi),s=i?"&"+i.map((t=>"stage="+t)).join("&"):"";if(r&&!e)return t(r);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/early_access_features/?token="+this.Te.token+s),method:"GET",timestampMode:"query",callback:e=>{var i,r;if(e.json){var s=e.json.earlyAccessFeatures;return null==(i=this.mi)||i.unregister(Vi),null==(r=this.mi)||r.register({[Vi]:s}),t(s)}}});}ro(){var t=this.getFlags(),e=this.getFlagVariants();return {flags:t.filter((t=>e[t])),flagVariants:Object.keys(e).filter((t=>e[t])).reduce(((t,i)=>(t[i]=e[i],t)),{})}}eo(t){var e=this.ro(),i=e.flags,r=e.flagVariants;this.featureFlagEventHandlers.forEach((e=>{try{e(i,r,{errorsLoading:t});}catch(t){wl.error("Error while running feature flags callback",t);}}));}setPersonPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=this.zs(Xi)||{},r=(null==t?void 0:t.$set)||(null!=t&&t.$set_once?{}:t),s=null==t?void 0:t.$set_once,n={};if(s)for(var o in s)({}).hasOwnProperty.call(s,o)&&(o in i||(n[o]=s[o]));this._instance.register({[Xi]:g({},i,n,r)}),e&&this._instance.reloadFeatureFlags();}unsetPersonPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=g({},this.zs(Xi)||{});t.forEach((t=>{delete i[t];})),this._instance.register({[Xi]:i}),e&&this._instance.reloadFeatureFlags();}resetPersonPropertiesForFlags(t){ void 0===t&&(t=true),this._instance.unregister(Xi),t&&this._instance.reloadFeatureFlags();}setGroupPropertiesForFlags(t,e){ void 0===e&&(e=true);var i=this.zs(Zi)||{};0!==Object.keys(i).length&&Object.keys(i).forEach((e=>{i[e]=g({},i[e],t[e]),delete t[e];})),this._instance.register({[Zi]:g({},i,t)}),e&&this._instance.reloadFeatureFlags();}resetGroupPropertiesForFlags(t){if(t){var e=this.zs(Zi)||{};this._instance.register({[Zi]:g({},e,{[t]:{}})});}else this._instance.unregister(Zi);}reset(){this.Ls=false,this.$s=false,this.As=false,this.Ns=false,this.Ds=false,this.$anon_distinct_id=void 0,this.Ys(),this.Fs=false,this.Hs=0;}}},Al={sessionRecording:class{get Te(){return this._instance.config}get mi(){return this._instance.persistence}get started(){var t;return !(null==(t=this.io)||!t.isStarted)}get status(){var t,e;return this.no===el||this.no===il?this.no:null!==(t=null==(e=this.io)?void 0:e.status)&&void 0!==t?t:this.no}constructor(t){if(this._forceAllowLocalhostNetworkCapture=false,this.no=Za$1,this.so=void 0,this._instance=t,!this._instance.sessionManager)throw sl.error("started without valid sessionManager"),new Error(rl+" started without valid sessionManager. This is a bug.");if(this.Te.cookieless_mode===xr)throw new Error(rl+' cannot be used with cookieless_mode="always"')}initialize(){this.startIfEnabledOrStop();}get oo(){var e,i=!(null==(e=this._instance.get_property(Fi))||!e.enabled),r=!this.Te.disable_session_recording,s=this.Te.disable_session_recording||this._instance.consent.isOptedOut();return t&&i&&r&&!s}startIfEnabledOrStop(t){var e;if(!this.oo||null==(e=this.io)||!e.isStarted){var i=!K$1(Object.assign)&&!K$1(Array.from);this.oo&&i?(this.ao(t),sl.info("starting")):(this.no=Za$1,this.stopRecording());}}ao(t){var e,i,r;this.oo&&(this.no!==el&&this.no!==il&&(this.no=tl),null!=v$1&&null!=(e=v$1.__PosthogExtensions__)&&null!=(e=e.rrweb)&&e.record&&null!=(i=v$1.__PosthogExtensions__)&&i.initSessionRecording?this.lo(t):null==(r=v$1.__PosthogExtensions__)||null==r.loadExternalDependency||r.loadExternalDependency(this._instance,this.uo,(e=>{if(e)return sl.error("could not load recorder",e);this.lo(t);})));}stopRecording(){var t,e;null==(t=this.so)||t.call(this),this.so=void 0,null==(e=this.io)||e.stop();}ho(){var t,e;null==(t=this.so)||t.call(this),this.so=void 0,null==(e=this.io)||e.discard();}do(){var t,e;null==(t=this.mi)||t.unregister(zi),null==(e=this.mi)||e.unregister(Di);}co(t,e){if(Z$1(t))return null;var i,r=tt$1(t)?t:parseFloat(t);return "number"!=typeof(i=r)||!Number.isFinite(i)||0>i||i>1?(sl.warn(e+" must be between 0 and 1. Ignoring invalid value:",t),null):r}vo(t){if(this.mi){var e,i,r=this.mi,s=()=>{var e,i=false===t.sessionRecording?void 0:t.sessionRecording,s=this.co(null==(e=this.Te.session_recording)?void 0:e.sampleRate,"session_recording.sampleRate"),n=this.co(null==i?void 0:i.sampleRate,"remote config sampleRate"),o=null!=s?s:n;Z$1(o)&&this.do();var a=null==i?void 0:i.minimumDurationMilliseconds;r.register({[Fi]:g({cache_timestamp:Date.now(),enabled:!!i},i,{networkPayloadCapture:g({capturePerformance:t.capturePerformance},null==i?void 0:i.networkPayloadCapture),canvasRecording:{enabled:null==i?void 0:i.recordCanvas,fps:null==i?void 0:i.canvasFps,quality:null==i?void 0:i.canvasQuality},sampleRate:o,minimumDurationMilliseconds:K$1(a)?null:a,endpoint:null==i?void 0:i.endpoint,triggerMatchType:null==i?void 0:i.triggerMatchType,masking:null==i?void 0:i.masking,urlTriggers:null==i?void 0:i.urlTriggers,version:null==i?void 0:i.version,triggerGroups:null==i?void 0:i.triggerGroups})});};s(),null==(e=this.so)||e.call(this),this.so=null==(i=this._instance.sessionManager)?void 0:i.onSessionId(s);}}onRemoteConfig(t){var e=t.ok?t.config:void 0;return e&&"sessionRecording"in e?false===e.sessionRecording?(this.vo(e),void this.ho()):(this.vo(e),void this.startIfEnabledOrStop()):(this.no===el&&(this.no=il,sl.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(t,e){var i;void 0===e&&(e="log"),null!=(i=this.io)&&i.log?this.io.log(t,e):sl.warn("log called before recorder was ready");}get uo(){var t,e,i=null==(t=this._instance)||null==(t=t.persistence)?void 0:t.get_property(Fi);return (null==i||null==(e=i.scriptConfig)?void 0:e.script)||"lazy-recorder"}fo(){var t,e,i=this._instance.get_property(Fi);if(!i)return false;try{e="object"==typeof i?i:JSON.parse(i);}catch(t){return sl.warn("persisted remote config for session recording is invalid and will be ignored",t),false}var r=null!==(t=e.cache_timestamp)&&void 0!==t?t:Date.now();return 36e5>=Date.now()-r}lo(t){var e,i;if(null==(e=v$1.__PosthogExtensions__)||!e.initSessionRecording)return sl.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[br$1]:true});if(this.io||(this.io=null==(i=v$1.__PosthogExtensions__)?void 0:i.initSessionRecording(this._instance),this.io._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.fo()){if(this.no===il||this.no===el)return;return this.no=el,sl.info("persisted remote config is stale, requesting fresh config before starting"),void new to(this._instance).load()}this.no=tl,this.io.start(t);}onRRwebEmit(t){var e;null==(e=this.io)||null==e.onRRwebEmit||e.onRRwebEmit(t);}overrideLinkedFlag(){var t,e;this.io||null==(e=this.mi)||e.register({[Ui]:true}),null==(t=this.io)||t.overrideLinkedFlag();}overrideSampling(){var t,e;this.io||null==(e=this.mi)||e.register({[Ni]:true}),null==(t=this.io)||t.overrideSampling();}overrideTrigger(t){var e,i;this.io||null==(i=this.mi)||i.register({["url"===t?Li:ji]:true}),null==(e=this.io)||e.overrideTrigger(t);}get sdkDebugProperties(){var t;return (null==(t=this.io)?void 0:t.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(t,e){var i;return !(null==(i=this.io)||!i.tryAddCustomEvent(t,e))}}},Fl={autocapture:class{constructor(t){this.po=false,this.mo=null,this.yo=false,this.bo=false,this.instance=t,this.rageclicks=new za$1(t.config.rageclick),this._o=null;}initialize(){this.startIfEnabled();}get Te(){var t,e,i=W$1(this.instance.config.autocapture)?this.instance.config.autocapture:{};return i.url_allowlist=null==(t=i.url_allowlist)?void 0:t.map((t=>new RegExp(t))),i.url_ignorelist=null==(e=i.url_ignorelist)?void 0:e.map((t=>new RegExp(t))),i}wo(){if(this.isBrowserSupported()){if(t&&r){var e=e=>{e=e||(null==t?void 0:t.event);try{this.xo(e);}catch(t){qa$1.error("Failed to capture event",t);}};if(zr(r,"submit",e,{capture:true}),zr(r,"change",e,{capture:true}),zr(r,"click",e,{capture:true}),this.Te.capture_copied_text){var i=e=>{e=e||(null==t?void 0:t.event);try{this.xo(e,Ha$1);}catch(t){qa$1.error("Failed to capture copy/cut event",t);}};zr(r,"copy",i,{capture:true}),zr(r,"cut",i,{capture:true});}}}else qa$1.info("Disabling Automatic Event Collection because this browser is not supported");}startIfEnabled(){this.isEnabled&&!this.po&&(this.wo(),this.po=true);}onRemoteConfig(t){if(this.yo=true,t.ok){var e=t.config;e.elementsChainAsString&&(this.bo=e.elementsChainAsString);var i=e.autocapture_opt_out;it$1(i)&&(this.instance.persistence&&this.instance.persistence.register({[$i]:i}),this.mo=i),this.startIfEnabled();}else this.startIfEnabled();}setElementSelectors(t){this._o=t;}getElementSelectors(t){var e,i=[];return null==(e=this._o)||e.forEach((e=>{var s=null==r?void 0:r.querySelectorAll(e);null==s||s.forEach((r=>{t===r&&i.push(e);}));})),i}get isEnabled(){var t,e,i=null==(t=this.instance.persistence)?void 0:t.props[$i],r=this.mo,s=this.instance.Ur()&&!this.yo;if(X$1(r)&&!it$1(i)&&!s)return false;var n=null!==(e=this.mo)&&void 0!==e?e:!!i;return !!this.instance.config.autocapture&&!n}xo(e,i){if(void 0===i&&(i="$autocapture"),this.isEnabled){var r,s=ks(e);gs(s)&&(s=s.parentNode||null),"$autocapture"===i&&"click"===e.type&&e instanceof MouseEvent&&this.instance.config.rageclick&&null!=(r=this.rageclicks)&&r.isRageClick(e.clientX,e.clientY,e.timeStamp||(new Date).getTime())&&Fs(s,this.instance.config.rageclick)&&this.xo(e,"$rageclick");var n=i===Ha$1;if(s&&function(e,i,r,s,n,o){var a;if(!t||Ds(e))return false;if(null!=r&&r.url_allowlist&&!ws(r.url_allowlist,o))return false;if(null!=r&&r.url_ignorelist&&ws(r.url_ignorelist,o))return false;if(null!=r&&r.dom_event_allowlist){var l=r.dom_event_allowlist;if(l&&!l.some((t=>i.type===t)))return false}var u=Ns(e,s),h=u.parentIsUsefulElement,d=u.targetElementList;if(!function(t,e){var i=null==e?void 0:e.element_allowlist;if(K$1(i))return true;var r,s=function(t){if(i.some((e=>t.tagName.toLowerCase()===e)))return {v:true}};for(var n of t)if(r=s(n))return r.v;return false}(d,r))return false;if(!Ts(d,null==r?void 0:r.css_selector_allowlist))return false;if(Ts(d,null!==(a=null==r?void 0:r.css_selector_ignorelist)&&void 0!==a?a:Ps))return false;try{var v=t.getComputedStyle(e);if(v&&"pointer"===v.getPropertyValue("cursor")&&"click"===i.type)return !0}catch(t){}var c=e.tagName.toLowerCase();switch(c){case "html":return false;case "form":return (n||["submit"]).indexOf(i.type)>=0;case "input":case "select":case "textarea":return (n||["change","click"]).indexOf(i.type)>=0;default:return h?(n||["click"]).indexOf(i.type)>=0:(n||["click"]).indexOf(i.type)>=0&&($s.indexOf(c)>-1||"true"===e.getAttribute("contenteditable"))}}(s,e,this.Te,n,n?["copy","cut"]:void 0,this.instance)){var o=Wa$1(s,{e:e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.Te.element_attribute_ignorelist,elementsChainAsString:this.bo,disableCaptureUrlHashes:this.instance.config.disable_capture_url_hashes}),a=o.props;if(o.explicitNoCapture)return false;var l=this.getElementSelectors(s);if(l&&l.length>0&&(a.$element_selectors=l),i===Ha$1){var u,h=xs(null==t||null==(u=t.getSelection())?void 0:u.toString()),d=e.type||"clipboard";if(!h)return false;a.$selected_content=h,a.$copy_type=d;}return this.instance.capture(i,a),true}}}isBrowserSupported(){return G$1(null==r?void 0:r.querySelectorAll)}},historyAutocapture:class{constructor(e){var i;this._instance=e,this.ko=(null==t||null==(i=t.location)?void 0:i.pathname)||"";}initialize(){this.startIfEnabled();}get isEnabled(){return "history_change"===this._instance.config.capture_pageview}startIfEnabled(){this.isEnabled&&(_i.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges());}stop(){this.So&&this.So(),this.So=void 0,_i.info("History API monitoring stopped");}monitorHistoryChanges(){t&&t.history&&(this.Co("pushState"),this.Co("replaceState"),this.Io());}Co(e){var i;if(t&&(null==(i=t.history[e])||!i.__posthog_wrapped__)){var r=this;!function(t,e,i){try{if(!(e in t))return Ka$1;var r={next:t[e]},s=i((function(){for(var t=arguments.length,e=new Array(t),i=0;t>i;i++)e[i]=arguments[i];return r.next.apply(this,e)}));return G$1(s)&&(s.prototype=s.prototype||{},Object.defineProperties(s,{__posthog_wrapped__:{enumerable:!1,value:!0},__posthog_layer__:{enumerable:!1,value:r}})),t[e]=s,()=>{if(t[e]!==s)for(var i=t[e];G$1(i)&&i.__posthog_layer__;){var n=i.__posthog_layer__;if(n.next===s)return void(n.next=r.next);i=n.next;}else t[e]=r.next;}}catch(t){return Ka$1}}(t.history,e,(t=>function(i,s,n){t.call(this,i,s,n),r.To(e);}));}}To(e){try{var i,r=null==t||null==(i=t.location)?void 0:i.pathname;if(!r)return;r!==this.ko&&this.isEnabled&&this._instance.capture(Pr,{navigation_type:e}),this.ko=r;}catch(t){_i.error("Error capturing "+e+" pageview",t);}}Io(){if(!this.So){var e=()=>{this.To("popstate");};zr(t,"popstate",e),this.So=()=>{t&&t.removeEventListener("popstate",e);};}}},heatmaps:class{get Te(){return this.instance.config}constructor(t){var e;this.Mo=false,this.po=false,this.Eo=null,this.instance=t,this.Mo=!(null==(e=this.instance.persistence)||!e.props[Ti]),this.rageclicks=new za$1(t.config.rageclick);}initialize(){this.startIfEnabled();}get flushIntervalMilliseconds(){var t=5e3;return W$1(this.Te.capture_heatmaps)&&this.Te.capture_heatmaps.flush_interval_milliseconds&&(t=this.Te.capture_heatmaps.flush_interval_milliseconds),t}get isEnabled(){return Z$1(this.Te.capture_heatmaps)?Z$1(this.Te.enable_heatmaps)?this.Mo:this.Te.enable_heatmaps:false!==this.Te.capture_heatmaps}startIfEnabled(){if(this.isEnabled){if(this.po)return;nl.info("starting..."),this.Ro(),this.ke();}else {var t;clearInterval(null!==(t=this.Eo)&&void 0!==t?t:void 0),this.Po(),this.getAndClearBuffer();}}onRemoteConfig(t){if(t.ok){var e=t.config;if("heatmaps"in e){var i=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[Ti]:i}),this.Mo=i,this.startIfEnabled();}}}getAndClearBuffer(){var t=this.R;return this.R=void 0,t}Oo(t){ol(t.originalEvent)&&this.pe(t.originalEvent,"deadclick");}ke(){this.Eo&&clearInterval(this.Eo),this.Eo="visible"===(null==r?void 0:r.visibilityState)?setInterval(this.oi.bind(this),this.flushIntervalMilliseconds):null;}Ro(){t&&r&&(this.Fo=this.oi.bind(this),zr(t,Rr,this.Fo),this.Lo=e=>this.pe(e||(null==t?void 0:t.event)),zr(r,"click",this.Lo,{capture:true}),this.$o=e=>this.Ao(e||(null==t?void 0:t.event)),zr(r,"mousemove",this.$o,{capture:true}),this.No=new tn$1(this.instance,Xs,this.Oo.bind(this)),this.No.startIfEnabledOrStop(),this.Do=this.ke.bind(this),zr(r,Tr,this.Do),this.po=true);}Po(){var e;t&&r&&(this.Fo&&t.removeEventListener(Rr,this.Fo),this.Lo&&r.removeEventListener("click",this.Lo,{capture:true}),this.$o&&r.removeEventListener("mousemove",this.$o,{capture:true}),this.Do&&r.removeEventListener(Tr,this.Do),clearTimeout(this.qo),null==(e=this.No)||e.stop(),this.po=false);}jo(e,i){var r=this.instance.scrollManager.scrollY(),s=this.instance.scrollManager.scrollX(),n=this.instance.scrollManager.scrollElement(),o=function(e,i,r){for(var s=e;s&&ps(s)&&!_s(s,"body");){if(s===r)return false;var n=void 0;try{var o,a,l;n=null==(o=null!==(a=null==(l=s.ownerDocument)?void 0:l.defaultView)&&void 0!==a?a:t)?void 0:o.getComputedStyle(s).position;}catch(t){return false}if(U$1(i,n))return true;s=Rs(s);}return false}(ks(e),["fixed","sticky"],n);return {x:e.clientX+(o?0:s),y:e.clientY+(o?0:r),target_fixed:o,type:i}}pe(t,e){var i;if(void 0===e&&(e="click"),!fs(t.target)&&ol(t)){var r=this.jo(t,e);null!=(i=this.rageclicks)&&i.isRageClick(t.clientX,t.clientY,(new Date).getTime())&&Fs(ks(t),this.instance.config.rageclick)&&this.Wt(g({},r,{type:"rageclick"})),this.Wt(r);}}Ao(t){!fs(t.target)&&ol(t)&&(clearTimeout(this.qo),this.qo=setTimeout((()=>{this.Wt(this.jo(t,"mousemove"));}),500));}Wt(e){if(t){var i=this.Te.disable_capture_url_hashes?be$1(t.location.href):t.location.href,r=this.Te.custom_personal_data_properties,s=this.Te.mask_personal_data_properties?[...yn$1,...r||[]]:[],n=fn$1(i,s,wn$1);this.R=this.R||{},this.R[n]||(this.R[n]=[]),this.R[n].push(e);}}oi(){this.R&&!J$1(this.R)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()});}},deadClicksAutocapture:tn$1,webVitalsAutocapture:class{constructor(t){var e;this.Mo=false,this.po=false,this.R={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Ho=()=>{clearTimeout(this.Bo),0!==this.R.metrics.length&&(this._instance.capture("$web_vitals",this.R.metrics.reduce(((t,e)=>g({},t,{["$web_vitals_"+e.name+"_event"]:g({},e),["$web_vitals_"+e.name+"_value"]:e.value})),{})),this.R={url:void 0,metrics:[],firstMetricTimestamp:void 0});},this.Uo=t=>{var e;this.R=this.R||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var i=this.zo();if(!K$1(i))if(Z$1(null==t?void 0:t.name)||Z$1(null==t?void 0:t.value))Qa$1.error("Invalid metric received",t);else if(!this.Vo||this.Vo>t.value){this.R.url!==i&&(this.Ho(),this.Bo=setTimeout(this.Ho,this.flushToCaptureTimeoutMs)),K$1(this.R.url)&&(this.R.url=i),this.R.firstMetricTimestamp=K$1(this.R.firstMetricTimestamp)?Date.now():this.R.firstMetricTimestamp,t.attribution&&t.attribution.interactionTargetElement&&(t.attribution.interactionTargetElement=void 0);var r=null==(e=this._instance.sessionManager)?void 0:e.checkAndGetSessionAndWindowId(true),s=g({},t,{$current_url:i,timestamp:Date.now()});K$1(r)||(s.$session_id=r.sessionId,s.$window_id=r.windowId),this.R.metrics.push(s),this.R.metrics.length===this.allowedMetrics.length&&this.Ho();}else Qa$1.error("Ignoring metric with value >= "+this.Vo,t);},this.Wo=()=>{if(!this.po){var t,e,i,r,s=v$1.__PosthogExtensions__;if(!K$1(s)&&!K$1(s.postHogWebVitalsCallbacks)){var n=s.postHogWebVitalsCallbacks;t=n.onLCP,e=n.onCLS,i=n.onFCP,r=n.onINP;}t&&e&&i&&r?(this.allowedMetrics.indexOf("LCP")>-1&&t(this.Uo.bind(this)),this.allowedMetrics.indexOf("CLS")>-1&&e(this.Uo.bind(this)),this.allowedMetrics.indexOf("FCP")>-1&&i(this.Uo.bind(this)),this.allowedMetrics.indexOf("INP")>-1&&r(this.Uo.bind(this)),this.po=true):Qa$1.error("web vitals callbacks not loaded - not starting");}},this._instance=t,this.Mo=!(null==(e=this._instance.persistence)||!e.props[Ii]),this.startIfEnabled();}get Zo(){return this._instance.config.capture_performance}get allowedMetrics(){var t,e,i=W$1(this.Zo)?null==(t=this.Zo)?void 0:t.web_vitals_allowed_metrics:void 0;return Z$1(i)?(null==(e=this._instance.persistence)?void 0:e.props[Ai])||["CLS","FCP","INP","LCP"]:i}get flushToCaptureTimeoutMs(){return (W$1(this.Zo)?this.Zo.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var t=W$1(this.Zo)?this.Zo.web_vitals_attribution:void 0;return null!=t&&t}get Vo(){var t=W$1(this.Zo)&&tt$1(this.Zo.__web_vitals_max_value)?this.Zo.__web_vitals_max_value:Xa$1;return t>0&&6e4>=t?Xa$1:t}get isEnabled(){var t=null==s$1?void 0:s$1.protocol;if("http:"!==t&&"https:"!==t)return Qa$1.info("Web Vitals are disabled on non-http/https protocols"),false;var e=W$1(this.Zo)?this.Zo.web_vitals:it$1(this.Zo)?this.Zo:void 0;return it$1(e)?e:this.Mo}startIfEnabled(){this.isEnabled&&!this.po&&(Qa$1.info("enabled, starting..."),this.tr(this.Wo));}onRemoteConfig(t){if(t.ok){var e=t.config;if("capturePerformance"in e){var i=W$1(e.capturePerformance)&&!!e.capturePerformance.web_vitals,r=W$1(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[Ii]:i}),this._instance.persistence.register({[Ai]:r})),this.Mo=i,this.startIfEnabled();}}}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.postHogWebVitalsCallbacks?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,this.useAttribution?"web-vitals-with-attribution":"web-vitals",(e=>{e?Qa$1.error("failed to load script",e):t();}));}zo(){var e=t?this._instance.config.disable_capture_url_hashes?be$1(t.location.href):t.location.href:void 0;if(e){var i=this._instance.config.custom_personal_data_properties,r=this._instance.config.mask_personal_data_properties?[...yn$1,...i||[]]:[];return fn$1(e,r,wn$1)}Qa$1.error("Could not determine current URL");}}},Dl={exceptionObserver:class{constructor(e){var i;this.Wo=()=>{var e;if(t&&this.isEnabled&&null!=(e=v$1.__PosthogExtensions__)&&e.errorWrappingFunctions){var i=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,r=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,s=v$1.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.Go&&this.Te.capture_unhandled_errors&&(this.Go=i(this.captureException.bind(this))),!this.Qo&&this.Te.capture_unhandled_rejections&&(this.Qo=r(this.captureException.bind(this))),!this.Jo&&this.Te.capture_console_errors&&(this.Jo=s(this.captureException.bind(this)));}catch(t){Ja$1.error("failed to start",t),this.Ko();}}},this._instance=e,this.Yo=!(null==(i=this._instance.persistence)||!i.props[Ri]),this.Xo=new ct$1(g({},function(t){var e,i,r,s;return void 0===t&&(t={}),{refillRate:null!==(e=null!==(i=t.exceptionRateLimiterRefillRate)&&void 0!==i?i:t.__exceptionRateLimiterRefillRate)&&void 0!==e?e:1,bucketSize:null!==(r=null!==(s=t.exceptionRateLimiterBucketSize)&&void 0!==s?s:t.__exceptionRateLimiterBucketSize)&&void 0!==r?r:10}}(this._instance.config.error_tracking),{refillInterval:1e4,it:Ja$1})),this.Te=this.ta(),this.startIfEnabledOrStop();}ta(){var t=this._instance.config.capture_exceptions,e={capture_unhandled_errors:false,capture_unhandled_rejections:false,capture_console_errors:false};return W$1(t)?e=g({},e,t):(K$1(t)?this.Yo:t)&&(e=g({},e,{capture_unhandled_errors:true,capture_unhandled_rejections:true})),e}get isEnabled(){return this.Te.capture_console_errors||this.Te.capture_unhandled_errors||this.Te.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Ja$1.info("enabled"),this.Ko(),this.tr(this.Wo)):this.Ko();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.errorWrappingFunctions?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"exception-autocapture",(e=>{if(e)return Ja$1.error("failed to load script",e);t();}));}Ko(){var t,e,i;null==(t=this.Go)||t.call(this),this.Go=void 0,null==(e=this.Qo)||e.call(this),this.Qo=void 0,null==(i=this.Jo)||i.call(this),this.Jo=void 0;}onRemoteConfig(t){if(t.ok){var e=t.config;"autocaptureExceptions"in e&&(this.Yo=!!e.autocaptureExceptions||false,this._instance.persistence&&this._instance.persistence.register({[Ri]:this.Yo}),this.Te=this.ta(),this.startIfEnabledOrStop());}}onConfigChange(){this.Te=this.ta();}captureException(t){var e,i,r,s=null!==(e=null==t||null==(i=t.$exception_list)||null==(i=i[0])?void 0:i.type)&&void 0!==e?e:"Exception";this.Xo.consumeRateLimit(s)?Ja$1.info("Skipping exception capture because of client rate limiting.",{exception:s}):null==(r=this._instance.exceptions)||r.sendExceptionEvent(t);}},exceptions:class{constructor(t){var e,i;this.ea=[],this.ra=new Le$2([new Qe$2,new ai,new Ze$2,new Xe$1,new ni,new si,new ei,new oi],function(t){for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;e>r;r++)i[r-1]=arguments[r];return function(e,r){ void 0===r&&(r=0);for(var s=[],n=e.split("\n"),o=r;n.length>o;o++){var a=n[o];if(1024>=a.length){var l=Ye$1.test(a)?a.replace(Ye$1,"$1"):a;if(!l.match(/\S*Error: /)){for(var u of i){var h=u(l,t);if(h){s.push(h);break}}if(s.length>=50)break}}}return function(t){if(!t.length)return [];var e=Array.from(t);return e.reverse(),e.slice(0,50).map((t=>{return g({},t,{filename:t.filename||(i=e,i[i.length-1]||{}).filename,function:t.function||je$2});var i;}))}(s)}}("web:javascript",Ge$2,Ke$2)),this._instance=t,this.ea=null!==(e=null==(i=this._instance.persistence)?void 0:i.get_property(Pi))&&void 0!==e?e:[],this.ia=vi(this.na()),this.sa=new ci(this.ia);}onConfigChange(){this.ia=vi(this.na()),this.sa.setConfig(this.ia);}onRemoteConfig(t){var e,i,r;if(t.ok){var s=t.config;if("errorTracking"in s){var n=null!==(e=null==(i=s.errorTracking)?void 0:i.suppressionRules)&&void 0!==e?e:[],o=null==(r=s.errorTracking)?void 0:r.captureExtensionExceptions;this.ea=n,this._instance.persistence&&this._instance.persistence.register({[Pi]:this.ea,[Oi]:o});}}}get oa(){var t,e=!!this._instance.get_property(Oi),i=this._instance.config.error_tracking.captureExtensionExceptions;return null!==(t=null!=i?i:e)&&void 0!==t&&t}buildProperties(t,e){return this.ra.buildFromUnknown(t,{syntheticException:null==e?void 0:e.syntheticException,mechanism:{handled:null==e?void 0:e.handled}})}addExceptionStep(t,e){if(this.ia.enabled)try{if(!Y$1(t)||0===t.trim().length)return void $l.warn("Ignoring exception step because message must be a non-empty string");var i=function(t){if(!t)return {sanitizedProperties:{},droppedKeys:[]};var e=[];return {sanitizedProperties:Object.keys(t).reduce(((i,r)=>hi.has(r)?(e.push(r),i):(i[r]=t[r],i)),{}),droppedKeys:e}}(this.aa(e)),r=i.sanitizedProperties,s=i.droppedKeys;s.length>0&&$l.warn("Ignoring reserved exception step fields",{droppedKeys:s}),this.sa.add(g({[li]:t,[ui]:(new Date).toISOString()},r));}catch(t){$l.error("Failed to add exception step. Ignoring breadcrumb.",t);}}sendExceptionEvent(t){try{var e=t.$exception_list;if(this.la(e)){if(this.ua(e))return this.ha("Exception dropped: matched a suppression rule"),void $l.info("Skipping exception capture because a suppression rule matched");if(!this.oa&&this.da(e))return this.ha("Exception dropped: thrown by a browser extension"),void $l.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ca(e))return this.ha("Exception dropped: thrown by the PostHog SDK"),void $l.info("Skipping exception capture because it was thrown by the PostHog SDK")}var i=this.ia.enabled&&Z$1(t.$exception_steps)?this.va(t):t;try{var r=this._instance.capture("$exception",i,{_noTruncate:!0,_batchKey:"exceptionEvent",kn:!0});return r&&this.sa.clear(),r}catch(t){return $l.error("Failed to capture exception event. Dropping this exception.",t),void this.sa.clear()}}catch(t){return void $l.error("Failed to process exception event. Ignoring this exception.",t)}}va(t){try{var e=this.sa.getAttachable();return 0===e.length?t:g({},t,{$exception_steps:e})}catch(e){return $l.error("Failed to read buffered exception steps. Capturing exception without steps.",e),t}}ha(t){this.ia.enabled&&this.sa.add({[li]:t,[ui]:(new Date).toISOString()});}aa(t){return W$1(t)?g({},t):{}}na(){var t,e;return null!==(t=null==(e=this._instance.config.error_tracking)?void 0:e.exception_steps)&&void 0!==t?t:{}}ua(t){if(0===t.length)return false;var e=t.reduce(((t,e)=>{var i=e.type,r=e.value;return Y$1(i)&&i.length>0&&t.$exception_types.push(i),Y$1(r)&&r.length>0&&t.$exception_values.push(r),t}),{$exception_types:[],$exception_values:[]});return this.ea.some((t=>{var i=t.values.map((t=>{var i,r=da$1[t.operator],s=V$1(t.value)?t.value:[t.value],n=null!==(i=e[t.key])&&void 0!==i?i:[];return s.length>0&&r(s,n)}));return "OR"===t.type?i.some(Boolean):i.every(Boolean)}))}da(t){return t.flatMap((t=>{var e,i;return null!==(e=null==(i=t.stacktrace)?void 0:i.frames)&&void 0!==e?e:[]})).some((t=>t.filename&&t.filename.startsWith("chrome-extension://")))}ca(t){if(t.length>0){var e,i,r,s,n=null!==(e=null==(i=t[0].stacktrace)?void 0:i.frames)&&void 0!==e?e:[],o=n[n.length-1];return null!==(r=null==o||null==(s=o.filename)?void 0:s.includes("posthog.com/static"))&&void 0!==r&&r}return false}la(t){return !Z$1(t)&&V$1(t)}}},Nl=g({productTours:class{get mi(){return this._instance.persistence}constructor(t){this.fa=null,this.pa=null,this._instance=t;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(t.ok){var e=t.config;if("productTours"in e){var i,r;if(this.mi&&this.mi.register({[Mi]:!!e.productTours}),!ll(this._instance))return !this.fa&&Z$1(null==(i=this.mi)?void 0:i.props[sr$1])||al.info("product tours disabled; stopping and clearing cached tours"),null==(r=this.fa)||r.stop(),this.fa=null,void this.clearCache();this.loadIfEnabled();}}}loadIfEnabled(){!this.fa&&ll(this._instance)&&this.tr((()=>this.ga()));}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.generateProductTours?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"product-tours",(e=>{e?al.error("Could not load product tours script",e):t();}));}ga(){var t;!this.fa&&null!=(t=v$1.__PosthogExtensions__)&&t.generateProductTours&&(this.fa=v$1.__PosthogExtensions__.generateProductTours(this._instance,true));}getProductTours(t,e){if(void 0===e&&(e=false),!V$1(this.pa)||e){var i=this.mi;if(i){var r=i.props[sr$1];if(V$1(r)&&!e)return this.pa=r,void t(r,{isLoaded:true})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/product_tours/?token="+this._instance.config.token),method:"GET",timestampMode:"query",callback:e=>{if(ll(this._instance)){var r=e.statusCode;if(200!==r||!e.json){var s="Product Tours API could not be loaded, status: "+r;return al.error(s),void t([],{isLoaded:false,error:s})}var n=V$1(e.json.product_tours)?e.json.product_tours:[];this.pa=n,i&&i.register({[sr$1]:n}),t(n,{isLoaded:true});}else t([],{isLoaded:true});}});}else t(this.pa,{isLoaded:true});}getActiveProductTours(t){Z$1(this.fa)?t([],{isLoaded:false,error:"Product tours not loaded"}):this.fa.getActiveProductTours(t);}showProductTour(t){var e;null==(e=this.fa)||e.showTourById(t);}previewTour(t){this.fa?this.fa.previewTour(t):this.tr((()=>{var e;this.ga(),null==(e=this.fa)||e.previewTour(t);}));}dismissProductTour(){var t;null==(t=this.fa)||t.dismissTour("user_clicked_skip");}nextStep(){var t;null==(t=this.fa)||t.nextStep();}previousStep(){var t;null==(t=this.fa)||t.previousStep();}clearCache(){var t;this.pa=null,null==(t=this.mi)||t.unregister(sr$1);}resetTour(t){var e;null==(e=this.fa)||e.resetTour(t);}resetAllTours(){var t;null==(t=this.fa)||t.resetAllTours();}cancelPendingTour(t){var e;null==(e=this.fa)||e.cancelPendingTour(t);}}},Ml),Ul={siteApps:class{constructor(t){this.ma=0,this._instance=t,this.ya=[],this.apps={};}get isEnabled(){return !!this._instance.config.opt_in_site_apps}ba(t,e){if(e){var i=this.globalsForEvent(e);this.ya.push(i),this.ya.length>1e3&&(this.ya=this.ya.slice(10));}}get siteAppLoaders(){var t;return null==(t=v$1._POSTHOG_REMOTE_CONFIG)||null==(t=t[this._instance.config.token])?void 0:t.siteApps}initialize(){if(this.isEnabled){var t=this._instance._addCaptureHook(this.ba.bind(this));this._a=()=>{t(),this.ya=[],this._a=void 0;};}}globalsForEvent(t){var e,i,r,s,n,o,a;if(!t)throw new Error("Event payload is required");var l={},u=this._instance.get_property("$groups")||[],h=this._instance.get_property("$stored_group_properties")||{};for(var d of Object.entries(h)){var v=d[0];l[v]={id:u[v],type:v,properties:d[1]};}var c=t.$set_once,f=t.$set;return {event:g({},m(t,ul),{properties:g({},t.properties,f?{$set:g({},null!==(e=null==(i=t.properties)?void 0:i.$set)&&void 0!==e?e:{},f)}:{},c?{$set_once:g({},null!==(r=null==(s=t.properties)?void 0:s.$set_once)&&void 0!==r?r:{},c)}:{}),elements_chain:null!==(n=null==(o=t.properties)?void 0:o.$elements_chain)&&void 0!==n?n:"",distinct_id:null==(a=t.properties)?void 0:a.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:l}}wa(t){var e,i=null==(e=t.tagName)?void 0:e.toLowerCase();return "style"===i&&this._instance.config.prepare_external_dependency_stylesheet?this._instance.config.prepare_external_dependency_stylesheet(t)||(hl.error("prepare_external_dependency_stylesheet returned null"),null):"script"===i&&this._instance.config.prepare_external_dependency_script?this._instance.config.prepare_external_dependency_script(t)||(hl.error("prepare_external_dependency_script returned null"),null):t}xa(){var t,e,i,s,n,o,a,l;if(!this._instance.config.prepare_external_dependency_stylesheet&&!this._instance.config.prepare_external_dependency_script)return ()=>{};var u=null==r?void 0:r.defaultView,h=null==u||null==(t=u.Node)?void 0:t.prototype;if(!u||!h)return ()=>{};if(this.ma++,this.ka)return this.Sa();var d=[],v=this,c=new WeakSet,f=(t,e,i)=>{if(null!=t&&t[e]){var r=t[e];t[e]=i(r),d.push((()=>{t[e]=r;}));}},p=t=>{if(c.has(t))return t;var e=v.wa(t);return e&&c.add(e),e},_=t=>t.map((t=>"string"==typeof t?t:p(t))).filter((t=>!X$1(t)));return f(h,"appendChild",(t=>function(e){var i=p(e);return i?t.call(this,i):e})),f(h,"insertBefore",(t=>function(e,i){var r=p(e);return r?t.call(this,r,i):e})),f(h,"replaceChild",(t=>function(e,i){var r=p(e);return r?t.call(this,r,i):i})),[null==(e=u.Element)?void 0:e.prototype,null==(i=u.Document)?void 0:i.prototype,null==(s=u.DocumentFragment)?void 0:s.prototype].forEach((t=>{f(t,"append",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"prepend",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))}));})),[null==(n=u.Element)?void 0:n.prototype,null==(o=u.CharacterData)?void 0:o.prototype,null==(a=u.DocumentType)?void 0:a.prototype].forEach((t=>{f(t,"before",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"after",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];return t.apply(this,_(i))})),f(t,"replaceWith",(t=>function(){for(var e=arguments.length,i=new Array(e),r=0;e>r;r++)i[r]=arguments[r];var s=_(i);return i.length&&!s.length?void 0:t.apply(this,s)}));})),f(null==(l=u.Element)?void 0:l.prototype,"insertAdjacentElement",(t=>function(e,i){var r=p(i);return r?t.call(this,e,r):null})),this.ka=()=>{d.forEach((t=>t())),this.ka=void 0;},this.Sa()}Sa(){var t=false;return ()=>{var e;t||(t=true,this.ma--,0===this.ma&&(null==(e=this.ka)||e.call(this)));}}Ca(t,e){ void 0===e&&(e=true);var i=this.xa();try{var r=t(i);return e&&i(),r}catch(t){throw i(),t}}setupSiteApp(t){var e=this.apps[t.id],i=()=>{var i;!e.errored&&this.ya.length&&(hl.info("Processing "+this.ya.length+" events for site app with id "+t.id),this.ya.forEach((t=>this.Ca((()=>null==e.processEvent?void 0:e.processEvent(t))))),e.processedBuffer=true),Object.values(this.apps).every((t=>t.processedBuffer||t.errored))&&(null==(i=this._a)||i.call(this));},r=false,s=s=>{e.errored=!s,e.loaded=true,hl.info("Site app with id "+t.id+" "+(s?"loaded":"errored")),r&&i();};try{var n=this.Ca((e=>t.init({posthog:this._instance,callback(t){e(),s(t);}})),!1).processEvent;n&&(e.processEvent=n),r=!0;}catch(e){hl.error(dl+t.id,e),s(false);}if(r&&e.loaded)try{i();}catch(i){hl.error("Error while processing buffered events PostHog app with config id "+t.id,i),e.errored=true;}}Ia(){var t=this.siteAppLoaders||[];for(var e of t)this.apps[e.id]={id:e.id,loaded:false,errored:false,processedBuffer:false};for(var i of t)this.setupSiteApp(i);}Ta(t){var e=this;if(0!==Object.keys(this.apps).length){var i=this.globalsForEvent(t),r=function(r){try{e.Ca((()=>null==r.processEvent?void 0:r.processEvent(i)));}catch(e){hl.error("Error while processing event "+t.event+" for site app "+r.id,e);}};for(var s of Object.values(this.apps))r(s);}}onRemoteConfig(t){var e,i,r,s=this;if(null!=(e=this.siteAppLoaders)&&e.length)return this.isEnabled?(this.Ia(),void this._instance.on("eventCaptured",(t=>this.Ta(t)))):void hl.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if(null==(i=this._a)||i.call(this),t.ok){var n=t.config;if(null!=(r=n.siteApps)&&r.length)if(this.isEnabled){var o=function(){var t,e=a.id,i=a.url;v$1["__$$ph_site_app_"+e]=s._instance,null==(t=v$1.__PosthogExtensions__)||null==t.loadSiteApp||t.loadSiteApp(s._instance,i,(t=>{if(t)return hl.error(dl+e,t)}));};for(var a of n.siteApps)o();}else hl.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');}}}},Ll={tracingHeaders:class{constructor(t){this.Ma=void 0,this.Ea=void 0,this.Ra=void 0,this.Wo=()=>{var t,e,i=this.Pa();i?(K$1(this.Ma)&&(this.Ma=null==(t=v$1.__PosthogExtensions__)||null==(t=t.tracingHeadersPatchFns)?void 0:t._patchXHR(i,(()=>this._instance.get_distinct_id()),this._instance.sessionManager)),K$1(this.Ea)&&(this.Ea=null==(e=v$1.__PosthogExtensions__)||null==(e=e.tracingHeadersPatchFns)?void 0:e._patchFetch(i,(()=>this._instance.get_distinct_id()),this._instance.sessionManager))):this.Ko();},this._instance=t;}initialize(){this.startIfEnabledOrStop();}tr(t){var e,i;null!=(e=v$1.__PosthogExtensions__)&&e.tracingHeadersPatchFns?t():null==(i=v$1.__PosthogExtensions__)||null==i.loadExternalDependency||i.loadExternalDependency(this._instance,"tracing-headers",(e=>{if(e)return Ya$1.error("failed to load script",e);t();}));}Oa(){var t,e;return null!==(t=null!==(e=this._instance.config.tracing_headers)&&void 0!==e?e:this._instance.config.addTracingHeaders)&&void 0!==t?t:this._instance.config.__add_tracing_headers}Pa(){var t=this.Oa();return V$1(t)?(V$1(this.Ra)?this.Ra.splice(0,this.Ra.length,...t):this.Ra=[...t],t.length>0?this.Ra:void 0):(V$1(this.Ra)&&this.Ra.splice(0),this.Ra=t||void 0,this.Ra)}Ko(){var t,e;null==(t=this.Ma)||t.call(this),null==(e=this.Ea)||e.call(this),this.Ma=void 0,this.Ea=void 0;}startIfEnabledOrStop(){this.Pa()?this.tr(this.Wo):this.Ko();}}},jl=g({surveys:class{get Te(){return this._instance.config}constructor(t){this.Fa=void 0,this._surveyManager=null,this.La=false,this.$a=[],this.Aa=null,this.Na=null,this._instance=t,this._surveyEventReceiver=null;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(!this.Te.disable_surveys){if(!t.ok)return ya$1.warn("Remote config unavailable. Not loading surveys.");var e=t.config.surveys;if(Z$1(e))return ya$1.warn("Flags not loaded yet. Not loading surveys.");var i=V$1(e);this.Fa=i?e.length>0:e,ya$1.info("flags response received, isSurveysEnabled: "+this.Fa),this.loadIfEnabled();}}reset(){try{var t;null==(t=this._surveyEventReceiver)||t.reset(),localStorage.removeItem("lastSeenSurveyDate");for(var e=[],i=0;i<localStorage.length;i++){var r=localStorage.key(i);(null!=r&&r.startsWith(ba$1)||null!=r&&r.startsWith("inProgressSurvey_"))&&e.push(r);}e.forEach((t=>localStorage.removeItem(t)));}catch(t){}}loadIfEnabled(){if(!this._surveyManager)if(this.La)ya$1.info("Already initializing surveys, skipping...");else if(this.Te.disable_surveys)ya$1.info(gl);else if(this.Te.cookieless_mode&&this._instance.consent.isOptedOut())ya$1.info("Not loading surveys in cookieless mode without consent.");else {var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t){if(!K$1(this.Fa)||this.Te.advanced_enable_surveys){var e=this.Fa||this.Te.advanced_enable_surveys;this.La=true;try{var i=t.generateSurveys;if(i)return void this.Da(i,e);var r=t.loadExternalDependency;if(!r)return void this.qa(wr);r(this._instance,"surveys",(i=>{i||!t.generateSurveys?this.qa("Could not load surveys script",i):this.Da(t.generateSurveys,e);}));}catch(t){throw this.qa("Error initializing surveys",t),t}finally{this.La=false;}}}else ya$1.error("PostHog Extensions not found.");}}Da(t,e){this._surveyManager=t(this._instance,e),this._surveyEventReceiver=new pl(this._instance),ya$1.info("Surveys loaded successfully"),this.ja({isLoaded:true});}qa(t,e){ya$1.error(t,e),this.ja({isLoaded:false,error:t});}onSurveysLoaded(t){return this.$a.push(t),this._surveyManager&&this.ja({isLoaded:true}),()=>{this.$a=this.$a.filter((e=>e!==t));}}getSurveys(t,e){if(void 0===e&&(e=false),this.Te.disable_surveys)return ya$1.info(gl),t([]);var i,r=this._instance.get_property(tr$1);if(r&&!e)return t(r,{isLoaded:true}),void(this.Ha()&&this.getSurveys((()=>{}),true));"undefined"!=typeof Promise&&this.Aa?this.Aa.then((e=>t(e.surveys,e.context))):("undefined"!=typeof Promise&&(this.Aa=new Promise((t=>{i=t;}))),this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/surveys/?token="+this.Te.token),method:"GET",timestampMode:"query",timeout:this.Te.surveys_request_timeout_ms,callback:e=>{var r;this.Aa=null;var s=e.statusCode;if(200!==s||!e.json){var n="Surveys API could not be loaded, status: "+s;ya$1.error(n),this.Na=Date.now();var o={isLoaded:false,error:n};return t([],o),void(null==i||i({surveys:[],context:o}))}this.Na=null;var a,l=e.json.surveys||[],u=l.filter((t=>function(t){return !(!t.start_date||t.end_date)}(t)&&(ma$1(t)||function(t){var e;return !(null==(e=t.conditions)||null==(e=e.actions)||null==(e=e.values)||!e.length)}(t))));u.length>0&&(null==(a=this._surveyEventReceiver)||a.register(u)),null==(r=this._instance.persistence)||r.register({[tr$1]:l,[er$1]:Date.now()});var h={isLoaded:true};t(l,h),null==i||i({surveys:l,context:h});}}));}Ha(){return this.Ba()&&!this.Aa&&!this.Ua()}Ba(){var t=this._instance.get_property(er$1);return tt$1(t)&&Date.now()-t>3e5}Ua(){return tt$1(this.Na)&&3e5>Date.now()-this.Na}markSurveyAsSeen(t,e){var i,r={id:t,current_iteration:null!==(i=null==e?void 0:e.iteration)&&void 0!==i?i:null};wa$1(r);try{localStorage.setItem("lastSeenSurveyDate",(new Date).toISOString());}catch(t){}}ja(t){for(var e of this.$a)try{if(!t.isLoaded)return e([],t);this.getSurveys(e);}catch(t){ya$1.error("Error in survey callback",t);}}getActiveMatchingSurveys(t,e){if(void 0===e&&(e=false),!Z$1(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(t,e);ya$1.warn("init was not called");}za(t){var e=null;return this.getSurveys((i=>{var r;e=null!==(r=i.find((e=>e.id===t)))&&void 0!==r?r:null;})),e}Va(t){if(Z$1(this._surveyManager))return {eligible:false,reason:_l};var e="string"==typeof t?this.za(t):t;return e?this._surveyManager.checkSurveyEligibility(e):{eligible:false,reason:"Survey not found"}}canRenderSurvey(t){if(Z$1(this._surveyManager))return ya$1.warn("init was not called"),{visible:false,disabledReason:_l};var e=this.Va(t);return {visible:e.eligible,disabledReason:e.reason}}canRenderSurveyAsync(t,e){return Z$1(this._surveyManager)?(ya$1.warn("init was not called"),Promise.resolve({visible:false,disabledReason:_l})):new Promise((i=>{this.getSurveys((e=>{var r,s=null!==(r=e.find((e=>e.id===t)))&&void 0!==r?r:null;if(s){var n=this.Va(s);i({visible:n.eligible,disabledReason:n.reason});}else i({visible:false,disabledReason:"Survey not found"});}),e);}))}renderSurvey(t,e,i){var s;if(Z$1(this._surveyManager))ya$1.warn("init was not called");else {var n="string"==typeof t?this.za(t):t;if(null!=n&&n.id)if(Ea$1.includes(n.type)){var o=null==r?void 0:r.querySelector(e);if(o)return null!=(s=n.appearance)&&s.surveyPopupDelaySeconds?(ya$1.info("Rendering survey "+n.id+" with delay of "+n.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout((()=>{var t,e;ya$1.info("Rendering survey "+n.id+" with delay of "+(null==(t=n.appearance)?void 0:t.surveyPopupDelaySeconds)+" seconds"),null==(e=this._surveyManager)||e.renderSurvey(n,o,i),ya$1.info("Survey "+n.id+" rendered");}),1e3*n.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(n,o,i);ya$1.warn("Survey element not found");}else ya$1.warn("Surveys of type "+n.type+" cannot be rendered in the app");else ya$1.warn("Survey not found");}}displaySurvey(t,e){var i;if(Z$1(this._surveyManager))ya$1.warn("init was not called");else {var r=this.za(t);if(r){var s=r;if(null!=(i=r.appearance)&&i.surveyPopupDelaySeconds&&e.ignoreDelay&&(s=g({},r,{appearance:g({},r.appearance,{surveyPopupDelaySeconds:0})})),e.displayType!==Wn.Popover&&e.initialResponses&&ya$1.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),false===e.ignoreConditions){var n=this.canRenderSurvey(r);if(!n.visible)return void ya$1.warn("Survey is not eligible to be displayed: ",n.disabledReason)}e.displayType!==Wn.Inline?this._surveyManager.handlePopoverSurvey(s,e):this.renderSurvey(s,e.selector,e.properties);}else ya$1.warn("Survey not found");}}cancelPendingSurvey(t){Z$1(this._surveyManager)?ya$1.warn("init was not called"):this._surveyManager.cancelSurvey(t);}handlePageUnload(){var t;null==(t=this._surveyManager)||null==t.handlePageUnload||t.handlePageUnload();}}},Ml),Bl={toolbar:class{constructor(t){this.instance=t;}Wa(t){v$1.ph_toolbar_state=t;}Za(){var t;return null!==(t=v$1.ph_toolbar_state)&&void 0!==t?t:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(e,i,s){if(void 0===e&&(e=void 0),void 0===i&&(i=void 0),void 0===s&&(s=void 0),Hr(this.instance.config))return false;if(!t||!r)return false;e=null!=e?e:t.location,s=null!=s?s:t.history;try{if(!i){try{t.localStorage.setItem("test","test"),t.localStorage.removeItem("test");}catch(t){return !1}i=null==t?void 0:t.localStorage;}var n,o=ml||pn$1(e.hash,"__posthog")||pn$1(e.hash,"state"),a=o?Nr((()=>JSON.parse(atob(decodeURIComponent(o)))))||Nr((()=>JSON.parse(decodeURIComponent(o)))):null;return a&&"ph_authorize"===a.action?((n=a).source="url",n&&Object.keys(n).length>0&&(a.desiredHash?e.hash=a.desiredHash:s?s.replaceState(s.state,"",e.pathname+e.search):e.hash="")):((n=JSON.parse(i.getItem(yl)||"{}")).source="localstorage",delete n.userIntent),!(!n.token||this.instance.config.token!==n.token||(this.loadToolbar(n),0))}catch(t){return false}}Ga(t){var e=v$1.ph_load_toolbar||v$1.ph_load_editor;!Z$1(e)&&G$1(e)?e(t,this.instance):bl.warn("No toolbar load function found");}loadToolbar(e){var i=!(null==r||!r.getElementById(hs));if(!t||i)return false;var s="custom"===this.instance.requestRouter.region&&this.instance.config.advanced_disable_toolbar_metrics,n=g({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor("ui")},s?{instrument:false}:{});if(t.localStorage.setItem(yl,JSON.stringify(g({},n,{source:void 0}))),2===this.Za())this.Ga(n);else if(0===this.Za()){var o;this.Wa(1),null==(o=v$1.__PosthogExtensions__)||null==o.loadExternalDependency||o.loadExternalDependency(this.instance,"toolbar",(t=>{if(t)return bl.error("[Toolbar] Failed to load",t),void this.Wa(0);this.Wa(2),this.Ga(n);})),zr(t,"turbolinks:load",(()=>{this.Wa(0),this.loadToolbar(n);}));}return true}Qa(t){return this.loadToolbar(t)}maybeLoadEditor(t,e,i){return void 0===t&&(t=void 0),void 0===e&&(e=void 0),void 0===i&&(i=void 0),this.maybeLoadToolbar(t,e,i)}}},zl=g({experiments:Pl},Ml),Hl={conversations:class{constructor(t){this.Ja=void 0,this._conversationsManager=null,this.Ka=false,this.Ya=null,this._instance=t;}initialize(){this.loadIfEnabled();}onRemoteConfig(t){if(!this._instance.config.disable_conversations&&t.ok){var e=t.config.conversations;Z$1(e)||(it$1(e)?this.Ja=e:(this.Ja=e.enabled,this.Ya=e),this.loadIfEnabled());}}reset(){var t;null==(t=this._conversationsManager)||t.reset(),this._conversationsManager=null,this.Ja=void 0,this.Ya=null;}loadIfEnabled(){if(!(this._conversationsManager||this.Ka||this._instance.config.disable_conversations||Hr(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t&&!K$1(this.Ja)&&this.Ja)if(this.Ya&&this.Ya.token){this.Ka=true;try{var e=t.initConversations;if(e)return this.Xa(e),void(this.Ka=!1);var i=t.loadExternalDependency;if(!i)return void this.tl(wr);i(this._instance,"conversations",(e=>{e||!t.initConversations?this.tl("Could not load conversations script",e):this.Xa(t.initConversations),this.Ka=!1;}));}catch(t){this.tl("Error initializing conversations",t),this.Ka=false;}}else Ol.error("Conversations enabled but missing token in remote config.");}}Xa(t){if(this.Ya)try{this._conversationsManager=t(this.Ya,this._instance),Ol.info("Conversations loaded successfully");}catch(t){this.tl("Error completing conversations initialization",t);}else Ol.error("Cannot complete initialization: remote config is null");}tl(t,e){Ol.error(t,e),this._conversationsManager=null,this.Ka=false;}show(){this._conversationsManager?this._conversationsManager.show():Ol.warn("Conversations not loaded yet.");}hide(){this._conversationsManager&&this._conversationsManager.hide();}isAvailable(){return true===this.Ja&&!X$1(this._conversationsManager)}isVisible(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.isVisible())&&void 0!==t&&t}sendMessage(t,e,i){var r=this;return _$3((function*(){return r._conversationsManager?r._conversationsManager.sendMessage(t,e,i):(Ol.warn(Il),null)}))()}getMessages(t,e){var i=this;return _$3((function*(){return i._conversationsManager?i._conversationsManager.getMessages(t,e):(Ol.warn(Il),null)}))()}markAsRead(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.markAsRead(t):(Ol.warn(Il),null)}))()}getTickets(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.getTickets(t):(Ol.warn(Il),null)}))()}requestRestoreLink(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.requestRestoreLink(t):(Ol.warn(Il),null)}))()}restoreFromToken(t){var e=this;return _$3((function*(){return e._conversationsManager?e._conversationsManager.restoreFromToken(t):(Ol.warn(Il),null)}))()}restoreFromUrlToken(){var t=this;return _$3((function*(){return t._conversationsManager?t._conversationsManager.restoreFromUrlToken():(Ol.warn(Il),null)}))()}getCurrentTicketId(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.getCurrentTicketId())&&void 0!==t?t:null}getWidgetSessionId(){var t,e;return null!==(t=null==(e=this._conversationsManager)?void 0:e.getWidgetSessionId())&&void 0!==t?t:null}En(){var t;null==(t=this._conversationsManager)||t.setIdentity();}Rn(){var t;null==(t=this._conversationsManager)||t.clearIdentity();}}},ql={logs:class{constructor(e){var i;this.el=false,this.rl=false,this.it=gi("[logs]"),this.Gr=[],this.il=[],this.Hs=0,this.nl=()=>{var t,e;this.Hs=0,null==(t=this.sl)||t.onReconnect(),null==(e=this.ol)||e.onReconnect();},this._instance=e,this._instance&&null!=(i=this._instance.config.logs)&&i.captureConsoleLogs&&(this.el=true),t&&zr(t,"online",this.nl);}al(t,e,i,r){var s,n=function(t,e){var i,r,s,n,o,a,l,u=null!==(i=null==t?void 0:t.flushIntervalMs)&&void 0!==i?i:3e3,h=null!==(r=null==t?void 0:t.maxBufferSize)&&void 0!==r?r:100,d=null!=e&&e.consoleCapture?void 0:null!==(s=null==t?void 0:t.maxLogsPerInterval)&&void 0!==s?s:1e3,v=K$1(d)?Math.max(h,2048):Math.max(h,d),c=null==t?void 0:t.resourceAttributes;return {serviceName:null!==(n=null!==(o=null==c?void 0:c["service.name"])&&void 0!==o?o:null==t?void 0:t.serviceName)&&void 0!==n?n:null==e?void 0:e.serviceNameDefault,serviceVersion:null!==(a=null==c?void 0:c["service.version"])&&void 0!==a?a:null==t?void 0:t.serviceVersion,environment:null!==(l=null==c?void 0:c["deployment.environment"])&&void 0!==l?l:null==t?void 0:t.environment,resourceAttributes:c,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:u,maxBufferSize:h,maxQueueSize:v,maxBatchRecordsPerPost:100,rateCapWindowMs:u,maxLogsPerInterval:d,backgroundFlushBudgetMs:0,terminationFlushBudgetMs:0}}(null==(s=this._instance)||null==(s=s.config)?void 0:s.logs,i);return [new Oe$2(this.ll(t,e),n,this.it,(()=>this.ul()),(t=>t()),void 0,r),n]}hl(){var t,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.sl||this.dl!==e){var i;null==(i=this.sl)||i.reset(),this.dl=e;var r=this.al((()=>this.Gr),(t=>{this.Gr=t;}));this.sl=r[0],this.cl=r[1];}return this.sl}vl(){var t,e=null==(t=this._instance)||null==(t=t.config)?void 0:t.logs;if(!this.ol||this.fl!==e){var i;null==(i=this.ol)||i.reset(),this.fl=e;var r=this.al((()=>this.il),(t=>{this.il=t;}),{serviceNameDefault:"posthog-browser-logs",consoleCapture:true},Cl);this.ol=r[0],this.pl=r[1];}return this.ol}initialize(){this.loadIfEnabled();}onRemoteConfig(t){var e;if(t.ok){var i=null==(e=t.config.logs)?void 0:e.captureConsoleLogs;!Z$1(i)&&i&&(this.el=true,this.loadIfEnabled());}}reset(){var t,e;this.Gr=[],null==(t=this.sl)||t.reset(),this.il=[],null==(e=this.ol)||e.reset(),this.Hs=0;}captureLog(t){this.hl().captureLog(t);}le(t){this.vl().captureLog(t);}get logger(){return this.gl||(this.gl={trace:(t,e)=>this.captureLog({body:t,level:"trace",attributes:e}),debug:(t,e)=>this.captureLog({body:t,level:"debug",attributes:e}),info:(t,e)=>this.captureLog({body:t,level:"info",attributes:e}),warn:(t,e)=>this.captureLog({body:t,level:"warn",attributes:e}),error:(t,e)=>this.captureLog({body:t,level:"error",attributes:e}),fatal:(t,e)=>this.captureLog({body:t,level:"fatal",attributes:e})}),this.gl}flushLogs(t){t?this.ml(t):(this.sl&&this.sl.flush().catch((t=>this.it.error("PostHog logs flush failed:",t))),this.ol&&this.ol.flush().catch((t=>this.it.error("PostHog logs flush failed:",t))));}loadIfEnabled(){if(this.el&&!this.rl){var t=null==v$1?void 0:v$1.__PosthogExtensions__;if(t){var e=t.loadExternalDependency;e?e(this._instance,"logs",(e=>{var i;e||null==(i=t.logs)||!i.initializeLogs?this.it.error("Could not load logs script",e):(t.logs.initializeLogs(this._instance),this.rl=true);})):this.it.error(wr);}else this.it.error("PostHog Extensions not found.");}}ll(t,e){var i=this._instance;return {get isDisabled(){return false},get optedOut(){return !i.is_capturing()},getPersistedProperty:e=>e===S$1.LogsQueue?t():void 0,setPersistedProperty(t,i){var r;t===S$1.LogsQueue&&e(null!==(r=i)&&void 0!==r?r:[]);},$t:t=>this.$t(t),getLibraryId:()=>f.LIB_NAME,getLibraryVersion:()=>f.LIB_VERSION}}$t(t){return new Promise((e=>{if(_n(this.Hs,3))e({kind:"fatal",error:new Error("logs endpoint is unreachable, dropping batch")});else {var i=false,r=t=>{i||(i=true,clearTimeout(s),e(t));},s=setTimeout((()=>r({kind:"retry-later",error:new Error("logs request timed out")})),9e4);this._instance._send_request({method:"POST",url:this.yl(),data:t,compression:"best-available",batchKey:"logs",fireCallbackOnDrop:true,callback:t=>{var e=t.statusCode;if(this.bl(e),e>=200&&300>e)r({kind:"ok"});else if(413===e)r({kind:"too-large"});else if(0!==e&&429!==e&&500>e)r({kind:"fatal",error:new Error("logs request failed with status "+e)});else {var i;r({kind:"retry-later",error:null!==(i=t.error)&&void 0!==i?i:new Error("logs request failed with status "+e)});}}});}}))}bl(t){(0!==t||this._instance.__loaded)&&(this.Hs=gn$1(t,this.Hs,3,(()=>this.it.warn("Log requests are failing before receiving an HTTP response; this can happen due to network issues, CORS, browser blocking, or ad blockers. Stopped sending logs; will try again when connectivity changes."))));}ml(t){this.Gr.length>0&&this._l(t,this.Gr,this.cl,f.LIB_NAME,(t=>{this.Gr=t;})),this.il.length>0&&this._l(t,this.il,this.pl,Cl,(t=>{this.il=t;}));}_l(t,e,i,r,s){if(0!==e.length){var n=e.map((t=>t.record));s([]);var o=Pe$2(n,Re$2(i,f.LIB_NAME,f.LIB_VERSION),r,f.LIB_VERSION);this._instance._send_request({method:"POST",url:this.yl(),data:o,compression:"best-available",batchKey:"logs",transport:t});}}yl(){return this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token)}ul(){var t,e={};if(e.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){var i=this._instance.sessionManager.checkAndGetSessionAndWindowId(true),r=i.windowId,s=i.sessionStartTimestamp,n=i.lastActivityTimestamp;e.sessionId=i.sessionId,e.windowId=r,Z$1(s)||(e.sessionStartTimestamp=s),Z$1(n)||(e.lastActivityTimestamp=n);}if(null!=v$1&&null!=(t=v$1.location)&&t.href&&(e.currentUrl=this._instance.config.disable_capture_url_hashes?be$1(v$1.location.href):v$1.location.href),this._instance.featureFlags){var o=this._instance.featureFlags.getFlags();o&&o.length>0&&(e.activeFeatureFlags=o);}return e}}},Vl={metrics:class{constructor(t){this.it=gi("[metrics]"),this._instance=t;}initialize(){}hl(){var t,e,i=null==(t=this._instance)||null==(t=t.config)?void 0:t.metrics;return this.sl&&this.dl===i||(null==(e=this.sl)||e.reset(),this.dl=i,this.sl=new Ae$2(this.ll(),function(t){var e,i,r,s,n,o=null==t?void 0:t.resourceAttributes;return {serviceName:null!==(e=null==o?void 0:o["service.name"])&&void 0!==e?e:null==t?void 0:t.serviceName,serviceVersion:null!==(i=null==o?void 0:o["service.version"])&&void 0!==i?i:null==t?void 0:t.serviceVersion,environment:null!==(r=null==o?void 0:o["deployment.environment"])&&void 0!==r?r:null==t?void 0:t.environment,resourceAttributes:o,beforeSend:null==t?void 0:t.beforeSend,flushIntervalMs:null!==(s=null==t?void 0:t.flushIntervalMs)&&void 0!==s?s:1e4,maxSeriesPerFlush:null!==(n=null==t?void 0:t.maxSeriesPerFlush)&&void 0!==n?n:1e3}}(i),this.it)),this.sl}count(t,e,i){ void 0===e&&(e=1),this.hl().count(t,e,i);}gauge(t,e,i){this.hl().gauge(t,e,i);}histogram(t,e,i){this.hl().histogram(t,e,i);}flush(t){if(!this.sl)return Promise.resolve();if(t){var e=this.sl.drainWindow();return e&&this.Kt(e,t),Promise.resolve()}return this.sl.flush().catch((t=>this.it.error("PostHog metrics flush failed:",t)))}reset(){var t;null==(t=this.sl)||t.reset();}ll(){var t=this._instance,e=this;return {get isDisabled(){return false},get optedOut(){return !t.is_capturing()},Kt:t=>e.Kt(t),getLibraryId:()=>f.LIB_NAME,getLibraryVersion:()=>f.LIB_VERSION}}Kt(t,e){return new Promise((i=>{var r=false,s=t=>{r||(r=true,clearTimeout(n),i(t));},n=setTimeout((()=>s({kind:"retry-later",error:new Error("metrics request timed out")})),9e4);this._instance._send_request(g({method:"POST",url:this.wl(),data:t,compression:"best-available",batchKey:"metrics"},e&&{transport:e},{fireCallbackOnDrop:true,callback(t){var e=t.statusCode;if(e>=200&&300>e)s({kind:"ok"});else if(413===e)s({kind:"too-large"});else if(0!==e&&429!==e&&500>e)s({kind:"fatal",error:new Error("metrics request failed with status "+e)});else {var i;s({kind:"retry-later",error:null!==(i=t.error)&&void 0!==i?i:new Error("metrics request failed with status "+e)});}}}));}))}wl(){return this._instance.requestRouter.endpointFor("api","/i/v1/metrics")+"?token="+encodeURIComponent(this._instance.config.token)}}},Gl=g({},Ml,Al,Fl,Dl,Nl,Ul,jl,Ll,Bl,zl,Hl,ql,Vl);Ba$1.__defaultExtensionClasses=g({},Gl);var Wl=function(){f.SDK_DIST_CHANNEL="npm";var e=Ta$1[Fa$1]=new Ba$1;return function(){function e(){e.done||(e.done=true,Da$1=false,Ar(Ta$1,(function(t){t._dom_loaded();})));}null!=r&&r.addEventListener?"complete"===r.readyState?e():zr(r,"DOMContentLoaded",e,{capture:false}):t&&_i.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized");}(),e}();
12316
-
12317
- var defaultPostHogInstance;
12318
- function setDefaultPostHogInstance(instance) {
12319
- defaultPostHogInstance = instance;
12320
- }
12321
- function getDefaultPostHogInstance() {
12322
- return defaultPostHogInstance;
12323
- }
12324
-
12325
- var PostHogContext = React.createContext({
12326
- get client() {
12327
- return getDefaultPostHogInstance();
12328
- },
12329
- bootstrap: undefined,
12330
- });
12331
-
12332
- var isFunction = function (f) {
12333
- return typeof f === 'function';
12334
- };
12335
-
12336
- function useFeatureFlagVariantKey(flag) {
12337
- var _a;
12338
- var _b = React.useContext(PostHogContext), client = _b.client, bootstrap = _b.bootstrap;
12339
- var _c = React.useState(function () {
12340
- return client.getFeatureFlag(flag);
12341
- }), featureFlagVariantKey = _c[0], setFeatureFlagVariantKey = _c[1];
12342
- React.useEffect(function () {
12343
- return client.onFeatureFlags(function () {
12344
- setFeatureFlagVariantKey(client.getFeatureFlag(flag));
12345
- });
12346
- }, [client, flag]);
12347
- if (!((_a = client === null || client === void 0 ? void 0 : client.featureFlags) === null || _a === void 0 ? void 0 : _a.hasLoadedFlags) && (bootstrap === null || bootstrap === void 0 ? void 0 : bootstrap.featureFlags)) {
12348
- return bootstrap.featureFlags[flag];
12349
- }
12350
- return featureFlagVariantKey;
12351
- }
12352
-
12353
- /******************************************************************************
12354
- Copyright (c) Microsoft Corporation.
12355
-
12356
- Permission to use, copy, modify, and/or distribute this software for any
12357
- purpose with or without fee is hereby granted.
12358
-
12359
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12360
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
12361
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12362
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12363
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
12364
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
12365
- PERFORMANCE OF THIS SOFTWARE.
12366
- ***************************************************************************** */
12367
- /* global Reflect, Promise, SuppressedError, Symbol, Iterator */
12368
-
12369
- var extendStatics = function(d, b) {
12370
- extendStatics = Object.setPrototypeOf ||
12371
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
12372
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
12373
- return extendStatics(d, b);
12374
- };
12375
-
12376
- function __extends(d, b) {
12377
- if (typeof b !== "function" && b !== null)
12378
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12379
- extendStatics(d, b);
12380
- function __() { this.constructor = d; }
12381
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
12382
- }
12383
-
12384
- typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
12385
- var e = new Error(message);
12386
- return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
12387
- };
12388
-
12389
- var INITIAL_STATE = {
12390
- componentStack: null,
12391
- exceptionEvent: null,
12392
- error: null,
12393
- };
12394
- var __POSTHOG_ERROR_MESSAGES = {
12395
- INVALID_FALLBACK: '[PostHog.js][PostHogErrorBoundary] Invalid fallback prop, provide a valid React element or a function that returns a valid React element.',
12396
- };
12397
- ((function (_super) {
12398
- __extends(PostHogErrorBoundary, _super);
12399
- function PostHogErrorBoundary(props) {
12400
- var _this = _super.call(this, props) || this;
12401
- _this.state = INITIAL_STATE;
12402
- return _this;
12403
- }
12404
- PostHogErrorBoundary.prototype.componentDidCatch = function (error, errorInfo) {
12405
- var additionalProperties = this.props.additionalProperties;
12406
- var currentProperties;
12407
- if (isFunction(additionalProperties)) {
12408
- currentProperties = additionalProperties(error);
12409
- }
12410
- else if (typeof additionalProperties === 'object') {
12411
- currentProperties = additionalProperties;
12412
- }
12413
- var client = this.context.client;
12414
- var exceptionEvent = client.captureException(error, currentProperties);
12415
- var componentStack = errorInfo.componentStack;
12416
- this.setState({
12417
- error: error,
12418
- componentStack: componentStack !== null && componentStack !== void 0 ? componentStack : null,
12419
- exceptionEvent: exceptionEvent,
12420
- });
12421
- };
12422
- PostHogErrorBoundary.prototype.render = function () {
12423
- var _a = this.props, children = _a.children, fallback = _a.fallback;
12424
- var state = this.state;
12425
- if (state.componentStack == null) {
12426
- return isFunction(children) ? children() : children;
12427
- }
12428
- var element = isFunction(fallback)
12429
- ? React.createElement(fallback, {
12430
- error: state.error,
12431
- componentStack: state.componentStack,
12432
- exceptionEvent: state.exceptionEvent,
12433
- })
12434
- : fallback;
12435
- if (React.isValidElement(element)) {
12436
- return element;
12437
- }
12438
- console.warn(__POSTHOG_ERROR_MESSAGES.INVALID_FALLBACK);
12439
- return React.createElement(React.Fragment, null);
12440
- };
12441
- PostHogErrorBoundary.contextType = PostHogContext;
12442
- return PostHogErrorBoundary;
12443
- })(React.Component));
12444
-
12445
- setDefaultPostHogInstance(Wl);
12446
-
12447
12652
  const useCallsEnabled = () => {
12448
12653
  const posthogValue = useFeatureFlagVariantKey('calls_enabled');
12449
12654
  const callsEnabledByDefault = window.__FEATURE_FLAG_calls_enabled__;
@@ -103676,6 +103881,37 @@ const useAutoAssign = () => {
103676
103881
  };
103677
103882
  };
103678
103883
 
103884
+ const AUTO_ASSIGN_ROLES = [bcShared.Role.AGENT, bcShared.Role.AGENT_PLUS, bcShared.Role.MANAGER];
103885
+ /**
103886
+ * Whether sending a reply should assign the conversation to the sender.
103887
+ * The portal persists the workspace role through withMe. The embedded inbox has no withMe,
103888
+ * so an agent API key's role is read from `me` instead.
103889
+ */
103890
+ const useAutoAssignOnSend = () => {
103891
+ var _a;
103892
+ const {
103893
+ role
103894
+ } = useRoles();
103895
+ const {
103896
+ type: userType
103897
+ } = useCurrentUser();
103898
+ const workspaceId = bcShared.useWorkspaceContextId();
103899
+ const {
103900
+ data
103901
+ } = useMeQuery({
103902
+ client: bcApi.coreClient,
103903
+ skip: !!role || !isAgentApiKey(userType) || !workspaceId,
103904
+ variables: {
103905
+ input: {
103906
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
103907
+ workspaceId: workspaceId
103908
+ }
103909
+ }
103910
+ });
103911
+ const effectiveRole = role !== null && role !== void 0 ? role : (_a = data === null || data === void 0 ? void 0 : data.me) === null || _a === void 0 ? void 0 : _a.role;
103912
+ return !!effectiveRole && AUTO_ASSIGN_ROLES.includes(effectiveRole);
103913
+ };
103914
+
103679
103915
  /** Stored name for the primary Crumby assistant record */
103680
103916
  const CRUMBY_AI_RECORD_NAME = 'Crumby AI';
103681
103917
  /** Placeholder id used when Crumby is shown as a locked upgrade option */
@@ -104081,7 +104317,7 @@ const Wrapper$1 = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "producti
104081
104317
  label: "Wrapper"
104082
104318
  })("height:calc(100% - 8px);width:100%;display:flex;flex-direction:column;background-color:", bcUi.NewColors.INBOX_BACKGROUND, ";position:relative;direction:", ({
104083
104319
  rtl
104084
- }) => rtl ? 'rtl' : 'ltr', ";p{font-weight:inherit;font-size:inherit;line-height:inherit;}button{margin:0!important;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE2QjJCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTGF5b3V0RWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0JztcbmltcG9ydCB7IGNvcmVDbGllbnQgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtYXBpJztcbmltcG9ydCB7IGF1dGgsIFJvbGUgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtc2hhcmVkJztcbmltcG9ydCB7IE5ld0NvbG9ycywgdHJpZ2dlckVycm9yVG9hc3QgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtdWknO1xuaW1wb3J0IHsgdXNlQWRkTWVzc2FnZU11dGF0aW9uLCBNZXNzYWdlVHlwZSwgdXNlTWVzc2FnZXNMYXp5UXVlcnksIHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24sIHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbiwgfSBmcm9tICcuLi8uLi8uLi8uLi9ncmFwaHFsLmF1dG9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgdXNlUm9sZXMgfSBmcm9tICcuLi8uLi8uLi9hdXRoL2hvb2tzL3VzZVJvbGVzJztcbmltcG9ydCB7IHBsYXlTZW5kTWVzc2FnZVNvdW5kIH0gZnJvbSAnLi4vLi4vdXRpbHMvc291bmRzJztcbmltcG9ydCB1c2VDYW5Db250cmlidXRlIGZyb20gJy4uLy4uL2hvb2tzL3VzZUNhbkNvbnRyaWJ1dGUnO1xuaW1wb3J0IHVzZU15QWdlbnQgZnJvbSAnLi4vLi4vaG9va3MvdXNlTXlBZ2VudCc7XG5pbXBvcnQgeyBPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAgfSBmcm9tICcuLi9Qb3B1cHMvT3V0c2lkZTI0SG91cldpbmRvd1BvcHVwJztcbmltcG9ydCB7IGdldEdyYXZhdGFyVXJsIH0gZnJvbSAnLi4vLi4vLi4vYXV0aC91dGlscy9hdmF0YXInO1xuaW1wb3J0IENoYXRIZWFkZXIgZnJvbSAnLi9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEluY29taW5nQ2FsbEJhbm5lciB9IGZyb20gJy4uL0NhbGxzL0luY29taW5nQ2FsbEJhbm5lcic7XG5pbXBvcnQgTm9Db252U2VsZWN0ZWQgZnJvbSAnLi9Ob0NvbnZTZWxlY3RlZCc7XG5pbXBvcnQgTm9SZXN1bHRzRm91bmQgZnJvbSAnLi9Ob1Jlc3VsdHNGb3VuZCc7XG5pbXBvcnQgQ2hhdENvbnRlbnQgZnJvbSAnLi9DaGF0Q29udGVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbiBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWdubWVudCc7XG5pbXBvcnQgdXNlU2VuZE1lc3NhZ2UgZnJvbSAnLi4vLi4vaG9va3MvdXNlU2VuZE1lc3NhZ2UnO1xuaW1wb3J0IHsgaXNPdXRzaWRlMjRIb3VyV2luZG93LCBnZXRMYXN0TWVzc2FnZSwgaGFzaFN0YXR1c2VzLCBoYXNoUmVhY3Rpb25zLCByZXBsYWNlQWdlbnRSZWFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbnZzJztcbmltcG9ydCB7IHVzZUN1cnJlbnRTdWJzY3JpcHRpb25PcHRpb25hbCB9IGZyb20gJy4uLy4uLy4uL2JpbGxpbmcnO1xuaW1wb3J0IHsgZm9ybWF0RmFpbHVyZVJlYXNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL2Zvcm1hdEZhaWx1cmVSZWFzb24nO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvaW50ZWdyYXRpb24nO1xuLy8gLS0tIFN0eWxlZCBjb21wb25lbnRzIC0tLVxuY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke05ld0NvbG9ycy5JTkJPWF9CQUNLR1JPVU5EfTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXJlY3Rpb246ICR7KHsgcnRsIH0pID0+IChydGwgPyAncnRsJyA6ICdsdHInKX07XG5cbiAgcCB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuYDtcbmNvbnN0IENoYXRXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIGhlaWdodDogJHsoeyAkZnVsbEhlaWdodCB9KSA9PiAoJGZ1bGxIZWlnaHQgPyAnMTAwJScgOiAnY2FsYygxMDAlIC0gNTZweCknKX07XG4gIGRpcmVjdGlvbjogbHRyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuYDtcbi8vIC0tLSBNYWluIENoYXQgQ29tcG9uZW50IC0tLVxuY29uc3QgQ2hhdCA9ICh7IHNlbGVjdGVkQ29udiwgb25Db252RW5kLCBhZ2VudHMsIGxvZ28sIHJ0bCwgY29udnNMZW5ndGgsIGxvYWRpbmdDb252cywgaGFuZGxlU3RhcnRDb252ZXJzYXRpb24sIHNob3dOb1Jlc3VsdHMsIG9uQ29udGFjdE1lc3NhZ2UsIG9uQ29udGFjdEFkZENvbnRhY3QsIHNob3dIZWFkZXIgPSB0cnVlLCB1c2VyVHlwZSwgaGFzSW5ib3hBY2Nlc3MgPSB0cnVlLCBvbkJhY2tUb0xpc3QsIH0pID0+IHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIGNvbnN0IFt0XSA9IHVzZVRyYW5zbGF0aW9uKCdpbmJveCcpO1xuICAgIGNvbnN0IFtvbGRlck1lc3NhZ2VzLCBzZXRPbGRlck1lc3NhZ2VzXSA9IHVzZVN0YXRlKCk7XG4gICAgY29uc3QgW291dHNpZGUyNEhvdXJXaW5kb3dQb3B1cCwgc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbcGFnaW5hdGlvbkluZm8sIHNldFBhZ2luYXRpb25JbmZvXSA9IHVzZVN0YXRlKCk7XG4gICAgY29uc3QgW2FnZW50c0lkc0F2YXRhcnNNYXAsIHNldEFnZW50c0lkc0F2YXRhcnNNYXBdID0gdXNlU3RhdGUoe30pO1xuICAgIGNvbnN0IFtub3RlTW9kZSwgc2V0Tm90ZU1vZGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtzZWFyY2hQYXR0ZXJuLCBzZXRTZWFyY2hQYXR0ZXJuXSA9IHVzZVN0YXRlKCcnKTtcbiAgICBjb25zdCBbc2VhcmNoTWF0Y2hObywgc2V0U2VhcmNoTWF0Y2hOb10gPSB1c2VTdGF0ZSgxKTtcbiAgICBjb25zdCBbc2VhcmNoTWF0Y2hDb3VudCwgc2V0U2VhcmNoTWF0Y2hDb3VudF0gPSB1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBpZ25vcmVSZWFjaFRvcFVudGlsUmVmID0gdXNlUmVmKDApO1xuICAgIGNvbnN0IHNlbGVjdGVkQ29udklkUmVmID0gdXNlUmVmKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCk7XG4gICAgY29uc3QgW2lzTG9hZGluZ09sZGVyTWVzc2FnZXMsIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXNdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtyZXBseU1lc3NhZ2UsIHNldFJlcGx5TWVzc2FnZV0gPSB1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbcmVhY3Rpb25PdmVycmlkZXMsIHNldFJlYWN0aW9uT3ZlcnJpZGVzXSA9IHVzZVN0YXRlKHt9KTtcbiAgICBjb25zdCBbYmxvY2tpbmdFcnJvck1lc3NhZ2UsIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlXSA9IHVzZVN0YXRlKCcnKTtcbiAgICBjb25zdCBbc3RhdHVzRmFpbHVyZU1lc3NhZ2UsIHNldFN0YXR1c0ZhaWx1cmVNZXNzYWdlXSA9IHVzZVN0YXRlKCcnKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIGNvbnN0IHdvcmtzcGFjZUlkID0gYXV0aC5nZXRDb250ZXh0KCk7XG4gICAgY29uc3QgeyBhdXRvQXNzaWduIH0gPSB1c2VBdXRvQXNzaWduKCk7XG4gICAgY29uc3QgeyBzZW5kTWVzc2FnZSB9ID0gdXNlU2VuZE1lc3NhZ2UoKTtcbiAgICBjb25zdCBzdWJzY3JpcHRpb25Db250ZXh0ID0gdXNlQ3VycmVudFN1YnNjcmlwdGlvbk9wdGlvbmFsKCk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gc3Vic2NyaXB0aW9uQ29udGV4dCA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb25Db250ZXh0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJzY3JpcHRpb25Db250ZXh0LnN1YnNjcmlwdGlvbjtcbiAgICBjb25zdCB7IHJvbGUsIGhhc0FueSB9ID0gdXNlUm9sZXMoKTtcbiAgICBjb25zdCBteUFnZW50ID0gdXNlTXlBZ2VudChhZ2VudHMpO1xuICAgIGNvbnN0IHNob3VsZEF1dG9Bc3NpZ25PblNlbmQgPSBoYXNBbnkoW1JvbGUuQUdFTlQsIFJvbGUuQUdFTlRfUExVUywgUm9sZS5NQU5BR0VSXSk7XG4gICAgY29uc3QgW3F1ZXJ5TWVzc2FnZXNdID0gdXNlTWVzc2FnZXNMYXp5UXVlcnkoe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFthZGRNZXNzYWdlXSA9IHVzZUFkZE1lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgY29uc3QgW3JlYWN0VG9NZXNzYWdlXSA9IHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24oe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFt1bnJlYWN0VG9NZXNzYWdlXSA9IHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgLy8gLS0tIERlcml2ZWQgRGF0YSAtLS1cbiAgICBjb25zdCBpc1doYXRzQXBwQ2hhbm5lbCA9IHVzZU1lbW8oKCkgPT4gaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvblR5cGUpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmludGVncmF0aW9uVHlwZV0pO1xuICAgIGNvbnN0IGxhc3RDbGllbnRNZXNzYWdlID0gdXNlTWVtbygoKSA9PiBnZXRMYXN0TWVzc2FnZSgoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSB8fCBbXSwgKG0pID0+ICFtLmlzQWdlbnQpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzXSk7XG4gICAgY29uc3QgbGFzdEFnZW50TWVzc2FnZSA9IHVzZU1lbW8oKCkgPT4gZ2V0TGFzdE1lc3NhZ2UoKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgfHwgW10sIChtKSA9PiBtLnR5cGUgIT09IE1lc3NhZ2VUeXBlLk5PVEUgJiYgbS5pc0FnZW50KSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlc10pO1xuICAgIGNvbnN0IGNhbkNvbnRyaWJ1dGUgPSB1c2VDYW5Db250cmlidXRlKHtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICByb2xlLFxuICAgICAgICBteUFnZW50LFxuICAgICAgICB1c2VyVHlwZSxcbiAgICB9KTtcbiAgICBjb25zdCBoYXNVc2FnZUxpbWl0UmVhY2hlZCA9ICEhKChfYSA9IHN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbi5wbGFuKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNDb252MTIwUGVyY2VudFVzZWQpICYmICEoc3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3Vic2NyaXB0aW9uLnNraXBVc2FnZUxpbWl0RW5mb3JjZW1lbnQpO1xuICAgIC8vIC0tLSBFZmZlY3RzIC0tLVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghYWdlbnRzKVxuICAgICAgICAgICAgcmV0dXJuIHNldEFnZW50c0lkc0F2YXRhcnNNYXAoe30pO1xuICAgICAgICBjb25zdCBmZXRjaEF2YXRhcnMgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjYyA9IHt9O1xuICAgICAgICAgICAgeWllbGQgUHJvbWlzZS5hbGwoYWdlbnRzLm1hcCgoYWdlbnQpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgIGlmIChhZ2VudC5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjW2FnZW50LmlkXSA9IGFnZW50LmF2YXRhcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF2YXRhclVybCA9IGdldEdyYXZhdGFyVXJsKGFnZW50LmVtYWlsKTtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZmV0Y2goYXZhdGFyVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY1thZ2VudC5pZF0gPSBhdmF0YXJVcmw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBEbyBub3RoaW5nIGlmIGdyYXZhdGFyIGZhaWxzIHRvIGxvYWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICBzZXRBZ2VudHNJZHNBdmF0YXJzTWFwKGFjYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBmZXRjaEF2YXRhcnMoKTtcbiAgICB9LCBbYWdlbnRzXSk7XG4gICAgLy8gUmVzZXR0aW5nIHRoZSBtZXNzYWdlcyBhbmQgcGFnaW5hdGlvbiBpbmZvIHdoZW4gdGhlIHNlbGVjdGVkIGNvbnZlcnNhdGlvbiBjaGFuZ2VzLlxuICAgIC8vIFJ1bnMgYXMgYSBsYXlvdXQgZWZmZWN0IHNvIHRoZSByZWYgaXMgdXAgdG8gZGF0ZSBiZWZvcmUgYW55IGluLWZsaWdodCBxdWVyeSByZXNvbHZlcy5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50ID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkO1xuICAgICAgICBzZXRPbGRlck1lc3NhZ2VzKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldFBhZ2luYXRpb25JbmZvKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICBzZXRSZWFjdGlvbk92ZXJyaWRlcyh7fSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIERlcml2ZWQgZnJvbSB0aGUgY29udmVyc2F0aW9uIGluc3RlYWQgb2Ygc3RvcmVkIGluIHN0YXRlOiBzdGF0ZSB3b3VsZCBsYWcgb25lIHJlbmRlclxuICAgIC8vIGJlaGluZCBvbiBjb252ZXJzYXRpb24gc3dpdGNoLCBzaG93aW5nIHRoZSBwcmV2aW91cyBjaGF0J3MgbWVzc2FnZXMgdW5kZXIgdGhlIG5ld1xuICAgIC8vIGNvbnZlcnNhdGlvbiBpZC4gVGhlIHNpZ25hdHVyZSBrZWVwcyB0aGUgbGlzdCBpZGVudGl0eSBzdGFibGUgYWNyb3NzIHBvbGxpbmcgcmVmZXRjaGVzLlxuICAgIGNvbnN0IG1lc3NhZ2VzU2lnbmF0dXJlID0gYCR7c2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkfXwkeyhfYiA9IHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmxlbmd0aH18JHtoYXNoU3RhdHVzZXMoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKX18JHtoYXNoUmVhY3Rpb25zKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcyl9YDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHJldHVybiAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubWFwKChtKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBtKSwgeyBjcmVhdGVkQXQ6IG1vbWVudChtLmNyZWF0ZWRBdCkudG9EYXRlKCksIHJlYWN0aW9uczogT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlYWN0aW9uT3ZlcnJpZGVzLCBtLm1lc3NhZ2VJZClcbiAgICAgICAgICAgICAgICA/IHJlYWN0aW9uT3ZlcnJpZGVzW20ubWVzc2FnZUlkXVxuICAgICAgICAgICAgICAgIDogbS5yZWFjdGlvbnMgfSkpKSkgfHwgW107XG4gICAgfSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIFttZXNzYWdlc1NpZ25hdHVyZSwgcmVhY3Rpb25PdmVycmlkZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIC0tLSBMb2FkIE9sZGVyIE1lc3NhZ2VzIC0tLVxuICAgIGNvbnN0IGxvYWRPbGRlck1lc3NhZ2VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBpZiAoRGF0ZS5ub3coKSA8IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKHNlYXJjaFBhdHRlcm4udHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAocGFnaW5hdGlvbkluZm8gJiYgIXBhZ2luYXRpb25JbmZvLmhhc05leHRQYWdlKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKGlzTG9hZGluZ09sZGVyTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHJlcXVlc3RlZENvbnZJZCA9IHNlbGVjdGVkQ29udi5pZDtcbiAgICAgICAgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlcyh0cnVlKTtcbiAgICAgICAgcXVlcnlNZXNzYWdlcyh7XG4gICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDogc2VsZWN0ZWRDb252LmNsaWVudElkLFxuICAgICAgICAgICAgICAgICAgICAvLyBVc2UgdGhlIGNvbnZlcnNhdGlvbidzIGNyZWF0ZWRBdCAobWludXMgYSBzbWFsbCBidWZmZXIpIGFzIHRoZSB1cHBlciBib3VuZC4gVGhlXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiByb3cgaXMgY3JlYXRlZCBiZWZvcmUgaXRzIGZpcnN0IG1lc3NhZ2UsIHNvIG1lc3NhZ2VzIG9mIHRoZSBjdXJyZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiBoYXZlIGNyZWF0ZWRBdCA+IHNlbGVjdGVkQ29udi5jcmVhdGVkQXQgYW5kIHdvbid0IGJlIGluY2x1ZGVkIGJ5XG4gICAgICAgICAgICAgICAgICAgIC8vIGBsdGU6IGVuZERhdGVgLiBBIDMtc2Vjb25kIGJ1ZmZlciBhdm9pZHMgZWRnZS1jYXNlIGNsb2NrIHNrZXcgd2l0aG91dCBkcm9wcGluZ1xuICAgICAgICAgICAgICAgICAgICAvLyBtZXNzYWdlcyBmcm9tIHRoZSBwcmVjZWRpbmcgY29udmVyc2F0aW9uIChhIDEtbWludXRlIGJ1ZmZlciB3YXMgdG9vIGFnZ3Jlc3NpdmUpLlxuICAgICAgICAgICAgICAgICAgICBlbmREYXRlOiBtb21lbnQoc2VsZWN0ZWRDb252LmNyZWF0ZWRBdCkuc3VidHJhY3QoMywgJ3NlY29uZHMnKS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYWdlSW5mbzoge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBhZ2luYXRpb25JbmZvID09PSBudWxsIHx8IHBhZ2luYXRpb25JbmZvID09PSB2b2lkIDAgPyB2b2lkIDAgOiBwYWdpbmF0aW9uSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiA1MCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgLy8gVGhlIHVzZXIgbWF5IGhhdmUgc3dpdGNoZWQgY29udmVyc2F0aW9ucyB3aGlsZSB0aGlzIHdhcyBpbiBmbGlnaHQ7IGFwcGx5aW5nIGl0IG5vd1xuICAgICAgICAgICAgLy8gd291bGQgaW5qZWN0IHRoZSBwcmV2aW91cyBjaGF0J3MgaGlzdG9yeSAoYW5kIGl0cyBtZWRpYSkgaW50byB0aGUgY3VycmVudCBvbmUuXG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICgoX2EgPSBkYXRhID09PSBudWxsIHx8IGRhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRhdGEubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2Rlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2VzID0gZGF0YS5tZXNzYWdlcy5ub2Rlcy5yZXZlcnNlKCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc2VwZXJhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbW9tZW50KHNlbGVjdGVkQ29udi5jcmVhdGVkQXQpLmZvcm1hdCgnTExMTCcpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgc2V0T2xkZXJNZXNzYWdlcygocHJldikgPT4gKHByZXYgPyBbLi4ubmV3TWVzc2FnZXMsIC4uLnByZXZdIDogWy4uLm5ld01lc3NhZ2VzLCBzZXBhcmF0b3JdKSk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mbykge1xuICAgICAgICAgICAgICAgICAgICBzZXRQYWdpbmF0aW9uSW5mbyh7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRDdXJzb3I6IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOZXh0UGFnZTogZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLm1lc3NhZ2VzLnBhZ2VJbmZvLmhhc05leHRQYWdlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9LCBbcXVlcnlNZXNzYWdlcywgc2VsZWN0ZWRDb252LCBwYWdpbmF0aW9uSW5mbywgd29ya3NwYWNlSWQsIHNlYXJjaFBhdHRlcm4sIGlzTG9hZGluZ09sZGVyTWVzc2FnZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRCbG9ja2luZ0Vycm9yTWVzc2FnZSgnJyk7XG4gICAgICAgIGlmIChoYXNVc2FnZUxpbWl0UmVhY2hlZCAmJiBlbnZpcm9ubWVudC5lbmFibGVQYWlkUGxhbnMpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LmNoYXREaXNhYmxlZEF0VXNhZ2VMaW1pdCcpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IGJsb2NrIHdpdGggXCJ3YWl0IGZvciBjdXN0b21lclwiIGFmdGVyICpvdXIqIHRlbXBsYXRlIHdoZW4gdGhlIGN1c3RvbWVyIGhhcyBuZXZlclxuICAgICAgICAvLyByZXBsaWVkLiBPbmNlIGBsYXN0Q2xpZW50TWVzc2FnZWAgZXhpc3RzLCAyNGggcnVsZXMgdXNlIHRoZSBjdXN0b21lcidzIGxhc3QgbWVzc2FnZSDigJRcbiAgICAgICAgLy8gYGxhc3RBZ2VudE1lc3NhZ2VgIG1heSBzdGlsbCBiZSB0aGF0IG9wZW5pbmcgdGVtcGxhdGUsIHNvIHdlIG11c3Qgbm90IGNvbmZsYXRlIHRoYXRcbiAgICAgICAgLy8gd2l0aCBcIm91dHNpZGUgd2luZG93XCIgKHdoaWNoIHdvdWxkIGluY29ycmVjdGx5IHN1cHByZXNzIHRoZSB0ZW1wbGF0ZSBDVEEgbW9kYWwpLlxuICAgICAgICBjb25zdCBhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUgPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiAhbGFzdENsaWVudE1lc3NhZ2UgJiYgKGxhc3RBZ2VudE1lc3NhZ2UgPT09IG51bGwgfHwgbGFzdEFnZW50TWVzc2FnZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbGFzdEFnZW50TWVzc2FnZS50eXBlKSA9PT0gTWVzc2FnZVR5cGUuVEVNUExBVEU7XG4gICAgICAgIGlmIChhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LnRlbXBsYXRlTWVzc2FnZVdhcm5pbmcnKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9LCBbaGFzVXNhZ2VMaW1pdFJlYWNoZWQsIGlzV2hhdHNBcHBDaGFubmVsLCBsYXN0QWdlbnRNZXNzYWdlLCBsYXN0Q2xpZW50TWVzc2FnZSwgdF0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgbGFzdE1lc3NhZ2UgPSAoX2EgPSBzZWxlY3RlZENvbnYgPT09IG51bGwgfHwgc2VsZWN0ZWRDb252ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZWxlY3RlZENvbnYubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVtzZWxlY3RlZENvbnYubWVzc2FnZXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICghKGxhc3RNZXNzYWdlID09PSBudWxsIHx8IGxhc3RNZXNzYWdlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24pKSB7XG4gICAgICAgICAgICBzZXRTdGF0dXNGYWlsdXJlTWVzc2FnZSgnJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2UoZm9ybWF0RmFpbHVyZVJlYXNvbihsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24sIHQoJ2dlbmVyaWNFcnJvcicpKSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCwgc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzLCB0XSk7XG4gICAgLy8gLS0tIFNlbmQgTWVzc2FnZSBMb2dpYyAtLS1cbiAgICBjb25zdCBzZW5kQ2hhdE1lc3NhZ2UgPSB1c2VDYWxsYmFjaygodHlwZSwgY29udGVudCkgPT4gX19hd2FpdGVyKHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmICghc2VsZWN0ZWRDb252KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvLyBWYWxpZGF0ZSBtZXNzYWdlIGNvbnRlbnRcbiAgICAgICAgY29uc3QgdHJpbW1lZENvbnRlbnQgPSBjb250ZW50ID09PSBudWxsIHx8IGNvbnRlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbnRlbnQudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWRDb250ZW50KSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbWVzc2FnZXNcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc091dHNpZGUyNGggPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiBpc091dHNpZGUyNEhvdXJXaW5kb3cobGFzdENsaWVudE1lc3NhZ2UpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRDb252LmVuZGVkKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRXJyb3JUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHQoJ3JlcXVlc3RGYWlsZWQnKSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdCgnaW5ib3gubm9NZXNzYWdlc0ZvckVuZGVkQ29udicpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1VzYWdlTGltaXRSZWFjaGVkICYmIGVudmlyb25tZW50LmVuYWJsZVBhaWRQbGFucykge1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHQoJ2luYm94LnVzYWdlTGltaXRSZWFjaGVkJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNXaGF0c0FwcENoYW5uZWwgJiYgIWxhc3RDbGllbnRNZXNzYWdlICYmIChsYXN0QWdlbnRNZXNzYWdlID09PSBudWxsIHx8IGxhc3RBZ2VudE1lc3NhZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGxhc3RBZ2VudE1lc3NhZ2UudHlwZSkgPT09IE1lc3NhZ2VUeXBlLlRFTVBMQVRFKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNhbWUgYXMgYmxvY2tpbmcgYmFubmVyOiB3YWl0IHVudGlsIHRoZSBjdXN0b21lciBzZW5kcyBhIGZpcnN0IG1lc3NhZ2VcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNPdXRzaWRlMjRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHBsYXlTZW5kTWVzc2FnZVNvdW5kKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoc2hvdWxkQXV0b0Fzc2lnbk9uU2VuZCAmJiBteUFnZW50KSB7XG4gICAgICAgICAgICAgICAgeWllbGQgYXV0b0Fzc2lnbihzZWxlY3RlZENvbnYsIG15QWdlbnQsIHdvcmtzcGFjZUlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFNlbmQgdGhlIGFjdHVhbCBtZXNzYWdlXG4gICAgICAgICAgICB5aWVsZCBhZGRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHRyaW1tZWRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVwbHlUb01lc3NhZ2VJZDogcmVwbHlNZXNzYWdlID8gcmVwbHlNZXNzYWdlLmlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChyZXBseU1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUaGlzIGNvZGUgaXMgbm90IGNhdXNpbmcgdGhlIG1lc3NhZ2UgdG8gYXBwZWFyIHR3aWNlLCBpZiBldmVyeXRoaW5nIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQgd2l0aG91dCBpdFxuICAgICAgICAgICAgLy8gd2UgY2FuIHJlbW92ZSBpdCBpbiB0aGUgZnV0dXJlXG4gICAgICAgICAgICAvLyBjb25zdCBzZW50ID0gcmVzdWx0LmRhdGE/LmFkZE1lc3NhZ2U7XG4gICAgICAgICAgICAvLyBpZiAoIXNlbnQpIHJldHVybjtcbiAgICAgICAgICAgIC8vIHNldE1lc3NhZ2VzKChwcmV2KSA9PiBbXG4gICAgICAgICAgICAvLyAgIC4uLnByZXYsXG4gICAgICAgICAgICAvLyAgIHtcbiAgICAgICAgICAgIC8vICAgICAuLi5zZW50LFxuICAgICAgICAgICAgLy8gICAgIGNyZWF0ZWRBdDogbW9tZW50KHNlbnQuY3JlYXRlZEF0KS50b0RhdGUoKSxcbiAgICAgICAgICAgIC8vICAgfSxcbiAgICAgICAgICAgIC8vIF0pO1xuICAgICAgICAgICAgLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHt0KCdpbmJveC5mYWlsZWRUb1NlbmRNZXNzYWdlJyl9OiAke2Vycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyl9YCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSksIFtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICBsYXN0Q2xpZW50TWVzc2FnZSxcbiAgICAgICAgbGFzdEFnZW50TWVzc2FnZSxcbiAgICAgICAgdCxcbiAgICAgICAgbXlBZ2VudCxcbiAgICAgICAgYWRkTWVzc2FnZSxcbiAgICAgICAgcmVwbHlNZXNzYWdlLFxuICAgICAgICBhdXRvQXNzaWduLFxuICAgICAgICBzaG91bGRBdXRvQXNzaWduT25TZW5kLFxuICAgICAgICB3b3Jrc3BhY2VJZCxcbiAgICAgICAgaGFzVXNhZ2VMaW1pdFJlYWNoZWQsXG4gICAgICAgIGlzV2hhdHNBcHBDaGFubmVsLFxuICAgIF0pO1xuICAgIGNvbnN0IGhhbmRsZUFkZE5vdGVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgc2V0Tm90ZU1vZGUodHJ1ZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VSZXBseSA9IHVzZUNhbGxiYWNrKChtZXNzYWdlSWQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAocmVwbHlNZXNzYWdlKVxuICAgICAgICAgICAgcmV0dXJuIHNldFJlcGx5TWVzc2FnZShudWxsKTtcbiAgICAgICAgY29uc3QgdGFyZ2V0TWVzc2FnZSA9IChvbGRlck1lc3NhZ2VzID8gWy4uLm9sZGVyTWVzc2FnZXMsIC4uLm1lc3NhZ2VzXSA6IG1lc3NhZ2VzKS5maW5kKChtKSA9PiBtLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKTtcbiAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UpIHtcbiAgICAgICAgICAgIGxldCBuYW1lO1xuICAgICAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UuaXNBZ2VudCAmJiB0YXJnZXRNZXNzYWdlLmFnZW50SWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhZ2VudCA9IGFnZW50cyA9PT0gbnVsbCB8fCBhZ2VudHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50cy5maW5kKChhKSA9PiBhLmlkID09PSB0YXJnZXRNZXNzYWdlLmFnZW50SWQpO1xuICAgICAgICAgICAgICAgIG5hbWUgPSBgJHsoYWdlbnQgPT09IG51bGwgfHwgYWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50Lm5hbWUpIHx8ICcnfSAkeyhhZ2VudCA9PT0gbnVsbCB8fCBhZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogYWdlbnQuc3VybmFtZSkgfHwgJyd9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5hbWUgPSAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmNsaWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5hbWUpIHx8ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0UmVwbHlNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgnaW5ib3gucmVwbHlUb01lc3NhZ2UnLCB7IG5hbWU6IG5hbWUgfHwgJycgfSksXG4gICAgICAgICAgICAgICAgY29udGVudDogdGFyZ2V0TWVzc2FnZS5jb250ZW50IHx8ICcnLFxuICAgICAgICAgICAgICAgIGlkOiBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdGFyZ2V0TWVzc2FnZS50eXBlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9LCBbcmVwbHlNZXNzYWdlLCBvbGRlck1lc3NhZ2VzLCBtZXNzYWdlcywgdCwgc2VsZWN0ZWRDb252LCBhZ2VudHNdKTtcbiAgICBjb25zdCBhcHBseUxvY2FsUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgcmVhY3Rpb25zKSA9PiB7XG4gICAgICAgIHNldFJlYWN0aW9uT3ZlcnJpZGVzKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBbbWVzc2FnZUlkXTogcmVhY3Rpb25zIH0pKSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGN1cnJlbnRNZXNzYWdlUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBtZXNzYWdlcy5maW5kKChtZXNzYWdlKSA9PiBtZXNzYWdlLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnJlYWN0aW9uczsgfSwgW21lc3NhZ2VzXSk7XG4gICAgY29uc3QgaGFuZGxlTWVzc2FnZVJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2MsIF9kO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIGVtb2ppLCBteUFnZW50ID09PSBudWxsIHx8IG15QWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG15QWdlbnQuaWQpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlYWN0VG9NZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnZJZDogc2VsZWN0ZWRDb252LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW1vamksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgbmV4dFJlYWN0aW9ucyA9IChfZCA9IChfYyA9IHJlc3VsdC5kYXRhKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MucmVhY3RUb01lc3NhZ2UpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC5yZWFjdGlvbnM7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXh0UmVhY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBuZXh0UmVhY3Rpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXgpIHtcbiAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBwcmV2aW91cyk7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBleCBpbnN0YW5jZW9mIEVycm9yID8gZXgubWVzc2FnZSA6IHR5cGVvZiBleCA9PT0gJ3N0cmluZycgPyBleCA6ICcnO1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGVycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCBjYW5Db250cmlidXRlLCByZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnMsIG15QWdlbnQgPT09IG51bGwgfHwgbXlBZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogbXlBZ2VudC5pZF0pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VVbnJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2UsIF9mO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIG51bGwpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHVucmVhY3RUb01lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQ6IHNlbGVjdGVkQ29udi53b3Jrc3BhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVncmF0aW9uSWQ6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbW9qaSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBuZXh0UmVhY3Rpb25zID0gKF9mID0gKF9lID0gcmVzdWx0LmRhdGEpID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS51bnJlYWN0VG9NZXNzYWdlKSA9PT0gbnVsbCB8fCBfZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2YucmVhY3Rpb25zO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobmV4dFJlYWN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgbmV4dFJlYWN0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcHJldmlvdXMpO1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBlcnJvck1lc3NhZ2UucmVwbGFjZSgnQXBvbGxvRXJyb3I6JywgJycpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KSwgW3NlbGVjdGVkQ29udiwgY2FuQ29udHJpYnV0ZSwgdW5yZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnNdKTtcbiAgICBjb25zdCBoYW5kbGVOb3RlU2VuZCA9IHVzZUNhbGxiYWNrKChub3RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgaWYgKCFzZWxlY3RlZENvbnYgfHwgIW5vdGUudHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCB0cmltbWVkTm90ZSA9IG5vdGUudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWROb3RlKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbm90ZXNcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgeWllbGQgc2VuZE1lc3NhZ2Uoc2VsZWN0ZWRDb252LmlkLCBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCwgd29ya3NwYWNlSWQsICdub3RlJywgdHJpbW1lZE5vdGUsICdNRU1PJyk7XG4gICAgICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gc2VuZCBub3RlOicsIGVycm9yKTtcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0KCdpbmJveC5mYWlsZWRUb1NlbmROb3RlJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCB3b3Jrc3BhY2VJZCwgc2VuZE1lc3NhZ2UsIHRdKTtcbiAgICBjb25zdCBoYW5kbGVDbG9zZU5vdGVNb2RlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9IHVzZUNhbGxiYWNrKCh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRTZWFyY2hQYXR0ZXJuKHZhbHVlKTtcbiAgICAgICAgc2V0U2VhcmNoTWF0Y2hObygxKTtcbiAgICAgICAgaWYgKCF2YWx1ZS50cmltKCkpIHtcbiAgICAgICAgICAgIGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudCA9IERhdGUubm93KCkgKyA1MDA7XG4gICAgICAgIH1cbiAgICB9LCBbXSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoTWF0Y2hDaGFuZ2UgPSB1c2VDYWxsYmFjaygobWF0Y2hObykgPT4ge1xuICAgICAgICBzZXRTZWFyY2hNYXRjaE5vKG1hdGNoTm8pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hNYXRjaENvdW50ID0gdXNlQ2FsbGJhY2soKGNvdW50KSA9PiB7XG4gICAgICAgIHNldFNlYXJjaE1hdGNoQ291bnQoY291bnQpO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uID0gY2FuQ29udHJpYnV0ZSAmJiAhIW9uQ29udkVuZDtcbiAgICBjb25zdCBzaG93T2xkZXJNZXNzYWdlc0J1dHRvbiA9ICFzZWFyY2hQYXR0ZXJuLnRyaW0oKSAmJiAoaXNMb2FkaW5nT2xkZXJNZXNzYWdlcyB8fCAhb2xkZXJNZXNzYWdlcyB8fCAhIShwYWdpbmF0aW9uSW5mbyA9PT0gbnVsbCB8fCBwYWdpbmF0aW9uSW5mbyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcGFnaW5hdGlvbkluZm8uaGFzTmV4dFBhZ2UpKTtcbiAgICAvLyAtLS0gUmVuZGVyIC0tLVxuICAgIHJldHVybiAoX2pzeHMoV3JhcHBlciwgeyBydGw6IHJ0bCwgY2hpbGRyZW46IFtzZWxlY3RlZENvbnYgJiYgbWVzc2FnZXMgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbc2hvd0hlYWRlciA/IChfanN4KENoYXRIZWFkZXIsIHsgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYsIG9uQ29udkVuZDogb25Db252RW5kLCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uOiBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uLCBzZWFyY2hQYXR0ZXJuOiBzZWFyY2hQYXR0ZXJuLCBvblNlYXJjaENoYW5nZTogaGFuZGxlU2VhcmNoQ2hhbmdlLCBzZWFyY2hNYXRjaE5vOiBzZWFyY2hNYXRjaE5vLCBvblNlYXJjaE1hdGNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hNYXRjaENoYW5nZSwgc2VhcmNoTWF0Y2hDb3VudDogc2VhcmNoTWF0Y2hDb3VudCwgc2hvd09sZGVyTWVzc2FnZXNCdXR0b246IHNob3dPbGRlck1lc3NhZ2VzQnV0dG9uLCBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzOiBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzLCBvbkxvYWRPbGRlck1lc3NhZ2VzOiBsb2FkT2xkZXJNZXNzYWdlcywgb25CYWNrOiBvbkJhY2tUb0xpc3QgfSkpIDogbnVsbCwgX2pzeChJbmNvbWluZ0NhbGxCYW5uZXIsIHsgY2FsbDogc2VsZWN0ZWRDb252LmFjdGl2ZUNhbGwgfSksIF9qc3goQ2hhdFdyYXBwZXIsIHsgXCIkZnVsbEhlaWdodFwiOiAhc2hvd0hlYWRlciwgY2hpbGRyZW46IF9qc3goQ2hhdENvbnRlbnQsIHsgbWVzc2FnZXM6IG1lc3NhZ2VzLCBvbGRlck1lc3NhZ2VzOiBvbGRlck1lc3NhZ2VzLCBjYW5Db250cmlidXRlOiBjYW5Db250cmlidXRlLCBzZW5kTWVzc2FnZTogc2VuZENoYXRNZXNzYWdlLCBsb2FkT2xkZXJNZXNzYWdlczogbG9hZE9sZGVyTWVzc2FnZXMsIGFnZW50c0lkc0F2YXRhcnNNYXA6IGFnZW50c0lkc0F2YXRhcnNNYXAsIG5vdGVNb2RlOiBub3RlTW9kZSwgb25Ob3RlU2VuZDogaGFuZGxlTm90ZVNlbmQsIG9uQ2xvc2VOb3RlTW9kZTogaGFuZGxlQ2xvc2VOb3RlTW9kZSwgb25BZGROb3RlQ2xpY2s6IGhhbmRsZUFkZE5vdGVDbGljaywgc2VhcmNoUGF0dGVybjogc2VhcmNoUGF0dGVybiwgc2VhcmNoTWF0Y2hObzogc2VhcmNoTWF0Y2hObywgb25TZWFyY2hNYXRjaENvdW50OiBoYW5kbGVTZWFyY2hNYXRjaENvdW50LCBvbk1lc3NhZ2VSZXBseTogaGFuZGxlTWVzc2FnZVJlcGx5LCBvbk1lc3NhZ2VSZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VSZWFjdCA6IHVuZGVmaW5lZCwgb25NZXNzYWdlVW5yZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VVbnJlYWN0IDogdW5kZWZpbmVkLCByZXBseU1lc3NhZ2U6IHJlcGx5TWVzc2FnZSwgb25DYW5jZWxSZXBseU1lc3NhZ2U6ICgpID0+IHNldFJlcGx5TWVzc2FnZShudWxsKSwgZXJyb3JNZXNzYWdlOiBibG9ja2luZ0Vycm9yTWVzc2FnZSwgc3RhdHVzRmFpbHVyZU1lc3NhZ2U6IHN0YXR1c0ZhaWx1cmVNZXNzYWdlLCBsb2dvOiBsb2dvLCBjb252ZXJzYXRpb25JZDogc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkLCBvbkNvbnRhY3RNZXNzYWdlOiBvbkNvbnRhY3RNZXNzYWdlLCBvbkNvbnRhY3RBZGRDb250YWN0OiBvbkNvbnRhY3RBZGRDb250YWN0IH0pIH0pXSB9KSkgOiBzaG93Tm9SZXN1bHRzID8gKF9qc3goTm9SZXN1bHRzRm91bmQsIHt9KSkgOiAoX2pzeChOb0NvbnZTZWxlY3RlZCwgeyBjb252c0xlbmd0aDogY29udnNMZW5ndGggfHwgMCwgbG9hZGluZ0NvbnZzOiBsb2FkaW5nQ29udnMgfHwgZmFsc2UsIGhhbmRsZVN0YXJ0Q29udmVyc2F0aW9uOiBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgaGFzSW5ib3hBY2Nlc3M6IGhhc0luYm94QWNjZXNzIH0pKSwgb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwICYmIHNlbGVjdGVkQ29udiAmJiAoX2pzeChPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAsIHsgb25DbG9zZTogKCkgPT4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKGZhbHNlKSwgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYgfSkpXSB9KSk7XG59O1xuZXhwb3J0IGRlZmF1bHQgQ2hhdDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
104320
+ }) => rtl ? 'rtl' : 'ltr', ";p{font-weight:inherit;font-size:inherit;line-height:inherit;}button{margin:0!important;}" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUE4QjJCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTGF5b3V0RWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0JztcbmltcG9ydCB7IGNvcmVDbGllbnQgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtYXBpJztcbmltcG9ydCB7IGF1dGggfSBmcm9tICdAYmNydW1icy5uZXQvYmMtc2hhcmVkJztcbmltcG9ydCB7IE5ld0NvbG9ycywgdHJpZ2dlckVycm9yVG9hc3QgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtdWknO1xuaW1wb3J0IHsgdXNlQWRkTWVzc2FnZU11dGF0aW9uLCBNZXNzYWdlVHlwZSwgdXNlTWVzc2FnZXNMYXp5UXVlcnksIHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24sIHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbiwgfSBmcm9tICcuLi8uLi8uLi8uLi9ncmFwaHFsLmF1dG9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgdXNlUm9sZXMgfSBmcm9tICcuLi8uLi8uLi9hdXRoL2hvb2tzL3VzZVJvbGVzJztcbmltcG9ydCB7IHBsYXlTZW5kTWVzc2FnZVNvdW5kIH0gZnJvbSAnLi4vLi4vdXRpbHMvc291bmRzJztcbmltcG9ydCB1c2VDYW5Db250cmlidXRlIGZyb20gJy4uLy4uL2hvb2tzL3VzZUNhbkNvbnRyaWJ1dGUnO1xuaW1wb3J0IHVzZU15QWdlbnQgZnJvbSAnLi4vLi4vaG9va3MvdXNlTXlBZ2VudCc7XG5pbXBvcnQgeyBPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAgfSBmcm9tICcuLi9Qb3B1cHMvT3V0c2lkZTI0SG91cldpbmRvd1BvcHVwJztcbmltcG9ydCB7IGdldEdyYXZhdGFyVXJsIH0gZnJvbSAnLi4vLi4vLi4vYXV0aC91dGlscy9hdmF0YXInO1xuaW1wb3J0IENoYXRIZWFkZXIgZnJvbSAnLi9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEluY29taW5nQ2FsbEJhbm5lciB9IGZyb20gJy4uL0NhbGxzL0luY29taW5nQ2FsbEJhbm5lcic7XG5pbXBvcnQgTm9Db252U2VsZWN0ZWQgZnJvbSAnLi9Ob0NvbnZTZWxlY3RlZCc7XG5pbXBvcnQgTm9SZXN1bHRzRm91bmQgZnJvbSAnLi9Ob1Jlc3VsdHNGb3VuZCc7XG5pbXBvcnQgQ2hhdENvbnRlbnQgZnJvbSAnLi9DaGF0Q29udGVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbiBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWdubWVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbk9uU2VuZCBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWduT25TZW5kJztcbmltcG9ydCB1c2VTZW5kTWVzc2FnZSBmcm9tICcuLi8uLi9ob29rcy91c2VTZW5kTWVzc2FnZSc7XG5pbXBvcnQgeyBpc091dHNpZGUyNEhvdXJXaW5kb3csIGdldExhc3RNZXNzYWdlLCBoYXNoU3RhdHVzZXMsIGhhc2hSZWFjdGlvbnMsIHJlcGxhY2VBZ2VudFJlYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29udnMnO1xuaW1wb3J0IHsgdXNlQ3VycmVudFN1YnNjcmlwdGlvbk9wdGlvbmFsIH0gZnJvbSAnLi4vLi4vLi4vYmlsbGluZyc7XG5pbXBvcnQgeyBmb3JtYXRGYWlsdXJlUmVhc29uIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvZm9ybWF0RmFpbHVyZVJlYXNvbic7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBpc1doYXRzQXBwRmFtaWx5SW50ZWdyYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscy9pbnRlZ3JhdGlvbic7XG4vLyAtLS0gU3R5bGVkIGNvbXBvbmVudHMgLS0tXG5jb25zdCBXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIGhlaWdodDogY2FsYygxMDAlIC0gOHB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6ICR7TmV3Q29sb3JzLklOQk9YX0JBQ0tHUk9VTkR9O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpcmVjdGlvbjogJHsoeyBydGwgfSkgPT4gKHJ0bCA/ICdydGwnIDogJ2x0cicpfTtcblxuICBwIHtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBidXR0b24ge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5gO1xuY29uc3QgQ2hhdFdyYXBwZXIgPSBzdHlsZWQuZGl2IGBcbiAgaGVpZ2h0OiAkeyh7ICRmdWxsSGVpZ2h0IH0pID0+ICgkZnVsbEhlaWdodCA/ICcxMDAlJyA6ICdjYWxjKDEwMCUgLSA1NnB4KScpfTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5gO1xuLy8gLS0tIE1haW4gQ2hhdCBDb21wb25lbnQgLS0tXG5jb25zdCBDaGF0ID0gKHsgc2VsZWN0ZWRDb252LCBvbkNvbnZFbmQsIGFnZW50cywgbG9nbywgcnRsLCBjb252c0xlbmd0aCwgbG9hZGluZ0NvbnZzLCBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgc2hvd05vUmVzdWx0cywgb25Db250YWN0TWVzc2FnZSwgb25Db250YWN0QWRkQ29udGFjdCwgc2hvd0hlYWRlciA9IHRydWUsIHVzZXJUeXBlLCBoYXNJbmJveEFjY2VzcyA9IHRydWUsIG9uQmFja1RvTGlzdCwgfSkgPT4ge1xuICAgIHZhciBfYSwgX2I7XG4gICAgY29uc3QgW3RdID0gdXNlVHJhbnNsYXRpb24oJ2luYm94Jyk7XG4gICAgY29uc3QgW29sZGVyTWVzc2FnZXMsIHNldE9sZGVyTWVzc2FnZXNdID0gdXNlU3RhdGUoKTtcbiAgICBjb25zdCBbb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwLCBzZXRPdXRzaWRlMjRIb3VyV2luZG93UG9wdXBdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtwYWdpbmF0aW9uSW5mbywgc2V0UGFnaW5hdGlvbkluZm9dID0gdXNlU3RhdGUoKTtcbiAgICBjb25zdCBbYWdlbnRzSWRzQXZhdGFyc01hcCwgc2V0QWdlbnRzSWRzQXZhdGFyc01hcF0gPSB1c2VTdGF0ZSh7fSk7XG4gICAgY29uc3QgW25vdGVNb2RlLCBzZXROb3RlTW9kZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3NlYXJjaFBhdHRlcm4sIHNldFNlYXJjaFBhdHRlcm5dID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IFtzZWFyY2hNYXRjaE5vLCBzZXRTZWFyY2hNYXRjaE5vXSA9IHVzZVN0YXRlKDEpO1xuICAgIGNvbnN0IFtzZWFyY2hNYXRjaENvdW50LCBzZXRTZWFyY2hNYXRjaENvdW50XSA9IHVzZVN0YXRlKDApO1xuICAgIGNvbnN0IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYgPSB1c2VSZWYoMCk7XG4gICAgY29uc3Qgc2VsZWN0ZWRDb252SWRSZWYgPSB1c2VSZWYoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkKTtcbiAgICBjb25zdCBbaXNMb2FkaW5nT2xkZXJNZXNzYWdlcywgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlc10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3JlcGx5TWVzc2FnZSwgc2V0UmVwbHlNZXNzYWdlXSA9IHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IFtyZWFjdGlvbk92ZXJyaWRlcywgc2V0UmVhY3Rpb25PdmVycmlkZXNdID0gdXNlU3RhdGUoe30pO1xuICAgIGNvbnN0IFtibG9ja2luZ0Vycm9yTWVzc2FnZSwgc2V0QmxvY2tpbmdFcnJvck1lc3NhZ2VdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IFtzdGF0dXNGYWlsdXJlTWVzc2FnZSwgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2VdID0gdXNlU3RhdGUoJycpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgY29uc3Qgd29ya3NwYWNlSWQgPSBhdXRoLmdldENvbnRleHQoKTtcbiAgICBjb25zdCB7IGF1dG9Bc3NpZ24gfSA9IHVzZUF1dG9Bc3NpZ24oKTtcbiAgICBjb25zdCB7IHNlbmRNZXNzYWdlIH0gPSB1c2VTZW5kTWVzc2FnZSgpO1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbkNvbnRleHQgPSB1c2VDdXJyZW50U3Vic2NyaXB0aW9uT3B0aW9uYWwoKTtcbiAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBzdWJzY3JpcHRpb25Db250ZXh0ID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbkNvbnRleHQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbkNvbnRleHQuc3Vic2NyaXB0aW9uO1xuICAgIGNvbnN0IHsgcm9sZSB9ID0gdXNlUm9sZXMoKTtcbiAgICBjb25zdCBteUFnZW50ID0gdXNlTXlBZ2VudChhZ2VudHMpO1xuICAgIGNvbnN0IHNob3VsZEF1dG9Bc3NpZ25PblNlbmQgPSB1c2VBdXRvQXNzaWduT25TZW5kKCk7XG4gICAgY29uc3QgW3F1ZXJ5TWVzc2FnZXNdID0gdXNlTWVzc2FnZXNMYXp5UXVlcnkoe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFthZGRNZXNzYWdlXSA9IHVzZUFkZE1lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgY29uc3QgW3JlYWN0VG9NZXNzYWdlXSA9IHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24oe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFt1bnJlYWN0VG9NZXNzYWdlXSA9IHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgLy8gLS0tIERlcml2ZWQgRGF0YSAtLS1cbiAgICBjb25zdCBpc1doYXRzQXBwQ2hhbm5lbCA9IHVzZU1lbW8oKCkgPT4gaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvblR5cGUpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmludGVncmF0aW9uVHlwZV0pO1xuICAgIGNvbnN0IGxhc3RDbGllbnRNZXNzYWdlID0gdXNlTWVtbygoKSA9PiBnZXRMYXN0TWVzc2FnZSgoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSB8fCBbXSwgKG0pID0+ICFtLmlzQWdlbnQpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzXSk7XG4gICAgY29uc3QgbGFzdEFnZW50TWVzc2FnZSA9IHVzZU1lbW8oKCkgPT4gZ2V0TGFzdE1lc3NhZ2UoKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgfHwgW10sIChtKSA9PiBtLnR5cGUgIT09IE1lc3NhZ2VUeXBlLk5PVEUgJiYgbS5pc0FnZW50KSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlc10pO1xuICAgIGNvbnN0IGNhbkNvbnRyaWJ1dGUgPSB1c2VDYW5Db250cmlidXRlKHtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICByb2xlLFxuICAgICAgICBteUFnZW50LFxuICAgICAgICB1c2VyVHlwZSxcbiAgICB9KTtcbiAgICBjb25zdCBoYXNVc2FnZUxpbWl0UmVhY2hlZCA9ICEhKChfYSA9IHN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbi5wbGFuKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNDb252MTIwUGVyY2VudFVzZWQpICYmICEoc3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3Vic2NyaXB0aW9uLnNraXBVc2FnZUxpbWl0RW5mb3JjZW1lbnQpO1xuICAgIC8vIC0tLSBFZmZlY3RzIC0tLVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghYWdlbnRzKVxuICAgICAgICAgICAgcmV0dXJuIHNldEFnZW50c0lkc0F2YXRhcnNNYXAoe30pO1xuICAgICAgICBjb25zdCBmZXRjaEF2YXRhcnMgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjYyA9IHt9O1xuICAgICAgICAgICAgeWllbGQgUHJvbWlzZS5hbGwoYWdlbnRzLm1hcCgoYWdlbnQpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgIGlmIChhZ2VudC5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjW2FnZW50LmlkXSA9IGFnZW50LmF2YXRhcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF2YXRhclVybCA9IGdldEdyYXZhdGFyVXJsKGFnZW50LmVtYWlsKTtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZmV0Y2goYXZhdGFyVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY1thZ2VudC5pZF0gPSBhdmF0YXJVcmw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBEbyBub3RoaW5nIGlmIGdyYXZhdGFyIGZhaWxzIHRvIGxvYWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICBzZXRBZ2VudHNJZHNBdmF0YXJzTWFwKGFjYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBmZXRjaEF2YXRhcnMoKTtcbiAgICB9LCBbYWdlbnRzXSk7XG4gICAgLy8gUmVzZXR0aW5nIHRoZSBtZXNzYWdlcyBhbmQgcGFnaW5hdGlvbiBpbmZvIHdoZW4gdGhlIHNlbGVjdGVkIGNvbnZlcnNhdGlvbiBjaGFuZ2VzLlxuICAgIC8vIFJ1bnMgYXMgYSBsYXlvdXQgZWZmZWN0IHNvIHRoZSByZWYgaXMgdXAgdG8gZGF0ZSBiZWZvcmUgYW55IGluLWZsaWdodCBxdWVyeSByZXNvbHZlcy5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50ID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkO1xuICAgICAgICBzZXRPbGRlck1lc3NhZ2VzKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldFBhZ2luYXRpb25JbmZvKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICBzZXRSZWFjdGlvbk92ZXJyaWRlcyh7fSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIERlcml2ZWQgZnJvbSB0aGUgY29udmVyc2F0aW9uIGluc3RlYWQgb2Ygc3RvcmVkIGluIHN0YXRlOiBzdGF0ZSB3b3VsZCBsYWcgb25lIHJlbmRlclxuICAgIC8vIGJlaGluZCBvbiBjb252ZXJzYXRpb24gc3dpdGNoLCBzaG93aW5nIHRoZSBwcmV2aW91cyBjaGF0J3MgbWVzc2FnZXMgdW5kZXIgdGhlIG5ld1xuICAgIC8vIGNvbnZlcnNhdGlvbiBpZC4gVGhlIHNpZ25hdHVyZSBrZWVwcyB0aGUgbGlzdCBpZGVudGl0eSBzdGFibGUgYWNyb3NzIHBvbGxpbmcgcmVmZXRjaGVzLlxuICAgIGNvbnN0IG1lc3NhZ2VzU2lnbmF0dXJlID0gYCR7c2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkfXwkeyhfYiA9IHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmxlbmd0aH18JHtoYXNoU3RhdHVzZXMoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKX18JHtoYXNoUmVhY3Rpb25zKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcyl9YDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHJldHVybiAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubWFwKChtKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBtKSwgeyBjcmVhdGVkQXQ6IG1vbWVudChtLmNyZWF0ZWRBdCkudG9EYXRlKCksIHJlYWN0aW9uczogT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlYWN0aW9uT3ZlcnJpZGVzLCBtLm1lc3NhZ2VJZClcbiAgICAgICAgICAgICAgICA/IHJlYWN0aW9uT3ZlcnJpZGVzW20ubWVzc2FnZUlkXVxuICAgICAgICAgICAgICAgIDogbS5yZWFjdGlvbnMgfSkpKSkgfHwgW107XG4gICAgfSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIFttZXNzYWdlc1NpZ25hdHVyZSwgcmVhY3Rpb25PdmVycmlkZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIC0tLSBMb2FkIE9sZGVyIE1lc3NhZ2VzIC0tLVxuICAgIGNvbnN0IGxvYWRPbGRlck1lc3NhZ2VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBpZiAoRGF0ZS5ub3coKSA8IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKHNlYXJjaFBhdHRlcm4udHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAocGFnaW5hdGlvbkluZm8gJiYgIXBhZ2luYXRpb25JbmZvLmhhc05leHRQYWdlKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKGlzTG9hZGluZ09sZGVyTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHJlcXVlc3RlZENvbnZJZCA9IHNlbGVjdGVkQ29udi5pZDtcbiAgICAgICAgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlcyh0cnVlKTtcbiAgICAgICAgcXVlcnlNZXNzYWdlcyh7XG4gICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDogc2VsZWN0ZWRDb252LmNsaWVudElkLFxuICAgICAgICAgICAgICAgICAgICAvLyBVc2UgdGhlIGNvbnZlcnNhdGlvbidzIGNyZWF0ZWRBdCAobWludXMgYSBzbWFsbCBidWZmZXIpIGFzIHRoZSB1cHBlciBib3VuZC4gVGhlXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiByb3cgaXMgY3JlYXRlZCBiZWZvcmUgaXRzIGZpcnN0IG1lc3NhZ2UsIHNvIG1lc3NhZ2VzIG9mIHRoZSBjdXJyZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiBoYXZlIGNyZWF0ZWRBdCA+IHNlbGVjdGVkQ29udi5jcmVhdGVkQXQgYW5kIHdvbid0IGJlIGluY2x1ZGVkIGJ5XG4gICAgICAgICAgICAgICAgICAgIC8vIGBsdGU6IGVuZERhdGVgLiBBIDMtc2Vjb25kIGJ1ZmZlciBhdm9pZHMgZWRnZS1jYXNlIGNsb2NrIHNrZXcgd2l0aG91dCBkcm9wcGluZ1xuICAgICAgICAgICAgICAgICAgICAvLyBtZXNzYWdlcyBmcm9tIHRoZSBwcmVjZWRpbmcgY29udmVyc2F0aW9uIChhIDEtbWludXRlIGJ1ZmZlciB3YXMgdG9vIGFnZ3Jlc3NpdmUpLlxuICAgICAgICAgICAgICAgICAgICBlbmREYXRlOiBtb21lbnQoc2VsZWN0ZWRDb252LmNyZWF0ZWRBdCkuc3VidHJhY3QoMywgJ3NlY29uZHMnKS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYWdlSW5mbzoge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBhZ2luYXRpb25JbmZvID09PSBudWxsIHx8IHBhZ2luYXRpb25JbmZvID09PSB2b2lkIDAgPyB2b2lkIDAgOiBwYWdpbmF0aW9uSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiA1MCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgLy8gVGhlIHVzZXIgbWF5IGhhdmUgc3dpdGNoZWQgY29udmVyc2F0aW9ucyB3aGlsZSB0aGlzIHdhcyBpbiBmbGlnaHQ7IGFwcGx5aW5nIGl0IG5vd1xuICAgICAgICAgICAgLy8gd291bGQgaW5qZWN0IHRoZSBwcmV2aW91cyBjaGF0J3MgaGlzdG9yeSAoYW5kIGl0cyBtZWRpYSkgaW50byB0aGUgY3VycmVudCBvbmUuXG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICgoX2EgPSBkYXRhID09PSBudWxsIHx8IGRhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRhdGEubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2Rlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2VzID0gZGF0YS5tZXNzYWdlcy5ub2Rlcy5yZXZlcnNlKCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc2VwZXJhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbW9tZW50KHNlbGVjdGVkQ29udi5jcmVhdGVkQXQpLmZvcm1hdCgnTExMTCcpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgc2V0T2xkZXJNZXNzYWdlcygocHJldikgPT4gKHByZXYgPyBbLi4ubmV3TWVzc2FnZXMsIC4uLnByZXZdIDogWy4uLm5ld01lc3NhZ2VzLCBzZXBhcmF0b3JdKSk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mbykge1xuICAgICAgICAgICAgICAgICAgICBzZXRQYWdpbmF0aW9uSW5mbyh7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRDdXJzb3I6IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOZXh0UGFnZTogZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLm1lc3NhZ2VzLnBhZ2VJbmZvLmhhc05leHRQYWdlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9LCBbcXVlcnlNZXNzYWdlcywgc2VsZWN0ZWRDb252LCBwYWdpbmF0aW9uSW5mbywgd29ya3NwYWNlSWQsIHNlYXJjaFBhdHRlcm4sIGlzTG9hZGluZ09sZGVyTWVzc2FnZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRCbG9ja2luZ0Vycm9yTWVzc2FnZSgnJyk7XG4gICAgICAgIGlmIChoYXNVc2FnZUxpbWl0UmVhY2hlZCAmJiBlbnZpcm9ubWVudC5lbmFibGVQYWlkUGxhbnMpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LmNoYXREaXNhYmxlZEF0VXNhZ2VMaW1pdCcpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IGJsb2NrIHdpdGggXCJ3YWl0IGZvciBjdXN0b21lclwiIGFmdGVyICpvdXIqIHRlbXBsYXRlIHdoZW4gdGhlIGN1c3RvbWVyIGhhcyBuZXZlclxuICAgICAgICAvLyByZXBsaWVkLiBPbmNlIGBsYXN0Q2xpZW50TWVzc2FnZWAgZXhpc3RzLCAyNGggcnVsZXMgdXNlIHRoZSBjdXN0b21lcidzIGxhc3QgbWVzc2FnZSDigJRcbiAgICAgICAgLy8gYGxhc3RBZ2VudE1lc3NhZ2VgIG1heSBzdGlsbCBiZSB0aGF0IG9wZW5pbmcgdGVtcGxhdGUsIHNvIHdlIG11c3Qgbm90IGNvbmZsYXRlIHRoYXRcbiAgICAgICAgLy8gd2l0aCBcIm91dHNpZGUgd2luZG93XCIgKHdoaWNoIHdvdWxkIGluY29ycmVjdGx5IHN1cHByZXNzIHRoZSB0ZW1wbGF0ZSBDVEEgbW9kYWwpLlxuICAgICAgICBjb25zdCBhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUgPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiAhbGFzdENsaWVudE1lc3NhZ2UgJiYgKGxhc3RBZ2VudE1lc3NhZ2UgPT09IG51bGwgfHwgbGFzdEFnZW50TWVzc2FnZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbGFzdEFnZW50TWVzc2FnZS50eXBlKSA9PT0gTWVzc2FnZVR5cGUuVEVNUExBVEU7XG4gICAgICAgIGlmIChhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LnRlbXBsYXRlTWVzc2FnZVdhcm5pbmcnKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9LCBbaGFzVXNhZ2VMaW1pdFJlYWNoZWQsIGlzV2hhdHNBcHBDaGFubmVsLCBsYXN0QWdlbnRNZXNzYWdlLCBsYXN0Q2xpZW50TWVzc2FnZSwgdF0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgbGFzdE1lc3NhZ2UgPSAoX2EgPSBzZWxlY3RlZENvbnYgPT09IG51bGwgfHwgc2VsZWN0ZWRDb252ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZWxlY3RlZENvbnYubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVtzZWxlY3RlZENvbnYubWVzc2FnZXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICghKGxhc3RNZXNzYWdlID09PSBudWxsIHx8IGxhc3RNZXNzYWdlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24pKSB7XG4gICAgICAgICAgICBzZXRTdGF0dXNGYWlsdXJlTWVzc2FnZSgnJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2UoZm9ybWF0RmFpbHVyZVJlYXNvbihsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24sIHQoJ2dlbmVyaWNFcnJvcicpKSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCwgc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzLCB0XSk7XG4gICAgLy8gLS0tIFNlbmQgTWVzc2FnZSBMb2dpYyAtLS1cbiAgICBjb25zdCBzZW5kQ2hhdE1lc3NhZ2UgPSB1c2VDYWxsYmFjaygodHlwZSwgY29udGVudCkgPT4gX19hd2FpdGVyKHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmICghc2VsZWN0ZWRDb252KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvLyBWYWxpZGF0ZSBtZXNzYWdlIGNvbnRlbnRcbiAgICAgICAgY29uc3QgdHJpbW1lZENvbnRlbnQgPSBjb250ZW50ID09PSBudWxsIHx8IGNvbnRlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbnRlbnQudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWRDb250ZW50KSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbWVzc2FnZXNcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc091dHNpZGUyNGggPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiBpc091dHNpZGUyNEhvdXJXaW5kb3cobGFzdENsaWVudE1lc3NhZ2UpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRDb252LmVuZGVkKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRXJyb3JUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHQoJ3JlcXVlc3RGYWlsZWQnKSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdCgnaW5ib3gubm9NZXNzYWdlc0ZvckVuZGVkQ29udicpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1VzYWdlTGltaXRSZWFjaGVkICYmIGVudmlyb25tZW50LmVuYWJsZVBhaWRQbGFucykge1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHQoJ2luYm94LnVzYWdlTGltaXRSZWFjaGVkJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNXaGF0c0FwcENoYW5uZWwgJiYgIWxhc3RDbGllbnRNZXNzYWdlICYmIChsYXN0QWdlbnRNZXNzYWdlID09PSBudWxsIHx8IGxhc3RBZ2VudE1lc3NhZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGxhc3RBZ2VudE1lc3NhZ2UudHlwZSkgPT09IE1lc3NhZ2VUeXBlLlRFTVBMQVRFKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNhbWUgYXMgYmxvY2tpbmcgYmFubmVyOiB3YWl0IHVudGlsIHRoZSBjdXN0b21lciBzZW5kcyBhIGZpcnN0IG1lc3NhZ2VcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNPdXRzaWRlMjRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHBsYXlTZW5kTWVzc2FnZVNvdW5kKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoc2hvdWxkQXV0b0Fzc2lnbk9uU2VuZCAmJiBteUFnZW50KSB7XG4gICAgICAgICAgICAgICAgeWllbGQgYXV0b0Fzc2lnbihzZWxlY3RlZENvbnYsIG15QWdlbnQsIHdvcmtzcGFjZUlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFNlbmQgdGhlIGFjdHVhbCBtZXNzYWdlXG4gICAgICAgICAgICB5aWVsZCBhZGRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHRyaW1tZWRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVwbHlUb01lc3NhZ2VJZDogcmVwbHlNZXNzYWdlID8gcmVwbHlNZXNzYWdlLmlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChyZXBseU1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUaGlzIGNvZGUgaXMgbm90IGNhdXNpbmcgdGhlIG1lc3NhZ2UgdG8gYXBwZWFyIHR3aWNlLCBpZiBldmVyeXRoaW5nIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQgd2l0aG91dCBpdFxuICAgICAgICAgICAgLy8gd2UgY2FuIHJlbW92ZSBpdCBpbiB0aGUgZnV0dXJlXG4gICAgICAgICAgICAvLyBjb25zdCBzZW50ID0gcmVzdWx0LmRhdGE/LmFkZE1lc3NhZ2U7XG4gICAgICAgICAgICAvLyBpZiAoIXNlbnQpIHJldHVybjtcbiAgICAgICAgICAgIC8vIHNldE1lc3NhZ2VzKChwcmV2KSA9PiBbXG4gICAgICAgICAgICAvLyAgIC4uLnByZXYsXG4gICAgICAgICAgICAvLyAgIHtcbiAgICAgICAgICAgIC8vICAgICAuLi5zZW50LFxuICAgICAgICAgICAgLy8gICAgIGNyZWF0ZWRBdDogbW9tZW50KHNlbnQuY3JlYXRlZEF0KS50b0RhdGUoKSxcbiAgICAgICAgICAgIC8vICAgfSxcbiAgICAgICAgICAgIC8vIF0pO1xuICAgICAgICAgICAgLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHt0KCdpbmJveC5mYWlsZWRUb1NlbmRNZXNzYWdlJyl9OiAke2Vycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyl9YCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSksIFtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICBsYXN0Q2xpZW50TWVzc2FnZSxcbiAgICAgICAgbGFzdEFnZW50TWVzc2FnZSxcbiAgICAgICAgdCxcbiAgICAgICAgbXlBZ2VudCxcbiAgICAgICAgYWRkTWVzc2FnZSxcbiAgICAgICAgcmVwbHlNZXNzYWdlLFxuICAgICAgICBhdXRvQXNzaWduLFxuICAgICAgICBzaG91bGRBdXRvQXNzaWduT25TZW5kLFxuICAgICAgICB3b3Jrc3BhY2VJZCxcbiAgICAgICAgaGFzVXNhZ2VMaW1pdFJlYWNoZWQsXG4gICAgICAgIGlzV2hhdHNBcHBDaGFubmVsLFxuICAgIF0pO1xuICAgIGNvbnN0IGhhbmRsZUFkZE5vdGVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgc2V0Tm90ZU1vZGUodHJ1ZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VSZXBseSA9IHVzZUNhbGxiYWNrKChtZXNzYWdlSWQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAocmVwbHlNZXNzYWdlKVxuICAgICAgICAgICAgcmV0dXJuIHNldFJlcGx5TWVzc2FnZShudWxsKTtcbiAgICAgICAgY29uc3QgdGFyZ2V0TWVzc2FnZSA9IChvbGRlck1lc3NhZ2VzID8gWy4uLm9sZGVyTWVzc2FnZXMsIC4uLm1lc3NhZ2VzXSA6IG1lc3NhZ2VzKS5maW5kKChtKSA9PiBtLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKTtcbiAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UpIHtcbiAgICAgICAgICAgIGxldCBuYW1lO1xuICAgICAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UuaXNBZ2VudCAmJiB0YXJnZXRNZXNzYWdlLmFnZW50SWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhZ2VudCA9IGFnZW50cyA9PT0gbnVsbCB8fCBhZ2VudHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50cy5maW5kKChhKSA9PiBhLmlkID09PSB0YXJnZXRNZXNzYWdlLmFnZW50SWQpO1xuICAgICAgICAgICAgICAgIG5hbWUgPSBgJHsoYWdlbnQgPT09IG51bGwgfHwgYWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50Lm5hbWUpIHx8ICcnfSAkeyhhZ2VudCA9PT0gbnVsbCB8fCBhZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogYWdlbnQuc3VybmFtZSkgfHwgJyd9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5hbWUgPSAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmNsaWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5hbWUpIHx8ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0UmVwbHlNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgnaW5ib3gucmVwbHlUb01lc3NhZ2UnLCB7IG5hbWU6IG5hbWUgfHwgJycgfSksXG4gICAgICAgICAgICAgICAgY29udGVudDogdGFyZ2V0TWVzc2FnZS5jb250ZW50IHx8ICcnLFxuICAgICAgICAgICAgICAgIGlkOiBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdGFyZ2V0TWVzc2FnZS50eXBlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9LCBbcmVwbHlNZXNzYWdlLCBvbGRlck1lc3NhZ2VzLCBtZXNzYWdlcywgdCwgc2VsZWN0ZWRDb252LCBhZ2VudHNdKTtcbiAgICBjb25zdCBhcHBseUxvY2FsUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgcmVhY3Rpb25zKSA9PiB7XG4gICAgICAgIHNldFJlYWN0aW9uT3ZlcnJpZGVzKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBbbWVzc2FnZUlkXTogcmVhY3Rpb25zIH0pKSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGN1cnJlbnRNZXNzYWdlUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBtZXNzYWdlcy5maW5kKChtZXNzYWdlKSA9PiBtZXNzYWdlLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnJlYWN0aW9uczsgfSwgW21lc3NhZ2VzXSk7XG4gICAgY29uc3QgaGFuZGxlTWVzc2FnZVJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2MsIF9kO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIGVtb2ppLCBteUFnZW50ID09PSBudWxsIHx8IG15QWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG15QWdlbnQuaWQpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlYWN0VG9NZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnZJZDogc2VsZWN0ZWRDb252LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW1vamksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgbmV4dFJlYWN0aW9ucyA9IChfZCA9IChfYyA9IHJlc3VsdC5kYXRhKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MucmVhY3RUb01lc3NhZ2UpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC5yZWFjdGlvbnM7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXh0UmVhY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBuZXh0UmVhY3Rpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXgpIHtcbiAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBwcmV2aW91cyk7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBleCBpbnN0YW5jZW9mIEVycm9yID8gZXgubWVzc2FnZSA6IHR5cGVvZiBleCA9PT0gJ3N0cmluZycgPyBleCA6ICcnO1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGVycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCBjYW5Db250cmlidXRlLCByZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnMsIG15QWdlbnQgPT09IG51bGwgfHwgbXlBZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogbXlBZ2VudC5pZF0pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VVbnJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2UsIF9mO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIG51bGwpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHVucmVhY3RUb01lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQ6IHNlbGVjdGVkQ29udi53b3Jrc3BhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVncmF0aW9uSWQ6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbW9qaSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBuZXh0UmVhY3Rpb25zID0gKF9mID0gKF9lID0gcmVzdWx0LmRhdGEpID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS51bnJlYWN0VG9NZXNzYWdlKSA9PT0gbnVsbCB8fCBfZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2YucmVhY3Rpb25zO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobmV4dFJlYWN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgbmV4dFJlYWN0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcHJldmlvdXMpO1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBlcnJvck1lc3NhZ2UucmVwbGFjZSgnQXBvbGxvRXJyb3I6JywgJycpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KSwgW3NlbGVjdGVkQ29udiwgY2FuQ29udHJpYnV0ZSwgdW5yZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnNdKTtcbiAgICBjb25zdCBoYW5kbGVOb3RlU2VuZCA9IHVzZUNhbGxiYWNrKChub3RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgaWYgKCFzZWxlY3RlZENvbnYgfHwgIW5vdGUudHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCB0cmltbWVkTm90ZSA9IG5vdGUudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWROb3RlKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbm90ZXNcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgeWllbGQgc2VuZE1lc3NhZ2Uoc2VsZWN0ZWRDb252LmlkLCBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCwgd29ya3NwYWNlSWQsICdub3RlJywgdHJpbW1lZE5vdGUsICdNRU1PJyk7XG4gICAgICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gc2VuZCBub3RlOicsIGVycm9yKTtcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0KCdpbmJveC5mYWlsZWRUb1NlbmROb3RlJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCB3b3Jrc3BhY2VJZCwgc2VuZE1lc3NhZ2UsIHRdKTtcbiAgICBjb25zdCBoYW5kbGVDbG9zZU5vdGVNb2RlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9IHVzZUNhbGxiYWNrKCh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRTZWFyY2hQYXR0ZXJuKHZhbHVlKTtcbiAgICAgICAgc2V0U2VhcmNoTWF0Y2hObygxKTtcbiAgICAgICAgaWYgKCF2YWx1ZS50cmltKCkpIHtcbiAgICAgICAgICAgIGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudCA9IERhdGUubm93KCkgKyA1MDA7XG4gICAgICAgIH1cbiAgICB9LCBbXSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoTWF0Y2hDaGFuZ2UgPSB1c2VDYWxsYmFjaygobWF0Y2hObykgPT4ge1xuICAgICAgICBzZXRTZWFyY2hNYXRjaE5vKG1hdGNoTm8pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hNYXRjaENvdW50ID0gdXNlQ2FsbGJhY2soKGNvdW50KSA9PiB7XG4gICAgICAgIHNldFNlYXJjaE1hdGNoQ291bnQoY291bnQpO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uID0gY2FuQ29udHJpYnV0ZSAmJiAhIW9uQ29udkVuZDtcbiAgICBjb25zdCBzaG93T2xkZXJNZXNzYWdlc0J1dHRvbiA9ICFzZWFyY2hQYXR0ZXJuLnRyaW0oKSAmJiAoaXNMb2FkaW5nT2xkZXJNZXNzYWdlcyB8fCAhb2xkZXJNZXNzYWdlcyB8fCAhIShwYWdpbmF0aW9uSW5mbyA9PT0gbnVsbCB8fCBwYWdpbmF0aW9uSW5mbyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcGFnaW5hdGlvbkluZm8uaGFzTmV4dFBhZ2UpKTtcbiAgICAvLyAtLS0gUmVuZGVyIC0tLVxuICAgIHJldHVybiAoX2pzeHMoV3JhcHBlciwgeyBydGw6IHJ0bCwgY2hpbGRyZW46IFtzZWxlY3RlZENvbnYgJiYgbWVzc2FnZXMgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbc2hvd0hlYWRlciA/IChfanN4KENoYXRIZWFkZXIsIHsgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYsIG9uQ29udkVuZDogb25Db252RW5kLCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uOiBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uLCBzZWFyY2hQYXR0ZXJuOiBzZWFyY2hQYXR0ZXJuLCBvblNlYXJjaENoYW5nZTogaGFuZGxlU2VhcmNoQ2hhbmdlLCBzZWFyY2hNYXRjaE5vOiBzZWFyY2hNYXRjaE5vLCBvblNlYXJjaE1hdGNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hNYXRjaENoYW5nZSwgc2VhcmNoTWF0Y2hDb3VudDogc2VhcmNoTWF0Y2hDb3VudCwgc2hvd09sZGVyTWVzc2FnZXNCdXR0b246IHNob3dPbGRlck1lc3NhZ2VzQnV0dG9uLCBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzOiBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzLCBvbkxvYWRPbGRlck1lc3NhZ2VzOiBsb2FkT2xkZXJNZXNzYWdlcywgb25CYWNrOiBvbkJhY2tUb0xpc3QgfSkpIDogbnVsbCwgX2pzeChJbmNvbWluZ0NhbGxCYW5uZXIsIHsgY2FsbDogc2VsZWN0ZWRDb252LmFjdGl2ZUNhbGwgfSksIF9qc3goQ2hhdFdyYXBwZXIsIHsgXCIkZnVsbEhlaWdodFwiOiAhc2hvd0hlYWRlciwgY2hpbGRyZW46IF9qc3goQ2hhdENvbnRlbnQsIHsgbWVzc2FnZXM6IG1lc3NhZ2VzLCBvbGRlck1lc3NhZ2VzOiBvbGRlck1lc3NhZ2VzLCBjYW5Db250cmlidXRlOiBjYW5Db250cmlidXRlLCBzZW5kTWVzc2FnZTogc2VuZENoYXRNZXNzYWdlLCBsb2FkT2xkZXJNZXNzYWdlczogbG9hZE9sZGVyTWVzc2FnZXMsIGFnZW50c0lkc0F2YXRhcnNNYXA6IGFnZW50c0lkc0F2YXRhcnNNYXAsIG5vdGVNb2RlOiBub3RlTW9kZSwgb25Ob3RlU2VuZDogaGFuZGxlTm90ZVNlbmQsIG9uQ2xvc2VOb3RlTW9kZTogaGFuZGxlQ2xvc2VOb3RlTW9kZSwgb25BZGROb3RlQ2xpY2s6IGhhbmRsZUFkZE5vdGVDbGljaywgc2VhcmNoUGF0dGVybjogc2VhcmNoUGF0dGVybiwgc2VhcmNoTWF0Y2hObzogc2VhcmNoTWF0Y2hObywgb25TZWFyY2hNYXRjaENvdW50OiBoYW5kbGVTZWFyY2hNYXRjaENvdW50LCBvbk1lc3NhZ2VSZXBseTogaGFuZGxlTWVzc2FnZVJlcGx5LCBvbk1lc3NhZ2VSZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VSZWFjdCA6IHVuZGVmaW5lZCwgb25NZXNzYWdlVW5yZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VVbnJlYWN0IDogdW5kZWZpbmVkLCByZXBseU1lc3NhZ2U6IHJlcGx5TWVzc2FnZSwgb25DYW5jZWxSZXBseU1lc3NhZ2U6ICgpID0+IHNldFJlcGx5TWVzc2FnZShudWxsKSwgZXJyb3JNZXNzYWdlOiBibG9ja2luZ0Vycm9yTWVzc2FnZSwgc3RhdHVzRmFpbHVyZU1lc3NhZ2U6IHN0YXR1c0ZhaWx1cmVNZXNzYWdlLCBsb2dvOiBsb2dvLCBjb252ZXJzYXRpb25JZDogc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkLCBvbkNvbnRhY3RNZXNzYWdlOiBvbkNvbnRhY3RNZXNzYWdlLCBvbkNvbnRhY3RBZGRDb250YWN0OiBvbkNvbnRhY3RBZGRDb250YWN0IH0pIH0pXSB9KSkgOiBzaG93Tm9SZXN1bHRzID8gKF9qc3goTm9SZXN1bHRzRm91bmQsIHt9KSkgOiAoX2pzeChOb0NvbnZTZWxlY3RlZCwgeyBjb252c0xlbmd0aDogY29udnNMZW5ndGggfHwgMCwgbG9hZGluZ0NvbnZzOiBsb2FkaW5nQ29udnMgfHwgZmFsc2UsIGhhbmRsZVN0YXJ0Q29udmVyc2F0aW9uOiBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgaGFzSW5ib3hBY2Nlc3M6IGhhc0luYm94QWNjZXNzIH0pKSwgb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwICYmIHNlbGVjdGVkQ29udiAmJiAoX2pzeChPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAsIHsgb25DbG9zZTogKCkgPT4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKGZhbHNlKSwgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYgfSkpXSB9KSk7XG59O1xuZXhwb3J0IGRlZmF1bHQgQ2hhdDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
104085
104321
  const ChatWrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "production" ? {
104086
104322
  target: "e1cywtq0"
104087
104323
  } : {
@@ -104089,7 +104325,7 @@ const ChatWrapper = /*#__PURE__*/_styled("div", process.env.NODE_ENV === "produc
104089
104325
  label: "ChatWrapper"
104090
104326
  })("height:", ({
104091
104327
  $fullHeight
104092
- }) => $fullHeight ? '100%' : 'calc(100% - 56px)', ";direction:ltr;position:relative;width:100%;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFnRCtCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTGF5b3V0RWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0JztcbmltcG9ydCB7IGNvcmVDbGllbnQgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtYXBpJztcbmltcG9ydCB7IGF1dGgsIFJvbGUgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtc2hhcmVkJztcbmltcG9ydCB7IE5ld0NvbG9ycywgdHJpZ2dlckVycm9yVG9hc3QgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtdWknO1xuaW1wb3J0IHsgdXNlQWRkTWVzc2FnZU11dGF0aW9uLCBNZXNzYWdlVHlwZSwgdXNlTWVzc2FnZXNMYXp5UXVlcnksIHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24sIHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbiwgfSBmcm9tICcuLi8uLi8uLi8uLi9ncmFwaHFsLmF1dG9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgdXNlUm9sZXMgfSBmcm9tICcuLi8uLi8uLi9hdXRoL2hvb2tzL3VzZVJvbGVzJztcbmltcG9ydCB7IHBsYXlTZW5kTWVzc2FnZVNvdW5kIH0gZnJvbSAnLi4vLi4vdXRpbHMvc291bmRzJztcbmltcG9ydCB1c2VDYW5Db250cmlidXRlIGZyb20gJy4uLy4uL2hvb2tzL3VzZUNhbkNvbnRyaWJ1dGUnO1xuaW1wb3J0IHVzZU15QWdlbnQgZnJvbSAnLi4vLi4vaG9va3MvdXNlTXlBZ2VudCc7XG5pbXBvcnQgeyBPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAgfSBmcm9tICcuLi9Qb3B1cHMvT3V0c2lkZTI0SG91cldpbmRvd1BvcHVwJztcbmltcG9ydCB7IGdldEdyYXZhdGFyVXJsIH0gZnJvbSAnLi4vLi4vLi4vYXV0aC91dGlscy9hdmF0YXInO1xuaW1wb3J0IENoYXRIZWFkZXIgZnJvbSAnLi9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEluY29taW5nQ2FsbEJhbm5lciB9IGZyb20gJy4uL0NhbGxzL0luY29taW5nQ2FsbEJhbm5lcic7XG5pbXBvcnQgTm9Db252U2VsZWN0ZWQgZnJvbSAnLi9Ob0NvbnZTZWxlY3RlZCc7XG5pbXBvcnQgTm9SZXN1bHRzRm91bmQgZnJvbSAnLi9Ob1Jlc3VsdHNGb3VuZCc7XG5pbXBvcnQgQ2hhdENvbnRlbnQgZnJvbSAnLi9DaGF0Q29udGVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbiBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWdubWVudCc7XG5pbXBvcnQgdXNlU2VuZE1lc3NhZ2UgZnJvbSAnLi4vLi4vaG9va3MvdXNlU2VuZE1lc3NhZ2UnO1xuaW1wb3J0IHsgaXNPdXRzaWRlMjRIb3VyV2luZG93LCBnZXRMYXN0TWVzc2FnZSwgaGFzaFN0YXR1c2VzLCBoYXNoUmVhY3Rpb25zLCByZXBsYWNlQWdlbnRSZWFjdGlvbiB9IGZyb20gJy4uLy4uL3V0aWxzL2NvbnZzJztcbmltcG9ydCB7IHVzZUN1cnJlbnRTdWJzY3JpcHRpb25PcHRpb25hbCB9IGZyb20gJy4uLy4uLy4uL2JpbGxpbmcnO1xuaW1wb3J0IHsgZm9ybWF0RmFpbHVyZVJlYXNvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3V0aWxzL2Zvcm1hdEZhaWx1cmVSZWFzb24nO1xuaW1wb3J0IHsgZW52aXJvbm1lbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9lbnZpcm9ubWVudHMvZW52aXJvbm1lbnQnO1xuaW1wb3J0IHsgaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvaW50ZWdyYXRpb24nO1xuLy8gLS0tIFN0eWxlZCBjb21wb25lbnRzIC0tLVxuY29uc3QgV3JhcHBlciA9IHN0eWxlZC5kaXYgYFxuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDhweCk7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAke05ld0NvbG9ycy5JTkJPWF9CQUNLR1JPVU5EfTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXJlY3Rpb246ICR7KHsgcnRsIH0pID0+IChydGwgPyAncnRsJyA6ICdsdHInKX07XG5cbiAgcCB7XG4gICAgZm9udC13ZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgfVxuYDtcbmNvbnN0IENoYXRXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIGhlaWdodDogJHsoeyAkZnVsbEhlaWdodCB9KSA9PiAoJGZ1bGxIZWlnaHQgPyAnMTAwJScgOiAnY2FsYygxMDAlIC0gNTZweCknKX07XG4gIGRpcmVjdGlvbjogbHRyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xuYDtcbi8vIC0tLSBNYWluIENoYXQgQ29tcG9uZW50IC0tLVxuY29uc3QgQ2hhdCA9ICh7IHNlbGVjdGVkQ29udiwgb25Db252RW5kLCBhZ2VudHMsIGxvZ28sIHJ0bCwgY29udnNMZW5ndGgsIGxvYWRpbmdDb252cywgaGFuZGxlU3RhcnRDb252ZXJzYXRpb24sIHNob3dOb1Jlc3VsdHMsIG9uQ29udGFjdE1lc3NhZ2UsIG9uQ29udGFjdEFkZENvbnRhY3QsIHNob3dIZWFkZXIgPSB0cnVlLCB1c2VyVHlwZSwgaGFzSW5ib3hBY2Nlc3MgPSB0cnVlLCBvbkJhY2tUb0xpc3QsIH0pID0+IHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIGNvbnN0IFt0XSA9IHVzZVRyYW5zbGF0aW9uKCdpbmJveCcpO1xuICAgIGNvbnN0IFtvbGRlck1lc3NhZ2VzLCBzZXRPbGRlck1lc3NhZ2VzXSA9IHVzZVN0YXRlKCk7XG4gICAgY29uc3QgW291dHNpZGUyNEhvdXJXaW5kb3dQb3B1cCwgc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbcGFnaW5hdGlvbkluZm8sIHNldFBhZ2luYXRpb25JbmZvXSA9IHVzZVN0YXRlKCk7XG4gICAgY29uc3QgW2FnZW50c0lkc0F2YXRhcnNNYXAsIHNldEFnZW50c0lkc0F2YXRhcnNNYXBdID0gdXNlU3RhdGUoe30pO1xuICAgIGNvbnN0IFtub3RlTW9kZSwgc2V0Tm90ZU1vZGVdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtzZWFyY2hQYXR0ZXJuLCBzZXRTZWFyY2hQYXR0ZXJuXSA9IHVzZVN0YXRlKCcnKTtcbiAgICBjb25zdCBbc2VhcmNoTWF0Y2hObywgc2V0U2VhcmNoTWF0Y2hOb10gPSB1c2VTdGF0ZSgxKTtcbiAgICBjb25zdCBbc2VhcmNoTWF0Y2hDb3VudCwgc2V0U2VhcmNoTWF0Y2hDb3VudF0gPSB1c2VTdGF0ZSgwKTtcbiAgICBjb25zdCBpZ25vcmVSZWFjaFRvcFVudGlsUmVmID0gdXNlUmVmKDApO1xuICAgIGNvbnN0IHNlbGVjdGVkQ29udklkUmVmID0gdXNlUmVmKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCk7XG4gICAgY29uc3QgW2lzTG9hZGluZ09sZGVyTWVzc2FnZXMsIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXNdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtyZXBseU1lc3NhZ2UsIHNldFJlcGx5TWVzc2FnZV0gPSB1c2VTdGF0ZShudWxsKTtcbiAgICBjb25zdCBbcmVhY3Rpb25PdmVycmlkZXMsIHNldFJlYWN0aW9uT3ZlcnJpZGVzXSA9IHVzZVN0YXRlKHt9KTtcbiAgICBjb25zdCBbYmxvY2tpbmdFcnJvck1lc3NhZ2UsIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlXSA9IHVzZVN0YXRlKCcnKTtcbiAgICBjb25zdCBbc3RhdHVzRmFpbHVyZU1lc3NhZ2UsIHNldFN0YXR1c0ZhaWx1cmVNZXNzYWdlXSA9IHVzZVN0YXRlKCcnKTtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLW5vbi1udWxsLWFzc2VydGlvblxuICAgIGNvbnN0IHdvcmtzcGFjZUlkID0gYXV0aC5nZXRDb250ZXh0KCk7XG4gICAgY29uc3QgeyBhdXRvQXNzaWduIH0gPSB1c2VBdXRvQXNzaWduKCk7XG4gICAgY29uc3QgeyBzZW5kTWVzc2FnZSB9ID0gdXNlU2VuZE1lc3NhZ2UoKTtcbiAgICBjb25zdCBzdWJzY3JpcHRpb25Db250ZXh0ID0gdXNlQ3VycmVudFN1YnNjcmlwdGlvbk9wdGlvbmFsKCk7XG4gICAgY29uc3Qgc3Vic2NyaXB0aW9uID0gc3Vic2NyaXB0aW9uQ29udGV4dCA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb25Db250ZXh0ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzdWJzY3JpcHRpb25Db250ZXh0LnN1YnNjcmlwdGlvbjtcbiAgICBjb25zdCB7IHJvbGUsIGhhc0FueSB9ID0gdXNlUm9sZXMoKTtcbiAgICBjb25zdCBteUFnZW50ID0gdXNlTXlBZ2VudChhZ2VudHMpO1xuICAgIGNvbnN0IHNob3VsZEF1dG9Bc3NpZ25PblNlbmQgPSBoYXNBbnkoW1JvbGUuQUdFTlQsIFJvbGUuQUdFTlRfUExVUywgUm9sZS5NQU5BR0VSXSk7XG4gICAgY29uc3QgW3F1ZXJ5TWVzc2FnZXNdID0gdXNlTWVzc2FnZXNMYXp5UXVlcnkoe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFthZGRNZXNzYWdlXSA9IHVzZUFkZE1lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgY29uc3QgW3JlYWN0VG9NZXNzYWdlXSA9IHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24oe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFt1bnJlYWN0VG9NZXNzYWdlXSA9IHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgLy8gLS0tIERlcml2ZWQgRGF0YSAtLS1cbiAgICBjb25zdCBpc1doYXRzQXBwQ2hhbm5lbCA9IHVzZU1lbW8oKCkgPT4gaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvblR5cGUpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmludGVncmF0aW9uVHlwZV0pO1xuICAgIGNvbnN0IGxhc3RDbGllbnRNZXNzYWdlID0gdXNlTWVtbygoKSA9PiBnZXRMYXN0TWVzc2FnZSgoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSB8fCBbXSwgKG0pID0+ICFtLmlzQWdlbnQpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzXSk7XG4gICAgY29uc3QgbGFzdEFnZW50TWVzc2FnZSA9IHVzZU1lbW8oKCkgPT4gZ2V0TGFzdE1lc3NhZ2UoKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgfHwgW10sIChtKSA9PiBtLnR5cGUgIT09IE1lc3NhZ2VUeXBlLk5PVEUgJiYgbS5pc0FnZW50KSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlc10pO1xuICAgIGNvbnN0IGNhbkNvbnRyaWJ1dGUgPSB1c2VDYW5Db250cmlidXRlKHtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICByb2xlLFxuICAgICAgICBteUFnZW50LFxuICAgICAgICB1c2VyVHlwZSxcbiAgICB9KTtcbiAgICBjb25zdCBoYXNVc2FnZUxpbWl0UmVhY2hlZCA9ICEhKChfYSA9IHN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbi5wbGFuKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNDb252MTIwUGVyY2VudFVzZWQpICYmICEoc3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3Vic2NyaXB0aW9uLnNraXBVc2FnZUxpbWl0RW5mb3JjZW1lbnQpO1xuICAgIC8vIC0tLSBFZmZlY3RzIC0tLVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghYWdlbnRzKVxuICAgICAgICAgICAgcmV0dXJuIHNldEFnZW50c0lkc0F2YXRhcnNNYXAoe30pO1xuICAgICAgICBjb25zdCBmZXRjaEF2YXRhcnMgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjYyA9IHt9O1xuICAgICAgICAgICAgeWllbGQgUHJvbWlzZS5hbGwoYWdlbnRzLm1hcCgoYWdlbnQpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgIGlmIChhZ2VudC5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjW2FnZW50LmlkXSA9IGFnZW50LmF2YXRhcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF2YXRhclVybCA9IGdldEdyYXZhdGFyVXJsKGFnZW50LmVtYWlsKTtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZmV0Y2goYXZhdGFyVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY1thZ2VudC5pZF0gPSBhdmF0YXJVcmw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBEbyBub3RoaW5nIGlmIGdyYXZhdGFyIGZhaWxzIHRvIGxvYWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICBzZXRBZ2VudHNJZHNBdmF0YXJzTWFwKGFjYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBmZXRjaEF2YXRhcnMoKTtcbiAgICB9LCBbYWdlbnRzXSk7XG4gICAgLy8gUmVzZXR0aW5nIHRoZSBtZXNzYWdlcyBhbmQgcGFnaW5hdGlvbiBpbmZvIHdoZW4gdGhlIHNlbGVjdGVkIGNvbnZlcnNhdGlvbiBjaGFuZ2VzLlxuICAgIC8vIFJ1bnMgYXMgYSBsYXlvdXQgZWZmZWN0IHNvIHRoZSByZWYgaXMgdXAgdG8gZGF0ZSBiZWZvcmUgYW55IGluLWZsaWdodCBxdWVyeSByZXNvbHZlcy5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50ID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkO1xuICAgICAgICBzZXRPbGRlck1lc3NhZ2VzKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldFBhZ2luYXRpb25JbmZvKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICBzZXRSZWFjdGlvbk92ZXJyaWRlcyh7fSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIERlcml2ZWQgZnJvbSB0aGUgY29udmVyc2F0aW9uIGluc3RlYWQgb2Ygc3RvcmVkIGluIHN0YXRlOiBzdGF0ZSB3b3VsZCBsYWcgb25lIHJlbmRlclxuICAgIC8vIGJlaGluZCBvbiBjb252ZXJzYXRpb24gc3dpdGNoLCBzaG93aW5nIHRoZSBwcmV2aW91cyBjaGF0J3MgbWVzc2FnZXMgdW5kZXIgdGhlIG5ld1xuICAgIC8vIGNvbnZlcnNhdGlvbiBpZC4gVGhlIHNpZ25hdHVyZSBrZWVwcyB0aGUgbGlzdCBpZGVudGl0eSBzdGFibGUgYWNyb3NzIHBvbGxpbmcgcmVmZXRjaGVzLlxuICAgIGNvbnN0IG1lc3NhZ2VzU2lnbmF0dXJlID0gYCR7c2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkfXwkeyhfYiA9IHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmxlbmd0aH18JHtoYXNoU3RhdHVzZXMoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKX18JHtoYXNoUmVhY3Rpb25zKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcyl9YDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHJldHVybiAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubWFwKChtKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBtKSwgeyBjcmVhdGVkQXQ6IG1vbWVudChtLmNyZWF0ZWRBdCkudG9EYXRlKCksIHJlYWN0aW9uczogT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlYWN0aW9uT3ZlcnJpZGVzLCBtLm1lc3NhZ2VJZClcbiAgICAgICAgICAgICAgICA/IHJlYWN0aW9uT3ZlcnJpZGVzW20ubWVzc2FnZUlkXVxuICAgICAgICAgICAgICAgIDogbS5yZWFjdGlvbnMgfSkpKSkgfHwgW107XG4gICAgfSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIFttZXNzYWdlc1NpZ25hdHVyZSwgcmVhY3Rpb25PdmVycmlkZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIC0tLSBMb2FkIE9sZGVyIE1lc3NhZ2VzIC0tLVxuICAgIGNvbnN0IGxvYWRPbGRlck1lc3NhZ2VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBpZiAoRGF0ZS5ub3coKSA8IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKHNlYXJjaFBhdHRlcm4udHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAocGFnaW5hdGlvbkluZm8gJiYgIXBhZ2luYXRpb25JbmZvLmhhc05leHRQYWdlKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKGlzTG9hZGluZ09sZGVyTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHJlcXVlc3RlZENvbnZJZCA9IHNlbGVjdGVkQ29udi5pZDtcbiAgICAgICAgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlcyh0cnVlKTtcbiAgICAgICAgcXVlcnlNZXNzYWdlcyh7XG4gICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDogc2VsZWN0ZWRDb252LmNsaWVudElkLFxuICAgICAgICAgICAgICAgICAgICAvLyBVc2UgdGhlIGNvbnZlcnNhdGlvbidzIGNyZWF0ZWRBdCAobWludXMgYSBzbWFsbCBidWZmZXIpIGFzIHRoZSB1cHBlciBib3VuZC4gVGhlXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiByb3cgaXMgY3JlYXRlZCBiZWZvcmUgaXRzIGZpcnN0IG1lc3NhZ2UsIHNvIG1lc3NhZ2VzIG9mIHRoZSBjdXJyZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiBoYXZlIGNyZWF0ZWRBdCA+IHNlbGVjdGVkQ29udi5jcmVhdGVkQXQgYW5kIHdvbid0IGJlIGluY2x1ZGVkIGJ5XG4gICAgICAgICAgICAgICAgICAgIC8vIGBsdGU6IGVuZERhdGVgLiBBIDMtc2Vjb25kIGJ1ZmZlciBhdm9pZHMgZWRnZS1jYXNlIGNsb2NrIHNrZXcgd2l0aG91dCBkcm9wcGluZ1xuICAgICAgICAgICAgICAgICAgICAvLyBtZXNzYWdlcyBmcm9tIHRoZSBwcmVjZWRpbmcgY29udmVyc2F0aW9uIChhIDEtbWludXRlIGJ1ZmZlciB3YXMgdG9vIGFnZ3Jlc3NpdmUpLlxuICAgICAgICAgICAgICAgICAgICBlbmREYXRlOiBtb21lbnQoc2VsZWN0ZWRDb252LmNyZWF0ZWRBdCkuc3VidHJhY3QoMywgJ3NlY29uZHMnKS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYWdlSW5mbzoge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBhZ2luYXRpb25JbmZvID09PSBudWxsIHx8IHBhZ2luYXRpb25JbmZvID09PSB2b2lkIDAgPyB2b2lkIDAgOiBwYWdpbmF0aW9uSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiA1MCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgLy8gVGhlIHVzZXIgbWF5IGhhdmUgc3dpdGNoZWQgY29udmVyc2F0aW9ucyB3aGlsZSB0aGlzIHdhcyBpbiBmbGlnaHQ7IGFwcGx5aW5nIGl0IG5vd1xuICAgICAgICAgICAgLy8gd291bGQgaW5qZWN0IHRoZSBwcmV2aW91cyBjaGF0J3MgaGlzdG9yeSAoYW5kIGl0cyBtZWRpYSkgaW50byB0aGUgY3VycmVudCBvbmUuXG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICgoX2EgPSBkYXRhID09PSBudWxsIHx8IGRhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRhdGEubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2Rlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2VzID0gZGF0YS5tZXNzYWdlcy5ub2Rlcy5yZXZlcnNlKCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc2VwZXJhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbW9tZW50KHNlbGVjdGVkQ29udi5jcmVhdGVkQXQpLmZvcm1hdCgnTExMTCcpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgc2V0T2xkZXJNZXNzYWdlcygocHJldikgPT4gKHByZXYgPyBbLi4ubmV3TWVzc2FnZXMsIC4uLnByZXZdIDogWy4uLm5ld01lc3NhZ2VzLCBzZXBhcmF0b3JdKSk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mbykge1xuICAgICAgICAgICAgICAgICAgICBzZXRQYWdpbmF0aW9uSW5mbyh7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRDdXJzb3I6IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOZXh0UGFnZTogZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLm1lc3NhZ2VzLnBhZ2VJbmZvLmhhc05leHRQYWdlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9LCBbcXVlcnlNZXNzYWdlcywgc2VsZWN0ZWRDb252LCBwYWdpbmF0aW9uSW5mbywgd29ya3NwYWNlSWQsIHNlYXJjaFBhdHRlcm4sIGlzTG9hZGluZ09sZGVyTWVzc2FnZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRCbG9ja2luZ0Vycm9yTWVzc2FnZSgnJyk7XG4gICAgICAgIGlmIChoYXNVc2FnZUxpbWl0UmVhY2hlZCAmJiBlbnZpcm9ubWVudC5lbmFibGVQYWlkUGxhbnMpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LmNoYXREaXNhYmxlZEF0VXNhZ2VMaW1pdCcpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IGJsb2NrIHdpdGggXCJ3YWl0IGZvciBjdXN0b21lclwiIGFmdGVyICpvdXIqIHRlbXBsYXRlIHdoZW4gdGhlIGN1c3RvbWVyIGhhcyBuZXZlclxuICAgICAgICAvLyByZXBsaWVkLiBPbmNlIGBsYXN0Q2xpZW50TWVzc2FnZWAgZXhpc3RzLCAyNGggcnVsZXMgdXNlIHRoZSBjdXN0b21lcidzIGxhc3QgbWVzc2FnZSDigJRcbiAgICAgICAgLy8gYGxhc3RBZ2VudE1lc3NhZ2VgIG1heSBzdGlsbCBiZSB0aGF0IG9wZW5pbmcgdGVtcGxhdGUsIHNvIHdlIG11c3Qgbm90IGNvbmZsYXRlIHRoYXRcbiAgICAgICAgLy8gd2l0aCBcIm91dHNpZGUgd2luZG93XCIgKHdoaWNoIHdvdWxkIGluY29ycmVjdGx5IHN1cHByZXNzIHRoZSB0ZW1wbGF0ZSBDVEEgbW9kYWwpLlxuICAgICAgICBjb25zdCBhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUgPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiAhbGFzdENsaWVudE1lc3NhZ2UgJiYgKGxhc3RBZ2VudE1lc3NhZ2UgPT09IG51bGwgfHwgbGFzdEFnZW50TWVzc2FnZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbGFzdEFnZW50TWVzc2FnZS50eXBlKSA9PT0gTWVzc2FnZVR5cGUuVEVNUExBVEU7XG4gICAgICAgIGlmIChhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LnRlbXBsYXRlTWVzc2FnZVdhcm5pbmcnKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9LCBbaGFzVXNhZ2VMaW1pdFJlYWNoZWQsIGlzV2hhdHNBcHBDaGFubmVsLCBsYXN0QWdlbnRNZXNzYWdlLCBsYXN0Q2xpZW50TWVzc2FnZSwgdF0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgbGFzdE1lc3NhZ2UgPSAoX2EgPSBzZWxlY3RlZENvbnYgPT09IG51bGwgfHwgc2VsZWN0ZWRDb252ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZWxlY3RlZENvbnYubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVtzZWxlY3RlZENvbnYubWVzc2FnZXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICghKGxhc3RNZXNzYWdlID09PSBudWxsIHx8IGxhc3RNZXNzYWdlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24pKSB7XG4gICAgICAgICAgICBzZXRTdGF0dXNGYWlsdXJlTWVzc2FnZSgnJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2UoZm9ybWF0RmFpbHVyZVJlYXNvbihsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24sIHQoJ2dlbmVyaWNFcnJvcicpKSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCwgc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzLCB0XSk7XG4gICAgLy8gLS0tIFNlbmQgTWVzc2FnZSBMb2dpYyAtLS1cbiAgICBjb25zdCBzZW5kQ2hhdE1lc3NhZ2UgPSB1c2VDYWxsYmFjaygodHlwZSwgY29udGVudCkgPT4gX19hd2FpdGVyKHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmICghc2VsZWN0ZWRDb252KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvLyBWYWxpZGF0ZSBtZXNzYWdlIGNvbnRlbnRcbiAgICAgICAgY29uc3QgdHJpbW1lZENvbnRlbnQgPSBjb250ZW50ID09PSBudWxsIHx8IGNvbnRlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbnRlbnQudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWRDb250ZW50KSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbWVzc2FnZXNcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc091dHNpZGUyNGggPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiBpc091dHNpZGUyNEhvdXJXaW5kb3cobGFzdENsaWVudE1lc3NhZ2UpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRDb252LmVuZGVkKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRXJyb3JUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHQoJ3JlcXVlc3RGYWlsZWQnKSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdCgnaW5ib3gubm9NZXNzYWdlc0ZvckVuZGVkQ29udicpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1VzYWdlTGltaXRSZWFjaGVkICYmIGVudmlyb25tZW50LmVuYWJsZVBhaWRQbGFucykge1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHQoJ2luYm94LnVzYWdlTGltaXRSZWFjaGVkJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNXaGF0c0FwcENoYW5uZWwgJiYgIWxhc3RDbGllbnRNZXNzYWdlICYmIChsYXN0QWdlbnRNZXNzYWdlID09PSBudWxsIHx8IGxhc3RBZ2VudE1lc3NhZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGxhc3RBZ2VudE1lc3NhZ2UudHlwZSkgPT09IE1lc3NhZ2VUeXBlLlRFTVBMQVRFKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNhbWUgYXMgYmxvY2tpbmcgYmFubmVyOiB3YWl0IHVudGlsIHRoZSBjdXN0b21lciBzZW5kcyBhIGZpcnN0IG1lc3NhZ2VcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNPdXRzaWRlMjRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHBsYXlTZW5kTWVzc2FnZVNvdW5kKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoc2hvdWxkQXV0b0Fzc2lnbk9uU2VuZCAmJiBteUFnZW50KSB7XG4gICAgICAgICAgICAgICAgeWllbGQgYXV0b0Fzc2lnbihzZWxlY3RlZENvbnYsIG15QWdlbnQsIHdvcmtzcGFjZUlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFNlbmQgdGhlIGFjdHVhbCBtZXNzYWdlXG4gICAgICAgICAgICB5aWVsZCBhZGRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHRyaW1tZWRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVwbHlUb01lc3NhZ2VJZDogcmVwbHlNZXNzYWdlID8gcmVwbHlNZXNzYWdlLmlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChyZXBseU1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUaGlzIGNvZGUgaXMgbm90IGNhdXNpbmcgdGhlIG1lc3NhZ2UgdG8gYXBwZWFyIHR3aWNlLCBpZiBldmVyeXRoaW5nIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQgd2l0aG91dCBpdFxuICAgICAgICAgICAgLy8gd2UgY2FuIHJlbW92ZSBpdCBpbiB0aGUgZnV0dXJlXG4gICAgICAgICAgICAvLyBjb25zdCBzZW50ID0gcmVzdWx0LmRhdGE/LmFkZE1lc3NhZ2U7XG4gICAgICAgICAgICAvLyBpZiAoIXNlbnQpIHJldHVybjtcbiAgICAgICAgICAgIC8vIHNldE1lc3NhZ2VzKChwcmV2KSA9PiBbXG4gICAgICAgICAgICAvLyAgIC4uLnByZXYsXG4gICAgICAgICAgICAvLyAgIHtcbiAgICAgICAgICAgIC8vICAgICAuLi5zZW50LFxuICAgICAgICAgICAgLy8gICAgIGNyZWF0ZWRBdDogbW9tZW50KHNlbnQuY3JlYXRlZEF0KS50b0RhdGUoKSxcbiAgICAgICAgICAgIC8vICAgfSxcbiAgICAgICAgICAgIC8vIF0pO1xuICAgICAgICAgICAgLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHt0KCdpbmJveC5mYWlsZWRUb1NlbmRNZXNzYWdlJyl9OiAke2Vycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyl9YCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSksIFtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICBsYXN0Q2xpZW50TWVzc2FnZSxcbiAgICAgICAgbGFzdEFnZW50TWVzc2FnZSxcbiAgICAgICAgdCxcbiAgICAgICAgbXlBZ2VudCxcbiAgICAgICAgYWRkTWVzc2FnZSxcbiAgICAgICAgcmVwbHlNZXNzYWdlLFxuICAgICAgICBhdXRvQXNzaWduLFxuICAgICAgICBzaG91bGRBdXRvQXNzaWduT25TZW5kLFxuICAgICAgICB3b3Jrc3BhY2VJZCxcbiAgICAgICAgaGFzVXNhZ2VMaW1pdFJlYWNoZWQsXG4gICAgICAgIGlzV2hhdHNBcHBDaGFubmVsLFxuICAgIF0pO1xuICAgIGNvbnN0IGhhbmRsZUFkZE5vdGVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgc2V0Tm90ZU1vZGUodHJ1ZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VSZXBseSA9IHVzZUNhbGxiYWNrKChtZXNzYWdlSWQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAocmVwbHlNZXNzYWdlKVxuICAgICAgICAgICAgcmV0dXJuIHNldFJlcGx5TWVzc2FnZShudWxsKTtcbiAgICAgICAgY29uc3QgdGFyZ2V0TWVzc2FnZSA9IChvbGRlck1lc3NhZ2VzID8gWy4uLm9sZGVyTWVzc2FnZXMsIC4uLm1lc3NhZ2VzXSA6IG1lc3NhZ2VzKS5maW5kKChtKSA9PiBtLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKTtcbiAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UpIHtcbiAgICAgICAgICAgIGxldCBuYW1lO1xuICAgICAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UuaXNBZ2VudCAmJiB0YXJnZXRNZXNzYWdlLmFnZW50SWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhZ2VudCA9IGFnZW50cyA9PT0gbnVsbCB8fCBhZ2VudHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50cy5maW5kKChhKSA9PiBhLmlkID09PSB0YXJnZXRNZXNzYWdlLmFnZW50SWQpO1xuICAgICAgICAgICAgICAgIG5hbWUgPSBgJHsoYWdlbnQgPT09IG51bGwgfHwgYWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50Lm5hbWUpIHx8ICcnfSAkeyhhZ2VudCA9PT0gbnVsbCB8fCBhZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogYWdlbnQuc3VybmFtZSkgfHwgJyd9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5hbWUgPSAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmNsaWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5hbWUpIHx8ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0UmVwbHlNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgnaW5ib3gucmVwbHlUb01lc3NhZ2UnLCB7IG5hbWU6IG5hbWUgfHwgJycgfSksXG4gICAgICAgICAgICAgICAgY29udGVudDogdGFyZ2V0TWVzc2FnZS5jb250ZW50IHx8ICcnLFxuICAgICAgICAgICAgICAgIGlkOiBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdGFyZ2V0TWVzc2FnZS50eXBlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9LCBbcmVwbHlNZXNzYWdlLCBvbGRlck1lc3NhZ2VzLCBtZXNzYWdlcywgdCwgc2VsZWN0ZWRDb252LCBhZ2VudHNdKTtcbiAgICBjb25zdCBhcHBseUxvY2FsUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgcmVhY3Rpb25zKSA9PiB7XG4gICAgICAgIHNldFJlYWN0aW9uT3ZlcnJpZGVzKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBbbWVzc2FnZUlkXTogcmVhY3Rpb25zIH0pKSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGN1cnJlbnRNZXNzYWdlUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBtZXNzYWdlcy5maW5kKChtZXNzYWdlKSA9PiBtZXNzYWdlLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnJlYWN0aW9uczsgfSwgW21lc3NhZ2VzXSk7XG4gICAgY29uc3QgaGFuZGxlTWVzc2FnZVJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2MsIF9kO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIGVtb2ppLCBteUFnZW50ID09PSBudWxsIHx8IG15QWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG15QWdlbnQuaWQpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlYWN0VG9NZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnZJZDogc2VsZWN0ZWRDb252LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW1vamksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgbmV4dFJlYWN0aW9ucyA9IChfZCA9IChfYyA9IHJlc3VsdC5kYXRhKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MucmVhY3RUb01lc3NhZ2UpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC5yZWFjdGlvbnM7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXh0UmVhY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBuZXh0UmVhY3Rpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXgpIHtcbiAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBwcmV2aW91cyk7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBleCBpbnN0YW5jZW9mIEVycm9yID8gZXgubWVzc2FnZSA6IHR5cGVvZiBleCA9PT0gJ3N0cmluZycgPyBleCA6ICcnO1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGVycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCBjYW5Db250cmlidXRlLCByZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnMsIG15QWdlbnQgPT09IG51bGwgfHwgbXlBZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogbXlBZ2VudC5pZF0pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VVbnJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2UsIF9mO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIG51bGwpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHVucmVhY3RUb01lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQ6IHNlbGVjdGVkQ29udi53b3Jrc3BhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVncmF0aW9uSWQ6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbW9qaSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBuZXh0UmVhY3Rpb25zID0gKF9mID0gKF9lID0gcmVzdWx0LmRhdGEpID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS51bnJlYWN0VG9NZXNzYWdlKSA9PT0gbnVsbCB8fCBfZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2YucmVhY3Rpb25zO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobmV4dFJlYWN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgbmV4dFJlYWN0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcHJldmlvdXMpO1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBlcnJvck1lc3NhZ2UucmVwbGFjZSgnQXBvbGxvRXJyb3I6JywgJycpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KSwgW3NlbGVjdGVkQ29udiwgY2FuQ29udHJpYnV0ZSwgdW5yZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnNdKTtcbiAgICBjb25zdCBoYW5kbGVOb3RlU2VuZCA9IHVzZUNhbGxiYWNrKChub3RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgaWYgKCFzZWxlY3RlZENvbnYgfHwgIW5vdGUudHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCB0cmltbWVkTm90ZSA9IG5vdGUudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWROb3RlKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbm90ZXNcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgeWllbGQgc2VuZE1lc3NhZ2Uoc2VsZWN0ZWRDb252LmlkLCBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCwgd29ya3NwYWNlSWQsICdub3RlJywgdHJpbW1lZE5vdGUsICdNRU1PJyk7XG4gICAgICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gc2VuZCBub3RlOicsIGVycm9yKTtcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0KCdpbmJveC5mYWlsZWRUb1NlbmROb3RlJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCB3b3Jrc3BhY2VJZCwgc2VuZE1lc3NhZ2UsIHRdKTtcbiAgICBjb25zdCBoYW5kbGVDbG9zZU5vdGVNb2RlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9IHVzZUNhbGxiYWNrKCh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRTZWFyY2hQYXR0ZXJuKHZhbHVlKTtcbiAgICAgICAgc2V0U2VhcmNoTWF0Y2hObygxKTtcbiAgICAgICAgaWYgKCF2YWx1ZS50cmltKCkpIHtcbiAgICAgICAgICAgIGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudCA9IERhdGUubm93KCkgKyA1MDA7XG4gICAgICAgIH1cbiAgICB9LCBbXSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoTWF0Y2hDaGFuZ2UgPSB1c2VDYWxsYmFjaygobWF0Y2hObykgPT4ge1xuICAgICAgICBzZXRTZWFyY2hNYXRjaE5vKG1hdGNoTm8pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hNYXRjaENvdW50ID0gdXNlQ2FsbGJhY2soKGNvdW50KSA9PiB7XG4gICAgICAgIHNldFNlYXJjaE1hdGNoQ291bnQoY291bnQpO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uID0gY2FuQ29udHJpYnV0ZSAmJiAhIW9uQ29udkVuZDtcbiAgICBjb25zdCBzaG93T2xkZXJNZXNzYWdlc0J1dHRvbiA9ICFzZWFyY2hQYXR0ZXJuLnRyaW0oKSAmJiAoaXNMb2FkaW5nT2xkZXJNZXNzYWdlcyB8fCAhb2xkZXJNZXNzYWdlcyB8fCAhIShwYWdpbmF0aW9uSW5mbyA9PT0gbnVsbCB8fCBwYWdpbmF0aW9uSW5mbyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcGFnaW5hdGlvbkluZm8uaGFzTmV4dFBhZ2UpKTtcbiAgICAvLyAtLS0gUmVuZGVyIC0tLVxuICAgIHJldHVybiAoX2pzeHMoV3JhcHBlciwgeyBydGw6IHJ0bCwgY2hpbGRyZW46IFtzZWxlY3RlZENvbnYgJiYgbWVzc2FnZXMgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbc2hvd0hlYWRlciA/IChfanN4KENoYXRIZWFkZXIsIHsgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYsIG9uQ29udkVuZDogb25Db252RW5kLCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uOiBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uLCBzZWFyY2hQYXR0ZXJuOiBzZWFyY2hQYXR0ZXJuLCBvblNlYXJjaENoYW5nZTogaGFuZGxlU2VhcmNoQ2hhbmdlLCBzZWFyY2hNYXRjaE5vOiBzZWFyY2hNYXRjaE5vLCBvblNlYXJjaE1hdGNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hNYXRjaENoYW5nZSwgc2VhcmNoTWF0Y2hDb3VudDogc2VhcmNoTWF0Y2hDb3VudCwgc2hvd09sZGVyTWVzc2FnZXNCdXR0b246IHNob3dPbGRlck1lc3NhZ2VzQnV0dG9uLCBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzOiBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzLCBvbkxvYWRPbGRlck1lc3NhZ2VzOiBsb2FkT2xkZXJNZXNzYWdlcywgb25CYWNrOiBvbkJhY2tUb0xpc3QgfSkpIDogbnVsbCwgX2pzeChJbmNvbWluZ0NhbGxCYW5uZXIsIHsgY2FsbDogc2VsZWN0ZWRDb252LmFjdGl2ZUNhbGwgfSksIF9qc3goQ2hhdFdyYXBwZXIsIHsgXCIkZnVsbEhlaWdodFwiOiAhc2hvd0hlYWRlciwgY2hpbGRyZW46IF9qc3goQ2hhdENvbnRlbnQsIHsgbWVzc2FnZXM6IG1lc3NhZ2VzLCBvbGRlck1lc3NhZ2VzOiBvbGRlck1lc3NhZ2VzLCBjYW5Db250cmlidXRlOiBjYW5Db250cmlidXRlLCBzZW5kTWVzc2FnZTogc2VuZENoYXRNZXNzYWdlLCBsb2FkT2xkZXJNZXNzYWdlczogbG9hZE9sZGVyTWVzc2FnZXMsIGFnZW50c0lkc0F2YXRhcnNNYXA6IGFnZW50c0lkc0F2YXRhcnNNYXAsIG5vdGVNb2RlOiBub3RlTW9kZSwgb25Ob3RlU2VuZDogaGFuZGxlTm90ZVNlbmQsIG9uQ2xvc2VOb3RlTW9kZTogaGFuZGxlQ2xvc2VOb3RlTW9kZSwgb25BZGROb3RlQ2xpY2s6IGhhbmRsZUFkZE5vdGVDbGljaywgc2VhcmNoUGF0dGVybjogc2VhcmNoUGF0dGVybiwgc2VhcmNoTWF0Y2hObzogc2VhcmNoTWF0Y2hObywgb25TZWFyY2hNYXRjaENvdW50OiBoYW5kbGVTZWFyY2hNYXRjaENvdW50LCBvbk1lc3NhZ2VSZXBseTogaGFuZGxlTWVzc2FnZVJlcGx5LCBvbk1lc3NhZ2VSZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VSZWFjdCA6IHVuZGVmaW5lZCwgb25NZXNzYWdlVW5yZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VVbnJlYWN0IDogdW5kZWZpbmVkLCByZXBseU1lc3NhZ2U6IHJlcGx5TWVzc2FnZSwgb25DYW5jZWxSZXBseU1lc3NhZ2U6ICgpID0+IHNldFJlcGx5TWVzc2FnZShudWxsKSwgZXJyb3JNZXNzYWdlOiBibG9ja2luZ0Vycm9yTWVzc2FnZSwgc3RhdHVzRmFpbHVyZU1lc3NhZ2U6IHN0YXR1c0ZhaWx1cmVNZXNzYWdlLCBsb2dvOiBsb2dvLCBjb252ZXJzYXRpb25JZDogc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkLCBvbkNvbnRhY3RNZXNzYWdlOiBvbkNvbnRhY3RNZXNzYWdlLCBvbkNvbnRhY3RBZGRDb250YWN0OiBvbkNvbnRhY3RBZGRDb250YWN0IH0pIH0pXSB9KSkgOiBzaG93Tm9SZXN1bHRzID8gKF9qc3goTm9SZXN1bHRzRm91bmQsIHt9KSkgOiAoX2pzeChOb0NvbnZTZWxlY3RlZCwgeyBjb252c0xlbmd0aDogY29udnNMZW5ndGggfHwgMCwgbG9hZGluZ0NvbnZzOiBsb2FkaW5nQ29udnMgfHwgZmFsc2UsIGhhbmRsZVN0YXJ0Q29udmVyc2F0aW9uOiBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgaGFzSW5ib3hBY2Nlc3M6IGhhc0luYm94QWNjZXNzIH0pKSwgb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwICYmIHNlbGVjdGVkQ29udiAmJiAoX2pzeChPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAsIHsgb25DbG9zZTogKCkgPT4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKGZhbHNlKSwgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYgfSkpXSB9KSk7XG59O1xuZXhwb3J0IGRlZmF1bHQgQ2hhdDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
104328
+ }) => $fullHeight ? '100%' : 'calc(100% - 56px)', ";direction:ltr;position:relative;width:100%;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpRCtCIiwiZmlsZSI6ImluZGV4LnRzeCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IF9fYXdhaXRlciB9IGZyb20gXCJ0c2xpYlwiO1xuaW1wb3J0IHsganN4IGFzIF9qc3gsIEZyYWdtZW50IGFzIF9GcmFnbWVudCwganN4cyBhcyBfanN4cyB9IGZyb20gXCJAZW1vdGlvbi9yZWFjdC9qc3gtcnVudGltZVwiO1xuaW1wb3J0IHsgdXNlQ2FsbGJhY2ssIHVzZUVmZmVjdCwgdXNlTGF5b3V0RWZmZWN0LCB1c2VNZW1vLCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdAZW1vdGlvbi9zdHlsZWQnO1xuaW1wb3J0IHsgdXNlVHJhbnNsYXRpb24gfSBmcm9tICdyZWFjdC1pMThuZXh0JztcbmltcG9ydCB7IGNvcmVDbGllbnQgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtYXBpJztcbmltcG9ydCB7IGF1dGggfSBmcm9tICdAYmNydW1icy5uZXQvYmMtc2hhcmVkJztcbmltcG9ydCB7IE5ld0NvbG9ycywgdHJpZ2dlckVycm9yVG9hc3QgfSBmcm9tICdAYmNydW1icy5uZXQvYmMtdWknO1xuaW1wb3J0IHsgdXNlQWRkTWVzc2FnZU11dGF0aW9uLCBNZXNzYWdlVHlwZSwgdXNlTWVzc2FnZXNMYXp5UXVlcnksIHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24sIHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbiwgfSBmcm9tICcuLi8uLi8uLi8uLi9ncmFwaHFsLmF1dG9nZW5lcmF0ZWQnO1xuaW1wb3J0IHsgdXNlUm9sZXMgfSBmcm9tICcuLi8uLi8uLi9hdXRoL2hvb2tzL3VzZVJvbGVzJztcbmltcG9ydCB7IHBsYXlTZW5kTWVzc2FnZVNvdW5kIH0gZnJvbSAnLi4vLi4vdXRpbHMvc291bmRzJztcbmltcG9ydCB1c2VDYW5Db250cmlidXRlIGZyb20gJy4uLy4uL2hvb2tzL3VzZUNhbkNvbnRyaWJ1dGUnO1xuaW1wb3J0IHVzZU15QWdlbnQgZnJvbSAnLi4vLi4vaG9va3MvdXNlTXlBZ2VudCc7XG5pbXBvcnQgeyBPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAgfSBmcm9tICcuLi9Qb3B1cHMvT3V0c2lkZTI0SG91cldpbmRvd1BvcHVwJztcbmltcG9ydCB7IGdldEdyYXZhdGFyVXJsIH0gZnJvbSAnLi4vLi4vLi4vYXV0aC91dGlscy9hdmF0YXInO1xuaW1wb3J0IENoYXRIZWFkZXIgZnJvbSAnLi9DaGF0SGVhZGVyJztcbmltcG9ydCB7IEluY29taW5nQ2FsbEJhbm5lciB9IGZyb20gJy4uL0NhbGxzL0luY29taW5nQ2FsbEJhbm5lcic7XG5pbXBvcnQgTm9Db252U2VsZWN0ZWQgZnJvbSAnLi9Ob0NvbnZTZWxlY3RlZCc7XG5pbXBvcnQgTm9SZXN1bHRzRm91bmQgZnJvbSAnLi9Ob1Jlc3VsdHNGb3VuZCc7XG5pbXBvcnQgQ2hhdENvbnRlbnQgZnJvbSAnLi9DaGF0Q29udGVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbiBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWdubWVudCc7XG5pbXBvcnQgdXNlQXV0b0Fzc2lnbk9uU2VuZCBmcm9tICcuLi8uLi9ob29rcy91c2VBdXRvQXNzaWduT25TZW5kJztcbmltcG9ydCB1c2VTZW5kTWVzc2FnZSBmcm9tICcuLi8uLi9ob29rcy91c2VTZW5kTWVzc2FnZSc7XG5pbXBvcnQgeyBpc091dHNpZGUyNEhvdXJXaW5kb3csIGdldExhc3RNZXNzYWdlLCBoYXNoU3RhdHVzZXMsIGhhc2hSZWFjdGlvbnMsIHJlcGxhY2VBZ2VudFJlYWN0aW9uIH0gZnJvbSAnLi4vLi4vdXRpbHMvY29udnMnO1xuaW1wb3J0IHsgdXNlQ3VycmVudFN1YnNjcmlwdGlvbk9wdGlvbmFsIH0gZnJvbSAnLi4vLi4vLi4vYmlsbGluZyc7XG5pbXBvcnQgeyBmb3JtYXRGYWlsdXJlUmVhc29uIH0gZnJvbSAnLi4vLi4vLi4vLi4vdXRpbHMvZm9ybWF0RmFpbHVyZVJlYXNvbic7XG5pbXBvcnQgeyBlbnZpcm9ubWVudCB9IGZyb20gJy4uLy4uLy4uLy4uL2Vudmlyb25tZW50cy9lbnZpcm9ubWVudCc7XG5pbXBvcnQgeyBpc1doYXRzQXBwRmFtaWx5SW50ZWdyYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi91dGlscy9pbnRlZ3JhdGlvbic7XG4vLyAtLS0gU3R5bGVkIGNvbXBvbmVudHMgLS0tXG5jb25zdCBXcmFwcGVyID0gc3R5bGVkLmRpdiBgXG4gIGhlaWdodDogY2FsYygxMDAlIC0gOHB4KTtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6ICR7TmV3Q29sb3JzLklOQk9YX0JBQ0tHUk9VTkR9O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpcmVjdGlvbjogJHsoeyBydGwgfSkgPT4gKHJ0bCA/ICdydGwnIDogJ2x0cicpfTtcblxuICBwIHtcbiAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gIH1cblxuICBidXR0b24ge1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICB9XG5gO1xuY29uc3QgQ2hhdFdyYXBwZXIgPSBzdHlsZWQuZGl2IGBcbiAgaGVpZ2h0OiAkeyh7ICRmdWxsSGVpZ2h0IH0pID0+ICgkZnVsbEhlaWdodCA/ICcxMDAlJyA6ICdjYWxjKDEwMCUgLSA1NnB4KScpfTtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG5gO1xuLy8gLS0tIE1haW4gQ2hhdCBDb21wb25lbnQgLS0tXG5jb25zdCBDaGF0ID0gKHsgc2VsZWN0ZWRDb252LCBvbkNvbnZFbmQsIGFnZW50cywgbG9nbywgcnRsLCBjb252c0xlbmd0aCwgbG9hZGluZ0NvbnZzLCBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgc2hvd05vUmVzdWx0cywgb25Db250YWN0TWVzc2FnZSwgb25Db250YWN0QWRkQ29udGFjdCwgc2hvd0hlYWRlciA9IHRydWUsIHVzZXJUeXBlLCBoYXNJbmJveEFjY2VzcyA9IHRydWUsIG9uQmFja1RvTGlzdCwgfSkgPT4ge1xuICAgIHZhciBfYSwgX2I7XG4gICAgY29uc3QgW3RdID0gdXNlVHJhbnNsYXRpb24oJ2luYm94Jyk7XG4gICAgY29uc3QgW29sZGVyTWVzc2FnZXMsIHNldE9sZGVyTWVzc2FnZXNdID0gdXNlU3RhdGUoKTtcbiAgICBjb25zdCBbb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwLCBzZXRPdXRzaWRlMjRIb3VyV2luZG93UG9wdXBdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtwYWdpbmF0aW9uSW5mbywgc2V0UGFnaW5hdGlvbkluZm9dID0gdXNlU3RhdGUoKTtcbiAgICBjb25zdCBbYWdlbnRzSWRzQXZhdGFyc01hcCwgc2V0QWdlbnRzSWRzQXZhdGFyc01hcF0gPSB1c2VTdGF0ZSh7fSk7XG4gICAgY29uc3QgW25vdGVNb2RlLCBzZXROb3RlTW9kZV0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3NlYXJjaFBhdHRlcm4sIHNldFNlYXJjaFBhdHRlcm5dID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IFtzZWFyY2hNYXRjaE5vLCBzZXRTZWFyY2hNYXRjaE5vXSA9IHVzZVN0YXRlKDEpO1xuICAgIGNvbnN0IFtzZWFyY2hNYXRjaENvdW50LCBzZXRTZWFyY2hNYXRjaENvdW50XSA9IHVzZVN0YXRlKDApO1xuICAgIGNvbnN0IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYgPSB1c2VSZWYoMCk7XG4gICAgY29uc3Qgc2VsZWN0ZWRDb252SWRSZWYgPSB1c2VSZWYoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkKTtcbiAgICBjb25zdCBbaXNMb2FkaW5nT2xkZXJNZXNzYWdlcywgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlc10gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3JlcGx5TWVzc2FnZSwgc2V0UmVwbHlNZXNzYWdlXSA9IHVzZVN0YXRlKG51bGwpO1xuICAgIGNvbnN0IFtyZWFjdGlvbk92ZXJyaWRlcywgc2V0UmVhY3Rpb25PdmVycmlkZXNdID0gdXNlU3RhdGUoe30pO1xuICAgIGNvbnN0IFtibG9ja2luZ0Vycm9yTWVzc2FnZSwgc2V0QmxvY2tpbmdFcnJvck1lc3NhZ2VdID0gdXNlU3RhdGUoJycpO1xuICAgIGNvbnN0IFtzdGF0dXNGYWlsdXJlTWVzc2FnZSwgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2VdID0gdXNlU3RhdGUoJycpO1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tbm9uLW51bGwtYXNzZXJ0aW9uXG4gICAgY29uc3Qgd29ya3NwYWNlSWQgPSBhdXRoLmdldENvbnRleHQoKTtcbiAgICBjb25zdCB7IGF1dG9Bc3NpZ24gfSA9IHVzZUF1dG9Bc3NpZ24oKTtcbiAgICBjb25zdCB7IHNlbmRNZXNzYWdlIH0gPSB1c2VTZW5kTWVzc2FnZSgpO1xuICAgIGNvbnN0IHN1YnNjcmlwdGlvbkNvbnRleHQgPSB1c2VDdXJyZW50U3Vic2NyaXB0aW9uT3B0aW9uYWwoKTtcbiAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBzdWJzY3JpcHRpb25Db250ZXh0ID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbkNvbnRleHQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbkNvbnRleHQuc3Vic2NyaXB0aW9uO1xuICAgIGNvbnN0IHsgcm9sZSB9ID0gdXNlUm9sZXMoKTtcbiAgICBjb25zdCBteUFnZW50ID0gdXNlTXlBZ2VudChhZ2VudHMpO1xuICAgIGNvbnN0IHNob3VsZEF1dG9Bc3NpZ25PblNlbmQgPSB1c2VBdXRvQXNzaWduT25TZW5kKCk7XG4gICAgY29uc3QgW3F1ZXJ5TWVzc2FnZXNdID0gdXNlTWVzc2FnZXNMYXp5UXVlcnkoe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFthZGRNZXNzYWdlXSA9IHVzZUFkZE1lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgY29uc3QgW3JlYWN0VG9NZXNzYWdlXSA9IHVzZVJlYWN0VG9NZXNzYWdlTXV0YXRpb24oe1xuICAgICAgICBmZXRjaFBvbGljeTogJ25vLWNhY2hlJyxcbiAgICAgICAgY2xpZW50OiBjb3JlQ2xpZW50LFxuICAgIH0pO1xuICAgIGNvbnN0IFt1bnJlYWN0VG9NZXNzYWdlXSA9IHVzZVVucmVhY3RUb01lc3NhZ2VNdXRhdGlvbih7XG4gICAgICAgIGZldGNoUG9saWN5OiAnbm8tY2FjaGUnLFxuICAgICAgICBjbGllbnQ6IGNvcmVDbGllbnQsXG4gICAgfSk7XG4gICAgLy8gLS0tIERlcml2ZWQgRGF0YSAtLS1cbiAgICBjb25zdCBpc1doYXRzQXBwQ2hhbm5lbCA9IHVzZU1lbW8oKCkgPT4gaXNXaGF0c0FwcEZhbWlseUludGVncmF0aW9uKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvblR5cGUpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmludGVncmF0aW9uVHlwZV0pO1xuICAgIGNvbnN0IGxhc3RDbGllbnRNZXNzYWdlID0gdXNlTWVtbygoKSA9PiBnZXRMYXN0TWVzc2FnZSgoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSB8fCBbXSwgKG0pID0+ICFtLmlzQWdlbnQpLCBbc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzXSk7XG4gICAgY29uc3QgbGFzdEFnZW50TWVzc2FnZSA9IHVzZU1lbW8oKCkgPT4gZ2V0TGFzdE1lc3NhZ2UoKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgfHwgW10sIChtKSA9PiBtLnR5cGUgIT09IE1lc3NhZ2VUeXBlLk5PVEUgJiYgbS5pc0FnZW50KSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlc10pO1xuICAgIGNvbnN0IGNhbkNvbnRyaWJ1dGUgPSB1c2VDYW5Db250cmlidXRlKHtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICByb2xlLFxuICAgICAgICBteUFnZW50LFxuICAgICAgICB1c2VyVHlwZSxcbiAgICB9KTtcbiAgICBjb25zdCBoYXNVc2FnZUxpbWl0UmVhY2hlZCA9ICEhKChfYSA9IHN1YnNjcmlwdGlvbiA9PT0gbnVsbCB8fCBzdWJzY3JpcHRpb24gPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1YnNjcmlwdGlvbi5wbGFuKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuaXNDb252MTIwUGVyY2VudFVzZWQpICYmICEoc3Vic2NyaXB0aW9uID09PSBudWxsIHx8IHN1YnNjcmlwdGlvbiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3Vic2NyaXB0aW9uLnNraXBVc2FnZUxpbWl0RW5mb3JjZW1lbnQpO1xuICAgIC8vIC0tLSBFZmZlY3RzIC0tLVxuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmICghYWdlbnRzKVxuICAgICAgICAgICAgcmV0dXJuIHNldEFnZW50c0lkc0F2YXRhcnNNYXAoe30pO1xuICAgICAgICBjb25zdCBmZXRjaEF2YXRhcnMgPSAoKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgICAgIGNvbnN0IGFjYyA9IHt9O1xuICAgICAgICAgICAgeWllbGQgUHJvbWlzZS5hbGwoYWdlbnRzLm1hcCgoYWdlbnQpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICAgICAgICAgIGlmIChhZ2VudC5hdmF0YXIpIHtcbiAgICAgICAgICAgICAgICAgICAgYWNjW2FnZW50LmlkXSA9IGFnZW50LmF2YXRhcjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGF2YXRhclVybCA9IGdldEdyYXZhdGFyVXJsKGFnZW50LmVtYWlsKTtcbiAgICAgICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3BvbnNlID0geWllbGQgZmV0Y2goYXZhdGFyVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZS5vaykge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFjY1thZ2VudC5pZF0gPSBhdmF0YXJVcmw7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKF9hKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBEbyBub3RoaW5nIGlmIGdyYXZhdGFyIGZhaWxzIHRvIGxvYWRcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pKSk7XG4gICAgICAgICAgICBzZXRBZ2VudHNJZHNBdmF0YXJzTWFwKGFjYyk7XG4gICAgICAgIH0pO1xuICAgICAgICBmZXRjaEF2YXRhcnMoKTtcbiAgICB9LCBbYWdlbnRzXSk7XG4gICAgLy8gUmVzZXR0aW5nIHRoZSBtZXNzYWdlcyBhbmQgcGFnaW5hdGlvbiBpbmZvIHdoZW4gdGhlIHNlbGVjdGVkIGNvbnZlcnNhdGlvbiBjaGFuZ2VzLlxuICAgIC8vIFJ1bnMgYXMgYSBsYXlvdXQgZWZmZWN0IHNvIHRoZSByZWYgaXMgdXAgdG8gZGF0ZSBiZWZvcmUgYW55IGluLWZsaWdodCBxdWVyeSByZXNvbHZlcy5cbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50ID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkO1xuICAgICAgICBzZXRPbGRlck1lc3NhZ2VzKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldFBhZ2luYXRpb25JbmZvKHVuZGVmaW5lZCk7XG4gICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICBzZXRSZWFjdGlvbk92ZXJyaWRlcyh7fSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIERlcml2ZWQgZnJvbSB0aGUgY29udmVyc2F0aW9uIGluc3RlYWQgb2Ygc3RvcmVkIGluIHN0YXRlOiBzdGF0ZSB3b3VsZCBsYWcgb25lIHJlbmRlclxuICAgIC8vIGJlaGluZCBvbiBjb252ZXJzYXRpb24gc3dpdGNoLCBzaG93aW5nIHRoZSBwcmV2aW91cyBjaGF0J3MgbWVzc2FnZXMgdW5kZXIgdGhlIG5ld1xuICAgIC8vIGNvbnZlcnNhdGlvbiBpZC4gVGhlIHNpZ25hdHVyZSBrZWVwcyB0aGUgbGlzdCBpZGVudGl0eSBzdGFibGUgYWNyb3NzIHBvbGxpbmcgcmVmZXRjaGVzLlxuICAgIGNvbnN0IG1lc3NhZ2VzU2lnbmF0dXJlID0gYCR7c2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkfXwkeyhfYiA9IHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcykgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLmxlbmd0aH18JHtoYXNoU3RhdHVzZXMoc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKX18JHtoYXNoUmVhY3Rpb25zKHNlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5tZXNzYWdlcyl9YDtcbiAgICBjb25zdCBtZXNzYWdlcyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIHJldHVybiAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzKSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EubWFwKChtKSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBtKSwgeyBjcmVhdGVkQXQ6IG1vbWVudChtLmNyZWF0ZWRBdCkudG9EYXRlKCksIHJlYWN0aW9uczogT2JqZWN0LnByb3RvdHlwZS5oYXNPd25Qcm9wZXJ0eS5jYWxsKHJlYWN0aW9uT3ZlcnJpZGVzLCBtLm1lc3NhZ2VJZClcbiAgICAgICAgICAgICAgICA/IHJlYWN0aW9uT3ZlcnJpZGVzW20ubWVzc2FnZUlkXVxuICAgICAgICAgICAgICAgIDogbS5yZWFjdGlvbnMgfSkpKSkgfHwgW107XG4gICAgfSwgXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIHJlYWN0LWhvb2tzL2V4aGF1c3RpdmUtZGVwc1xuICAgIFttZXNzYWdlc1NpZ25hdHVyZSwgcmVhY3Rpb25PdmVycmlkZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZF0pO1xuICAgIC8vIC0tLSBMb2FkIE9sZGVyIE1lc3NhZ2VzIC0tLVxuICAgIGNvbnN0IGxvYWRPbGRlck1lc3NhZ2VzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBpZiAoRGF0ZS5ub3coKSA8IGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudClcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKHNlYXJjaFBhdHRlcm4udHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAocGFnaW5hdGlvbkluZm8gJiYgIXBhZ2luYXRpb25JbmZvLmhhc05leHRQYWdlKSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgaWYgKGlzTG9hZGluZ09sZGVyTWVzc2FnZXMpXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIGNvbnN0IHJlcXVlc3RlZENvbnZJZCA9IHNlbGVjdGVkQ29udi5pZDtcbiAgICAgICAgc2V0SXNMb2FkaW5nT2xkZXJNZXNzYWdlcyh0cnVlKTtcbiAgICAgICAgcXVlcnlNZXNzYWdlcyh7XG4gICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICBjbGllbnRJZDogc2VsZWN0ZWRDb252LmNsaWVudElkLFxuICAgICAgICAgICAgICAgICAgICAvLyBVc2UgdGhlIGNvbnZlcnNhdGlvbidzIGNyZWF0ZWRBdCAobWludXMgYSBzbWFsbCBidWZmZXIpIGFzIHRoZSB1cHBlciBib3VuZC4gVGhlXG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiByb3cgaXMgY3JlYXRlZCBiZWZvcmUgaXRzIGZpcnN0IG1lc3NhZ2UsIHNvIG1lc3NhZ2VzIG9mIHRoZSBjdXJyZW50XG4gICAgICAgICAgICAgICAgICAgIC8vIGNvbnZlcnNhdGlvbiBoYXZlIGNyZWF0ZWRBdCA+IHNlbGVjdGVkQ29udi5jcmVhdGVkQXQgYW5kIHdvbid0IGJlIGluY2x1ZGVkIGJ5XG4gICAgICAgICAgICAgICAgICAgIC8vIGBsdGU6IGVuZERhdGVgLiBBIDMtc2Vjb25kIGJ1ZmZlciBhdm9pZHMgZWRnZS1jYXNlIGNsb2NrIHNrZXcgd2l0aG91dCBkcm9wcGluZ1xuICAgICAgICAgICAgICAgICAgICAvLyBtZXNzYWdlcyBmcm9tIHRoZSBwcmVjZWRpbmcgY29udmVyc2F0aW9uIChhIDEtbWludXRlIGJ1ZmZlciB3YXMgdG9vIGFnZ3Jlc3NpdmUpLlxuICAgICAgICAgICAgICAgICAgICBlbmREYXRlOiBtb21lbnQoc2VsZWN0ZWRDb252LmNyZWF0ZWRBdCkuc3VidHJhY3QoMywgJ3NlY29uZHMnKS50b0RhdGUoKSxcbiAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICBwYWdlSW5mbzoge1xuICAgICAgICAgICAgICAgICAgICBjdXJzb3I6IHBhZ2luYXRpb25JbmZvID09PSBudWxsIHx8IHBhZ2luYXRpb25JbmZvID09PSB2b2lkIDAgPyB2b2lkIDAgOiBwYWdpbmF0aW9uSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgIGxpbWl0OiA1MCxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSlcbiAgICAgICAgICAgIC50aGVuKCh7IGRhdGEgfSkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgLy8gVGhlIHVzZXIgbWF5IGhhdmUgc3dpdGNoZWQgY29udmVyc2F0aW9ucyB3aGlsZSB0aGlzIHdhcyBpbiBmbGlnaHQ7IGFwcGx5aW5nIGl0IG5vd1xuICAgICAgICAgICAgLy8gd291bGQgaW5qZWN0IHRoZSBwcmV2aW91cyBjaGF0J3MgaGlzdG9yeSAoYW5kIGl0cyBtZWRpYSkgaW50byB0aGUgY3VycmVudCBvbmUuXG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIGlmICgoX2EgPSBkYXRhID09PSBudWxsIHx8IGRhdGEgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGRhdGEubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5ub2Rlcykge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5ld01lc3NhZ2VzID0gZGF0YS5tZXNzYWdlcy5ub2Rlcy5yZXZlcnNlKCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc2VwYXJhdG9yID0ge1xuICAgICAgICAgICAgICAgICAgICB0eXBlOiAnc2VwZXJhdG9yJyxcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogbW9tZW50KHNlbGVjdGVkQ29udi5jcmVhdGVkQXQpLmZvcm1hdCgnTExMTCcpLFxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgc2V0T2xkZXJNZXNzYWdlcygocHJldikgPT4gKHByZXYgPyBbLi4ubmV3TWVzc2FnZXMsIC4uLnByZXZdIDogWy4uLm5ld01lc3NhZ2VzLCBzZXBhcmF0b3JdKSk7XG4gICAgICAgICAgICAgICAgaWYgKGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mbykge1xuICAgICAgICAgICAgICAgICAgICBzZXRQYWdpbmF0aW9uSW5mbyh7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbmRDdXJzb3I6IGRhdGEgPT09IG51bGwgfHwgZGF0YSA9PT0gdm9pZCAwID8gdm9pZCAwIDogZGF0YS5tZXNzYWdlcy5wYWdlSW5mby5lbmRDdXJzb3IsXG4gICAgICAgICAgICAgICAgICAgICAgICBoYXNOZXh0UGFnZTogZGF0YSA9PT0gbnVsbCB8fCBkYXRhID09PSB2b2lkIDAgPyB2b2lkIDAgOiBkYXRhLm1lc3NhZ2VzLnBhZ2VJbmZvLmhhc05leHRQYWdlLFxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgICAgICAgICAuZmluYWxseSgoKSA9PiB7XG4gICAgICAgICAgICBpZiAocmVxdWVzdGVkQ29udklkICE9PSBzZWxlY3RlZENvbnZJZFJlZi5jdXJyZW50KVxuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIHNldElzTG9hZGluZ09sZGVyTWVzc2FnZXMoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9LCBbcXVlcnlNZXNzYWdlcywgc2VsZWN0ZWRDb252LCBwYWdpbmF0aW9uSW5mbywgd29ya3NwYWNlSWQsIHNlYXJjaFBhdHRlcm4sIGlzTG9hZGluZ09sZGVyTWVzc2FnZXNdKTtcbiAgICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBzZXRCbG9ja2luZ0Vycm9yTWVzc2FnZSgnJyk7XG4gICAgICAgIGlmIChoYXNVc2FnZUxpbWl0UmVhY2hlZCAmJiBlbnZpcm9ubWVudC5lbmFibGVQYWlkUGxhbnMpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LmNoYXREaXNhYmxlZEF0VXNhZ2VMaW1pdCcpKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBPbmx5IGJsb2NrIHdpdGggXCJ3YWl0IGZvciBjdXN0b21lclwiIGFmdGVyICpvdXIqIHRlbXBsYXRlIHdoZW4gdGhlIGN1c3RvbWVyIGhhcyBuZXZlclxuICAgICAgICAvLyByZXBsaWVkLiBPbmNlIGBsYXN0Q2xpZW50TWVzc2FnZWAgZXhpc3RzLCAyNGggcnVsZXMgdXNlIHRoZSBjdXN0b21lcidzIGxhc3QgbWVzc2FnZSDigJRcbiAgICAgICAgLy8gYGxhc3RBZ2VudE1lc3NhZ2VgIG1heSBzdGlsbCBiZSB0aGF0IG9wZW5pbmcgdGVtcGxhdGUsIHNvIHdlIG11c3Qgbm90IGNvbmZsYXRlIHRoYXRcbiAgICAgICAgLy8gd2l0aCBcIm91dHNpZGUgd2luZG93XCIgKHdoaWNoIHdvdWxkIGluY29ycmVjdGx5IHN1cHByZXNzIHRoZSB0ZW1wbGF0ZSBDVEEgbW9kYWwpLlxuICAgICAgICBjb25zdCBhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUgPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiAhbGFzdENsaWVudE1lc3NhZ2UgJiYgKGxhc3RBZ2VudE1lc3NhZ2UgPT09IG51bGwgfHwgbGFzdEFnZW50TWVzc2FnZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogbGFzdEFnZW50TWVzc2FnZS50eXBlKSA9PT0gTWVzc2FnZVR5cGUuVEVNUExBVEU7XG4gICAgICAgIGlmIChhd2FpdGluZ0ZpcnN0Q3VzdG9tZXJSZXBseUFmdGVyT3VyVGVtcGxhdGUpIHtcbiAgICAgICAgICAgIHNldEJsb2NraW5nRXJyb3JNZXNzYWdlKHQoJ2luYm94LnRlbXBsYXRlTWVzc2FnZVdhcm5pbmcnKSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICB9LCBbaGFzVXNhZ2VMaW1pdFJlYWNoZWQsIGlzV2hhdHNBcHBDaGFubmVsLCBsYXN0QWdlbnRNZXNzYWdlLCBsYXN0Q2xpZW50TWVzc2FnZSwgdF0pO1xuICAgIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgY29uc3QgbGFzdE1lc3NhZ2UgPSAoX2EgPSBzZWxlY3RlZENvbnYgPT09IG51bGwgfHwgc2VsZWN0ZWRDb252ID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzZWxlY3RlZENvbnYubWVzc2FnZXMpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYVtzZWxlY3RlZENvbnYubWVzc2FnZXMubGVuZ3RoIC0gMV07XG4gICAgICAgIGlmICghKGxhc3RNZXNzYWdlID09PSBudWxsIHx8IGxhc3RNZXNzYWdlID09PSB2b2lkIDAgPyB2b2lkIDAgOiBsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24pKSB7XG4gICAgICAgICAgICBzZXRTdGF0dXNGYWlsdXJlTWVzc2FnZSgnJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgc2V0U3RhdHVzRmFpbHVyZU1lc3NhZ2UoZm9ybWF0RmFpbHVyZVJlYXNvbihsYXN0TWVzc2FnZS5mYWlsZWRSZWFzb24sIHQoJ2dlbmVyaWNFcnJvcicpKSk7XG4gICAgfSwgW3NlbGVjdGVkQ29udiA9PT0gbnVsbCB8fCBzZWxlY3RlZENvbnYgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHNlbGVjdGVkQ29udi5pZCwgc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252Lm1lc3NhZ2VzLCB0XSk7XG4gICAgLy8gLS0tIFNlbmQgTWVzc2FnZSBMb2dpYyAtLS1cbiAgICBjb25zdCBzZW5kQ2hhdE1lc3NhZ2UgPSB1c2VDYWxsYmFjaygodHlwZSwgY29udGVudCkgPT4gX19hd2FpdGVyKHZvaWQgMCwgdm9pZCAwLCB2b2lkIDAsIGZ1bmN0aW9uKiAoKSB7XG4gICAgICAgIGlmICghc2VsZWN0ZWRDb252KVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAvLyBWYWxpZGF0ZSBtZXNzYWdlIGNvbnRlbnRcbiAgICAgICAgY29uc3QgdHJpbW1lZENvbnRlbnQgPSBjb250ZW50ID09PSBudWxsIHx8IGNvbnRlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGNvbnRlbnQudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWRDb250ZW50KSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbWVzc2FnZXNcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpc091dHNpZGUyNGggPSBpc1doYXRzQXBwQ2hhbm5lbCAmJiBpc091dHNpZGUyNEhvdXJXaW5kb3cobGFzdENsaWVudE1lc3NhZ2UpO1xuICAgICAgICBpZiAoc2VsZWN0ZWRDb252LmVuZGVkKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRXJyb3JUb2FzdCh7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHQoJ3JlcXVlc3RGYWlsZWQnKSxcbiAgICAgICAgICAgICAgICBkZXNjcmlwdGlvbjogdCgnaW5ib3gubm9NZXNzYWdlc0ZvckVuZGVkQ29udicpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGhhc1VzYWdlTGltaXRSZWFjaGVkICYmIGVudmlyb25tZW50LmVuYWJsZVBhaWRQbGFucykge1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IHQoJ2luYm94LnVzYWdlTGltaXRSZWFjaGVkJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNXaGF0c0FwcENoYW5uZWwgJiYgIWxhc3RDbGllbnRNZXNzYWdlICYmIChsYXN0QWdlbnRNZXNzYWdlID09PSBudWxsIHx8IGxhc3RBZ2VudE1lc3NhZ2UgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGxhc3RBZ2VudE1lc3NhZ2UudHlwZSkgPT09IE1lc3NhZ2VUeXBlLlRFTVBMQVRFKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIFNhbWUgYXMgYmxvY2tpbmcgYmFubmVyOiB3YWl0IHVudGlsIHRoZSBjdXN0b21lciBzZW5kcyBhIGZpcnN0IG1lc3NhZ2VcbiAgICAgICAgfVxuICAgICAgICBpZiAoaXNPdXRzaWRlMjRoKSB7XG4gICAgICAgICAgICByZXR1cm4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKHRydWUpO1xuICAgICAgICB9XG4gICAgICAgIHBsYXlTZW5kTWVzc2FnZVNvdW5kKCk7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBpZiAoc2hvdWxkQXV0b0Fzc2lnbk9uU2VuZCAmJiBteUFnZW50KSB7XG4gICAgICAgICAgICAgICAgeWllbGQgYXV0b0Fzc2lnbihzZWxlY3RlZENvbnYsIG15QWdlbnQsIHdvcmtzcGFjZUlkKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFNlbmQgdGhlIGFjdHVhbCBtZXNzYWdlXG4gICAgICAgICAgICB5aWVsZCBhZGRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IHRyaW1tZWRDb250ZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVwbHlUb01lc3NhZ2VJZDogcmVwbHlNZXNzYWdlID8gcmVwbHlNZXNzYWdlLmlkIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGlmIChyZXBseU1lc3NhZ2UpIHtcbiAgICAgICAgICAgICAgICBzZXRSZXBseU1lc3NhZ2UobnVsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUaGlzIGNvZGUgaXMgbm90IGNhdXNpbmcgdGhlIG1lc3NhZ2UgdG8gYXBwZWFyIHR3aWNlLCBpZiBldmVyeXRoaW5nIGlzIHdvcmtpbmcgYXMgZXhwZWN0ZWQgd2l0aG91dCBpdFxuICAgICAgICAgICAgLy8gd2UgY2FuIHJlbW92ZSBpdCBpbiB0aGUgZnV0dXJlXG4gICAgICAgICAgICAvLyBjb25zdCBzZW50ID0gcmVzdWx0LmRhdGE/LmFkZE1lc3NhZ2U7XG4gICAgICAgICAgICAvLyBpZiAoIXNlbnQpIHJldHVybjtcbiAgICAgICAgICAgIC8vIHNldE1lc3NhZ2VzKChwcmV2KSA9PiBbXG4gICAgICAgICAgICAvLyAgIC4uLnByZXYsXG4gICAgICAgICAgICAvLyAgIHtcbiAgICAgICAgICAgIC8vICAgICAuLi5zZW50LFxuICAgICAgICAgICAgLy8gICAgIGNyZWF0ZWRBdDogbW9tZW50KHNlbnQuY3JlYXRlZEF0KS50b0RhdGUoKSxcbiAgICAgICAgICAgIC8vICAgfSxcbiAgICAgICAgICAgIC8vIF0pO1xuICAgICAgICAgICAgLy8gIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xuICAgICAgICB9XG4gICAgICAgIGNhdGNoIChleCkge1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBgJHt0KCdpbmJveC5mYWlsZWRUb1NlbmRNZXNzYWdlJyl9OiAke2Vycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyl9YCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfSksIFtcbiAgICAgICAgc2VsZWN0ZWRDb252LFxuICAgICAgICBsYXN0Q2xpZW50TWVzc2FnZSxcbiAgICAgICAgbGFzdEFnZW50TWVzc2FnZSxcbiAgICAgICAgdCxcbiAgICAgICAgbXlBZ2VudCxcbiAgICAgICAgYWRkTWVzc2FnZSxcbiAgICAgICAgcmVwbHlNZXNzYWdlLFxuICAgICAgICBhdXRvQXNzaWduLFxuICAgICAgICBzaG91bGRBdXRvQXNzaWduT25TZW5kLFxuICAgICAgICB3b3Jrc3BhY2VJZCxcbiAgICAgICAgaGFzVXNhZ2VMaW1pdFJlYWNoZWQsXG4gICAgICAgIGlzV2hhdHNBcHBDaGFubmVsLFxuICAgIF0pO1xuICAgIGNvbnN0IGhhbmRsZUFkZE5vdGVDbGljayA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICAgICAgc2V0Tm90ZU1vZGUodHJ1ZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VSZXBseSA9IHVzZUNhbGxiYWNrKChtZXNzYWdlSWQpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAocmVwbHlNZXNzYWdlKVxuICAgICAgICAgICAgcmV0dXJuIHNldFJlcGx5TWVzc2FnZShudWxsKTtcbiAgICAgICAgY29uc3QgdGFyZ2V0TWVzc2FnZSA9IChvbGRlck1lc3NhZ2VzID8gWy4uLm9sZGVyTWVzc2FnZXMsIC4uLm1lc3NhZ2VzXSA6IG1lc3NhZ2VzKS5maW5kKChtKSA9PiBtLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKTtcbiAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UpIHtcbiAgICAgICAgICAgIGxldCBuYW1lO1xuICAgICAgICAgICAgaWYgKHRhcmdldE1lc3NhZ2UuaXNBZ2VudCAmJiB0YXJnZXRNZXNzYWdlLmFnZW50SWQpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBhZ2VudCA9IGFnZW50cyA9PT0gbnVsbCB8fCBhZ2VudHMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50cy5maW5kKChhKSA9PiBhLmlkID09PSB0YXJnZXRNZXNzYWdlLmFnZW50SWQpO1xuICAgICAgICAgICAgICAgIG5hbWUgPSBgJHsoYWdlbnQgPT09IG51bGwgfHwgYWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IGFnZW50Lm5hbWUpIHx8ICcnfSAkeyhhZ2VudCA9PT0gbnVsbCB8fCBhZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogYWdlbnQuc3VybmFtZSkgfHwgJyd9YDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIG5hbWUgPSAoKF9hID0gc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmNsaWVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLm5hbWUpIHx8ICcnO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc2V0UmVwbHlNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgnaW5ib3gucmVwbHlUb01lc3NhZ2UnLCB7IG5hbWU6IG5hbWUgfHwgJycgfSksXG4gICAgICAgICAgICAgICAgY29udGVudDogdGFyZ2V0TWVzc2FnZS5jb250ZW50IHx8ICcnLFxuICAgICAgICAgICAgICAgIGlkOiBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgdHlwZTogdGFyZ2V0TWVzc2FnZS50eXBlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9LCBbcmVwbHlNZXNzYWdlLCBvbGRlck1lc3NhZ2VzLCBtZXNzYWdlcywgdCwgc2VsZWN0ZWRDb252LCBhZ2VudHNdKTtcbiAgICBjb25zdCBhcHBseUxvY2FsUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgcmVhY3Rpb25zKSA9PiB7XG4gICAgICAgIHNldFJlYWN0aW9uT3ZlcnJpZGVzKChwcmV2KSA9PiAoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBwcmV2KSwgeyBbbWVzc2FnZUlkXTogcmVhY3Rpb25zIH0pKSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGN1cnJlbnRNZXNzYWdlUmVhY3Rpb25zID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCkgPT4geyB2YXIgX2E7IHJldHVybiAoX2EgPSBtZXNzYWdlcy5maW5kKChtZXNzYWdlKSA9PiBtZXNzYWdlLm1lc3NhZ2VJZCA9PT0gbWVzc2FnZUlkKSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnJlYWN0aW9uczsgfSwgW21lc3NhZ2VzXSk7XG4gICAgY29uc3QgaGFuZGxlTWVzc2FnZVJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2MsIF9kO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIGVtb2ppLCBteUFnZW50ID09PSBudWxsIHx8IG15QWdlbnQgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG15QWdlbnQuaWQpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHJlYWN0VG9NZXNzYWdlKHtcbiAgICAgICAgICAgICAgICB2YXJpYWJsZXM6IHtcbiAgICAgICAgICAgICAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdvcmtzcGFjZUlkOiBzZWxlY3RlZENvbnYud29ya3NwYWNlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBpbnRlZ3JhdGlvbklkOiBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnZJZDogc2VsZWN0ZWRDb252LmlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWVzc2FnZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgZW1vamksXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgY29uc3QgbmV4dFJlYWN0aW9ucyA9IChfZCA9IChfYyA9IHJlc3VsdC5kYXRhKSA9PT0gbnVsbCB8fCBfYyA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2MucmVhY3RUb01lc3NhZ2UpID09PSBudWxsIHx8IF9kID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZC5yZWFjdGlvbnM7XG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShuZXh0UmVhY3Rpb25zKSkge1xuICAgICAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBuZXh0UmVhY3Rpb25zKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjYXRjaCAoZXgpIHtcbiAgICAgICAgICAgIGFwcGx5TG9jYWxSZWFjdGlvbnMobWVzc2FnZUlkLCBwcmV2aW91cyk7XG4gICAgICAgICAgICBjb25zdCBlcnJvck1lc3NhZ2UgPSBleCBpbnN0YW5jZW9mIEVycm9yID8gZXgubWVzc2FnZSA6IHR5cGVvZiBleCA9PT0gJ3N0cmluZycgPyBleCA6ICcnO1xuICAgICAgICAgICAgdHJpZ2dlckVycm9yVG9hc3Qoe1xuICAgICAgICAgICAgICAgIHRpdGxlOiB0KCdyZXF1ZXN0RmFpbGVkJyksXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb246IGVycm9yTWVzc2FnZS5yZXBsYWNlKCdBcG9sbG9FcnJvcjonLCAnJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCBjYW5Db250cmlidXRlLCByZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnMsIG15QWdlbnQgPT09IG51bGwgfHwgbXlBZ2VudCA9PT0gdm9pZCAwID8gdm9pZCAwIDogbXlBZ2VudC5pZF0pO1xuICAgIGNvbnN0IGhhbmRsZU1lc3NhZ2VVbnJlYWN0ID0gdXNlQ2FsbGJhY2soKG1lc3NhZ2VJZCwgZW1vamkpID0+IF9fYXdhaXRlcih2b2lkIDAsIHZvaWQgMCwgdm9pZCAwLCBmdW5jdGlvbiogKCkge1xuICAgICAgICB2YXIgX2UsIF9mO1xuICAgICAgICBpZiAoIXNlbGVjdGVkQ29udiB8fCAhY2FuQ29udHJpYnV0ZSlcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgY29uc3QgcHJldmlvdXMgPSBjdXJyZW50TWVzc2FnZVJlYWN0aW9ucyhtZXNzYWdlSWQpO1xuICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcmVwbGFjZUFnZW50UmVhY3Rpb24ocHJldmlvdXMsIG51bGwpKTtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHJlc3VsdCA9IHlpZWxkIHVucmVhY3RUb01lc3NhZ2Uoe1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlczoge1xuICAgICAgICAgICAgICAgICAgICBpbnB1dDoge1xuICAgICAgICAgICAgICAgICAgICAgICAgd29ya3NwYWNlSWQ6IHNlbGVjdGVkQ29udi53b3Jrc3BhY2VJZCxcbiAgICAgICAgICAgICAgICAgICAgICAgIGludGVncmF0aW9uSWQ6IHNlbGVjdGVkQ29udi5pbnRlZ3JhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29udklkOiBzZWxlY3RlZENvbnYuaWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICBlbW9qaSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBjb25zdCBuZXh0UmVhY3Rpb25zID0gKF9mID0gKF9lID0gcmVzdWx0LmRhdGEpID09PSBudWxsIHx8IF9lID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfZS51bnJlYWN0VG9NZXNzYWdlKSA9PT0gbnVsbCB8fCBfZiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2YucmVhY3Rpb25zO1xuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkobmV4dFJlYWN0aW9ucykpIHtcbiAgICAgICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgbmV4dFJlYWN0aW9ucyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGV4KSB7XG4gICAgICAgICAgICBhcHBseUxvY2FsUmVhY3Rpb25zKG1lc3NhZ2VJZCwgcHJldmlvdXMpO1xuICAgICAgICAgICAgY29uc3QgZXJyb3JNZXNzYWdlID0gZXggaW5zdGFuY2VvZiBFcnJvciA/IGV4Lm1lc3NhZ2UgOiB0eXBlb2YgZXggPT09ICdzdHJpbmcnID8gZXggOiAnJztcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiBlcnJvck1lc3NhZ2UucmVwbGFjZSgnQXBvbGxvRXJyb3I6JywgJycpLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9KSwgW3NlbGVjdGVkQ29udiwgY2FuQ29udHJpYnV0ZSwgdW5yZWFjdFRvTWVzc2FnZSwgdCwgYXBwbHlMb2NhbFJlYWN0aW9ucywgY3VycmVudE1lc3NhZ2VSZWFjdGlvbnNdKTtcbiAgICBjb25zdCBoYW5kbGVOb3RlU2VuZCA9IHVzZUNhbGxiYWNrKChub3RlKSA9PiBfX2F3YWl0ZXIodm9pZCAwLCB2b2lkIDAsIHZvaWQgMCwgZnVuY3Rpb24qICgpIHtcbiAgICAgICAgaWYgKCFzZWxlY3RlZENvbnYgfHwgIW5vdGUudHJpbSgpKVxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICBjb25zdCB0cmltbWVkTm90ZSA9IG5vdGUudHJpbSgpO1xuICAgICAgICBpZiAoIXRyaW1tZWROb3RlKSB7XG4gICAgICAgICAgICByZXR1cm47IC8vIERvbid0IHNlbmQgZW1wdHkgbm90ZXNcbiAgICAgICAgfVxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgeWllbGQgc2VuZE1lc3NhZ2Uoc2VsZWN0ZWRDb252LmlkLCBzZWxlY3RlZENvbnYuaW50ZWdyYXRpb25JZCwgd29ya3NwYWNlSWQsICdub3RlJywgdHJpbW1lZE5vdGUsICdNRU1PJyk7XG4gICAgICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCdGYWlsZWQgdG8gc2VuZCBub3RlOicsIGVycm9yKTtcbiAgICAgICAgICAgIHRyaWdnZXJFcnJvclRvYXN0KHtcbiAgICAgICAgICAgICAgICB0aXRsZTogdCgncmVxdWVzdEZhaWxlZCcpLFxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uOiB0KCdpbmJveC5mYWlsZWRUb1NlbmROb3RlJyksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH0pLCBbc2VsZWN0ZWRDb252LCB3b3Jrc3BhY2VJZCwgc2VuZE1lc3NhZ2UsIHRdKTtcbiAgICBjb25zdCBoYW5kbGVDbG9zZU5vdGVNb2RlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgICAgICBzZXROb3RlTW9kZShmYWxzZSk7XG4gICAgfSwgW10pO1xuICAgIGNvbnN0IGhhbmRsZVNlYXJjaENoYW5nZSA9IHVzZUNhbGxiYWNrKCh2YWx1ZSkgPT4ge1xuICAgICAgICBzZXRTZWFyY2hQYXR0ZXJuKHZhbHVlKTtcbiAgICAgICAgc2V0U2VhcmNoTWF0Y2hObygxKTtcbiAgICAgICAgaWYgKCF2YWx1ZS50cmltKCkpIHtcbiAgICAgICAgICAgIGlnbm9yZVJlYWNoVG9wVW50aWxSZWYuY3VycmVudCA9IERhdGUubm93KCkgKyA1MDA7XG4gICAgICAgIH1cbiAgICB9LCBbXSk7XG4gICAgY29uc3QgaGFuZGxlU2VhcmNoTWF0Y2hDaGFuZ2UgPSB1c2VDYWxsYmFjaygobWF0Y2hObykgPT4ge1xuICAgICAgICBzZXRTZWFyY2hNYXRjaE5vKG1hdGNoTm8pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBoYW5kbGVTZWFyY2hNYXRjaENvdW50ID0gdXNlQ2FsbGJhY2soKGNvdW50KSA9PiB7XG4gICAgICAgIHNldFNlYXJjaE1hdGNoQ291bnQoY291bnQpO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uID0gY2FuQ29udHJpYnV0ZSAmJiAhIW9uQ29udkVuZDtcbiAgICBjb25zdCBzaG93T2xkZXJNZXNzYWdlc0J1dHRvbiA9ICFzZWFyY2hQYXR0ZXJuLnRyaW0oKSAmJiAoaXNMb2FkaW5nT2xkZXJNZXNzYWdlcyB8fCAhb2xkZXJNZXNzYWdlcyB8fCAhIShwYWdpbmF0aW9uSW5mbyA9PT0gbnVsbCB8fCBwYWdpbmF0aW9uSW5mbyA9PT0gdm9pZCAwID8gdm9pZCAwIDogcGFnaW5hdGlvbkluZm8uaGFzTmV4dFBhZ2UpKTtcbiAgICAvLyAtLS0gUmVuZGVyIC0tLVxuICAgIHJldHVybiAoX2pzeHMoV3JhcHBlciwgeyBydGw6IHJ0bCwgY2hpbGRyZW46IFtzZWxlY3RlZENvbnYgJiYgbWVzc2FnZXMgPyAoX2pzeHMoX0ZyYWdtZW50LCB7IGNoaWxkcmVuOiBbc2hvd0hlYWRlciA/IChfanN4KENoYXRIZWFkZXIsIHsgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYsIG9uQ29udkVuZDogb25Db252RW5kLCBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uOiBzaG93RW5kQ29udmVyc2F0aW9uQnV0dG9uLCBzZWFyY2hQYXR0ZXJuOiBzZWFyY2hQYXR0ZXJuLCBvblNlYXJjaENoYW5nZTogaGFuZGxlU2VhcmNoQ2hhbmdlLCBzZWFyY2hNYXRjaE5vOiBzZWFyY2hNYXRjaE5vLCBvblNlYXJjaE1hdGNoQ2hhbmdlOiBoYW5kbGVTZWFyY2hNYXRjaENoYW5nZSwgc2VhcmNoTWF0Y2hDb3VudDogc2VhcmNoTWF0Y2hDb3VudCwgc2hvd09sZGVyTWVzc2FnZXNCdXR0b246IHNob3dPbGRlck1lc3NhZ2VzQnV0dG9uLCBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzOiBpc0xvYWRpbmdPbGRlck1lc3NhZ2VzLCBvbkxvYWRPbGRlck1lc3NhZ2VzOiBsb2FkT2xkZXJNZXNzYWdlcywgb25CYWNrOiBvbkJhY2tUb0xpc3QgfSkpIDogbnVsbCwgX2pzeChJbmNvbWluZ0NhbGxCYW5uZXIsIHsgY2FsbDogc2VsZWN0ZWRDb252LmFjdGl2ZUNhbGwgfSksIF9qc3goQ2hhdFdyYXBwZXIsIHsgXCIkZnVsbEhlaWdodFwiOiAhc2hvd0hlYWRlciwgY2hpbGRyZW46IF9qc3goQ2hhdENvbnRlbnQsIHsgbWVzc2FnZXM6IG1lc3NhZ2VzLCBvbGRlck1lc3NhZ2VzOiBvbGRlck1lc3NhZ2VzLCBjYW5Db250cmlidXRlOiBjYW5Db250cmlidXRlLCBzZW5kTWVzc2FnZTogc2VuZENoYXRNZXNzYWdlLCBsb2FkT2xkZXJNZXNzYWdlczogbG9hZE9sZGVyTWVzc2FnZXMsIGFnZW50c0lkc0F2YXRhcnNNYXA6IGFnZW50c0lkc0F2YXRhcnNNYXAsIG5vdGVNb2RlOiBub3RlTW9kZSwgb25Ob3RlU2VuZDogaGFuZGxlTm90ZVNlbmQsIG9uQ2xvc2VOb3RlTW9kZTogaGFuZGxlQ2xvc2VOb3RlTW9kZSwgb25BZGROb3RlQ2xpY2s6IGhhbmRsZUFkZE5vdGVDbGljaywgc2VhcmNoUGF0dGVybjogc2VhcmNoUGF0dGVybiwgc2VhcmNoTWF0Y2hObzogc2VhcmNoTWF0Y2hObywgb25TZWFyY2hNYXRjaENvdW50OiBoYW5kbGVTZWFyY2hNYXRjaENvdW50LCBvbk1lc3NhZ2VSZXBseTogaGFuZGxlTWVzc2FnZVJlcGx5LCBvbk1lc3NhZ2VSZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VSZWFjdCA6IHVuZGVmaW5lZCwgb25NZXNzYWdlVW5yZWFjdDogY2FuQ29udHJpYnV0ZSA/IGhhbmRsZU1lc3NhZ2VVbnJlYWN0IDogdW5kZWZpbmVkLCByZXBseU1lc3NhZ2U6IHJlcGx5TWVzc2FnZSwgb25DYW5jZWxSZXBseU1lc3NhZ2U6ICgpID0+IHNldFJlcGx5TWVzc2FnZShudWxsKSwgZXJyb3JNZXNzYWdlOiBibG9ja2luZ0Vycm9yTWVzc2FnZSwgc3RhdHVzRmFpbHVyZU1lc3NhZ2U6IHN0YXR1c0ZhaWx1cmVNZXNzYWdlLCBsb2dvOiBsb2dvLCBjb252ZXJzYXRpb25JZDogc2VsZWN0ZWRDb252ID09PSBudWxsIHx8IHNlbGVjdGVkQ29udiA9PT0gdm9pZCAwID8gdm9pZCAwIDogc2VsZWN0ZWRDb252LmlkLCBvbkNvbnRhY3RNZXNzYWdlOiBvbkNvbnRhY3RNZXNzYWdlLCBvbkNvbnRhY3RBZGRDb250YWN0OiBvbkNvbnRhY3RBZGRDb250YWN0IH0pIH0pXSB9KSkgOiBzaG93Tm9SZXN1bHRzID8gKF9qc3goTm9SZXN1bHRzRm91bmQsIHt9KSkgOiAoX2pzeChOb0NvbnZTZWxlY3RlZCwgeyBjb252c0xlbmd0aDogY29udnNMZW5ndGggfHwgMCwgbG9hZGluZ0NvbnZzOiBsb2FkaW5nQ29udnMgfHwgZmFsc2UsIGhhbmRsZVN0YXJ0Q29udmVyc2F0aW9uOiBoYW5kbGVTdGFydENvbnZlcnNhdGlvbiwgaGFzSW5ib3hBY2Nlc3M6IGhhc0luYm94QWNjZXNzIH0pKSwgb3V0c2lkZTI0SG91cldpbmRvd1BvcHVwICYmIHNlbGVjdGVkQ29udiAmJiAoX2pzeChPdXRzaWRlMjRIb3VyV2luZG93UG9wdXAsIHsgb25DbG9zZTogKCkgPT4gc2V0T3V0c2lkZTI0SG91cldpbmRvd1BvcHVwKGZhbHNlKSwgc2VsZWN0ZWRDb252OiBzZWxlY3RlZENvbnYgfSkpXSB9KSk7XG59O1xuZXhwb3J0IGRlZmF1bHQgQ2hhdDtcbi8vIyBzb3VyY2VNYXBwaW5nVVJMPWluZGV4LmpzLm1hcCJdfQ== */"));
104093
104329
  // --- Main Chat Component ---
104094
104330
  const Chat = ({
104095
104331
  selectedConv,
@@ -104136,11 +104372,10 @@ const Chat = ({
104136
104372
  const subscriptionContext = useCurrentSubscriptionOptional();
104137
104373
  const subscription = subscriptionContext === null || subscriptionContext === void 0 ? void 0 : subscriptionContext.subscription;
104138
104374
  const {
104139
- role,
104140
- hasAny
104375
+ role
104141
104376
  } = useRoles();
104142
104377
  const myAgent = useMyAgent(agents);
104143
- const shouldAutoAssignOnSend = hasAny([bcShared.Role.AGENT, bcShared.Role.AGENT_PLUS, bcShared.Role.MANAGER]);
104378
+ const shouldAutoAssignOnSend = useAutoAssignOnSend();
104144
104379
  const [queryMessages] = useMessagesLazyQuery({
104145
104380
  fetchPolicy: 'no-cache',
104146
104381
  client: bcApi.coreClient