import java.util.*;
class Main {
public static void main
(String[] args
) { final Map
<String, Integer
> map
= new HashMap
<>(); map.put("first", 50);
map.put("second", 10);
map.put("third", 50);
List<String> keys = map.entrySet().stream()
List<String> keys = new ArrayList<>();
}, (current, next) -> {
int value = next.getValue();
if(value >= current.max) {
if(value > current.max) {
current.max = value;
current.keys.clear();
}
current.keys.add(next.getKey());
}
}, (a, b) -> {
if(a.max <= b.max) {
a.max = b.max;
a.keys = b.keys;
}
else if(a.max == b.max) a.keys.addAll(b.keys);
}).keys;
}
}
aW1wb3J0IGphdmEudXRpbC4qOwoKY2xhc3MgTWFpbiB7CiAgcHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgZmluYWwgTWFwPFN0cmluZywgSW50ZWdlcj4gbWFwID0gbmV3IEhhc2hNYXA8PigpOwogICAgbWFwLnB1dCgiZmlyc3QiLCA1MCk7CiAgICBtYXAucHV0KCJzZWNvbmQiLCAxMCk7CiAgICBtYXAucHV0KCJ0aGlyZCIsIDUwKTsKCiAgICBMaXN0PFN0cmluZz4ga2V5cyA9IG1hcC5lbnRyeVNldCgpLnN0cmVhbSgpCiAgICAgIC5jb2xsZWN0KCgpIC0+IG5ldyBPYmplY3QoKSB7CiAgICAgICAgICAgaW50IG1heCA9IEludGVnZXIuTUlOX1ZBTFVFOwogICAgICAgICAgIExpc3Q8U3RyaW5nPiBrZXlzID0gbmV3IEFycmF5TGlzdDw+KCk7CiAgICAgICAgfSwgKGN1cnJlbnQsIG5leHQpIC0+IHsKICAgICAgICAgIGludCB2YWx1ZSA9IG5leHQuZ2V0VmFsdWUoKTsKICAgICAgICAgIGlmKHZhbHVlID49IGN1cnJlbnQubWF4KSB7CiAgICAgICAgICAgIGlmKHZhbHVlID4gY3VycmVudC5tYXgpIHsKICAgICAgICAgICAgICBjdXJyZW50Lm1heCA9IHZhbHVlOwogICAgICAgICAgICAgIGN1cnJlbnQua2V5cy5jbGVhcigpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGN1cnJlbnQua2V5cy5hZGQobmV4dC5nZXRLZXkoKSk7CiAgICAgICAgICB9IAogICAgICAgIH0sIChhLCBiKSAtPiB7CiAgICAgICAgICBpZihhLm1heCA8PSBiLm1heCkgewogICAgICAgICAgICBhLm1heCA9IGIubWF4OwogICAgICAgICAgICBhLmtleXMgPSBiLmtleXM7CiAgICAgICAgICB9CiAgICAgICAgICBlbHNlIGlmKGEubWF4ID09IGIubWF4KSBhLmtleXMuYWRkQWxsKGIua2V5cyk7CiAgICAgICAgfSkua2V5czsKCiAgICAKICAgIFN5c3RlbS5vdXQucHJpbnRsbihrZXlzKTsKICB9Cn0=