anchor.diff:  		}
   
   		matches.sort((InventorySearchMatch a, InventorySearchMatch b) {
  -			return (a.relevance - b.relevance);
  +			return a.relevance.compareTo(b.relevance);
   		});
   
   		return (matches.length > 5 ? matches.sublist(0, 5) : matches);
  
positive.code: 		_displayResults(matches);
  	}
  
  	List<InventorySearchMatch> _findResults(String query) {
  		bool _contained(String a, String b) {
  			a = a.toLowerCase();
  			b = b.toLowerCase();
  			return (a.contains(b) || b.contains(a));
  		}
  
  		List<InventorySearchMatch> matches = new List();
  
  		for (int si = 0; si < playerInventory.slots.length; si++) {
  
negative.code: 					String iconUrl = subSlots[ssi]['item']['iconUrl'];
  					int qty = subSlots[ssi]['count'];
  					bool contains = _contained(query, itemName);
  					if (contains) {
  						int dist = levenshtein(itemName, query);
  						matches.add(new InventorySearchMatch(
  							name: itemName,
  							iconUrl: iconUrl,
  							qty: qty,
  							slot: si,
  							subSlot: ssi,
  							relevance: (contains ? 0 : dist)
  							));
  					}
  				}
  			} else {
  				bool contains = _contained(slot.item.name, query);
  