ared

PD9waHANCmluY2x1ZGUoImNvbmZpZ3gucGhwIik7DQogICAgICANCj8+

 

 

PD9waHANCgkJIGZ1bmN0aW9uIG15VHJ1bmNhdGUyKCRzdHJpbmcsICRsaW1pdCwgJGJyZWFrPSIgIiwgJHBhZD0iLi4uIikNCiAgew0KICAgIC8vIHJldHVybiB3aXRoIG5vIGNoYW5nZSBpZiBzdHJpbmcgaXMgc2hvcnRlciB0aGFuICRsaW1pdA0KICAgIGlmKHN0cmxlbigkc3RyaW5nKSA8PSAkbGltaXQpIHJldHVybiAkc3RyaW5nOw0KDQogICAgJHN0cmluZyA9IHN1YnN0cigkc3RyaW5nLCAwLCAkbGltaXQpOw0KICAgIGlmKGZhbHNlICE9PSAoJGJyZWFrcG9pbnQgPSBzdHJycG9zKCRzdHJpbmcsICRicmVhaykpKSB7DQogICAgICAkc3RyaW5nID0gc3Vic3RyKCRzdHJpbmcsIDAsICRicmVha3BvaW50KTsNCiAgICB9DQoNCiAgICByZXR1cm4gJHN0cmluZyAuICRwYWQ7DQogIH0NCm15c3FsX2Nvbm5lY3QobG9jYWxob3N0LG1lbHJvdGhzX3NhbSxzdGFuZ3MpOyANCkBteXNxbF9zZWxlY3RfZGIobWVscm90aHNfZGIpIG9yIGRpZSggIlVuYWJsZSB0byBzZWxlY3QgZGF0YWJhc2UiKTsgDQokcXVlcnk9IlNFTEVDVCAqIEZST00gY29udGVuZGVycyB3aGVyZSB0YWcgPSAnMSciOw0KJHJlc3VsdD1teXNxbF9xdWVyeSgkcXVlcnkpOyANCiRudW09bXlzcWxfbnVtcm93cygkcmVzdWx0KTsgDQppZiAoJG51bT09MCk6IA0KZW5kaWY7IA0KJG51bW9mcm93cyA9IG15c3FsX251bV9yb3dzKCRyZXN1bHQpOyANCj8+

PD9waHANCm15c3FsX2Nvbm5lY3QobG9jYWxob3N0LG1lbHJvdGhzX3NhbSxzdGFuZ3MpOyANCkBteXNxbF9zZWxlY3RfZGIobWVscm90aHNfZGIpIG9yIGRpZSggIlVuYWJsZSB0byBzZWxlY3QgZGF0YWJhc2UiKTsgDQokcXVlcnk9IlNFTEVDVCAqIEZST00gY29udGVuZGVycyB3aGVyZSB0YWcgPSAnMScgIjsNCiRyZXN1bHQ9bXlzcWxfcXVlcnkoJHF1ZXJ5KTsgDQokbnVtPW15c3FsX251bXJvd3MoJHJlc3VsdCk7IA0KaWYgKCRudW09PTApOiANCmVuZGlmOyANCiRudW1vZnJvd3MgPSBteXNxbF9udW1fcm93cygkcmVzdWx0KTsgDQpmdW5jdGlvbiBmb3JtYXRkYXRlKCRzcWxkYXRlKSANCnsgDQogICAgbGlzdCgkeXl5eSwgJG1tLCAkZGQpID0gZXhwbG9kZSgnLScsJHNxbGRhdGUpOyANCiRwaHBkYXRlID0gZGF0ZSgnRiBqJywgbWt0aW1lKDAsMCwwLCRtbSwkZGQpKTsgDQogICByZXR1cm4gJHBocGRhdGU7IA0KfSANCj8+
PD9waHANCg0KDQpmb3IoJGkgPSAwOyAkaSA8ICRudW1vZnJvd3M7ICRpKyspIHsgDQokcm93ID0gbXlzcWxfZmV0Y2hfYXJyYXkoJHJlc3VsdCk7DQokdmFyID0gJHJvd1snaWQnXTsNCiRkYXRlICA9ICRyb3dbJ3JlZ2lzdHJhdGlvbl9kYXRlJ107DQokZGF0ZSA9IGZvcm1hdGRhdGUoJGRhdGUpOw0KJHBob3RvID0gJHJvd1snbXlfZmlsZSddOw0KJGRyaXZlciA9ICRyb3dbJ2RyaXZlciddOw0KJGNhciA9ICRyb3dbJ2NhciddOw0KJGhvbWV0b3duPSAkcm93Wydob21ldG93biddOw0KJHRlYW1uYW1lPSAkcm93Wyd0ZWFtbmFtZSddOw0KJGNsYXNzID0gJHJvd1snY2xhc3MnXTsNCiRlbmdpbmVjb21ibyA9ICRyb3dbJ2VuZ2luZWNvbWJvJ107DQokYmV0bXBoID0gJHJvd1snYmV0bXBoJ107ICANCiRzcG9uc29ycyA9ICRyb3dbJ3Nwb25zb3JzJ107DQokc3BlY2lhbHRoYW5rcyA9ICRyb3dbJ3NwZWNpYWx0aGFua3MnXTsNCg0KDQoNCg0KDQoNCg0KDQokY29udGVudDIgPSAkcm93Wydjb250ZW50MiddOw0KJGNvbnRlbnQzID0gJHJvd1snY29udGVudDMnXTsNCiRjb250ZW50NCA9ICRyb3dbJ2NvbnRlbnQ0J107DQokd2ViID0gJHJvd1snd2Vic2l0ZSddOw0KJGNvbnRlbnQ1ID0gbXlUcnVuY2F0ZTIoJGNvbnRlbnQyLCA1MDAwKTsNCmVjaG8gIiA8ZGl2IGlkPSdkcml2ZXJhJz5Ecml2ZXI6PC9kaXY+IjsNCmVjaG8gIiA8ZGl2IGlkPSdkcml2ZXJiJz4kZHJpdmVyPC9kaXY+IjsNCmVjaG8gIjxicj48YnI+PGJyPiI7DQplY2hvICI8ZGl2PjxhIGhyZWY9J2h0dHA6Ly93d3cuc2RjcmF3Zm9yZC5uZXQvdXBsb2Fkcy8kcGhvdG8nIHdpZHRoPSc2MDAnIHRhcmdldD0nX3RvcCc+PGltZyBzcmM9J2h0dHA6Ly93d3cuc2RjcmF3Zm9yZC5uZXQvdXBsb2Fkcy8kcGhvdG8nIHdpZHRoPSc2MDAnPjwvYT48L2Rpdj4iOw0KDQovLyBlY2hvICIgPGRpdiBpZD0nZHJpdmVyYSc+RHJpdmVyOjwvZGl2PiI7DQovLyBlY2hvICIgPGRpdiBpZD0nZHJpdmVyYic+JGRyaXZlcjwvZGl2PiI7DQoNCmVjaG8gIiA8ZGl2IGlkPSdjYXJhJz5DYXI6PC9kaXY+IjsNCmVjaG8gIiA8ZGl2IGlkPSdjYXJiJz4kY2FyPC9kaXY+IjsNCmVjaG8gIiA8ZGl2IGlkPSdjYXJhJz5Ib21lIFRvd246PC9kaXY+IjsNCmVjaG8gIiA8ZGl2IGlkPSdjYXJiJz4kaG9tZXRvd248L2Rpdj4iOw0KZWNobyAiICI7DQplY2hvICIgPGRpdiBpZD0nY2FyYSc+VGVhbSBOYW1lOjwvZGl2PiI7DQplY2hvICIgPGRpdiBpZD0nY2FyYic+JHRlYW1uYW1lPC9kaXY+IjsNCg0KZWNobyAiIDxkaXYgaWQ9J2NhcmEnPkNsYXNzOjwvZGl2PiI7DQplY2hvICIgPGRpdiBpZD0nY2xhc3NiJz4kY2xhc3M8L2Rpdj4iOw0KZWNobyAiIDxkaXYgaWQ9J2NhcmEnPkVuZ2luZSBDb21ibzo8L2Rpdj4iOw0KZWNobyAiIDxkaXYgaWQ9J2NhcmInPiRlbmdpbmVjb21ibzwvZGl2PiI7DQoNCmVjaG8gIiA8ZGl2IGlkPSdjYXJhJz5CZXN0IEV0ICYgTVBIOjwvZGl2PiI7DQplY2hvICIgPGRpdiBpZD0nY2FyYic+JGJldG1waDwvZGl2PiI7DQoNCmVjaG8gIiA8ZGl2IGlkPSdjYXJhJz5TcG9uc29yczo8L2Rpdj4iOw0KZWNobyAiIDxkaXYgaWQ9J3Nwb25zb3JzYic+JHNwb25zb3JzPC9kaXY+IjsNCmVjaG8gIjxicj4iOw0KZWNobyAiIDxkaXYgaWQ9J3NwZWNpYWx0aGFua3NhJz5TcGVjaWFsIFRoYW5rczo8L2Rpdj4iOw0KZWNobyAiIDxkaXYgaWQ9J3NwZWNpYWx0aGFua3NiJz4kc3BlY2lhbHRoYW5rczwvZGl2PiI7DQoNCmVjaG8gIjxociBpZD0naHInPiI7DQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KfSANCg0KaWYoJG51bW9mcm93cyA+IDEwKSANCg0KDQplbmZpZiANCg0KDQoNCj8+