AN  java/lang/Object()Vjava/io/ByteArrayOutputStream   re/forestier/edu/UnitTests outContentLjava/io/ByteArrayOutputStream;   errContent  java/lang/SystemoutLjava/io/PrintStream;   originalOut  err ! originalErr#java/io/PrintStream "% &(Ljava/io/OutputStream;)V ( )*setOut(Ljava/io/PrintStream;)V , -*setErr/re/forestier/edu/rpg/Player1Florian3Grognak le barbare5 ADVENTURER7java/util/ArrayList 6 .: ;O(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/util/ArrayList;)V="java/lang/IllegalArgumentException? @AexecuteJ(Lre/forestier/edu/rpg/Player;)Lorg/junit/jupiter/api/function/Executable; CDE FG org/junit/jupiter/api/Assertions assertThrowsS(Ljava/lang/Class;Lorg/junit/jupiter/api/function/Executable;)Ljava/lang/Throwable; .I JK removeMoney(I)V .M NOgetMoney()Ljava/lang/Integer; QRS TUjava/lang/IntegervalueOf(I)Ljava/lang/Integer; WXY Z[org/hamcrest/Matchersis*(Ljava/lang/Object;)Lorg/hamcrest/Matcher; ]^_ `aorg/hamcrest/MatcherAssert assertThat+(Ljava/lang/Object;Lorg/hamcrest/Matcher;)V Wc d[not .f gKaddMoneyi!re/forestier/edu/rpg/UpdatePlayer h Cl mn assertNotNull(Ljava/lang/Object;)V .p qKaddXp .s tugetXp()I .w xugetLevel .z {| inventoryLjava/util/ArrayList; 6~ usize .  abilitiesLjava/util/HashMap;ATK  java/util/HashMapget&(Ljava/lang/Object;)Ljava/lang/Object; Q uintValue C assertNotEquals(II)V C (Ljava/lang/Integer;I)V . P(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava/util/ArrayList;I)V . Khurt h  majFinDeTour (Lre/forestier/edu/rpg/Player;)VLe joueur est KO !  toString()Ljava/lang/String;  java/lang/Stringtrim C  assertEquals'(Ljava/lang/Object;Ljava/lang/Object;)V . Kheal . ugetCurrentHealthPoints . ugetMaxHealthPointsDWARF Holy Elixir 6 add(Ljava/lang/Object;)ZARCHER Magic Bow C re/forestier/edu/Main re/forestier/edu/lib/Natural  T!(I)Lre/forestier/edu/lib/Natural; utoInt @-()Lorg/junit/jupiter/api/function/Executable; O toInteger Q equals C  assertTrue(Z)V T3(Ljava/lang/Integer;)Lre/forestier/edu/lib/Natural; !(Lre/forestier/edu/lib/Natural;)V  substract 0 C  assertFalse  compareTo!(Lre/forestier/edu/lib/Natural;)ICodeLineNumberTableLocalVariableTablethisLre/forestier/edu/UnitTests; setUpStreamsRuntimeVisibleAnnotations"Lorg/junit/jupiter/api/BeforeEach;testRemoveMoneypLre/forestier/edu/rpg/Player;Lorg/junit/jupiter/api/Test;#Lorg/junit/jupiter/api/DisplayName;value testAddMoneytestUpdatePlayer#Lre/forestier/edu/rpg/UpdatePlayer;Construcor UpdatePlayertestRetrieveLevel tailleinvIatkex & lvltestMajFinTourinvLocalVariableTypeTable)Ljava/util/ArrayList;majDeFinDeTourtestMainmLre/forestier/edu/Main;Main testNaturalnLre/forestier/edu/lib/Natural; Natural TestsrestoreStreams!Lorg/junit/jupiter/api/AfterEach;lambda$testNatural$6 Exceptions!java/lang/Throwablelambda$testNatural$5lambda$testNatural$4lambda$testNatural$3lambda$testNatural$2lambda$testNatural$1lambda$testRemoveMoney$0 SourceFileUnitTests.javaBootstrapMethods- . '0 1 &3 4 %6 7 $9 : #< = "? @ B CDE FG"java/lang/invoke/LambdaMetafactory metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite; InnerClassesJ%java/lang/invoke/MethodHandles$LookupLjava/lang/invoke/MethodHandlesLookup! !c)**Y *Y **! )O"Y* $'"Y*$+ !" ].Y024d6Y89L<+>BW+2H+L2PV\+LPb\+2H+LPV\"')#*)+8,H-N.\/]FsJn..Y024d6Y89L+2e+LPV\456-7.sgI hYjL+k<= > s  H.Y024d6Y89L+o+rPPV\+vPPV\+o+vPPV\+o+vPPV\+o+vPPV\+do+vPPV\.Y024d6Y89L+y}>+ o+Q6+y}+vPPV\+o+vPPV\+o+vPPV\+6o+vPPV\+o+QnCEF-G>HDIUJ[KlLrMNOQRSTUVWXY Z[ \1]6^G_*H1  x  sN2.Y024d6Y8 L+ +* +++PPV\+do++++P PV\+ ++P+PV\.Y02d6Y8 L+ ++PPV\.Y02d6Y8 L+++PPV\6Y8M,W.Y02d, L+ ++PPV\.Y02d6Y8 L+ ++PPV\.Y024d6Y8 L+ +o++PPV\,¶W.Y02d, L+ ++PPV\.Y02d,(L+++PPV\.Y024d6Y8(L+++ı4def#g2h7i;jLkRlVm[n_oqpwq{rtuvwyz{|~"3LRVg$(1 24| 4sI YL+k  sYL+k̸k+L+<BWP+նظPL+<BW<BW+̶+̸<BW+̶+̸<BW++̶+++̶+P++̶+̶+̶+̶<BWz  (3AIQ\gowsA*'*+  " W  "$ ̶  #!   $W  %" PW  &W  '2*ȶH)  ()*HA+,+A+/+A+2+A+5+A+8+A+;+A+>+H IKM