#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
 
int main() {
	string s1="hello";
 
	std::vector<std::pair<std::string, std::pair<int, double> > > chromosomes;
	chromosomes.emplace_back(s1, std::make_pair(12, 0.202));
	chromosomes.emplace_back("good", std::make_pair(11, 0.202));
	chromosomes.emplace_back("bye", std::make_pair(14, 0.202));
	chromosomes.emplace_back("yep", std::make_pair(11, 0.204));
 
	for (auto&x :chromosomes) 
	    cout <<x.first<<": "<<x.second.first<<" "<<x.second.second<<endl; 
    cout<<endl; 
 
	sort(chromosomes.begin(), chromosomes.end(),
	            [](auto &x, auto &y) { return x.second.first<y.second.first 
	                          || (x.second.first==y.second.first 
	                                 && x.second.second<y.second.second );});
 
	for (auto&x :chromosomes) 
	    cout <<x.first<<": "<<x.second.first<<" "<<x.second.second<<endl; 
 
	return 0;
}
				I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8YWxnb3JpdGhtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKSB7CglzdHJpbmcgczE9ImhlbGxvIjsKCQoJc3RkOjp2ZWN0b3I8c3RkOjpwYWlyPHN0ZDo6c3RyaW5nLCBzdGQ6OnBhaXI8aW50LCBkb3VibGU+ID4gPiBjaHJvbW9zb21lczsKCWNocm9tb3NvbWVzLmVtcGxhY2VfYmFjayhzMSwgc3RkOjptYWtlX3BhaXIoMTIsIDAuMjAyKSk7CgljaHJvbW9zb21lcy5lbXBsYWNlX2JhY2soImdvb2QiLCBzdGQ6Om1ha2VfcGFpcigxMSwgMC4yMDIpKTsKCWNocm9tb3NvbWVzLmVtcGxhY2VfYmFjaygiYnllIiwgc3RkOjptYWtlX3BhaXIoMTQsIDAuMjAyKSk7CgljaHJvbW9zb21lcy5lbXBsYWNlX2JhY2soInllcCIsIHN0ZDo6bWFrZV9wYWlyKDExLCAwLjIwNCkpOwoJCglmb3IgKGF1dG8meCA6Y2hyb21vc29tZXMpIAoJICAgIGNvdXQgPDx4LmZpcnN0PDwiOiAiPDx4LnNlY29uZC5maXJzdDw8IiAiPDx4LnNlY29uZC5zZWNvbmQ8PGVuZGw7IAogICAgY291dDw8ZW5kbDsgCgkKCXNvcnQoY2hyb21vc29tZXMuYmVnaW4oKSwgY2hyb21vc29tZXMuZW5kKCksCgkgICAgICAgICAgICBbXShhdXRvICZ4LCBhdXRvICZ5KSB7IHJldHVybiB4LnNlY29uZC5maXJzdDx5LnNlY29uZC5maXJzdCAKCSAgICAgICAgICAgICAgICAgICAgICAgICAgfHwgKHguc2Vjb25kLmZpcnN0PT15LnNlY29uZC5maXJzdCAKCSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYmIHguc2Vjb25kLnNlY29uZDx5LnNlY29uZC5zZWNvbmQgKTt9KTsKCglmb3IgKGF1dG8meCA6Y2hyb21vc29tZXMpIAoJICAgIGNvdXQgPDx4LmZpcnN0PDwiOiAiPDx4LnNlY29uZC5maXJzdDw8IiAiPDx4LnNlY29uZC5zZWNvbmQ8PGVuZGw7IAoJCglyZXR1cm4gMDsKfQ==