@ -307,17 +307,9 @@ public:
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                if  ( wearing . count ( ty )  = =  0 ) 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    if  ( available[ std : : make_pair ( ty ,  usize ) ]  >   0 ) 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    if  ( ordered. count ( ty )  = =   0 ) 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        available [ std : : make_pair ( ty ,  usize ) ]  - =  1 ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        DEBUG ( cycle ) . print ( " tailor: allocating a %s (size %d) to %s \n " , 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                            ENUM_KEY_STR ( item_type ,  ty ) . c_str ( ) ,  usize , 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                            DF2CONSOLE ( Translation : : TranslateName ( & u - > name ,  false ) ) . c_str ( ) ) ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        wearing . insert ( ty ) ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    } 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    else  if  ( ordered . count ( ty )  = =  0 ) 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                    { 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        DEBUG ( cycle ) . print  ( " tailor: %s (size %d) worn by %s (size %d) needs replacement, but none available \n " , 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        DEBUG ( cycle ) . print  ( " tailor: %s (size %d) worn by %s (size %d) needs replacement \n " , 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                                            DF2CONSOLE ( description ) . c_str ( ) ,  isize , 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                                            DF2CONSOLE ( Translation : : TranslateName ( & u - > name ,  false ) ) . c_str ( ) ,  usize ) ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                        needed [ std : : make_pair ( ty ,  usize ) ]  + =  1 ; 
 
			
		 
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
			
			 
			 
			
				@ -369,6 +361,9 @@ public:
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				            int  size  =  a . first . second ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				            int  count  =  a . second ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				            // decrease "need" by "available"
 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				            count  - =  available [ std : : make_pair ( ty ,  size ) ] ; 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				            if  ( count  < =  0 ) 
 
			
		 
		
	
		
			
				 
				 
			
			 
			 
			
				                continue ;