7+  java/lang/Object()Vnet/luminis/quic/test/TestClock   !net/luminis/quic/AckGeneratorTestclock!Lnet/luminis/quic/test/TestClock;net/luminis/quic/send/Sender  org/mockito/Mockitomock%(Ljava/lang/Class;)Ljava/lang/Object;  senderLnet/luminis/quic/send/Sender;net/luminis/quic/AckGenerator  ! "#net/luminis/quic/PnSpaceAppLnet/luminis/quic/PnSpace; % &L(Ljava/time/Clock;Lnet/luminis/quic/PnSpace;Lnet/luminis/quic/send/Sender;)V ( )* ackGeneratorLnet/luminis/quic/AckGenerator; , -. hasAckToSend()Z 012 34org/assertj/core/api/Assertions assertThat/(Z)Lorg/assertj/core/api/AbstractBooleanAssert; 678 94*org/assertj/core/api/AbstractBooleanAssert isEqualTo;net/luminis/quic/MockPacket =>? @A net/luminis/quic/EncryptionLevelInitial"Lnet/luminis/quic/EncryptionLevel; :C D'(IILnet/luminis/quic/EncryptionLevel;)V F GHpacketReceived'(Lnet/luminis/quic/packet/QuicPacket;)V J KLgenerateAckForPacket(J)Ljava/util/Optional; NOP QRjava/util/Optionalget()Ljava/lang/Object;Tnet/luminis/quic/frame/AckFrame SV WXgetLargestAcknowledged()J 0Z 3[,(J)Lorg/assertj/core/api/AbstractLongAssert; ]^_ 9['org/assertj/core/api/AbstractLongAssert Sa bcgetAckedPacketNumbers()Ljava/util/stream/Stream; 0e 3f<(Ljava/util/stream/Stream;)Lorg/assertj/core/api/ListAssert;hjava/lang/Long gj klvalueOf(J)Ljava/lang/Long; nop qrorg/assertj/core/api/ListAssert containsOnlyB([Ljava/lang/Object;)Lorg/assertj/core/api/AbstractIterableAssert; S| }(J)V  process%(Lnet/luminis/quic/frame/QuicFrame;)V0net/luminis/quic/packet/VersionNegotiationPacket #net/luminis/quic/packet/RetryPacket  net/luminis/quic/Version getDefault()Lnet/luminis/quic/Version; (Lnet/luminis/quic/Version;)V  .hasNewAckToSend S : I(IILnet/luminis/quic/EncryptionLevel;Lnet/luminis/quic/frame/QuicFrame;)V   fastForward(I)V S  getAckDelay()I 0 3/(I)Lorg/assertj/core/api/AbstractIntegerAssert;  *org/assertj/core/api/AbstractIntegerAssertisGreaterThanOrEqualTo 9 isLessThanOrEqualTo = "A  times.(I)Lorg/mockito/verification/VerificationMode;  verifyQ(Ljava/lang/Object;Lorg/mockito/verification/VerificationMode;)Ljava/lang/Object;  sendAck(Lnet/luminis/quic/PnSpace;I)V  clearInvocations([Ljava/lang/Object;)V  timeout5(J)Lorg/mockito/verification/VerificationWithTimeout;java/util/ArrayList range (II)Lnet/luminis/quic/ack/Range;  java/util/ListofH(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; (Ljava/util/Collection;)V S (Lnet/luminis/quic/ack/Range;)V  removeAcknowlegdedRanges4(Ljava/util/List;Lnet/luminis/quic/frame/AckFrame;)V 0 33(Ljava/util/List;)Lorg/assertj/core/api/ListAssert;net/luminis/quic/ack/Range n rcontainsExactly l(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; 6(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; S (Ljava/util/List;)V Z(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/List; (I)Lnet/luminis/quic/ack/Range; (II)VCodeLineNumberTableLocalVariableTablethis#Lnet/luminis/quic/AckGeneratorTest;initObjectUnderTestRuntimeVisibleAnnotations"Lorg/junit/jupiter/api/BeforeEach;newGeneratorDoesNotGenerateAckLorg/junit/jupiter/api/Test;receivingPacketLeadsToSingleAckack!Lnet/luminis/quic/frame/AckFrame;2receivingMultipleConsequetivePacketLeadsToRangeAck&afterReceivingMorePacketsOldAcksRemainack1ack2;*oneRttAcksAreGeneratedForEverySecondPacket)removeOneExactlyMatchingAcknowlegdedRange ackedRangesLjava/util/ArrayList;3Ljava/util/ArrayList;/removeMultipleExactlyMatchingAcknowlegdedRanges'doNotRemoteNotMatchingAcknowlegdedRange)removeOnePartlyMatchingAcknowlegdedRange1)removeOnePartlyMatchingAcknowlegdedRange2)removeOnePartlyMatchingAcknowlegdedRange3)removeOnePartlyMatchingAcknowlegdedRange4)removeOnePartlyMatchingAcknowlegdedRange5fromItosingle SourceFileAckGeneratorTest.java )*/*( d.*Y **Y* *$'0 12-3 .>*'+/5W 78 U*':YS<BE*'+/5W*' IMSL+UY \W+`dgY iSmW<=#?2A>BTCU2#*':YS<BE*':YS<BE*':YS<BE*'+/5W*' IMSL+UYs\W+`dgY iSY iSYsiSmW"GH(I<KKMZOhPQZ5M*':YS<BE*':YS<BE*' IMSL+`dgY iSY iSmW*':YS<BE*':YS<BE*':YS<BE*' IMSM,UYu\W,`dgY iSY iSYwiSYyiSYuiSmW. UV(X7YT[h\|]_abc 7Gs*':YS<BE*':YS<BE*' IMSL+`dgY iSY iSmW*'SY {~*'+/5Wgh(j7kTmcorps7<*':YS<BE*':YS<BE*'uIMSL+`dgY iSY iSmW*'SYu{~*':YS<BE*'+/5W*'sIMSM,`dgYsiSmW* tu(w9xVzg{{} 9{ P*'YE*'+/5W  S!*'YE*'+/5W ! B*':YS<BE*'/5W*' IMSL*'/5W#2AB2  ]+*':YS<SYE*'/5W* +  <*':YS<BE*  *'IMSL+ W.;<.  L*':YS<BE*  *'IMSL*'IMSM,W.?K L.?   ^*':YS<BE*  *':YS<BE*  *'IL+MSW& 1:ETY]^E E  f*':YSBE*Y*S*':YSBE* ¸,:Ne f[Y** *ȸ̷LSY* ȷM*'+,+Y*SY*SW!1:Z [!:1* !: Y*$*** *ȸLSY**ȸM*'+,+Y*$SY* SY*SW1LU 1PL5 1PyY*** *ȸLSY**ȸM*'+,+Y*SY* SY*SW)DMx y)PD5 )P [Y** *ȸ̷LSY* ȷM*'+,+Y*SY*SW! 1 :Z [!:1* !:!dY** *ȸ̷LSY* ȷM*'+,+Y*SY* SY*SW!1:c d!C13 !C"dY** *ȸ̷LSY* ȷM*'+,+Y*SY* SY*SW#!%1(:+c, d!C13 !C#ZY** *ȸ̷LSY* ȷM*'+,+Y*SY*SW1!30699Y: Z!90* !9$dY** *ȸ̷LSY*ȷM*'+,+Y*SY* SY*SW?!A0D9GcH d!C04 !CH YK  %& '&> YO (&)*