Map<OsmPrimitive, List<TagCorrection>> tagCorrectionsMap = new HashMap<>();
List<TagCorrection> tagCorrections = new ArrayList<>();
for (String key : way.keySet()) {
String value = way.get(key);
Tag newTag = TagSwitcher.apply(key, value);
String newKey = newTag.getKey();
String newValue = newTag.getValue();
boolean needsCorrection = !key.equals(newKey);
if (way.get(newKey) != null && way.get(newKey).equals(newValue)) {
needsCorrection = false;
}