| 
						
						
							
								
							
						
						
					 | 
					@ -32,6 +32,7 @@ using klotski::cases::GroupCases; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					using klotski::cases::GroupUnion; | 
					 | 
					 | 
					using klotski::cases::GroupUnion; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					using klotski::cases::TYPE_ID_LIMIT; | 
					 | 
					 | 
					using klotski::cases::TYPE_ID_LIMIT; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					using klotski::cases::ALL_CASES_NUM_; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					using klotski::codec::SHORT_CODE_LIMIT; | 
					 | 
					 | 
					using klotski::codec::SHORT_CODE_LIMIT; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					int main() { | 
					 | 
					 | 
					int main() { | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					@ -42,6 +43,23 @@ int main() { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					    const auto start = std::chrono::system_clock::now(); | 
					 | 
					 | 
					    const auto start = std::chrono::system_clock::now(); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    ShortCode::speed_up(true); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::unordered_set<RawCode> data_r; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::unordered_set<ShortCode> data_s; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::unordered_set<CommonCode> data_c; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    data_r.reserve(ALL_CASES_NUM_); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    data_s.reserve(ALL_CASES_NUM_); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    data_c.reserve(ALL_CASES_NUM_); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    for (auto code : AllCases::instance().fetch().codes()) { | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        data_c.emplace(code); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        data_r.emplace(code.to_raw_code()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					        data_s.emplace(code.to_short_code()); | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    } | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::cout << data_r.size() << std::endl; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::cout << data_s.size() << std::endl; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					    std::cout << data_c.size() << std::endl; | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					//    const auto common_code = CommonCode::unsafe_create(0x1A9BF0C00);
 | 
					 | 
					 | 
					//    const auto common_code = CommonCode::unsafe_create(0x1A9BF0C00);
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					//    const auto group = Group::from_common_code(common_code);
 | 
					 | 
					 | 
					//    const auto group = Group::from_common_code(common_code);
 | 
				
			
			
		
	
		
		
			
				
					 | 
					 | 
					
 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					
  |