=  java/lang/Object()Vjava/util/ArrayList   1zombie/core/skinnedmodel/population/OutfitManager m_MaleOutfitsLjava/util/ArrayList;  m_FemaleOutfitsjava/util/Hashtable   m_cachedClothingItemsLjava/util/Hashtable;  m_clothingItemListenersjava/util/TreeMap !" #$java/lang/StringCASE_INSENSITIVE_ORDERLjava/util/Comparator; & '(Ljava/util/Comparator;)V ) *+m_femaleOutfitMapLjava/util/TreeMap; - .+m_maleOutfitMap 0 12instance3Lzombie/core/skinnedmodel/population/OutfitManager;4java/lang/IllegalStateException6"OutfitManager Already Initialized. 38 9(Ljava/lang/String;)V;game=media/clothing/clothing.xml ? @AtryParseY(Ljava/lang/String;Ljava/lang/String;)Lzombie/core/skinnedmodel/population/OutfitManager; C Dloaded F Gunload IJK 1Lzombie/ZomboidFileSystemLzombie/ZomboidFileSystem; IN OP getModIDs()Ljava/util/ArrayList; R STiterator()Ljava/util/Iterator; VWX YZjava/util/IteratorhasNext()Z V\ ]^next()Ljava/lang/Object; `ab cd zombie/gameStates/ChooseGameInfogetAvailableModDetails:(Ljava/lang/String;)Lzombie/gameStates/ChooseGameInfo$Mod;f*zombie/core/skinnedmodel/population/Outfit eh ijm_NameLjava/lang/String; l mnFindMaleOutfit@(Ljava/lang/String;)Lzombie/core/skinnedmodel/population/Outfit; p qradd(Ljava/lang/Object;)Z tuv wxzombie/debug/DebugTypeClothingLzombie/debug/DebugType; z{| }~zombie/debug/DebugLog isEnabled(Lzombie/debug/DebugType;)Z z wLzombie/debug/DebugLogStream;#mod "%s" overrides male outfit "%s"  zombie/debug/DebugLogStreamprintln9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V  indexOf(Ljava/lang/Object;)I  set'(ILjava/lang/Object;)Ljava/lang/Object;  put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; nFindFemaleOutfit%mod "%s" overrides female outfit "%s"  1zombie/DebugFileWatcherLzombie/DebugFileWatcher;zombie/PredicatedFileWatcher I  getString&(Ljava/lang/String;)Ljava/lang/String; call?()Lzombie/PredicatedFileWatcher$IPredicatedFileWatcherCallback; R(Ljava/lang/String;Lzombie/PredicatedFileWatcher$IPredicatedFileWatcherCallback;)V q!(Lzombie/PredicatedFileWatcher;)V loadAllClothingItems e  m_ImmutableZ e m_items9zombie/core/skinnedmodel/population/ClothingItemReference  java/util/Collectionsshuffle(Ljava/util/List;)VVOutfitManager.onClothingXmlFileChanged> Detected change in media/clothing/clothing.xml 9 ReloadReloading OutfitManager  onReloaded6(Lzombie/core/skinnedmodel/population/OutfitManager;)V  zombie/util/list/PZArrayUtilcopy-(Ljava/util/ArrayList;Ljava/util/ArrayList;)V  values()Ljava/util/Collection; Rjava/util/CollectionCzombie/core/skinnedmodel/population/OutfitManager$ClothingItemEntry  m_fileWatcherLzombie/PredicatedFileWatcher; remove  clear   rcontains  r9zombie/core/skinnedmodel/population/IClothingItemListener 9clothingItemChanged  pickRandom$(Ljava/util/List;)Ljava/lang/Object;  zombie/core/RandNext(I)I makeConcatWithConstants(I)Ljava/lang/String;  NextBool(I)Z Mannequin1  Mannequin2 Classy Tourist MallSecurity  GetSpecificOutfitA(ZLjava/lang/String;)Lzombie/core/skinnedmodel/population/Outfit;  Aparse zombie/util/PZXmlParserException  printStackTrace  requals I !"baseLjava/io/File; $%& '( java/io/FilegetAbsolutePath()Ljava/lang/String; $* +j separator $- ./ separatorCharC I1 23processFilePath'(Ljava/lang/String;C)Ljava/lang/String;5 6J(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; I8 9 getModDir $8 $< =Zexists ?@A Bzombie/util/PZXmlUtil7(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Object;D EFaccept1(Ljava/lang/String;)Ljava/util/function/Consumer; H IJforEach0(Ljava/util/List;Ljava/util/function/Consumer;)VL EMR(Lzombie/core/skinnedmodel/population/OutfitManager;)Ljava/util/function/Consumer;L P QRwriteH(Lzombie/core/skinnedmodel/population/OutfitManager;Ljava/lang/String;)VTjavax/xml/bind/JAXBExceptionVjava/io/IOException XYjava/lang/Exception[java/io/FileOutputStream Z8^java/lang/Class `ab cdjavax/xml/bind/JAXBContext newInstance0([Ljava/lang/Class;)Ljavax/xml/bind/JAXBContext; `f ghcreateMarshaller()Ljavax/xml/bind/Marshaller;jjavax/xml/bind/Marshallerljaxb.formatted.output nop qrjava/lang/BooleanTRUELjava/lang/Boolean; it uv setProperty'(Ljava/lang/String;Ljava/lang/Object;)V ix yzmarshal+(Ljava/lang/Object;Ljava/io/OutputStream;)V Z| }closejava/lang/Throwable ~  addSuppressed(Ljava/lang/Throwable;)V  get&(Ljava/lang/Object;)Ljava/lang/Object;  size()I  (I)Ljava/lang/Object;  equalsIgnoreCase(Ljava/lang/String;)Z I getFilePathFromGuid    j m_filePath  jm_guid  m_item2Lzombie/core/skinnedmodel/population/ClothingItem;   j0zombie/core/skinnedmodel/population/ClothingItemm_GUID I resolveFileOrGUID  1Lzombie/core/skinnedmodel/population/ClothingItemAssetManager;zombie/asset/AssetPath 8  load.(Lzombie/asset/AssetPath;)Lzombie/asset/Asset;  extractClothingItemName h  java/lang/SystemerrLjava/io/PrintStream;  java/io/PrintStream  "zombie/core/logger/ExceptionLogger logException (Lzombie/core/skinnedmodel/population/OutfitManager;Lzombie/core/skinnedmodel/population/OutfitManager$ClothingItemEntry;)Lzombie/PredicatedFileWatcher$IPredicatedFileWatcherCallback;media/clothing/clothingItems/  zombie/util/StringUtils trimPrefix8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;.xml   trimSuffix  reload(Lzombie/asset/Asset;)V  ZisReady  9invokeClothingItemChangedEvent  1zombie/scripting/ScriptManager Lzombie/scripting/ScriptManager;  P getAllItemszombie/scripting/objects/Item  replacePrimaryHand*Lzombie/scripting/objects/ItemReplacement;  j(zombie/scripting/objects/ItemReplacementclothingItemName I getGuidFromFilePath  getClothingItemF(Ljava/lang/String;)Lzombie/core/skinnedmodel/population/ClothingItem;   clothingItem  replaceSecondHand  (   isNullOrWhitespace   setClothingItemAsset5(Lzombie/core/skinnedmodel/population/ClothingItem;)V  ZisEmpty   debugOutfits(Ljava/util/ArrayList;)V   debugOutfit/(Lzombie/core/skinnedmodel/population/Outfit;)V  jitemGUID  getItemTypeForClothingItem ! "#getItem3(Ljava/lang/String;)Lzombie/scripting/objects/Item; % &'getType&()Lzombie/scripting/objects/Item$Type; )*+ ,-"zombie/scripting/objects/Item$Type Container$Lzombie/scripting/objects/Item$Type; / 0(getBodyLocation 2 3j CanBeEquipped5outfit "%s" has multiple bags 7 89warn((Ljava/lang/String;[Ljava/lang/Object;)V ; <=onClothingItemFileChangedH(Lzombie/core/skinnedmodel/population/OutfitManager$ClothingItemEntry;)V e? @9setModID B ConClothingXmlFileChanged SignatureCLjava/util/ArrayList;RuntimeVisibleAnnotations(Ljavax/xml/bind/annotation/XmlTransient;nLjava/util/Hashtable;RLjava/util/ArrayList;SLjava/util/TreeMap;CodeLineNumberTableinit StackMapTableResetQ$zombie/gameStates/ChooseGameInfo$ModaddClothingItemListener>(Lzombie/core/skinnedmodel/population/IClothingItemListener;)VremoveClothingItemListenerGetRandomOutfit/(Z)Lzombie/core/skinnedmodel/population/Outfit;GetRandomNonProfessionalOutfit ExceptionstryWrite FindOutfitU(Ljava/util/ArrayList;Ljava/lang/String;)Lzombie/core/skinnedmodel/population/Outfit;(Ljava/util/ArrayList;Ljava/lang/String;)Lzombie/core/skinnedmodel/population/Outfit;onClothingItemStateChangedisLoadingClothingItemsF(Ljava/util/ArrayList;)Vlambda$getClothingItem$5Z(Lzombie/core/skinnedmodel/population/OutfitManager$ClothingItemEntry;Ljava/lang/String;)Vlambda$parse$4b(Lzombie/core/skinnedmodel/population/OutfitManager;Lzombie/core/skinnedmodel/population/Outfit;)Vlambda$parse$3lambda$parse$1A(Ljava/lang/String;Lzombie/core/skinnedmodel/population/Outfit;)Vlambda$loaded$0 SourceFileOutfitManager.java*Ljavax/xml/bind/annotation/XmlRootElement; NestMembersBootstrapMethodsn opq rs"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;9v w g9y z{| }$java/lang/invoke/StringConcatFactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite; Generic0(Ljava/lang/Object;)V  ef  dc  bcFailed to load ClothingItem:   `a"media/clothing/clothingItems/.xml InnerClassesMod;zombie/PredicatedFileWatcher$IPredicatedFileWatcherCallbackIPredicatedFileWatcherCallbackClothingItemEntryType%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup! DEDE 12FGDHFGDIFG*+DJFG.+DJFG#K}M**Y *Y *Y*Y *Y%(*Y%,L!$%3%70:>= MKb(/ 3Y57:<>///BLEGJL N!Q'RN OKC//E/LVXZ [\NDK'HMQL+U+[ M,_N-,<>: Q:Uh[e:*gk:* oW-sy,g* * W*,gWQ:Uh[e:*g:*oW-sy,g**W*(gW߲YH<** QL+U:+[eM,,QN-U-[:*QL+U:+[eM,,QN-U-[:* *L+`b"c&e)g1h6j9lYndoiqvuvwyz{}~(+.:EHLglNv V P V2ee V2ee V%VeVVeV CK, öŸDZL Kw4ʶŲ/K:<>// /B*/ /*̱L" ",3N " K8*++E*L GKy<*ֹL+U+[M,߶**L *-4;N  VRSKQ+*+*+oWLN TSK& *+WL  9K[&*QM,U,[N-+L"%N VUVKR*eM* eM,LN  eWVK`Mn9>-")MM M4>+ ' M MM*,LN 8<? C F JMRlpswz~ N 8 KH *,N *,kN-L&( ,/N  e @AKE *+M,L79; =NF AK:*H#)+,04LH*7M,)+,04L$Y+:; +> M,7, *CG,*CG, ,KG,,NG,L6 C E%I-J>MLONRXS\UiVvXY[N %A X YRKS*+OM,WSULbgd f hNHX QRKLZY+\M]Y S_N-e:kms*,w,{N,{ :-- 29~:>A~L"l nop)q2r9lKsN/9  Z~  Z~~XUSmnK$ *,+eLwnK$ *(+eL}Z[Kz3N6+&+e:g, N -L"%(+1N e%D\KݲH+M,*+N-$YN-,-+-*+-W--+-H,:-Y-*,-+:,-6-::H:-Y*߲-߶-SXLv &+05?FNS\r~N 0uX9K8+M,θM,ָM,L <=K' +۱L  ]K9+ߙ *+LNK6L=++N-)H-:-*-)H-:-*-*H-:*:- ^LR!5:GNbgt~N =,  ^ZKk1*ֹL+U+[M,L *,/N  VK1**** LKV!+QM,U,[eN*-L ! "N VD_KP M+QN-U-[:*:Բ: :$(A. 1.:, ,4Y+gS6MaLJ&'))*6,9.F/K1N3X4]6`8k:;=?ABNA  V. D "  e V`aK*+:L bcK&*(+g+WLY dcK&*,+g+WLX efK+*>LU g9KALhiFjklL mtutx~xmmmxmttx*P` )@