memory errors ....
"arun kv" <[email protected]> 30 Apr 2007 10:57:36 -0000
| Newsgroups | gmane.comp.parsers.bison.general,gmane.comp.lex.flex.general |
|---|---|
| Message-ID | <[email protected]> |
This is a multipart mime message --Next_1177930656---0-203.199.83.27-24415 Content-type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline =A0=0AHi All, =0A=0AI have implemented a parser using lex and yacc , my l= ex and yacc files are named parser.y and scanner.l =0A(these files are comp= iled with flex++ and bison++ to make my parser compatible with C++) =0AMy = parser is working fine but .... =0AThe issue is when I run my parser with p= urify (a memory detection tool ) .It gives out memory errors in the flex an= d bison generated source codes (parser.cpp , parser.h and scanner.h )=0A= =0AThe purify errors for the parser are : =0AIPR :Invalid pointer read , IP= W :Invalid pointer write , BSR: Beyond stack read error =0AShown by these v= ariables in parser.cpp =0Ayystate=0Ayyn =0Ayyssp =0Ayyvsp =0Ayyerrstat= us =0Ayycharl=0A=0AFor detailed purify log please see the attached file.= =0AWhat I want to know is that, Is there any way in which I can control th= ese variables form my lex and yacc files. =0AOr how else I can fix these me= mory errors shown by purify. =0ABest Regards =0AArun =0A=0A --Next_1177930656---0-203.199.83.27-24415 Content-type: application/octet-stream Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="parser.log" KioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18y LjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0 NDk5KSAgKioqKg0KSVBXOiBJbnZhbGlkIHBvaW50ZXIgd3JpdGU6DQogICogVGhpcyBpcyBv Y2N1cnJpbmcgd2hpbGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBb Ymlzb24uY2M6NTM2XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6 YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRv cjxjaGFyPiA+KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6 OkNJYVNvY2tldFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFy LHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNv Y2tldFRocmVhZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVu KCkgW0NJYVNvY2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVw KHZvaWQqKSBbVGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4x XQ0KICAqIFdyaXRpbmcgNCBieXRlcyB0byAweGY4OTdiYTFjIG9uIHRoZSBzdGFjayBvZiB0 aHJlYWQgNi4NCiAgKiBBZGRyZXNzIDB4Zjg5N2JhMWMgaXMgbG9jYWwgdmFyaWFibGUgInl5 Y2hhcjEiIGluIGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVy aWZ5IGluc3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdf Tk90c3AvU3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioq Kg0KSVBXOiBJbnZhbGlkIHBvaW50ZXIgd3JpdGU6DQogICogVGhpcyBpcyBvY2N1cnJpbmcg d2hpbGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6 NTc3XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3Ry aW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+ KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tl dFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hh cl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVh ZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNv Y2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBb VGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdy aXRpbmcgNCBieXRlcyB0byAweGY4OTdiYTMwIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4N CiAgKiBBZGRyZXNzIDB4Zjg5N2JhMzAgaXMgbG9jYWwgdmFyaWFibGUgInl5c3RhdGUiIGlu IGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3Ry dW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3Vu T1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBXOiBJ bnZhbGlkIHBvaW50ZXIgd3JpdGU6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4g dGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6NTc4XQ0KCWJv b2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIs c3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fj b1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6 aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8 Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0 XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVh ZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2Jq LmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdyaXRpbmcgNCBi eXRlcyB0byAweGY4OTdiYTIwIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRy ZXNzIDB4Zjg5N2JhMjAgaXMgbG9jYWwgdmFyaWFibGUgInl5ZXJyc3RhdHVzIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52YWxp ZCBwb2ludGVyIHdyaXRlOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRocmVh ZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjU4N10NCglib29sIENN ZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6 Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29QYXJz ZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OmhhbmRs ZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0NCgl2 b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5jcHA6 MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5nIDQgYnl0ZXMg dG8gMHhmODk3YmEyOCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVzcyAw eGY4OTdiYTI4IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXNzcCIgaW4gZnVuY3Rpb24gaW50IFBh cnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBvcnQv aG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJjLTMy L1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFsaWQgcG9pbnRlciB3 cml0ZToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50 IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo1ODhdDQoJYm9vbCBDTWVnYWNvUGFyc2Vy V3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRz PGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVnYWNvUGFyc2VyV3JhcHBlci5j cHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0 ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9j YXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6 Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNDddDQoJdm9p ZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bf c3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogV3JpdGluZyA0IGJ5dGVzIHRvIDB4Zjg5N2Jh MjQgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFkZHJlc3MgMHhmODk3YmEyNCBp cyBsb2NhbCB2YXJpYWJsZSAieXl2c3AiIGluIGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFy c2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1 aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3Bj cyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlkIHBvaW50ZXIgcmVhZCAoNDIgdGlt ZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRocmVhZCAxNzoNCglpbnQg UGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjU5OF0NCglib29sIENNZWdhY29QYXJzZXJX cmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8 Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29QYXJzZXJXcmFwcGVyLmNw cDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3Rk OjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2Nh dG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpD SWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lk KlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5jcHA6MjhdDQoJX2x3cF9z dGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5nIDQgYnl0ZXMgZnJvbSAweGY4OTdi YTI4IG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRyZXNzIDB4Zjg5N2JhMjgg aXMgbG9jYWwgdmFyaWFibGUgInl5c3NwIiBpbiBmdW5jdGlvbiBpbnQgUGFyc2VyOjp5eXBh cnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9i dWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9w Y3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52YWxpZCBwb2ludGVyIHdyaXRlICg0MiB0 aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhyZWFkIDE3Og0KCWlu dCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6NTk4XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNl cldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0 czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIu Y3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFuZGxlTWVzc2FnZShz dGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxv Y2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6 OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZv aWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNwcDoyOF0NCglfbHdw X3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdyaXRpbmcgNCBieXRlcyB0byAweGY4OTdi YTI4IG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRyZXNzIDB4Zjg5N2JhMjgg aXMgbG9jYWwgdmFyaWFibGUgInl5c3NwIiBpbiBmdW5jdGlvbiBpbnQgUGFyc2VyOjp5eXBh cnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9i dWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9w Y3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxpZCBwb2ludGVyIHJlYWQgKDQyIHRp bWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50 IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo1OThdDQoJYm9vbCBDTWVnYWNvUGFyc2Vy V3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRz PGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVnYWNvUGFyc2VyV3JhcHBlci5j cHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0 ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9j YXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6 Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNDddDQoJdm9p ZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bf c3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGluZyA0IGJ5dGVzIGZyb20gMHhmODk3 YmEzMCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVzcyAweGY4OTdiYTMw IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBmdW5jdGlvbiBpbnQgUGFyc2VyOjp5 eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5 ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jp bi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCkJTVzogQmV5b25kIHN0YWNrIHdyaXRlIGVycm9y ICg1NTUgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRocmVhZCAx NzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjU5OF0NCglib29sIENNZWdh Y29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hh cl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29QYXJzZXJX cmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OmhhbmRsZU1l c3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0 ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0NCgl2b2lk IHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE0 N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5jcHA6Mjhd DQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5nIDIgYnl0ZXMgdG8g MHhmODk3OTMwYy4NCiAgKiBTdGFjayBwb2ludGVyIDB4Zjg5N2I5MDANCiAgKiBBZGRyZXNz IDB4Zjg5NzkzMGMgaXMgbG9jYWwgdmFyaWFibGUgInl5c3NhIiBpbiBmdW5jdGlvbiBpbnQg UGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9y dC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMt MzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxpZCBwb2ludGVy IHJlYWQgKDQyIHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBpbiB0aHJl YWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo2ODddDQoJYm9vbCBD TWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6 OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVnYWNvUGFy c2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpoYW5k bGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFy PixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNjRdDQoJ dm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhyZWFkLmNw cDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRPYmouY3Bw OjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGluZyA0IGJ5dGVz IGZyb20gMHhmODk3YmEzMCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVz cyAweGY4OTdiYTMwIGlzIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBmdW5jdGlvbiBp bnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4 cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3Bh cmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52YWxpZCBwb2lu dGVyIHdyaXRlICg0MiB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4g dGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6Njg3XQ0KCWJv b2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIs c3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fj b1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6 aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8 Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0 XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVh ZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2Jq LmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdyaXRpbmcgNCBi eXRlcyB0byAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRy ZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVuY3Rpb24gaW50 IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBv cnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJj LTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFsaWQgcG9pbnRl ciByZWFkICg0MiB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhy ZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6Njg4XQ0KCWJvb2wg Q01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1Bh cnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFu ZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hh cj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0K CXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5j cHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNw cDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRpbmcgNCBieXRl cyBmcm9tIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFkZHJl c3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXluIiBpbiBmdW5jdGlvbiBpbnQg UGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9y dC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMt MzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52YWxpZCBwb2ludGVy IHdyaXRlICgxMyB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhy ZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6NzE5XQ0KCWJvb2wg Q01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1Bh cnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFu ZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hh cj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0K CXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5j cHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNw cDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdyaXRpbmcgNCBieXRl cyB0byAweGY4OTdiYTFjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRyZXNz IDB4Zjg5N2JhMWMgaXMgbG9jYWwgdmFyaWFibGUgInl5Y2hhcjEiIGluIGZ1bmN0aW9uIGlu dCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhw b3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFy Yy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlkIHBvaW50 ZXIgcmVhZCAoMTYgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRo cmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjczNV0NCglib29s IENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29Q YXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6Omhh bmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNo YXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0N Cgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5j cHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5nIDQgYnl0 ZXMgZnJvbSAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRy ZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVuY3Rpb24gaW50 IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBv cnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJj LTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFsaWQgcG9pbnRl ciByZWFkICgxNiB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhy ZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6NzM1XQ0KCWJvb2wg Q01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1Bh cnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFu ZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hh cj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0K CXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5j cHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNw cDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRpbmcgNCBieXRl cyBmcm9tIDB4Zjg5N2JhMWMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFkZHJl c3MgMHhmODk3YmExYyBpcyBsb2NhbCB2YXJpYWJsZSAieXljaGFyMSIgaW4gZnVuY3Rpb24g aW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9l eHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3Nw YXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFsaWQgcG9p bnRlciB3cml0ZSAoMTYgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGlu IHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjczNV0NCgli b29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFy LHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdh Y29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6 OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRz PGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2 NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJl YWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9i ai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5nIDQg Ynl0ZXMgdG8gMHhmODk3YmEyYyBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRk cmVzcyAweGY4OTdiYTJjIGlzIGxvY2FsIHZhcmlhYmxlICJ5eW4iIGluIGZ1bmN0aW9uIGlu dCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhw b3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFy Yy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlkIHBvaW50 ZXIgcmVhZCAoMTYgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRo cmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjczNl0NCglib29s IENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29Q YXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6Omhh bmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNo YXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0N Cgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5j cHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5nIDQgYnl0 ZXMgZnJvbSAweGY4OTdiYTFjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRy ZXNzIDB4Zjg5N2JhMWMgaXMgbG9jYWwgdmFyaWFibGUgInl5Y2hhcjEiIGluIGZ1bmN0aW9u IGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAv ZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9z cGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBXOiBJbnZhbGlkIHBv aW50ZXIgd3JpdGUgKDE1IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBp biB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo3MzldDQoJ Ym9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hh cixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVn YWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFk OjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0 czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDox NjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhy ZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRP YmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogV3JpdGluZyA0 IGJ5dGVzIHRvIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFk ZHJlc3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXluIiBpbiBmdW5jdGlvbiBp bnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4 cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3Bh cmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxpZCBwb2lu dGVyIHJlYWQgKDE1IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBpbiB0 aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo3NDhdDQoJYm9v bCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixz dGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVnYWNv UGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpo YW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxj aGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNjRd DQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhyZWFk LmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRPYmou Y3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGluZyA0IGJ5 dGVzIGZyb20gMHhmODk3YmEyYyBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRk cmVzcyAweGY4OTdiYTJjIGlzIGxvY2FsIHZhcmlhYmxlICJ5eW4iIGluIGZ1bmN0aW9uIGlu dCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhw b3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFy Yy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlkIHBvaW50 ZXIgcmVhZCAoMTUgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRo cmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc1NV0NCglib29s IENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29Q YXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6Omhh bmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNo YXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0N Cgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5j cHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5nIDQgYnl0 ZXMgZnJvbSAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAgKiBBZGRy ZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVuY3Rpb24gaW50 IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBv cnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJj LTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFsaWQgcG9pbnRl ciByZWFkICgxNSB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhy ZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6NzU4XQ0KCWJvb2wg Q01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1Bh cnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFu ZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hh cj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0K CXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5j cHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNw cDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRpbmcgNCBieXRl cyBmcm9tIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFkZHJl c3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXluIiBpbiBmdW5jdGlvbiBpbnQg UGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50ZWQgL2V4cG9y dC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUuMTAvc3BhcmMt MzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxpZCBwb2ludGVy IHJlYWQgKDE0IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGlsZSBpbiB0aHJl YWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo3NzJdDQoJYm9vbCBD TWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6 OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDTWVnYWNvUGFy c2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpoYW5k bGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFy PixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNjRdDQoJ dm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0VGhyZWFkLmNw cDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJlYWRPYmouY3Bw OjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGluZyA0IGJ5dGVz IGZyb20gMHhmODk3YmEyNCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVz cyAweGY4OTdiYTI0IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXZzcCIgaW4gZnVuY3Rpb24gaW50 IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBv cnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJj LTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFsaWQgcG9pbnRl ciB3cml0ZSAoMTQgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRo cmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc3Ml0NCglib29s IENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29Q YXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6Omhh bmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNo YXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0N Cgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5j cHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5nIDQgYnl0 ZXMgdG8gMHhmODk3YmEyNCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVz cyAweGY4OTdiYTI0IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXZzcCIgaW4gZnVuY3Rpb24gaW50 IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVkIC9leHBv cnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEwL3NwYXJj LTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFsaWQgcG9pbnRl ciByZWFkICgxNCB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hpbGUgaW4gdGhy ZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6Nzc4XQ0KCWJvb2wg Q01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ01lZ2Fjb1Bh cnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6aGFu ZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hh cj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5jcHA6MTY0XQ0K CXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tldFRocmVhZC5j cHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhyZWFkT2JqLmNw cDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRpbmcgNCBieXRl cyBmcm9tIDB4Zjg5N2JhMjAgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0KICAqIEFkZHJl c3MgMHhmODk3YmEyMCBpcyBsb2NhbCB2YXJpYWJsZSAieXllcnJzdGF0dXMiIGluIGZ1bmN0 aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRl ZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4x MC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlk IHBvaW50ZXIgcmVhZCAoMTQgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxl IGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc4MF0N Cglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxj aGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NN ZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJl YWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJh aXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRU aHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVh ZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5n IDQgYnl0ZXMgZnJvbSAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAg KiBBZGRyZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVuY3Rp b24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVk IC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEw L3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFsaWQg cG9pbnRlciB3cml0ZSAoMTQgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxl IGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc4MF0N Cglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxj aGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NN ZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJl YWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJh aXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRU aHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVh ZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5n IDQgYnl0ZXMgdG8gMHhmODk3YmEzMCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICog QWRkcmVzcyAweGY4OTdiYTMwIGlzIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxp ZCBwb2ludGVyIHJlYWQgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGls ZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo3ODZd DQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8 Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtD TWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhy ZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3Ry YWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNw cDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0 VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJl YWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGlu ZyA0IGJ5dGVzIGZyb20gMHhmODk3YmEzMCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQog ICogQWRkcmVzcyAweGY4OTdiYTMwIGlzIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBm dW5jdGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVt ZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9T LzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52 YWxpZCBwb2ludGVyIHdyaXRlICgyNyB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcg d2hpbGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6 Nzg2XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3Ry aW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+ KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tl dFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hh cl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVh ZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNv Y2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBb VGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFdy aXRpbmcgNCBieXRlcyB0byAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4N CiAgKiBBZGRyZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVu Y3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVu dGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81 LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFs aWQgcG9pbnRlciByZWFkICgyNyB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hp bGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6Nzg3 XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5n PGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBb Q01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRo cmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90 cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5j cHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhy ZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRp bmcgNCBieXRlcyBmcm9tIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0K ICAqIEFkZHJlc3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXluIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxp ZCBwb2ludGVyIHJlYWQgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGls ZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo3OTJd DQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8 Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtD TWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhy ZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3Ry YWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNw cDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0 VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJl YWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGlu ZyA0IGJ5dGVzIGZyb20gMHhmODk3YmEyYyBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQog ICogQWRkcmVzcyAweGY4OTdiYTJjIGlzIGxvY2FsIHZhcmlhYmxlICJ5eW4iIGluIGZ1bmN0 aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRl ZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4x MC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlk IHBvaW50ZXIgcmVhZCAoMjYgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxl IGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc5NF0N Cglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxj aGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NN ZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJl YWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJh aXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRU aHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVh ZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5n IDQgYnl0ZXMgZnJvbSAweGY4OTdiYTI0IG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAg KiBBZGRyZXNzIDB4Zjg5N2JhMjQgaXMgbG9jYWwgdmFyaWFibGUgInl5dnNwIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxp ZCBwb2ludGVyIHJlYWQgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGls ZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtwYXJzZXIueTozMTQy XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5n PGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBb Q01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRo cmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90 cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5j cHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhy ZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRp bmcgNCBieXRlcyBmcm9tIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0K ICAqIEFkZHJlc3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXluIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQUjogSW52YWxp ZCBwb2ludGVyIHJlYWQgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3aGls ZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo4MTJd DQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJpbmc8 Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtD TWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhy ZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3Ry YWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFkLmNw cDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29ja2V0 VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtUaHJl YWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogUmVhZGlu ZyA0IGJ5dGVzIGZyb20gMHhmODk3YmEyNCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQog ICogQWRkcmVzcyAweGY4OTdiYTI0IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXZzcCIgaW4gZnVu Y3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVu dGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81 LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFs aWQgcG9pbnRlciB3cml0ZSAoMjcgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdo aWxlIGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjgx Ml0NCglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmlu ZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikg W0NNZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRU aHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJf dHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2Nr ZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1Ro cmVhZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0 aW5nIDQgYnl0ZXMgdG8gMHhmODk3YmEyNCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQog ICogQWRkcmVzcyAweGY4OTdiYTI0IGlzIGxvY2FsIHZhcmlhYmxlICJ5eXZzcCIgaW4gZnVu Y3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVu dGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81 LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFI6IEludmFs aWQgcG9pbnRlciByZWFkICgyNyB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1cnJpbmcgd2hp bGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlzb24uY2M6ODEz XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFzaWNfc3RyaW5n PGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBb Q01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRo cmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90 cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tldFRocmVhZC5j cHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZvaWQqKSBbVGhy ZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0KICAqIFJlYWRp bmcgNCBieXRlcyBmcm9tIDB4Zjg5N2JhMjggb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0K ICAqIEFkZHJlc3MgMHhmODk3YmEyOCBpcyBsb2NhbCB2YXJpYWJsZSAieXlzc3AiIGluIGZ1 bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1l bnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1Mv NS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBXOiBJbnZh bGlkIHBvaW50ZXIgd3JpdGUgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3 aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo4 MTNdDQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJp bmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4p IFtDTWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0 VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFy X3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFk LmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29j a2V0VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtU aHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogV3Jp dGluZyA0IGJ5dGVzIHRvIDB4Zjg5N2JhMjggb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0K ICAqIEFkZHJlc3MgMHhmODk3YmEyOCBpcyBsb2NhbCB2YXJpYWJsZSAieXlzc3AiIGluIGZ1 bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1l bnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1Mv NS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBXOiBJbnZh bGlkIHBvaW50ZXIgd3JpdGUgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3VycmluZyB3 aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNvbi5jYzo4 MjldDQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNpY19zdHJp bmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4p IFtDTWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0 VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFy X3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0VGhyZWFk LmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBbQ0lhU29j a2V0VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9pZCopIFtU aHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQogICogV3Jp dGluZyA0IGJ5dGVzIHRvIDB4Zjg5N2JhMjQgb24gdGhlIHN0YWNrIG9mIHRocmVhZCA2Lg0K ICAqIEFkZHJlc3MgMHhmODk3YmEyNCBpcyBsb2NhbCB2YXJpYWJsZSAieXl2c3AiIGluIGZ1 bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1l bnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1Mv NS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZh bGlkIHBvaW50ZXIgcmVhZCAoMjcgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdo aWxlIGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjg1 M10NCglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmlu ZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikg W0NNZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRU aHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJf dHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2Nr ZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1Ro cmVhZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFk aW5nIDQgYnl0ZXMgZnJvbSAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4N CiAgKiBBZGRyZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVu Y3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVu dGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81 LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFs aWQgcG9pbnRlciB3cml0ZSAoMjcgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdo aWxlIGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjg1 M10NCglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmlu ZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikg W0NNZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRU aHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJf dHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2Nr ZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1Ro cmVhZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0 aW5nIDQgYnl0ZXMgdG8gMHhmODk3YmEyYyBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQog ICogQWRkcmVzcyAweGY4OTdiYTJjIGlzIGxvY2FsIHZhcmlhYmxlICJ5eW4iIGluIGZ1bmN0 aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGluc3RydW1lbnRl ZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3AvU3VuT1MvNS4x MC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBSOiBJbnZhbGlk IHBvaW50ZXIgcmVhZCAoMjcgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxl IGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjg1NV0N Cglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxj aGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NN ZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJl YWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJh aXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRU aHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVh ZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFkaW5n IDQgYnl0ZXMgZnJvbSAweGY4OTdiYTJjIG9uIHRoZSBzdGFjayBvZiB0aHJlYWQgNi4NCiAg KiBBZGRyZXNzIDB4Zjg5N2JhMmMgaXMgbG9jYWwgdmFyaWFibGUgInl5biIgaW4gZnVuY3Rp b24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVk IC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEw L3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpCU1I6IEJleW9uZCBz dGFjayByZWFkIGVycm9yICgzNTYgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdo aWxlIGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjg1 NV0NCglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmlu ZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikg W0NNZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRU aHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJf dHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQu Y3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2Nr ZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1Ro cmVhZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBSZWFk aW5nIDIgYnl0ZXMgZnJvbSAweGY4OTc5MzBjLg0KICAqIFN0YWNrIHBvaW50ZXIgMHhmODk3 YjkwMA0KICAqIEFkZHJlc3MgMHhmODk3OTMwYyBpcyBsb2NhbCB2YXJpYWJsZSAieXlzc2Ei IGluIGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5IGlu c3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90c3Av U3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0KSVBX OiBJbnZhbGlkIHBvaW50ZXIgd3JpdGUgKDI3IHRpbWVzKToNCiAgKiBUaGlzIGlzIG9jY3Vy cmluZyB3aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNv bi5jYzo4NTVdDQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpiYXNp Y19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNo YXI+ID4pIFtDTWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6Q0lh U29ja2V0VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3Rk OjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29ja2V0 VGhyZWFkLmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4oKSBb Q0lhU29ja2V0VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAodm9p ZCopIFtUaHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFdDQog ICogV3JpdGluZyA0IGJ5dGVzIHRvIDB4Zjg5N2JhMzAgb24gdGhlIHN0YWNrIG9mIHRocmVh ZCA2Lg0KICAqIEFkZHJlc3MgMHhmODk3YmEzMCBpcyBsb2NhbCB2YXJpYWJsZSAieXlzdGF0 ZSIgaW4gZnVuY3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkg aW5zdHJ1bWVudGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3Rz cC9TdW5PUy81LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJ UFI6IEludmFsaWQgcG9pbnRlciByZWFkICgxNCB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1 cnJpbmcgd2hpbGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlz b24uY2M6ODU5XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFz aWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxj aGFyPiA+KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJ YVNvY2tldFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkg W0NJYVNvY2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZv aWQqKSBbVGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0K ICAqIFJlYWRpbmcgNCBieXRlcyBmcm9tIDB4Zjg5N2JhMmMgb24gdGhlIHN0YWNrIG9mIHRo cmVhZCA2Lg0KICAqIEFkZHJlc3MgMHhmODk3YmEyYyBpcyBsb2NhbCB2YXJpYWJsZSAieXlu IiBpbiBmdW5jdGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBp bnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNw L1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQ VzogSW52YWxpZCBwb2ludGVyIHdyaXRlICgxNCB0aW1lcyk6DQogICogVGhpcyBpcyBvY2N1 cnJpbmcgd2hpbGUgaW4gdGhyZWFkIDE3Og0KCWludCBQYXJzZXI6Onl5cGFyc2UoKSBbYmlz b24uY2M6ODU5XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFz aWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxj aGFyPiA+KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJ YVNvY2tldFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkg W0NJYVNvY2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZv aWQqKSBbVGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0K ICAqIFdyaXRpbmcgNCBieXRlcyB0byAweGY4OTdiYTMwIG9uIHRoZSBzdGFjayBvZiB0aHJl YWQgNi4NCiAgKiBBZGRyZXNzIDB4Zjg5N2JhMzAgaXMgbG9jYWwgdmFyaWFibGUgInl5c3Rh dGUiIGluIGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioqKiAgUHVyaWZ5 IGluc3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAvZGVidWdfTk90 c3AvU3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5KSAgKioqKg0K VU1SOiBVbmluaXRpYWxpemVkIG1lbW9yeSByZWFkOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5n IHdoaWxlIGluIHRocmVhZCA1Og0KCXJ3X3JlYWRfaGVsZCAgIFtsaWJjLnNvLjFdDQoJcGRm Y286OkNDb1RhYmxlTG9jazo6Q0NvVGFibGVMb2NrKCkgW0NDb1B0aHJlYWRPYmouY3h4OjIx MV0NCglwZGZjbzo6Q0NvR3FTZXNzaW9uVGFibGU6OkNDb0dxU2Vzc2lvblRhYmxlKCkgW0ND b0dxU2Vzc2lvblRhYmxlLmN4eDozMV0NCglwZGZjbzo6Q0NvR3FTZXNzaW9uVGFibGUmcGRm Y286OkNDb0dxU2Vzc2lvblRyZWU6OmdldFNlc3Npb25UYWJsZUJ5UGVlcklkKGNvbnN0IHN0 ZDo6YmFzaWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9j YXRvcjxjaGFyPiA+KSBbQ0NvR3FTZXNzaW9uVGFibGUuY3h4OjQ0OV0NCgl2b2lkIHBkZmNv OjpDQ29HcUNvbm5Ob3RpZnlQcm9jZXNzb3I6OnByb2Nlc3MoKSBbQ0NvR3FDb25uTm90aWZ5 UHJvY2Vzc29yLmN4eDo0MF0NCgl2b2lkIHBkZmNvOjpDQ29Db3JlVGhyZWFkOjpydW4oKSBb Q0NvQ29yZVRocmVhZC5jeHg6NjRdDQogICogUmVhZGluZyAyIGJ5dGVzIGZyb20gMHgyMTlj ZWMgaW4gdGhlIGhlYXAuDQogICogQWRkcmVzcyAweDIxOWNlYyBpcyAxMiBieXRlcyBpbnRv IGEgbWFsbG9jJ2QgYmxvY2sgYXQgMHgyMTljZTAgb2YgNzIgYnl0ZXMuDQogICogVGhpcyBi bG9jayB3YXMgYWxsb2NhdGVkIGZyb20gdGhyZWFkIDU6DQoJbWFsbG9jICAgICAgICAgW3J0 bGliLm9dDQoJYzJuNkZpX1B2X19fMSAgW2xpYkNydW4uc28uMV0NCgl2b2lkKm9wZXJhdG9y IG5ldyh1bnNpZ25lZCkgW3J0bGliLm9dDQoJcGRmY286OkNDb0dxU2Vzc2lvblRhYmxlOjpD Q29HcVNlc3Npb25UYWJsZSgpIFtDQ29HcVNlc3Npb25UYWJsZS5jeHg6MzFdDQoJcGRmY286 OkNDb0dxU2Vzc2lvblRhYmxlJnBkZmNvOjpDQ29HcVNlc3Npb25UcmVlOjpnZXRTZXNzaW9u VGFibGVCeVBlZXJJZChjb25zdCBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90 cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NDb0dxU2Vzc2lvblRhYmxl LmN4eDo0NDldDQoJdm9pZCBwZGZjbzo6Q0NvR3FDb25uTm90aWZ5UHJvY2Vzc29yOjpwcm9j ZXNzKCkgW0NDb0dxQ29ubk5vdGlmeVByb2Nlc3Nvci5jeHg6NDBdDQoNCioqKiogIFB1cmlm eSBpbnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05P dHNwL1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioN ClVNUjogVW5pbml0aWFsaXplZCBtZW1vcnkgcmVhZDoNCiAgKiBUaGlzIGlzIG9jY3Vycmlu ZyB3aGlsZSBpbiB0aHJlYWQgNToNCglyd19yZWFkX2hlbGQgICBbbGliYy5zby4xXQ0KCXBk ZmNvOjpDQ29UYWJsZUxvY2s6OkNDb1RhYmxlTG9jaygpIFtDQ29QdGhyZWFkT2JqLmN4eDoy MTFdDQoJcGRmY286OkNDb0dxU2Vzc2lvblRhYmxlOjpDQ29HcVNlc3Npb25UYWJsZSgpIFtD Q29HcVNlc3Npb25UYWJsZS5jeHg6MzFdDQoJcGRmY286OkNDb0dxU2Vzc2lvblRhYmxlJnBk ZmNvOjpDQ29HcVNlc3Npb25UcmVlOjpnZXRTZXNzaW9uVGFibGVCeVBlZXJJZChjb25zdCBz dGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxv Y2F0b3I8Y2hhcj4gPikgW0NDb0dxU2Vzc2lvblRhYmxlLmN4eDo0NDldDQoJdm9pZCBwZGZj bzo6Q0NvR3FDb25uTm90aWZ5UHJvY2Vzc29yOjpwcm9jZXNzKCkgW0NDb0dxQ29ubk5vdGlm eVByb2Nlc3Nvci5jeHg6NDBdDQoJdm9pZCBwZGZjbzo6Q0NvQ29yZVRocmVhZDo6cnVuKCkg W0NDb0NvcmVUaHJlYWQuY3h4OjY0XQ0KICAqIFJlYWRpbmcgNCBieXRlcyBmcm9tIDB4MjE5 Y2U4IGluIHRoZSBoZWFwLg0KICAqIEFkZHJlc3MgMHgyMTljZTggaXMgOCBieXRlcyBpbnRv IGEgbWFsbG9jJ2QgYmxvY2sgYXQgMHgyMTljZTAgb2YgNzIgYnl0ZXMuDQogICogVGhpcyBi bG9jayB3YXMgYWxsb2NhdGVkIGZyb20gdGhyZWFkIDU6DQoJbWFsbG9jICAgICAgICAgW3J0 bGliLm9dDQoJYzJuNkZpX1B2X19fMSAgW2xpYkNydW4uc28uMV0NCgl2b2lkKm9wZXJhdG9y IG5ldyh1bnNpZ25lZCkgW3J0bGliLm9dDQoJcGRmY286OkNDb0dxU2Vzc2lvblRhYmxlOjpD Q29HcVNlc3Npb25UYWJsZSgpIFtDQ29HcVNlc3Npb25UYWJsZS5jeHg6MzFdDQoJcGRmY286 OkNDb0dxU2Vzc2lvblRhYmxlJnBkZmNvOjpDQ29HcVNlc3Npb25UcmVlOjpnZXRTZXNzaW9u VGFibGVCeVBlZXJJZChjb25zdCBzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90 cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NDb0dxU2Vzc2lvblRhYmxl LmN4eDo0NDldDQoJdm9pZCBwZGZjbzo6Q0NvR3FDb25uTm90aWZ5UHJvY2Vzc29yOjpwcm9j ZXNzKCkgW0NDb0dxQ29ubk5vdGlmeVByb2Nlc3Nvci5jeHg6NDBdDQoNCioqKiogIFB1cmlm eSBpbnN0cnVtZW50ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05P dHNwL1N1bk9TLzUuMTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioN CklQVzogSW52YWxpZCBwb2ludGVyIHdyaXRlICgzIHRpbWVzKToNCiAgKiBUaGlzIGlzIG9j Y3VycmluZyB3aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFti aXNvbi5jYzo3MDldDQoJYm9vbCBDTWVnYWNvUGFyc2VyV3JhcHBlcjo6UGFyc2Uoc3RkOjpi YXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9y PGNoYXI+ID4pIFtDTWVnYWNvUGFyc2VyV3JhcHBlci5jcHA6MzJdDQoJdm9pZCBwY3NpYTo6 Q0lhU29ja2V0VGhyZWFkOjpoYW5kbGVNZXNzYWdlKHN0ZDo6YmFzaWNfc3RyaW5nPGNoYXIs c3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxjaGFyPiA+KSBbQ0lhU29j a2V0VGhyZWFkLmNwcDoxNjRdDQoJdm9pZCBwY3NpYTo6Q0lhU29ja2V0VGhyZWFkOjpydW4o KSBbQ0lhU29ja2V0VGhyZWFkLmNwcDoxNDddDQoJdm9pZCpUaHJlYWRPYmo6OnN0YXJ0dXAo dm9pZCopIFtUaHJlYWRPYmouY3BwOjI4XQ0KCV9sd3Bfc3RhcnQgICAgIFtsaWJjLnNvLjFd DQogICogV3JpdGluZyA0IGJ5dGVzIHRvIDB4Zjg5N2JhMWMgb24gdGhlIHN0YWNrIG9mIHRo cmVhZCA2Lg0KICAqIEFkZHJlc3MgMHhmODk3YmExYyBpcyBsb2NhbCB2YXJpYWJsZSAieXlj aGFyMSIgaW4gZnVuY3Rpb24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJp ZnkgaW5zdHJ1bWVudGVkIC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19O T3RzcC9TdW5PUy81LjEwL3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioq DQpCU1I6IEJleW9uZCBzdGFjayByZWFkIGVycm9yICgxODUgdGltZXMpOg0KICAqIFRoaXMg aXMgb2NjdXJyaW5nIHdoaWxlIGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNl KCkgW2Jpc29uLmNjOjg1Nl0NCglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShz dGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxv Y2F0b3I8Y2hhcj4gPikgW0NNZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBj c2lhOjpDSWFTb2NrZXRUaHJlYWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8 Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtD SWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6 OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3Rh cnR1cCh2b2lkKikgW1RocmVhZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMu c28uMV0NCiAgKiBSZWFkaW5nIDIgYnl0ZXMgZnJvbSAweGY4OTc5MzI2Lg0KICAqIFN0YWNr IHBvaW50ZXIgMHhmODk3YjkwMA0KICAqIEFkZHJlc3MgMHhmODk3OTMyNiBpcyAgICAgICAy NiBieXRlcyBwYXN0IHN0YXJ0IG9mIGxvY2FsIHZhcmlhYmxlICJ5eXNzYSIgaW4gZnVuY3Rp b24gaW50IFBhcnNlcjo6eXlwYXJzZSgpLg0KDQoqKioqICBQdXJpZnkgaW5zdHJ1bWVudGVk IC9leHBvcnQvaG9tZS95eWovYnVpbGQvUENTXzIuMC9kZWJ1Z19OT3RzcC9TdW5PUy81LjEw L3NwYXJjLTMyL1BDUy9iaW4vcGNzIChwaWQgMTQ0OTkpICAqKioqDQpJUFc6IEludmFsaWQg cG9pbnRlciB3cml0ZSAoMTMgdGltZXMpOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxl IGluIHRocmVhZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjg1N10N Cglib29sIENNZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxj aGFyLHN0ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NN ZWdhY29QYXJzZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJl YWQ6OmhhbmRsZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJh aXRzPGNoYXI+LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE2NF0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRU aHJlYWQuY3BwOjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVh ZE9iai5jcHA6MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5n IDQgYnl0ZXMgdG8gMHhmODk3YmEzMCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICog QWRkcmVzcyAweGY4OTdiYTMwIGlzIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBmdW5j dGlvbiBpbnQgUGFyc2VyOjp5eXBhcnNlKCkuDQoNCioqKiogIFB1cmlmeSBpbnN0cnVtZW50 ZWQgL2V4cG9ydC9ob21lL3l5ai9idWlsZC9QQ1NfMi4wL2RlYnVnX05PdHNwL1N1bk9TLzUu MTAvc3BhcmMtMzIvUENTL2Jpbi9wY3MgKHBpZCAxNDQ5OSkgICoqKioNCklQVzogSW52YWxp ZCBwb2ludGVyIHdyaXRlOg0KICAqIFRoaXMgaXMgb2NjdXJyaW5nIHdoaWxlIGluIHRocmVh ZCAxNzoNCglpbnQgUGFyc2VyOjp5eXBhcnNlKCkgW2Jpc29uLmNjOjc1OV0NCglib29sIENN ZWdhY29QYXJzZXJXcmFwcGVyOjpQYXJzZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0ZDo6 Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NNZWdhY29QYXJz ZXJXcmFwcGVyLmNwcDozMl0NCgl2b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OmhhbmRs ZU1lc3NhZ2Uoc3RkOjpiYXNpY19zdHJpbmc8Y2hhcixzdGQ6OmNoYXJfdHJhaXRzPGNoYXI+ LHN0ZDo6YWxsb2NhdG9yPGNoYXI+ID4pIFtDSWFTb2NrZXRUaHJlYWQuY3BwOjE2NF0NCgl2 b2lkIHBjc2lhOjpDSWFTb2NrZXRUaHJlYWQ6OnJ1bigpIFtDSWFTb2NrZXRUaHJlYWQuY3Bw OjE0N10NCgl2b2lkKlRocmVhZE9iajo6c3RhcnR1cCh2b2lkKikgW1RocmVhZE9iai5jcHA6 MjhdDQoJX2x3cF9zdGFydCAgICAgW2xpYmMuc28uMV0NCiAgKiBXcml0aW5nIDQgYnl0ZXMg dG8gMHhmODk3YmEzNCBvbiB0aGUgc3RhY2sgb2YgdGhyZWFkIDYuDQogICogQWRkcmVzcyAw eGY4OTdiYTM0IGlzICAgICAgICA0IGJ5dGVzIHBhc3Qgc3RhcnQgb2YgbG9jYWwgdmFyaWFi bGUgInl5c3RhdGUiIGluIGZ1bmN0aW9uIGludCBQYXJzZXI6Onl5cGFyc2UoKS4NCg0KKioq KiAgUHVyaWZ5IGluc3RydW1lbnRlZCAvZXhwb3J0L2hvbWUveXlqL2J1aWxkL1BDU18yLjAv ZGVidWdfTk90c3AvU3VuT1MvNS4xMC9zcGFyYy0zMi9QQ1MvYmluL3BjcyAocGlkIDE0NDk5 KSAgKioqKg0KSVBSOiBJbnZhbGlkIHBvaW50ZXIgcmVhZDoNCiAgKiBUaGlzIGlzIG9jY3Vy cmluZyB3aGlsZSBpbiB0aHJlYWQgMTc6DQoJaW50IFBhcnNlcjo6eXlwYXJzZSgpIFtiaXNv bi5jYzoxMDA3XQ0KCWJvb2wgQ01lZ2Fjb1BhcnNlcldyYXBwZXI6OlBhcnNlKHN0ZDo6YmFz aWNfc3RyaW5nPGNoYXIsc3RkOjpjaGFyX3RyYWl0czxjaGFyPixzdGQ6OmFsbG9jYXRvcjxj aGFyPiA+KSBbQ01lZ2Fjb1BhcnNlcldyYXBwZXIuY3BwOjMyXQ0KCXZvaWQgcGNzaWE6OkNJ YVNvY2tldFRocmVhZDo6aGFuZGxlTWVzc2FnZShzdGQ6OmJhc2ljX3N0cmluZzxjaGFyLHN0 ZDo6Y2hhcl90cmFpdHM8Y2hhcj4sc3RkOjphbGxvY2F0b3I8Y2hhcj4gPikgW0NJYVNvY2tl dFRocmVhZC5jcHA6MTY0XQ0KCXZvaWQgcGNzaWE6OkNJYVNvY2tldFRocmVhZDo6cnVuKCkg W0NJYVNvY2tldFRocmVhZC5jcHA6MTQ3XQ0KCXZvaWQqVGhyZWFkT2JqOjpzdGFydHVwKHZv aWQqKSBbVGhyZWFkT2JqLmNwcDoyOF0NCglfbHdwX3N0YXJ0ICAgICBbbGliYy5zby4xXQ0K ICAqIFJlYWRpbmcgNCBieXRlcyBmcm9tIDB4Zjg5N2JhMzQgb24gdGhlIHN0YWNrIG9mIHRo cmVhZCA2Lg0KICAqIEFkZHJlc3MgMHhmODk3YmEzNCBpcyAgICAgICAgNCBieXRlcyBwYXN0 IHN0YXJ0IG9mIGxvY2FsIHZhcmlhYmxlICJ5eXN0YXRlIiBpbiBmdW5jdGlvbiBpbnQgUGFy c2VyOjp5eXBhcnNlKCku --Next_1177930656---0-203.199.83.27-24415 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ [email protected] http://lists.gnu.org/mailman/listinfo/help-bison --Next_1177930656---0-203.199.83.27-24415--