package com.l7tech.gateway.common.service;

import com.l7tech.objectmodel.Goid;
import com.l7tech.util.DeserializeSafe;
import com.l7tech.util.Functions.Unary;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import java.util.Set;

@DeserializeSafe
public class MetricsSummaryBin extends MetricsBin {
   private final Set<Goid> _servicesWithPolicyViolation;
   private final Set<Goid> _servicesWithRoutingFailure;
   private static final Unary<Long, MetricsBin> periodStartGetter = new a();
   private static final Unary<Goid, MetricsBin> serviceGoidGetter = new b();
   private long firstAttemptedRequest;
   private long firstAuthorizedRequest;
   private long firstCompletedRequest;
   private long lastAttemptedRequest;
   private long lastAuthorizedRequest;
   private long lastCompletedRequest;
   private double lastAverageFrontendResponseTime;
   static final long serialVersionUID = 1895276822905684383L;
   private static final String c;

   public static Collection<MetricsSummaryBin> createSummaryMetricsBinsByPeriodStart(Collection<MetricsBin> var0) {
      Collection var1 = createSummaryMetricsBins(var0, periodStartGetter).values();
      ArrayList var2 = new ArrayList();
      var2.addAll(var1);
      return var2;
   }

   public static Map<Goid, MetricsSummaryBin> createSummaryMetricsBinsByServiceOid(Collection<MetricsBin> var0) {
      return createSummaryMetricsBins(var0, serviceGoidGetter);
   }

   private static <GT> Map<GT, MetricsSummaryBin> createSummaryMetricsBins(Collection<MetricsBin> param0, Unary<GT, MetricsBin> param1) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 00: aload 0
      // 01: ifnull 14
      // 04: aload 0
      // 05: invokeinterface java/util/Collection.size ()I 1
      // 0a: ifne 1c
      // 0d: goto 14
      // 10: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 13: athrow
      // 14: invokestatic java/util/Collections.emptyMap ()Ljava/util/Map;
      // 17: areturn
      // 18: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1b: athrow
      // 1c: new java/util/HashMap
      // 1f: dup
      // 20: invokespecial java/util/HashMap.<init> ()V
      // 23: astore 2
      // 24: aload 0
      // 25: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 2a: astore 3
      // 2b: aload 3
      // 2c: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 31: ifeq 88
      // 34: aload 3
      // 35: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 3a: checkcast com/l7tech/gateway/common/service/MetricsBin
      // 3d: astore 4
      // 3f: aload 1
      // 40: aload 4
      // 42: invokeinterface com/l7tech/util/Functions$Unary.call (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 47: astore 5
      // 49: aload 5
      // 4b: ifnonnull 55
      // 4e: goto 2b
      // 51: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 54: athrow
      // 55: aload 2
      // 56: aload 5
      // 58: invokeinterface java/util/Map.get (Ljava/lang/Object;)Ljava/lang/Object; 2
      // 5d: checkcast java/util/Set
      // 60: astore 6
      // 62: aload 6
      // 64: ifnonnull 7b
      // 67: new java/util/HashSet
      // 6a: dup
      // 6b: invokespecial java/util/HashSet.<init> ()V
      // 6e: astore 6
      // 70: aload 2
      // 71: aload 5
      // 73: aload 6
      // 75: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // 7a: pop
      // 7b: aload 6
      // 7d: aload 4
      // 7f: invokeinterface java/util/Set.add (Ljava/lang/Object;)Z 2
      // 84: pop
      // 85: goto 2b
      // 88: new java/util/HashMap
      // 8b: dup
      // 8c: invokespecial java/util/HashMap.<init> ()V
      // 8f: astore 3
      // 90: aload 2
      // 91: invokeinterface java/util/Map.entrySet ()Ljava/util/Set; 1
      // 96: invokeinterface java/util/Set.iterator ()Ljava/util/Iterator; 1
      // 9b: astore 4
      // 9d: aload 4
      // 9f: invokeinterface java/util/Iterator.hasNext ()Z 1
      // a4: ifeq f3
      // a7: aload 4
      // a9: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // ae: checkcast java/util/Map$Entry
      // b1: astore 5
      // b3: aload 5
      // b5: invokeinterface java/util/Map$Entry.getValue ()Ljava/lang/Object; 1
      // ba: checkcast java/util/Set
      // bd: astore 6
      // bf: aload 6
      // c1: ifnull 9d
      // c4: aload 6
      // c6: invokeinterface java/util/Set.isEmpty ()Z 1
      // cb: ifeq d5
      // ce: goto 9d
      // d1: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // d4: athrow
      // d5: new com/l7tech/gateway/common/service/MetricsSummaryBin
      // d8: dup
      // d9: aload 6
      // db: invokespecial com/l7tech/gateway/common/service/MetricsSummaryBin.<init> (Ljava/util/Collection;)V
      // de: astore 7
      // e0: aload 3
      // e1: aload 5
      // e3: invokeinterface java/util/Map$Entry.getKey ()Ljava/lang/Object; 1
      // e8: aload 7
      // ea: invokeinterface java/util/Map.put (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; 3
      // ef: pop
      // f0: goto 9d
      // f3: aload 3
      // f4: areturn
      // try (0 -> 5): 6 java/lang/IllegalArgumentException
      // try (2 -> 10): 10 java/lang/IllegalArgumentException
      // try (30 -> 33): 33 java/lang/IllegalArgumentException
      // try (77 -> 81): 81 java/lang/IllegalArgumentException
   }

   public MetricsSummaryBin(Collection<MetricsBin> param1) {
      // $VF: Couldn't be decompiled
      // Please report this to the Vineflower issue tracker, at https://github.com/Vineflower/vineflower/issues with a copy of the class file (if you have the rights to distribute it!)
      // java.lang.RuntimeException: parsing failure!
      //   at org.jetbrains.java.decompiler.modules.decompiler.decompose.DomHelper.parseGraph(DomHelper.java:211)
      //   at org.jetbrains.java.decompiler.main.rels.MethodProcessor.codeToJava(MethodProcessor.java:174)
      //
      // Bytecode:
      // 000: aload 0
      // 001: invokespecial com/l7tech/gateway/common/service/MetricsBin.<init> ()V
      // 004: aload 0
      // 005: new java/util/HashSet
      // 008: dup
      // 009: bipush 0
      // 00a: invokespecial java/util/HashSet.<init> (I)V
      // 00d: putfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithPolicyViolation Ljava/util/Set;
      // 010: aload 0
      // 011: new java/util/HashSet
      // 014: dup
      // 015: bipush 0
      // 016: invokespecial java/util/HashSet.<init> (I)V
      // 019: putfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithRoutingFailure Ljava/util/Set;
      // 01c: aload 1
      // 01d: ifnull 029
      // 020: aload 1
      // 021: invokeinterface java/util/Collection.size ()I 1
      // 026: ifne 038
      // 029: new java/lang/IllegalArgumentException
      // 02c: dup
      // 02d: getstatic com/l7tech/gateway/common/service/MetricsSummaryBin.c Ljava/lang/String;
      // 030: invokespecial java/lang/IllegalArgumentException.<init> (Ljava/lang/String;)V
      // 033: athrow
      // 034: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 037: athrow
      // 038: aconst_null
      // 039: astore 2
      // 03a: getstatic com/l7tech/gateway/common/service/PublishedService.DEFAULT_GOID Lcom/l7tech/objectmodel/Goid;
      // 03d: astore 3
      // 03e: bipush -1
      // 03f: istore 4
      // 041: ldc2_w -1
      // 044: lstore 5
      // 046: ldc2_w -1
      // 049: lstore 7
      // 04b: ldc2_w -1
      // 04e: lstore 9
      // 050: ldc2_w -1
      // 053: lstore 11
      // 055: ldc2_w -1
      // 058: lstore 13
      // 05a: ldc2_w -1
      // 05d: lstore 15
      // 05f: ldc2_w -1
      // 062: lstore 17
      // 064: ldc2_w -1
      // 067: lstore 19
      // 069: ldc2_w -1
      // 06c: lstore 21
      // 06e: ldc2_w -1
      // 071: lstore 23
      // 073: bipush 0
      // 074: istore 25
      // 076: bipush 0
      // 077: istore 26
      // 079: bipush 0
      // 07a: istore 27
      // 07c: aconst_null
      // 07d: astore 28
      // 07f: aconst_null
      // 080: astore 29
      // 082: lconst_0
      // 083: lstore 30
      // 085: aconst_null
      // 086: astore 32
      // 088: aconst_null
      // 089: astore 33
      // 08b: lconst_0
      // 08c: lstore 34
      // 08e: bipush 1
      // 08f: istore 36
      // 091: aload 1
      // 092: invokeinterface java/util/Collection.iterator ()Ljava/util/Iterator; 1
      // 097: astore 37
      // 099: aload 37
      // 09b: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 0a0: ifeq 404
      // 0a3: aload 37
      // 0a5: invokeinterface java/util/Iterator.next ()Ljava/lang/Object; 1
      // 0aa: checkcast com/l7tech/gateway/common/service/MetricsBin
      // 0ad: astore 38
      // 0af: iload 36
      // 0b1: ifeq 128
      // 0b4: aload 38
      // 0b6: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getClusterNodeId ()Ljava/lang/String;
      // 0b9: astore 2
      // 0ba: aload 38
      // 0bc: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getServiceGoid ()Lcom/l7tech/objectmodel/Goid;
      // 0bf: astore 3
      // 0c0: aload 38
      // 0c2: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getResolution ()I
      // 0c5: istore 4
      // 0c7: aload 38
      // 0c9: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 0cc: lstore 5
      // 0ce: aload 38
      // 0d0: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodEnd ()J
      // 0d3: lstore 7
      // 0d5: aload 38
      // 0d7: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getStartTime ()J
      // 0da: lstore 9
      // 0dc: aload 38
      // 0de: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getEndTime ()J
      // 0e1: lstore 11
      // 0e3: aload 38
      // 0e5: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinFrontendResponseTime ()Ljava/lang/Integer;
      // 0e8: astore 28
      // 0ea: aload 38
      // 0ec: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxFrontendResponseTime ()Ljava/lang/Integer;
      // 0ef: astore 29
      // 0f1: aload 38
      // 0f3: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getSumFrontendResponseTime ()J
      // 0f6: lstore 30
      // 0f8: aload 38
      // 0fa: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinBackendResponseTime ()Ljava/lang/Integer;
      // 0fd: astore 32
      // 0ff: aload 38
      // 101: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxBackendResponseTime ()Ljava/lang/Integer;
      // 104: astore 33
      // 106: aload 38
      // 108: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getSumBackendResponseTime ()J
      // 10b: lstore 34
      // 10d: aload 38
      // 10f: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAttemptedRequest ()I
      // 112: istore 25
      // 114: aload 38
      // 116: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAuthorizedRequest ()I
      // 119: istore 26
      // 11b: aload 38
      // 11d: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumCompletedRequest ()I
      // 120: istore 27
      // 122: bipush 0
      // 123: istore 36
      // 125: goto 2a2
      // 128: aload 2
      // 129: ifnull 141
      // 12c: aload 2
      // 12d: aload 38
      // 12f: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getClusterNodeId ()Ljava/lang/String;
      // 132: invokevirtual java/lang/String.equals (Ljava/lang/Object;)Z
      // 135: ifne 141
      // 138: goto 13f
      // 13b: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 13e: athrow
      // 13f: aconst_null
      // 140: astore 2
      // 141: aload 3
      // 142: aload 38
      // 144: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getServiceGoid ()Lcom/l7tech/objectmodel/Goid;
      // 147: invokestatic com/l7tech/objectmodel/Goid.equals (Lcom/l7tech/objectmodel/Goid;Lcom/l7tech/objectmodel/Goid;)Z
      // 14a: ifne 151
      // 14d: getstatic com/l7tech/gateway/common/service/PublishedService.DEFAULT_GOID Lcom/l7tech/objectmodel/Goid;
      // 150: astore 3
      // 151: iload 4
      // 153: aload 38
      // 155: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getResolution ()I
      // 158: if_icmpeq 15e
      // 15b: bipush -1
      // 15c: istore 4
      // 15e: lload 5
      // 160: aload 38
      // 162: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 165: invokestatic java/lang/Math.min (JJ)J
      // 168: lstore 5
      // 16a: lload 7
      // 16c: aload 38
      // 16e: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodEnd ()J
      // 171: invokestatic java/lang/Math.max (JJ)J
      // 174: lstore 7
      // 176: lload 9
      // 178: aload 38
      // 17a: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getStartTime ()J
      // 17d: invokestatic java/lang/Math.min (JJ)J
      // 180: lstore 9
      // 182: lload 11
      // 184: aload 38
      // 186: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getEndTime ()J
      // 189: invokestatic java/lang/Math.max (JJ)J
      // 18c: lstore 11
      // 18e: iload 25
      // 190: ifne 1a4
      // 193: aload 38
      // 195: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinFrontendResponseTime ()Ljava/lang/Integer;
      // 198: astore 28
      // 19a: aload 38
      // 19c: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxFrontendResponseTime ()Ljava/lang/Integer;
      // 19f: astore 29
      // 1a1: goto 1f2
      // 1a4: aload 38
      // 1a6: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAttemptedRequest ()I
      // 1a9: ifeq 1f2
      // 1ac: aload 28
      // 1ae: ifnonnull 1c1
      // 1b1: goto 1b8
      // 1b4: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1b7: athrow
      // 1b8: ldc 2147483647
      // 1ba: goto 1c6
      // 1bd: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1c0: athrow
      // 1c1: aload 28
      // 1c3: invokevirtual java/lang/Integer.intValue ()I
      // 1c6: aload 38
      // 1c8: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinFrontendResponseTime ()Ljava/lang/Integer;
      // 1cb: invokestatic com/l7tech/gateway/common/service/MetricsBin.min (ILjava/lang/Integer;)I
      // 1ce: invokestatic java/lang/Integer.valueOf (I)Ljava/lang/Integer;
      // 1d1: astore 28
      // 1d3: aload 29
      // 1d5: ifnonnull 1e0
      // 1d8: bipush -1
      // 1d9: goto 1e5
      // 1dc: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 1df: athrow
      // 1e0: aload 29
      // 1e2: invokevirtual java/lang/Integer.intValue ()I
      // 1e5: aload 38
      // 1e7: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxFrontendResponseTime ()Ljava/lang/Integer;
      // 1ea: invokestatic com/l7tech/gateway/common/service/MetricsBin.max (ILjava/lang/Integer;)I
      // 1ed: invokestatic java/lang/Integer.valueOf (I)Ljava/lang/Integer;
      // 1f0: astore 29
      // 1f2: lload 30
      // 1f4: aload 38
      // 1f6: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getSumFrontendResponseTime ()J
      // 1f9: ladd
      // 1fa: lstore 30
      // 1fc: iload 27
      // 1fe: ifne 212
      // 201: aload 38
      // 203: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinBackendResponseTime ()Ljava/lang/Integer;
      // 206: astore 32
      // 208: aload 38
      // 20a: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxBackendResponseTime ()Ljava/lang/Integer;
      // 20d: astore 33
      // 20f: goto 260
      // 212: aload 38
      // 214: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumCompletedRequest ()I
      // 217: ifeq 260
      // 21a: aload 32
      // 21c: ifnonnull 22f
      // 21f: goto 226
      // 222: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 225: athrow
      // 226: ldc 2147483647
      // 228: goto 234
      // 22b: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 22e: athrow
      // 22f: aload 32
      // 231: invokevirtual java/lang/Integer.intValue ()I
      // 234: aload 38
      // 236: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMinBackendResponseTime ()Ljava/lang/Integer;
      // 239: invokestatic com/l7tech/gateway/common/service/MetricsBin.min (ILjava/lang/Integer;)I
      // 23c: invokestatic java/lang/Integer.valueOf (I)Ljava/lang/Integer;
      // 23f: astore 32
      // 241: aload 33
      // 243: ifnonnull 24e
      // 246: bipush -1
      // 247: goto 253
      // 24a: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 24d: athrow
      // 24e: aload 33
      // 250: invokevirtual java/lang/Integer.intValue ()I
      // 253: aload 38
      // 255: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getMaxBackendResponseTime ()Ljava/lang/Integer;
      // 258: invokestatic com/l7tech/gateway/common/service/MetricsBin.max (ILjava/lang/Integer;)I
      // 25b: invokestatic java/lang/Integer.valueOf (I)Ljava/lang/Integer;
      // 25e: astore 33
      // 260: lload 34
      // 262: aload 38
      // 264: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getSumBackendResponseTime ()J
      // 267: ladd
      // 268: lstore 34
      // 26a: iload 25
      // 26c: aload 38
      // 26e: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAttemptedRequest ()I
      // 271: iadd
      // 272: istore 25
      // 274: iload 26
      // 276: aload 38
      // 278: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAuthorizedRequest ()I
      // 27b: iadd
      // 27c: istore 26
      // 27e: iload 27
      // 280: aload 38
      // 282: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumCompletedRequest ()I
      // 285: iadd
      // 286: istore 27
      // 288: aload 37
      // 28a: invokeinterface java/util/Iterator.hasNext ()Z 1
      // 28f: ifne 2a2
      // 292: aload 0
      // 293: aload 38
      // 295: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getAverageFrontendResponseTime ()D
      // 298: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setLastAverageFrontendResponseTime (D)V
      // 29b: goto 2a2
      // 29e: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2a1: athrow
      // 2a2: aload 38
      // 2a4: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAttemptedRequest ()I
      // 2a7: ifle 2f3
      // 2aa: lload 13
      // 2ac: ldc2_w -1
      // 2af: lcmp
      // 2b0: ifne 2c6
      // 2b3: goto 2ba
      // 2b6: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2b9: athrow
      // 2ba: aload 38
      // 2bc: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 2bf: goto 2d0
      // 2c2: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2c5: athrow
      // 2c6: aload 38
      // 2c8: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 2cb: lload 13
      // 2cd: invokestatic java/lang/Math.min (JJ)J
      // 2d0: lstore 13
      // 2d2: lload 19
      // 2d4: ldc2_w -1
      // 2d7: lcmp
      // 2d8: ifne 2e7
      // 2db: aload 38
      // 2dd: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 2e0: goto 2f1
      // 2e3: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 2e6: athrow
      // 2e7: aload 38
      // 2e9: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 2ec: lload 19
      // 2ee: invokestatic java/lang/Math.max (JJ)J
      // 2f1: lstore 19
      // 2f3: aload 38
      // 2f5: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumAuthorizedRequest ()I
      // 2f8: ifle 344
      // 2fb: lload 15
      // 2fd: ldc2_w -1
      // 300: lcmp
      // 301: ifne 317
      // 304: goto 30b
      // 307: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 30a: athrow
      // 30b: aload 38
      // 30d: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 310: goto 321
      // 313: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 316: athrow
      // 317: aload 38
      // 319: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 31c: lload 15
      // 31e: invokestatic java/lang/Math.min (JJ)J
      // 321: lstore 15
      // 323: lload 21
      // 325: ldc2_w -1
      // 328: lcmp
      // 329: ifne 338
      // 32c: aload 38
      // 32e: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 331: goto 342
      // 334: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 337: athrow
      // 338: aload 38
      // 33a: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 33d: lload 21
      // 33f: invokestatic java/lang/Math.max (JJ)J
      // 342: lstore 21
      // 344: aload 38
      // 346: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumCompletedRequest ()I
      // 349: ifle 395
      // 34c: lload 17
      // 34e: ldc2_w -1
      // 351: lcmp
      // 352: ifne 368
      // 355: goto 35c
      // 358: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 35b: athrow
      // 35c: aload 38
      // 35e: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 361: goto 372
      // 364: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 367: athrow
      // 368: aload 38
      // 36a: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 36d: lload 17
      // 36f: invokestatic java/lang/Math.min (JJ)J
      // 372: lstore 17
      // 374: lload 23
      // 376: ldc2_w -1
      // 379: lcmp
      // 37a: ifne 389
      // 37d: aload 38
      // 37f: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 382: goto 393
      // 385: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 388: athrow
      // 389: aload 38
      // 38b: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getPeriodStart ()J
      // 38e: lload 23
      // 390: invokestatic java/lang/Math.max (JJ)J
      // 393: lstore 23
      // 395: aload 38
      // 397: instanceof com/l7tech/gateway/common/service/MetricsSummaryBin
      // 39a: ifeq 3c5
      // 39d: aload 38
      // 39f: checkcast com/l7tech/gateway/common/service/MetricsSummaryBin
      // 3a2: astore 39
      // 3a4: aload 0
      // 3a5: getfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithPolicyViolation Ljava/util/Set;
      // 3a8: aload 39
      // 3aa: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.getServicesWithPolicyViolation ()Ljava/util/Set;
      // 3ad: invokeinterface java/util/Set.addAll (Ljava/util/Collection;)Z 2
      // 3b2: pop
      // 3b3: aload 0
      // 3b4: getfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithRoutingFailure Ljava/util/Set;
      // 3b7: aload 39
      // 3b9: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.getServicesWithRoutingFailure ()Ljava/util/Set;
      // 3bc: invokeinterface java/util/Set.addAll (Ljava/util/Collection;)Z 2
      // 3c1: pop
      // 3c2: goto 401
      // 3c5: aload 38
      // 3c7: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumPolicyViolation ()I
      // 3ca: ifeq 3e3
      // 3cd: aload 0
      // 3ce: getfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithPolicyViolation Ljava/util/Set;
      // 3d1: aload 38
      // 3d3: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getServiceGoid ()Lcom/l7tech/objectmodel/Goid;
      // 3d6: invokeinterface java/util/Set.add (Ljava/lang/Object;)Z 2
      // 3db: pop
      // 3dc: goto 3e3
      // 3df: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 3e2: athrow
      // 3e3: aload 38
      // 3e5: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getNumRoutingFailure ()I
      // 3e8: ifeq 401
      // 3eb: aload 0
      // 3ec: getfield com/l7tech/gateway/common/service/MetricsSummaryBin._servicesWithRoutingFailure Ljava/util/Set;
      // 3ef: aload 38
      // 3f1: invokevirtual com/l7tech/gateway/common/service/MetricsBin.getServiceGoid ()Lcom/l7tech/objectmodel/Goid;
      // 3f4: invokeinterface java/util/Set.add (Ljava/lang/Object;)Z 2
      // 3f9: pop
      // 3fa: goto 401
      // 3fd: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 400: athrow
      // 401: goto 099
      // 404: aload 0
      // 405: aload 2
      // 406: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setClusterNodeId (Ljava/lang/String;)V
      // 409: aload 0
      // 40a: aload 3
      // 40b: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setServiceGoid (Lcom/l7tech/objectmodel/Goid;)V
      // 40e: iload 4
      // 410: bipush -1
      // 411: if_icmpne 420
      // 414: aload 0
      // 415: bipush -1
      // 416: putfield com/l7tech/gateway/common/service/MetricsSummaryBin._resolution I
      // 419: goto 426
      // 41c: invokestatic com/l7tech/gateway/common/service/MetricsSummaryBin.c (Ljava/lang/IllegalArgumentException;)Ljava/lang/IllegalArgumentException;
      // 41f: athrow
      // 420: aload 0
      // 421: iload 4
      // 423: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setResolution (I)V
      // 426: aload 0
      // 427: lload 5
      // 429: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setPeriodStart (J)V
      // 42c: aload 0
      // 42d: lload 7
      // 42f: lload 5
      // 431: lsub
      // 432: l2i
      // 433: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setInterval (I)V
      // 436: aload 0
      // 437: lload 9
      // 439: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setStartTime (J)V
      // 43c: aload 0
      // 43d: lload 11
      // 43f: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setEndTime (J)V
      // 442: aload 0
      // 443: iload 25
      // 445: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setNumAttemptedRequest (I)V
      // 448: aload 0
      // 449: iload 26
      // 44b: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setNumAuthorizedRequest (I)V
      // 44e: aload 0
      // 44f: iload 27
      // 451: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setNumCompletedRequest (I)V
      // 454: aload 0
      // 455: aload 28
      // 457: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setMinFrontendResponseTime (Ljava/lang/Integer;)V
      // 45a: aload 0
      // 45b: aload 29
      // 45d: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setMaxFrontendResponseTime (Ljava/lang/Integer;)V
      // 460: aload 0
      // 461: lload 30
      // 463: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setSumFrontendResponseTime (J)V
      // 466: aload 0
      // 467: aload 32
      // 469: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setMinBackendResponseTime (Ljava/lang/Integer;)V
      // 46c: aload 0
      // 46d: aload 33
      // 46f: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setMaxBackendResponseTime (Ljava/lang/Integer;)V
      // 472: aload 0
      // 473: lload 34
      // 475: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setSumBackendResponseTime (J)V
      // 478: aload 0
      // 479: lload 13
      // 47b: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setFirstAttemptedRequest (J)V
      // 47e: aload 0
      // 47f: lload 15
      // 481: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setFirstAuthorizedRequest (J)V
      // 484: aload 0
      // 485: lload 17
      // 487: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setFirstCompletedRequest (J)V
      // 48a: aload 0
      // 48b: lload 19
      // 48d: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setLastAttemptedRequest (J)V
      // 490: aload 0
      // 491: lload 21
      // 493: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setLastAuthorizedRequest (J)V
      // 496: aload 0
      // 497: lload 23
      // 499: invokevirtual com/l7tech/gateway/common/service/MetricsSummaryBin.setLastCompletedRequest (J)V
      // 49c: return
      // try (16 -> 24): 24 java/lang/IllegalArgumentException
      // try (135 -> 142): 143 java/lang/IllegalArgumentException
      // try (189 -> 194): 195 java/lang/IllegalArgumentException
      // try (192 -> 199): 199 java/lang/IllegalArgumentException
      // try (208 -> 212): 212 java/lang/IllegalArgumentException
      // try (235 -> 240): 241 java/lang/IllegalArgumentException
      // try (238 -> 245): 245 java/lang/IllegalArgumentException
      // try (254 -> 258): 258 java/lang/IllegalArgumentException
      // try (287 -> 294): 295 java/lang/IllegalArgumentException
      // try (297 -> 304): 305 java/lang/IllegalArgumentException
      // try (300 -> 310): 310 java/lang/IllegalArgumentException
      // try (317 -> 324): 324 java/lang/IllegalArgumentException
      // try (331 -> 338): 339 java/lang/IllegalArgumentException
      // try (334 -> 344): 344 java/lang/IllegalArgumentException
      // try (351 -> 358): 358 java/lang/IllegalArgumentException
      // try (365 -> 372): 373 java/lang/IllegalArgumentException
      // try (368 -> 378): 378 java/lang/IllegalArgumentException
      // try (385 -> 392): 392 java/lang/IllegalArgumentException
      // try (418 -> 427): 428 java/lang/IllegalArgumentException
      // try (430 -> 439): 440 java/lang/IllegalArgumentException
      // try (443 -> 456): 456 java/lang/IllegalArgumentException
   }

   public Set<Goid> getServicesWithPolicyViolation() {
      return this._servicesWithPolicyViolation;
   }

   public Set<Goid> getServicesWithRoutingFailure() {
      return this._servicesWithRoutingFailure;
   }

   public long getFirstAttemptedRequest() {
      return this.firstAttemptedRequest;
   }

   public void setFirstAttemptedRequest(long var1) {
      this.firstAttemptedRequest = var1;
   }

   public long getFirstAuthorizedRequest() {
      return this.firstAuthorizedRequest;
   }

   public void setFirstAuthorizedRequest(long var1) {
      this.firstAuthorizedRequest = var1;
   }

   public long getFirstCompletedRequest() {
      return this.firstCompletedRequest;
   }

   public void setFirstCompletedRequest(long var1) {
      this.firstCompletedRequest = var1;
   }

   public long getLastAttemptedRequest() {
      return this.lastAttemptedRequest;
   }

   public void setLastAttemptedRequest(long var1) {
      this.lastAttemptedRequest = var1;
   }

   public long getLastAuthorizedRequest() {
      return this.lastAuthorizedRequest;
   }

   public void setLastAuthorizedRequest(long var1) {
      this.lastAuthorizedRequest = var1;
   }

   public long getLastCompletedRequest() {
      return this.lastCompletedRequest;
   }

   public void setLastCompletedRequest(long var1) {
      this.lastCompletedRequest = var1;
   }

   public double getLastAverageFrontendResponseTime() {
      return this.lastAverageFrontendResponseTime;
   }

   public void setLastAverageFrontendResponseTime(double var1) {
      this.lastAverageFrontendResponseTime = var1;
   }

   static {
      String var10002 = c(50, c("=F{\u000b\u0014\u0000%\u0006V(\u001e@H(\u0015R{\u000b\u0014\u0007*\u0015\u0013e\u001a@\u001a-\u0013@(\u001d]\u0006j"));
      byte var10001 = -1;
      c = var10002;
   }

   private static IllegalArgumentException c(IllegalArgumentException var0) {
      return var0;
   }

   private static char[] c(String var0) {
      char[] var10000 = var0.toCharArray();
      if (var10000.length < 2) {
         var10000[0] = (char)(var10000[0] ^ 118);
      }

      return var10000;
   }

   private static String c(int var0, char[] var1) {
      int var10003 = var1.length;
      int var10002 = var0;
      char[] var10001 = var1;
      int var10000 = var10003;

      for (int var2 = 0; var10000 > var2; var2++) {
         var10001[var2] = (char)(var10001[var2] ^ var10002 ^ switch (var2 % 7) {
            case 0 -> 66;
            case 1 -> 1;
            case 2 -> 58;
            case 3 -> 77;
            case 4 -> 6;
            case 5 -> 90;
            default -> 118;
         });
      }

      return new String(var10001).intern();
   }
}
