Re: Re: RevML DTD
Peter Miller <[email protected]> Sun, 16 Jan 2005 22:11:42 +1100
| Newsgroups | gmane.comp.version-control.revml |
|---|---|
| Message-ID | <1105873902.2262.11.camel@osprey> |
--=-QrjsBZRTTzbV2uRgLxUy Content-Type: multipart/mixed; boundary="=-peE4xTKX43+WUycvWfpn" --=-peE4xTKX43+WUycvWfpn Content-Type: text/plain Content-Transfer-Encoding: quoted-printable On Sat, 2005-01-15 at 23:51, Barrie Slaymaker wrote: > Sounds like a broken validator; here's the spec: >=20 > http://www.w3.org/TR/REC-xml/#NT-Name Ah... I was using the wrong xml.dcl OK, now my output matches the revml.dtd ...except that I added an <ATTRIBUTE> element so you can see what I'm talking about. What happened to the <MOVE> element? How do you represent the second file name for a rename or clone? I've attached an example change set in RevML format. It's a real change set, that modifies a single file). Please let me know all of the many many assumptions I'm breaking. There are a bunch of mandatory elements that I can't work out what they are for, so they have (probably wrong) dummy values. I've also attached the modified DTD, so that you can diff against revml.dtd 0.35 and see the few additions I've made, and the multitude of questions I've added for elements. > Also note xmllint's response: >=20 > bash-2.05b$ echo "<_/>" | xmllint - > <?xml version=3D"1.0"?> > <_/> >=20 > Thanks, >=20 > Barrie >=20 > Peter Miller wrote: >=20 > >On Sat, 2005-01-08 at 02:18, Barrie Slaymaker wrote: > > =20 > > > >>See this link for the latest [RevML DTD]: > >> > >> http://public.perforce.com/public/revml/revml.dtd > >> =20 > >> > > > >I've got RevML generation working, and I've started to check the output > >against the DTD using James Clark's nsgmls. > > > >It is barfing on the DTD: it says that "_" is not a valid element name > >character. > > > > > > =20 > > >=20 > _______________________________________________ > revml mailing list > [email protected] > http://maillist.perforce.com/mailman/listinfo/revml --=20 Peter Miller <[email protected]> --=-peE4xTKX43+WUycvWfpn Content-Disposition: attachment; filename=c232.revml Content-Type: text/plain; name=c232.revml; charset=ISO-8859-1 Content-Transfer-Encoding: base64 PCFET0NUWVBFIFJFVk1MIFBVQkxJQyAiLS8vLS8vRFREIFJFVk1MIDAuMzUvL0VOIiAicmV2bWwu ZHRkIj4NCjxSRVZNTCBWRVJTSU9OPSIwLjM1Ij4NCjxUSU1FPjIwMDUtMDEtMTQgMjM6MzE6MTIg WjwvVElNRT4NCjxSRVBfVFlQRT5BZWdpczwvUkVQX1RZUEU+DQo8UkVQX0RFU0M+NC4xOS5DMjIw PC9SRVBfREVTQz4NCjxDT01NRU5UPkZyb206IFBldGVyIE1pbGxlciAmbHQ7bWlsbGVycEBjYW5i LmF1dWcub3JnLmF1Jmd0Ow0KRGF0ZTogU2F0IEphbiAxNSAxMDozMToxMiAyMDA1DQoNCkEgYnVn cyBoYXMgYmVlbiBmaXhlZCBpbiBhZWRpc3QgLXNlbmQsIGl0IHdhcyBmYWlsaW5nIHRvIGluY2x1 ZGUgY2hhbmdlDQpzZXQgYXR0cmlidXRlcyBpbiBzb21lIGNhc2VzLg0KDQpTaWduZWQtb2ZmLWJ5 OiBQZXRlciBNaWxsZXIgJmx0O21pbGxlcnBAY2FuYi5hdXVnLm9yZy5hdSZndDs8L0NPTU1FTlQ+ DQo8UkVWX1JPT1Q+YWVnaXMuNC4xOTwvUkVWX1JPT1Q+DQo8QVRUUklCVVRFPjxOQU1FPlgtQWVn aXMtY2hhbmdlLW51bWJlcjwvTkFNRT4NCjxWQUxVRT4yMzI8L1ZBTFVFPjwvQVRUUklCVVRFPg0K PEFUVFJJQlVURT48TkFNRT5YLUFlZ2lzLWJyaWVmX2Rlc2NyaXB0aW9uPC9OQU1FPg0KPFZBTFVF PmFlZGlzdCBidWc8L1ZBTFVFPjwvQVRUUklCVVRFPg0KPEFUVFJJQlVURT48TkFNRT5YLUFlZ2lz LWRlc2NyaXB0aW9uPC9OQU1FPg0KPFZBTFVFPkZyb206IFBldGVyIE1pbGxlciAmbHQ7bWlsbGVy cEBjYW5iLmF1dWcub3JnLmF1Jmd0Ow0KRGF0ZTogU2F0IEphbiAxNSAxMDozMToxMiAyMDA1DQoN CkEgYnVncyBoYXMgYmVlbiBmaXhlZCBpbiBhZWRpc3QgLXNlbmQsIGl0IHdhcyBmYWlsaW5nIHRv IGluY2x1ZGUgY2hhbmdlDQpzZXQgYXR0cmlidXRlcyBpbiBzb21lIGNhc2VzLg0KDQpTaWduZWQt b2ZmLWJ5OiBQZXRlciBNaWxsZXIgJmx0O21pbGxlcnBAY2FuYi5hdXVnLm9yZy5hdSZndDs8L1ZB TFVFPjwvQVRUUklCVVRFPg0KPEFUVFJJQlVURT48TkFNRT5YLUFlZ2lzLWNhdXNlPC9OQU1FPg0K PFZBTFVFPmludGVybmFsX2VuaGFuY2VtZW50PC9WQUxVRT48L0FUVFJJQlVURT4NCjxBVFRSSUJV VEU+PE5BTUU+WC1BZWdpcy10ZXN0X2V4ZW1wdDwvTkFNRT4NCjxWQUxVRT50cnVlPC9WQUxVRT48 L0FUVFJJQlVURT4NCjxBVFRSSUJVVEU+PE5BTUU+WC1BZWdpcy10ZXN0X2Jhc2VsaW5lX2V4ZW1w dDwvTkFNRT4NCjxWQUxVRT50cnVlPC9WQUxVRT48L0FUVFJJQlVURT4NCjxBVFRSSUJVVEU+PE5B TUU+WC1BZWdpcy10ZXN0X2Jhc2VsaW5lX2V4ZW1wdDwvTkFNRT4NCjxWQUxVRT50cnVlPC9WQUxV RT48L0FUVFJJQlVURT4NCjxBVFRSSUJVVEU+PE5BTUU+WC1BZWdpcy1VVUlEPC9OQU1FPg0KPFZB TFVFPmRhZWUwYjc0LWNiMjktNGIyZC1hNDE1LWJlMjcwN2NkMzEwZDwvVkFMVUU+PC9BVFRSSUJV VEU+DQo8UkVWIElEPSIwZGUzOGRkMC0yYTQ4LTQxNzktYTgwMi1lNmNiZjFkNWIxNTkiPg0KPE5B TUU+YWVkaXN0L3NlbmQuY2M8L05BTUU+DQo8U09VUkNFX05BTUU+YWVkaXN0L3NlbmQuY2M8L1NP VVJDRV9OQU1FPg0KPFNPVVJDRV9GSUxFQlJBTkNIX0lEPm5vIGlkZWEgd2hhdCB0aGlzIG1lYW5z PC9TT1VSQ0VfRklMRUJSQU5DSF9JRD4NCjxTT1VSQ0VfUkVQT19JRD5ubyBpZGVhIHdoYXQgdGhp cyBtZWFuczwvU09VUkNFX1JFUE9fSUQ+DQo8QUNUSU9OPmVkaXQ8L0FDVElPTj4NCjxUWVBFPnRl eHQvcGxhaW47IGNoYXJzZXQ9dXMtYXNjaWk8L1RZUEU+DQo8UkVWX0lEPjA8L1JFVl9JRD4NCjxT T1VSQ0VfUkVWX0lEPm5vIGlkZWEgd2hhdCB0aGlzIG1lYW5zPC9TT1VSQ0VfUkVWX0lEPg0KPEFU VFJJQlVURT48TkFNRT5YLUFlZ2lzLXVzYWdlPC9OQU1FPg0KPFZBTFVFPnNvdXJjZTwvVkFMVUU+ PC9BVFRSSUJVVEU+DQo8QVRUUklCVVRFPjxOQU1FPlgtQWVnaXMtYWN0aW9uPC9OQU1FPg0KPFZB TFVFPm1vZGlmeTwvVkFMVUU+PC9BVFRSSUJVVEU+DQo8QVRUUklCVVRFPjxOQU1FPlgtQWVnaXMt ZXhlY3V0YWJsZTwvTkFNRT4NCjxWQUxVRT5mYWxzZTwvVkFMVUU+PC9BVFRSSUJVVEU+DQo8QVRU UklCVVRFPjxOQU1FPlgtQWVnaXMtVVVJRDwvTkFNRT4NCjxWQUxVRT4wZGUzOGRkMC0yYTQ4LTQx NzktYTgwMi1lNmNiZjFkNWIxNTk8L1ZBTFVFPjwvQVRUUklCVVRFPg0KPERFTFRBIFRZUEU9ImRp ZmYtdSIgRU5DT0RJTkc9Im5vbmUiPi0tLSBhZWRpc3Qvc2VuZC5jYw0KKysrIGFlZGlzdC9zZW5k LmNjDQpAQCAtMTY2LDggKzE2Niw2IEBADQogICAgIGNzdGF0ZV90eSAgICAgICAqY2hhbmdlX3Nl dDsNCiAgICAgdGltZV90ICAgICAgICAgIHdoZW47DQogICAgIHNpemVfdCAgICAgICAgICBqOw0K LSAgICBjaGFyICAgICAgICAgICAgKmJ1ZmZlcjsNCi0gICAgc2l6ZV90ICAgICAgICAgIGJ1ZmZl cl9zaXplOw0KICAgICBpbnQgICAgICAgICAgICAgZGVzY3JpcHRpb25faGVhZGVyOw0KICAgICBp bnQgICAgICAgICAgICAgYmFzZWxpbmU7DQogICAgIGludCAgICAgICAgICAgICBlbnRpcmVfc291 cmNlOw0KQEAgLTc5MCwxOSArNzg4LDE0IEBADQogCSk7DQogCW9mcC0mZ3Q7ZnByaW50Zg0KIAko DQotCSAgICAmcXVvdDtDb250ZW50LURpc3Bvc2l0aW9uOiBhdHRhY2htZW50OyAmcXVvdDsNCi0J ICAgICZxdW90O2ZpbGVuYW1lPSVzLkMlMy4zbGQuYWVcbiZxdW90OywNCisJICAgICZxdW90O0Nv bnRlbnQtRGlzcG9zaXRpb246IGF0dGFjaG1lbnQ7IGZpbGVuYW1lPSVzLkMlMy4zbGQuYWVcbiZx dW90OywNCiAJICAgIHByb2plY3RfbmFtZV9nZXQocHApLSZndDtzdHJfdGV4dCwNCiAJICAgIGNo YW5nZV9udW1iZXINCiAJKTsNCiAgICAgfQ0KICAgICBlbHNlDQogICAgIHsNCi0Jb2ZwLSZndDtm cHJpbnRmDQotCSgNCi0JICAgICZxdW90O0NvbnRlbnQtTmFtZTogJXMuYWVcbiZxdW90OywNCi0J ICAgIHByb2plY3RfbmFtZV9nZXQocHApLSZndDtzdHJfdGV4dA0KLQkpOw0KKwlvZnAtJmd0O2Zw cmludGYoJnF1b3Q7Q29udGVudC1OYW1lOiAlcy5hZVxuJnF1b3Q7LCBwcm9qZWN0X25hbWVfZ2V0 KHBwKS0mZ3Q7c3RyX3RleHQpOw0KIAlvZnAtJmd0O2ZwcmludGYNCiAJKA0KIAkgICAgJnF1b3Q7 Q29udGVudC1EaXNwb3NpdGlvbjogYXR0YWNobWVudDsgZmlsZW5hbWU9JXMuYWVcbiZxdW90OywN CkBAIC05MDYsOSArODk5LDE2IEBADQogICAgIGNoYW5nZV9zZXQtJmd0O3Rlc3RfZXhlbXB0ID0g Y3N0YXRlX2RhdGEtJmd0O3Rlc3RfZXhlbXB0Ow0KICAgICBjaGFuZ2Vfc2V0LSZndDt0ZXN0X2Jh c2VsaW5lX2V4ZW1wdCA9IGNzdGF0ZV9kYXRhLSZndDt0ZXN0X2Jhc2VsaW5lX2V4ZW1wdDsNCiAg ICAgY2hhbmdlX3NldC0mZ3Q7cmVncmVzc2lvbl90ZXN0X2V4ZW1wdCA9IGNzdGF0ZV9kYXRhLSZn dDtyZWdyZXNzaW9uX3Rlc3RfZXhlbXB0Ow0KLSAgICBpZiAodXNlX2F0dHJpYnV0ZXMgJmFtcDsm YW1wOyBjc3RhdGVfZGF0YS0mZ3Q7YXR0cmlidXRlKQ0KKyAgICBpZiAodXNlX2F0dHJpYnV0ZXMp DQogICAgIHsNCi0JY2hhbmdlX3NldC0mZ3Q7YXR0cmlidXRlID0gYXR0cmlidXRlc19saXN0X2Nv cHkoY3N0YXRlX2RhdGEtJmd0O2F0dHJpYnV0ZSk7DQorCWNoYW5nZV9zZXQtJmd0O2F0dHJpYnV0 ZSA9DQorCSAgICAoDQorCQljc3RhdGVfZGF0YS0mZ3Q7YXR0cmlidXRlDQorCSAgICA/DQorCQlh dHRyaWJ1dGVzX2xpc3RfY29weShjc3RhdGVfZGF0YS0mZ3Q7YXR0cmlidXRlKQ0KKwkgICAgOg0K KwkJKGF0dHJpYnV0ZXNfbGlzdF90eSAqKWF0dHJpYnV0ZXNfbGlzdF90eXBlLmFsbG9jKCkNCisJ ICAgICk7DQogCWNoYW5nZV9mdW5jdG9yX2F0dHJpYnV0ZV9saXN0IHJlc3VsdChjaGFuZ2Vfc2V0 LSZndDthdHRyaWJ1dGUpOw0KIAlpZiAoY2hhbmdlX3dhc19hX2JyYW5jaChjcCkpDQogCXsNCkBA IC0xMTUyLDggKzExNTIsNiBAQA0KICAgICAvLw0KICAgICAvLyBhZGQgZWFjaCBvZiB0aGUgcmVs ZXZhbnQgc291cmNlIGZpbGVzIHRvIHRoZSBhcmNoaXZlDQogICAgIC8vDQotICAgIGJ1ZmZlcl9z aXplID0gKHNpemVfdCkxICZsdDsmbHQ7IDEzOw0KLSAgICBidWZmZXIgPSAoY2hhciAqKW1lbV9h bGxvYyhidWZmZXJfc2l6ZSk7DQogICAgIGZvciAoaiA9IDA7IGogJmx0OyBjaGFuZ2Vfc2V0LSZn dDtzcmMtJmd0O2xlbmd0aDsgKytqKQ0KICAgICB7DQogCWNzdGF0ZV9zcmNfdHkgICAqY3NyYzsN CjwvREVMVEE+DQo8L1JFVj4NCjwvUkVWTUw+DQo= --=-peE4xTKX43+WUycvWfpn Content-Disposition: attachment; filename=revml.dtd Content-Type: text/x-dtd; name=revml.dtd; charset=ISO-8859-1 Content-Transfer-Encoding: base64 PCEtLSBEVEQgZm9yIFJldk1MIChzZWUgPHJldm1sPiB2ZXJzaW9uIGF0dGRlZiBmb3IgdmVyc2lv bikNCiAgICAgQXV0aG9yczogQmFycmllIFNsYXltYWtlciAgIDxiYXJyaWVzQHNsYXlzeXMuY29t Pg0KICAgICAgICAgICAgICBHcmVnIEtyb2FoLUhhcnRtYW4gPGdyZWdAa3JvYWguY29tPg0KICAg ICAgICAgICAgICBTZWFuIE1jQ3VuZSAgICAgICAgPHNlYW5Ac2Vhbi1tY2N1bmUuY29tPg0KICAg ICAgICAgICAgICBKb2huIEZldGtvdmljaCAgICAgPGZldGtvQHNsYXlzeXMuY29tPg0KLS0+DQoN CjwhLS0gVGhlIG9yZGVyIGlzIHNwZWNpZmllZCBmb3IgdGhlIHRhZ3Mgc28gdGhhdCB0aGV5IGFy ZSBpbiBhbiBhcHByb3ByaWF0ZQ0KICAgICBvcmRlciBmb3IgYW4gaW1wb3J0IHV0aWxpdHkuICBT b21lIG9mIHRoZXNlIGNvbnN0cmFpbnRzIG1heSBiZSByZWxheGVkDQogICAgIGluIHRoZSBmdXR1 cmUsIGJ1dCBpbiBnZW5lcmFsIHRoZSBtZXRhZGF0YSB3aWxsIGFsd2F5cyBwcmVjZWRlIHRoZQ0K ICAgICBvYmplY3QgZGF0YS4gIEltcG9ydCB1dGlsaXRpZXMgKm11c3QqIGNhY2hlIGFsbCBuZWNl c3NhcnkgbWV0YWRhdGENCiAgICAgcmVnYXJkbGVzcyBvZiBvcmRlciBvZiBvY2N1cmVuY2UsIHRo ZW4gbWF5IGRpc2NhcmQgaXQgb25jZSB0aGUNCiAgICAgPGNvbnRlbnQ+IGlzIHNlZW4uDQoNCiAg ICAgIFRvIGNvbXBpbGUgYSBEVEQgaW4gdG8gYSBwZXJsIG1vZHVsZToNCg0KICAgICAgICAgIHZj cCByZXZtbCBYLWR0ZCAqdGhpcypmaWxlKiBYLXNhdmUtZG9jdHlwZQ0KDQogICAgICB3aGVyZSAi WCIgaXMgYSAiLSIgKHNpbGx5IFhNTCBjb21tZW50cykuICBUaGlzIHdpbGwgd3JpdGUNCiAgICAg IC4vbGliL1Jldk1ML0RvY3R5cGUvdlZfVlZfLnBtIHdoZXJlIFZfVlYgaXMgdGhlIHVuZGVyc2Nv cmlmaWVkDQogICAgICB2ZXJzaW9uICNGSVhFRCBhdHRyaWJ1dGUgZnJvbSB0aGUgcmV2bWwgRU5U SVRZIGRlZmluaXRpb24gYmVsb3cuDQoNCi0tPg0KDQo8IUVMRU1FTlQgcmV2bWwNCiAgICAoDQog ICAgICAgIHRpbWUsDQogICAgICAgIHJlcF90eXBlLA0KICAgICAgICByZXBfZGVzYywNCiAgICAg ICAgY29tbWVudD8sDQoJcmV2X3Jvb3QsDQoJYXR0cmlidXRlKiwNCiAgICAgICAgYnJhbmNoZXM/ LA0KICAgICAgICByZXYqDQogICAgKQ0KPg0KDQogICAgPCEtLQ0KICAgICAgTk9URSEhIFdoZW4g Y2hhbmdpbmcgdGhlIGR0ZCwgdGhpcyB2ZXJzaW9uIG51bWJlciBzaG91bGQgYmUNCiAgICAgIGNo YW5nZWQgYWxzby4gIEFueSBjaGFuZ2UgYWxzbyByZXF1aXJlcyByZS1jb21waWxpbmcgdGhlIGR0 ZA0KICAgICAgd2l0aCBiaW4vY29tcGlsZV9kdGQuICBGb3IgbW9yZSBpbmZvIHJ1biAndmNwIGhl bHAgTWFpbnRlbmFuY2UnDQogICAgICBhbmQgcmVhZCB0aGUgc2VjdGlvbiB0aXRsZWQgJ1VwZGF0 aW5nIHRoZSBSZXZNTCBEVEQuJw0KICAgIC0tPg0KICAgIDwhQVRUTElTVCAgIHJldm1sDQogICAg ICAgIHZlcnNpb24gICAgIENEQVRBICAgI0ZJWEVEICAgIjAuMzUiDQogICAgPg0KDQo8IUVMRU1F TlQgcmVwX3R5cGUgKCNQQ0RBVEEpID4NCiAgICA8IS0tICdwNCcsICdjdnMnLCAnc291cmNlc2Fm ZScsIGV0Yy4gLS0+DQoNCjwhRUxFTUVOVCByZXBfZGVzYyAoI1BDREFUQXxjaGFyKSogPg0KICAg IDwhLS0gVGhlIHZlcnNpb24gbnVtYmVyLCBwbGF0Zm9ybSwgZXRjLiBmb3IgdGhlIHJlcG9zaXRv cnkuICBUaGlzDQogICAgICAgICBtYXkgYmUgbmVlZGVkDQogICAgICAgICBzbyB0aGF0IGltcG9y dCB1dGlsaXRpZXMgY2FuIGZpZ3VyZSBvdXQgd2hhdCB0YWdzIG1lYW4gd2hhdA0KICAgICAgICAg d2hlbiBhIHBhcnRpY3VsYXIgcmVwb3NpdG9yeSB2ZXJzaW9uIGNoYW5nZXMuDQoNCiAgICAgICAg IFRoaXMgaXMgb2Z0ZW4gdGhlIG91dHB1dCBvZiAncDQgaW5mbycgb3IgJ2N2cyAtdicgKyBjdnMN CiAgICAgICAgIGVudmlyb25tZW50IHNldHRpbmdzIGFuZCB0aGUgY3ZzIC1sIGNvbW1hbmQuDQoN CiAgICAtLT4NCg0KPCFFTEVNRU5UIHJldl9yb290ICgjUENEQVRBfGNoYXIpKiA+DQogICAgPCEt LSBUaGUgcm9vdCBvZiB0aGUgdHJlZSB0aGF0IHdhcyBleHRyYWN0ZWQgdG8gUmV2TUwuICBUaGlz DQogICAgICAgICBpcyB1c3VhbGx5IHRoZSBzb3VyY2UgZmlsZSBzcGVjIHVwIHRvIChidXQgbm90 IGluY2x1ZGluZykgdGhlDQoJIGZpcnN0IGNvbXBvbmVudCB0aGF0IGRvZXMgbm90IGNvbnRhaW4g YSB3aWxkY2FyZC4NCg0KICAgICAgICAgVGhpcyBjb21lcyBiZWZvcmUgYnJhbmNoZXMgYmVjYXVz ZSBpdCdzIG5lZWRlZCB0byBtb2RpZnkNCiAgICAgICAgIGJyYW5jaGVzLCBzcGVjaWZpY2FsbHkg dGhlIHA0X2JyYW5jaF9zcGVjJ3MgVmlldyBmaWVsZC4gIFRoYXQncw0KICAgICAgICAgYSB0aGVv cmV0aWNhbCBpc3N1ZSBhcyBpbXBsZW1lbnRlZCwgYnV0IGl0J3MgbmljZSB0byBoYXZlDQogICAg ICAgICB0aGluZ3MgaW4gdGhlIHNhZmVzdCwgbW9zdCBtbmVtb25pYyBvcmRlciwgSSB0aGluay4N CiAgICAtLT4NCg0KPCFFTEVNRU5UIGJyYW5jaF9pZCAoI1BDREFUQSkgPg0KICAgIDwhLS0gY3Zz OiAgICAgIDxicmFuY2hfaWQ+cl8xXzNfYjwvYnJhbmNoX2lkPg0KICAgICAgICAgcDQ6ICAgICAg IDxicmFuY2hfaWQ+Ly9kZXBvdC9mb28vZGV2ZWw8L2JyYW5jaF9pZD4NCg0KICAgICAgICAgVGhl IGNvbnRlbnRzIG9mIHRoaXMgZWxlbWVudCBpcyB1c2VkIHRvIGlkZW50aWZ5IHRoZSBicmFuY2gg YmVpbmcNCiAgICAgICAgIGJyYW5jaCBiZWluZyBleHBvcnRlZC4NCiAgICAtLT4NCg0KPCFFTEVN RU5UIHA0X2JyYW5jaF9zcGVjICgjUENEQVRBfGNoYXIpKiA+DQogICAgPCEtLSBJZiB0aGUgc291 cmNlIHJlcG8gd2FzIHA0LCB0aGVuIGFsbCBicmFuY2ggc3BlY3Mgd2l0aCBicmFuY2ggaWRzDQog ICAgICAgICB1c2VkIGluIHRoZSBleHBvcnQgYXJlIGluY2x1ZGVkLCBvbmUgcGVyIDxicmFuY2g+ IHRhZy4gIFRoaXMgbWF5DQogICAgICAgICBiZSBwYXJzZWQgYnkgdGhlIGRlc3RpbmF0aW9uIChz ZWUgdGhlIHN1YnJvdXRpbmVzDQogICAgICAgICBWQ1A6OlV0aWxzOjpwNC0+e3BhcnNlLGJ1aWxk fV9wNF9mb3JtKCkpIG9yIHN1Ym1pdHRlZCBkaXJlY3RseQ0KICAgICAgICAgdG8gdGhlIGRlc3Rp bmF0aW9uIHA0IHJlcG9zaXRvcnkuDQoNCiAgICAtLT4NCg0KDQo8IUVMRU1FTlQgcmV2DQogICAg KA0KICAgICAgICBuYW1lLA0KICAgICAgICBzb3VyY2VfbmFtZSwNCiAgICAgICAgc291cmNlX2Zp bGVicmFuY2hfaWQsDQogICAgICAgIHNvdXJjZV9yZXBvX2lkLA0KICAgICAgICBhY3Rpb24sDQoJ bW92ZT8sDQoJdHlwZT8sDQoJKGN2c19pbmZvfHA0X2luZm98c291cmNlX3NhZmVfaW5mb3xwdmNz X2luZm8pPywNCgkoYnJhbmNoX2lkLHNvdXJjZV9icmFuY2hfaWQpPywNCglyZXZfaWQsDQoJc291 cmNlX3Jldl9pZCwNCgkoY2hhbmdlX2lkLHNvdXJjZV9jaGFuZ2VfaWQpPywNCgl0aW1lPywNCglt b2RfdGltZT8sDQoJdXNlcl9pZD8sDQoJKHA0X2FjdGlvbnxzb3VyY2VzYWZlX2FjdGlvbik/LA0K CWxhYmVsKiwNCglsb2NrPywNCgljb21tZW50PywNCglhdHRyaWJ1dGUqLA0KCShwcmV2aW91c19p ZCxmcm9tX2lkPyk/LA0KCWVhcmxpZXJfaWQqLA0KCShjb250ZW50fGRlbHRhKT8sDQoJZGlnZXN0 Pw0KICAgICkgPg0KDQogICAgPCFBVFRMSVNUIHJldg0KICAgICAgICBpZCAgICAgICAgICBDREFU QSAgICAgICAgICNSRVFVSVJFRA0KICAgID4NCiAgICA8IS0tIGVhY2ggPHJldj4gbXVzdCBoYXZl IGEgdW5pcXVlIGlkZW50aWZpZXIsIHVzdWFsbHkgdGhlIG5hbWUNCiAgICAgICAgIGFuZCByZXZp c2lvbiBudW1iZXIsIHRob3VnaCB0aGUgcHJlY2lzZSBmb3JtYXQgZGVwZW5kcyBvbg0KICAgICAg ICAgdGhlIHNvdXJjZSByZXBvc2l0b3J5LiAgVGhlIGlkIHNob3VsZCBiZSBkZXJpdmVkIGZyb20g dGhlDQogICAgICAgICBtZXRhZGF0YSBpbiBhIHJlcGVhdGFibGUgZmFzaGlvbi4NCg0KICAgICAg ICAgUE1pbGxlcjogRXhhY3RseSAqd2hhdCogaXMgc3VwcG9zZWQgdG8gYmUgdW5pcXVlIGlzIG5v dA0KICAgICAgICAgc3VmZmljaWVudGx5IGRlZmluZWQgaW4gdGhlIGFib3ZlIHBhcmFtZ3JhcGgu DQogICAgICAgICAxLiBVbmlxdWUgZm9yIGVhY2ggZmlsZSwgb3INCiAgICAgICAgIDIuIHVuaXF1 ZSBmb3IgZWFjaCBjaGFuZ2Ugc2V0LCBvcg0KICAgICAgICAgMy4gdW5pcXVlIGZvciBlYWNoIDxS RVY+IG9mIHRoZSBzYW1lIGZpbGUsIG9yDQoJIDQuIHNvbWV0aGluZyBlbHNlPw0KICAgICAgICAg Rm9yIGV4YW1wbGUsIGlmIGEgc3lzdGVtIGhhcyBhbiBpbnZhcmlhbnQgdW5pcXVlIElEIGZvciBl YWNoDQogICAgICAgICBjaGFuZ2Ugc2V0LCBzaG91bGQgdGhlIFJFViBJRCBiZSB0aGUgc2FtZSBm b3IgYWxsIFJFVnMgaW4gdGhlDQogICAgICAgICBzYW1lIGNoYW5nZSBzZXQ/ICBBbHNvLCB0aGUg ZGVzY3JpcHRpb24gZG9lc24ndCBzYXkgd2hhdCB0aGUNCiAgICAgICAgIFJFViBJRCBpcyBhY3R1 YWxseSAqZm9yKiwgd2hpY2ggbWF5IHNwcGx5IHRoZSBuZWNlc3NhcnkNCiAgICAgICAgIHF1YWxp ZmljYXRpb25zIGZvciAidW5pcXVlIi4NCiAgICAtLT4NCg0KICAgIDwhLS0gQSBmZXcgd29yZHMg YWJvdXQgdGhlIGRpZ2VzdCwgY29udGVudCwgYW5kIGRlbHRhIGVsZW1lbnRzOg0KDQogICAgICAg ICBXZSBjb3VsZCBoYXZlIGFsbG93ZWQgPGNvbnRlbnQ+IG9yIDxkZWx0YT4gd2l0aG91dCB0aGUN CgkgZGlnZXN0LCBidXQgaXQncyBzYWZlciB0aGlzIHdheSBhbmQgdGhlIGRpZ2VzdCBpcyBzbWFs bC4NCgkgPGRlbHRhPiB0YWdzIHNob3VsZCBvbmx5IGJlIHVzZWQgZm9yIHNlY29uZCBhbmQgbGF0 ZXIgPHJldj5zIGZvcg0KCSBhIGdpdmVuIDxuYW1lPi4NCg0KCSBUaGUgZmlyc3QgPHJldj4gZm9y IGEgZ2l2ZW4gbmFtZSBtdXN0IG5vdCBjb250YWluIGEgPGRlbHRhPi4gIEl0DQoJIHNob3VsZCBj b250YWluIDxjb250ZW50PiBpZiB0aGlzIGlzIG5vdCBhbiBpbmNyZW1lbnRhbCB1cGRhdGUsIG9y DQoJIGp1c3QgYSA8ZGlnZXN0PiBpZiBpdCBpcy4NCgkgDQoJIFRoZSByZXYvL2RpZ2VzdCB3aXRo IG5vIDxjb250ZW50PiBjYW4gb25seSBiZSB1c2VkIGFzIHRoZSBmaXJzdA0KCSA8cmV2PiBpbiB0 aGUgZmlsZSBmb3IgYSBnaXZlbiA8bmFtZT4uICBpdCBpbmRpY2F0ZXMgdGhhdCB0aGUNCgkgPHJl dl9pZD4gcmV2aXNpb24gb2YgPG5hbWU+IHNob3VsZCBiZSByZWNvdmVyZWQgZnJvbSB0aGUgdGFy Z2V0DQoJIHJlcG9zaXRvcnkgYW5kIHRoZW4gY2hlY2tlZCBhZ2FpbnN0IHRoZSA8ZGlnZXN0PiBm aWVsZC4NCg0KICAgICAgICAgPHByZXZpb3VzX2lkPiBjb250YWlucyB0aGUgaWQgc3RyaW5nIG9m IHRoZSByZXZpc2lvbiBiZWZvcmUgdGhpcw0KICAgICAgICAgb25lLg0KDQogICAgLS0+DQoNCiAg ICA8IS0tIFRoZSByZWFzb24gc28gbWFueSBmaWVsZHMgYXJlIG9wdGlvbmFsIGlzIHRoYXQgVlNT DQogICAgICAgICBkb2VzIG5vdCBhc3NvY2lhdGUgbXVjaCBpbmZvIHdpdGggZGVsZXRpb25zIG9y IHRyYWNrIHRoZW0NCiAgICAgICAgIHBlciByZXZpc2lvbi4gIFNvLCBhIGRlbGV0ZSBjYW4gaGF2 ZSBzb21lIGluZm8gaW4gaXQgZm9yDQogICAgICAgICBvdGhlciBTQ01zLCBidXQgd2lsbCBiZSBt b3N0bHkgZW1wdHkgZm9yIFZTUy4NCiAgICAtLT4NCg0KICAgIDwhLS0gV2Ugd2lsbCBhZGQgcmVw b3NpdG9yeV8uLi4gdGFncyBhcyBuZWVkZWQgdG8gY2FycnkgYWxvbmcgYWxsIG5lY2Vzc2FyeQ0K ICAgICAgICAgcmVwb3NpdG9yeSBzcGVjaWZpYyBpbmZvcm1hdGlvbiB3aXRob3V0IGFsdGVyYXRp b24uDQogICAgLS0+DQoNCjwhRUxFTUVOVCBuYW1lICgjUENEQVRBfGNoYXIpKiA+DQogICAgPCEt LSB0aGUgZmlsZSBuYW1lLCBpbiBVbml4IGZvcm1hdCwgcmVsYXRpdmUgdG8gdGhlIHJlcG9zaXRv cnkgcm9vdC4NCiAgICAgICAgIFRoZSBmaWxlL2RpcmVjdG9yeSBuYW1lcyAnLicsICcuLicsIGFu ZCAnJyBhcmUgbm90IGxlZ2FsLg0KICAgICAgICAgY3ZzOiAgICAgICAnc3JjL2lmYWNlL2Z0cmVl L2ZpLmMNCiAgICAgICAgIHA0OiAgICAgICAgJ2RlcG90L3BlcmwvcGVybC5jJywgbm90ICcvL2Rl cG90L3BlcmwvcGVybC5jJw0KDQogICAgICAgICBXZSB3aWxsIGFkZCB2ZW5kb3JfLi4uIHRhZ3Mg aWYgdGhpcyBmb3JtYXQgY2F1c2VzIGxvc3Mgb2YNCiAgICAgICAgIGluZm9ybWF0aW9uLg0KICAg IC0tPg0KDQo8IUVMRU1FTlQgdHlwZSAoI1BDREFUQSkgPg0KICAgIDwhLS0gJ3RleHQnIG9yICdi aW5hcnknIC0tPg0KDQo8IS0tIFByb2R1Y3Qgc3BlY2lmaWMgdGFncy4gIFRoZXNlIGFyZSB1c2Vk IHdoZW4gaW1wb3J0aW5nIGRhdGEgaW4NCiAgICAgdG8gdGhlIHNhbWUgdHlwZSBvZiByZXBvc2l0 b3J5IGl0IHdhcyBleHBvcnRlZCBmcm9tLg0KLS0+DQoNCjwhRUxFTUVOVCBwNF9pbmZvICgjUENE QVRBfGNoYXIpKiA+DQogICAgPCEtLSBQZXJmb3JjZSBzcGVjaWZpYyBkYXRhLiAtLT4NCg0KPCFF TEVNRU5UIGN2c19pbmZvICgjUENEQVRBfGNoYXIpKiA+DQogICAgPCEtLSBDVlMgc3BlY2lmaWMg ZGF0YS4gLS0+DQoNCjwhRUxFTUVOVCBzb3VyY2Vfc2FmZV9pbmZvICgjUENEQVRBfGNoYXIpKiA+ DQogICAgPCEtLSBWU1Mgc3BlY2lmaWMgZGF0YS4gLS0+DQoNCjwhRUxFTUVOVCBwdmNzX2luZm8g KCNQQ0RBVEF8dHJ1bmtfcmV2X2lkfGF0dHJpYnxjaGFyKSogPg0KICAgIDwhLS0gUFZDUyBzcGVj aWZpYyBkYXRhLiAtLT4NCg0KPCEtLSBSZXBvc2l0b3J5LW51ZXRyYWwgdGFncy4gIFRoZXNlIG11 c3QgYmUgZ2VuZXJhdGVkIGJ5IGFsbCBleHBvcnQNCiAgICAgdXRpbGl0aWVzLCBhbmQgbXVzdCBi ZSB1c2VkIGJ5IGFsbCBpbXBvcnQgdXRpbGl0aWVzIHdoZW4gaW1wb3J0aW5nDQogICAgIGZyb20g YSBmb3JlaWduIHJlcG9zaXRvcnkgdHlwZS4NCi0tPg0KDQo8IUVMRU1FTlQgcmV2X2lkICgjUENE QVRBKSA+DQogICAgPCEtLSBBIHNtYWxsIGludGVnZXIgaW5kaWNhdGluZyB0aGUgcmV2aXNpb24g bnVtYmVyIG9mIGEgZmlsZQ0KICAgICAgICAgKndpdGhpbiB0aGUgYnJhbmNoKi4NCg0KICAgICAg ICAgY3ZzOiAgICAgICAgIjMiIGlmIHRoZSBjdnMgcmV2IGlzICIxLjMiIA0KICAgICAgICAgcDQ6 ICAgICAgICAgdGhlIGZpbGUgcmV2aXNpb24gbnVtYmVyDQogICAgICAgICBzb3VyY2VzYWZlOiB0 aGUgZmlsZSB2ZXJzaW9uIG51bWJlcg0KDQogICAgICAgICBQTWlsbGVyOiBEb2VzIHRoaXMgbWVh biB0aGF0IGEgUmV2TUwgZmlsZSBjb250YWlucyBhbiBlbnRpcmUNCiAgICAgICAgIGJyYW5jaD8g IFdoYXQgaWYgaXQgZG9lc24ndD8gc2hvdWxkbid0IHRoaXMgYmUgb3B0aW9uYWwgaW4NCiAgICAg ICAgIGJyYW5jaC1sZXNzIGNhc2VzPw0KICAgIC0tPg0KDQo8IUVMRU1FTlQgY2hhbmdlX2lkICgj UENEQVRBKSA+DQogICAgPCEtLSBFeHBvcnQgdXRpbGl0aWVzIGFyZSByZXNwb25zaWJsZSBmb3Ig Z3JvdXBpbmcgcmV2aXNpb25zIHRvZ2V0aGVyDQogICAgICAgICB1c2luZyBhIHVuaXF1ZSBjaGFu Z2VfaWQuICBjaGFuZ2VfaWQncyBhcmUgaW50ZWdlcnMgc3RhcnRpbmcgYXQgMQ0KICAgICAgICAg Zm9yIGVhY2ggZmlsZS4NCiAgICAtLT4NCg0KPCFFTEVNRU5UIHRydW5rX3Jldl9pZCAoI1BDREFU QSkgPg0KICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVsZW1lbnQgZm9yPyAtLT4NCg0KPCFFTEVNRU5U IGF0dHJpYiAoI1BDREFUQSkgPg0KICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVsZW1lbnQgZm9yPyAt LT4NCg0KPCFFTEVNRU5UIGxvY2sgKHRpbWU/LCB1c2VyX2lkKSA+DQogICAgPCEtLSBXaGF0IGlz IHRoaXMgZWxlbWVudCBmb3I/IC0tPg0KDQo8IUVMRU1FTlQgdGltZSAoI1BDREFUQSkgPg0KICAg IDwhLS0gQWxsIHRpbWVzIGFyZSBpbiBJU08tODYwMSBmb3JtYXQgaW4gR01UL1VDVDANCiAgICAg ICAgIDx0aW1lPjIwMDAtMTItMzEgMjM6NTk6NTlaPC90aW1lPg0KICAgIC0tPg0KDQo8IUVMRU1F TlQgbW9kX3RpbWUgKCNQQ0RBVEEpID4NCiAgICA8IS0tIE1vZGlmaWNhdGlvbiB0aW1lIC0tPg0K ICAgIDwhLS0gQWxsIHRpbWVzIGFyZSBpbiBJU08tODYwMSBmb3JtYXQsIEdNVCAtLT4NCg0KPCFF TEVNRU5UIGFjdGlvbiAoI1BDREFUQSkgPg0KICAgIDwhLS0NCiAgICAgICAgVGhlIEFDVElPTiBl bGVtZW50IGlzIHVzZWQgdG8gZGVzY3JpYmUgdGhlIG9wZXJhdGlvbiB0byBiZQ0KICAgICAgICBw ZXJmb3JtZWQgb24gdGhlIG5hbWVkIHNvdXJjZSBmaWxlLiAgTGVnYWwgdmFsdWVzIGluY2x1ZGU6 DQoNCglhZGQNCiAgICAgICAgICAgIFRoZSBmaWxlIGlzIGJlaW5nIGNyZWF0ZWQgb3IgYWRkZWQu ICBUaGVyZSB3aWxsIGJlIGFuDQogICAgICAgICAgICBhY2NvbXBhbnlpbmcgQ09OVEVOVCBlbGVt ZW50Lg0KCWVkaXQNCiAgICAgICAgICAgIFRoZSBmaWxlIGNvbnRlbnQgaXMgYmVpbmcgY2hhbmdl ZCBvciBlZGl0aWVkIG9yIG1vZGlmaWVkLg0KICAgICAgICAgICAgVGhlcmUgd2lsbCBiZSBhbiBh Y2NvbXBhbnlpbmcgREVMVEEgZWxlbWVudC4NCg0KICAgICAgICAgICAgV2hhdCBhYm91dCBiaW5h cnkgZmlsZXM/ICBNdXN0IHRoZSB1c2VyIGdpdmUgYSBDT05URU5UIGZvcg0KICAgICAgICAgICAg YmluYXJ5IGZpbGVzPyAgKFRoZSBYZGVsdGEgZm9ybWF0IGlzbid0IHN1aXRhYmxlLCBpdCByZXF1 aXJlcw0KICAgICAgICAgICAgaWRlbnRpY2FsIGxlZnQtaGFuZC1zaWRlIGZpbGVzIG9uIGJvdGgg c3lzdGVtcywgc29tZXRoaW5nDQogICAgICAgICAgICBwYXRjaCgxKSBoYXMgY29wZWQgd2l0aCBm b3Igb3ZlciBhIGRlY2FkZS4pDQoNCglkZWxldGUNCiAgICAgICAgICAgIFRoZSBmaWxlIGlzIGJl aW5nIHJlbW92ZWQgb3IgZGVsZXRlZCAoYnV0IGl0J3MgaGlzdG9yaWNhbA0KICAgICAgICAgICAg aW5mb3JtYXRpb24gaXMgcHJlc2VydmVkKS4gIFRoZXJlIGlzIG5vIGFjY29tcGFueWluZyBDT05U RU5UDQogICAgICAgICAgICBvciBERUxUQSBlbGVtZW50Lg0KCXJlbmFtZQ0KICAgICAgICAgICAg VGhlIGZpbGUgaXMgYmVpbmcgbW92ZWQgb3IgcmVuYW1lZC4gIEl0IG1heSBiZSBhY2NvbXBhbmll ZA0KICAgICAgICAgICAgYnkgYW4gb3B0aW9uYWwgREVMVEEgZWxlbWVudC4NCgljbG9uZQ0KCSAg ICBXaGF0IGRvZXMgdGhpcyBtZWFuPw0KCSAgICBJdCBpcyBtZW50aW9uZWQgaW4gc29tZSBvdGhl ciBjb21tZW50cy4NCiAgICAtLT4NCg0KPCFFTEVNRU5UIHA0X2FjdGlvbiAoI1BDREFUQSkgPg0K ICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVsZW1lbnQgZm9yPyAtLT4NCg0KPCFFTEVNRU5UIHNvdXJj ZXNhZmVfYWN0aW9uICgjUENEQVRBKSA+DQogICAgPCEtLSBXaGF0IGlzIHRoaXMgZWxlbWVudCBm b3I/IC0tPg0KDQo8IUVMRU1FTlQgbGFiZWwgKCNQQ0RBVEF8Y2hhcikqID4NCiAgICA8IS0tIFdo YXQgaXMgdGhpcyBlbGVtZW50IGZvcj8gLS0+DQoNCjwhRUxFTUVOVCB1c2VyX2lkICgjUENEQVRB fGNoYXIpKiA+DQogICAgPCEtLSBXaGF0IGlzIHRoaXMgZWxlbWVudCBmb3I/IC0tPg0KDQo8IUVM RU1FTlQgY29tbWVudCAoI1BDREFUQXxjaGFyKSogPg0KICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVs ZW1lbnQgZm9yPyAtLT4NCg0KPCFFTEVNRU5UIGRlbHRhICgjUENEQVRBfGNoYXIpKiA+DQogICAg PCFBVFRMSVNUIGRlbHRhDQogICAgICAgIHR5cGUgICAgICAgICAoZGlmZi11KSAgICAgICAjUkVR VUlSRUQNCiAgICAgICAgZW5jb2RpbmcgICAgIChub25lfGJhc2U2NCkgICNSRVFVSVJFRA0KICAg ID4NCiAgICA8IS0tIFdoYXQgaXMgdGhpcyBlbGVtZW50IGZvcj8gLS0+DQoNCjwhRUxFTUVOVCBw cmV2aW91c19pZCAoI1BDREFUQSkgPg0KICAgIDwhLS0gVGhlIHByaW9yIHJldmlzaW9uIHRoYXQg d2FzIGFsdGVyZWQgdG8gbWFrZSB0aGlzIHJldmlzaW9uLg0KICAgICAgICAgVGhpcyBpcyBvbiB0 aGUgc2FtZSBmaWxlYnJhbmNoIGZvciAiZWRpdCIgYW5kICJkZWxldGUiDQogICAgICAgICA8YWN0 aW9uPnMsIGJ1dCBvbiBhIGRpZmZlcmVudCBmaWxlYnJhbmNoIGZvciAiYnJhbmNoIg0KICAgICAg ICAgPGFjdGlvbj5zIGFuZCBmb3IgY2xvbmVzIG9mICJicmFuY2giIDxhY3Rpb24+cw0KICAgIC0t Pg0KDQo8IUVMRU1FTlQgZnJvbV9pZCAoI1BDREFUQSkgPg0KICAgIDwhLS0gQSAicGFyZW50IiBy ZXZpc2lvbiBmcm9tIHdoaWNoIGRhdGEgd2FzIGNvcGllZCB0byBtYWtlIHRoaXMNCiAgICAgICAg IHJldmlzaW9uLiAgVXNlZCBpbiA8YWN0aW9uPmNsb25lPC9hY3Rpb24+IHJldnMgdG9kYXksIGV4 cGVjdGVkDQogICAgICAgICB0byBiZSB1c2VkIGluIDxhY3Rpb24+bWVyZ2U8L2FjdGlvbj4gcmV2 cyBzb21lZGF5Lg0KICAgIC0tPg0KDQo8IUVMRU1FTlQgZWFybGllcl9pZCAoI1BDREFUQSkgPg0K ICAgIDwhLS0gQSByZXYgdGhhdCBtdXN0IGJlIHN1Ym1pdHRlZCB0byB0aGUgdGFyZ2V0IHJlcG9z aXRvcnkgYmVmb3JlDQogICAgICAgICB0aGlzIHJldi4gIEN1cnJlbnRseSAoMjAwNC0wOS0xNCkg b25seSB1c2VkIGJ5IHRoZSBDaGFuZ2VTZXRzDQogICAgICAgICBmaWx0ZXIgKFZDUDo6RmlsdGVy OjpjaGFuZ2VzZXRzKS4NCiAgICAtLT4NCg0KDQo8IUVMRU1FTlQgY29udGVudCAoI1BDREFUQXxj aGFyKSogPg0KICAgIDwhQVRUTElTVCBjb250ZW50DQogICAgICAgIGVuY29kaW5nICAgICAobm9u ZXxiYXNlNjQpICAjUkVRVUlSRUQNCiAgICA+DQogICAgPCEtLQ0KICAgICAgICBUaGUgQ09OVEVO VCBlbGVtZW50IGlzIHVzZWQgdG8gcmVwcmVzZW50IHRoZSBleGFjdCBjb250ZW50cyBvZiBhDQog ICAgICAgIGZpbGUgYXQgYSBwYXJ0aWN1bGFyIHJldmlzaW9uLiAgVGhpcyBpcyBtb3N0IGNvbW1v bmx5IHVzZWQgd2l0aA0KICAgICAgICA8QUNUSU9OPmNyZWF0ZTwvQUNUSU9OPi4NCgkoQXJlIHRo ZXJlIG90aGVycz8pDQoNCglIb3cgY29tZSB3ZSBjYW4ndCBoYXZlIHF1b3RlZC1wcmludGFibGUg ZW5jb2Rpbmc/DQogICAgICAgIChGb3IgZXhhbXBsZSwgYW4gb3JpZ2luYXRpbmcgc3lzdGVtIGNv dWxkIGdlbmVyYXRlIGFsbCB0aHJlZSBvZg0KICAgICAgICAoI1BDREFUQSxjaGFyKSBhbmQgcXVv dGVkLXByaW50YWJsZSBhbmQgYmFzZTY0IGVuY29kaW5ncywgYW5kDQogICAgICAgIHVzZSB0aGUg c2hvcnRlc3QuKQ0KCVdoYXQgYWJvdXQgQ1IvQ1JMRi9MRiBpc3N1ZXM/DQogICAgLS0+DQoNCjwh RUxFTUVOVCBkaWdlc3QgKCNQQ0RBVEEpID4NCiAgICA8IUFUVExJU1QgZGlnZXN0DQogICAgICAg IHR5cGUgICAgICAgICAgKE1ENSkgICAgICAgICAjUkVRVUlSRUQNCiAgICAgICAgZW5jb2Rpbmcg ICAgICAoYmFzZTY0KSAgICAgICNSRVFVSVJFRA0KICAgID4NCiAgICA8IS0tDQoJIFdoZW4gdGhl cmUgaXMgYSBDT05URU5UIGVsZW1lbnQsIHRoZSBkaWdlc3Qgd2lsbCBiZSB0aGUgbWQ1c3VtDQog ICAgICAgICBvZiBfd2hhdF8/ICBJcyBpdCB0aGUgbWQ1c3VtIG9mIHRoZSBjaGFyYWN0ZXJzIGJl dHdlZW4NCiAgICAgICAgIDxDT05URU5UPiBhbmQgPC9DT05URU5UPiwgb3IgdGhlIG9yaWdpbmFs IGJpbmFyeSByZXByZXNlbnRhdGlvbg0KICAgICAgICAgb2YgdGhlIGZpbGU/ICBXaGF0IGFib3V0 IENSL0NSTEYvTEYgaXNzdWVzPw0KDQogICAgICAgICBXaGVuIHRoZXJlIGlzIGEgREVMVEEgZWxl bWVudCwgdGhlIGRpZ2VzdCB3aWxsIGJlIHRoZSBtZDVzdW0NCiAgICAgICAgIG9mIF93aGF0Xz8g IElzIGl0IHRoZSBtZDVzdW0gb2YgdGhlIGRlbHRhIGZpbGUgYmVmb3JlIFJldk1MDQogICAgICAg ICAoI1BDSEFSfGNoYXIpIGVuY29kaW5nIG9yIGFmdGVyPyAgT3IgaXMgaXQgdGhlIG1kNXN1bSBv ZiB0aGUNCiAgICAgICAgIG9yaWdpbmFsIGJpbmFyeSByZXByZXNlbnRhdGlvbiBvZiB0aGUgZmls ZSBiZWZvcmUgdGhlIGRlbHRhIGlzDQogICAgICAgICBhcHBsaWVkPyAgT3IgdGhlIGZpbGUgYWZ0 ZXIgdGhlIGRlbHRhIGlzIGFwcGxpZWQ/ICBXaGF0IGFib3V0DQogICAgICAgICBDUi9DUkxGL0xG IGlzc3Vlcz8NCgkgDQogICAgICAgICAoSW5zZXJ0IGRlZmludGlvbiBvZiBtZDVzdW0gaGVyZSwg b3IgYXQgbGVhc3QgYSByZWZlcmVuY2UgdG8NCiAgICAgICAgIHRoZSBkZWZpbmluZyBzdGFuZGFy ZC4pDQoNCiAgICAgICAgIE1heWJlIHRoZSBkaXNjdXNzaW9uIG9mIERJR0VTVCBpbiB0aGUgY29t bWVudCBhZnRlciB0aGUgUkVWDQogICAgICAgICBlbGVtZW50IGRlY2xhcmF0aW9uIGNvdWxkIGJl IG1vdmVkIHRvIGhlcmU/DQogICAgLS0+DQoNCjwhRUxFTUVOVCBjaGFyIEVNUFRZID4NCiAgICA8 IUFUVExJU1QgY2hhcg0KICAgICAgICBjb2RlICAgICAgICAgIENEQVRBICAgICAgICAgI1JFUVVJ UkVEDQogICAgPg0KICAgIDwhLS0NCiAgICAgICAgIFRoZSBDSEFSIGVsZW1lbnQgaXMgdXNlZCB0 byBwYXNzIG9uIGNvbnRyb2wgY29kZXMgdGhhdCB3b3VsZA0KICAgICAgICAgb3RoZXJ3aXNlIGNh dXNlIHRoZSBYTUwgdG8gYmUgbm90IHdlbGwtZm9ybWVkLiAgSW4gcGFydGljdWxhciwNCiAgICAg ICAgIGNoYXJhY3RlcnMgYmVsb3cgc3BhY2UgKDB4MjApLCBleGNlcHQgaG9yaXpvbnRhbCB0YWIg KDB4MDkpDQogICAgICAgICBhbmQgbGluZSBmZWVkICgweDBBKSwgbXVzdCB1c2UgdGhlIDxDSEFS IENPREU9IjB4Tk4iPg0KICAgICAgICAgZWxlbWVudC4gIEVhY2ggaW5zdGFuY2UgbXVzdCBoYXZl IGEgQ09ERSBhdHRyaWJ1dGUgY29udGFpbmluZw0KICAgICAgICAgYSBoZXhhZGVjaW1hbCByZXBy ZXNlbnRhdGlvbiBvZiB0aGUgY2hhcmFjdGVyIGNvZGUgYXMgc3RyaW5nLg0KICAgICAgICAgRm9y IGV4YW1wbGUsIGZvcm0gZmVlZCAoXkwpIHdvdWxkIGJlIHJlcHJlc2VudGVkIGFzIDxjaGFyDQog ICAgICAgICBjb2RlPSIweDBDIj4uICBCeXRlcyBiZXR3ZWVuIDB4N0YgYW5kIDB4RkYgbWF5IHVz ZSB0aGUgZXhpc3RpbmcNCiAgICAgICAgICYjeE5OOyBvciAmI0RERDsgbWVjaGFuaXNtLiAgVXNl IHRoZSB1c3VhbCBlbmNvZGluZ3MgZm9yDQogICAgICAgICAmcXVvdDssICZsdDssICZhbXA7IGFu ZCAmZ3Q7Lg0KICAgIC0tPg0KDQoNCjwhLS0NCiAgVGhlIGZvbGxvd2luZyBzb3VyY2VfKiBmaWVs ZHMgYXJlIGludGVuZGVkIHRvIGtlZXAgdGhlIGNvcnJlc3BvbmRpbmcNCiAgZmllbGRzIHdpdGhv dXQgJ3NvdXJjZV8nIGluIFZDUCBhbGwgdGhlIHdheSB0aHJvdWdoIHRvIHRoZQ0KICBkZXN0aW5h dGlvbiB1bmNoYW5nZWQgZm9yIG1ha2luZyBsYWJlbHMgYW5kIGxvZ2dpbmcuDQotLT4NCg0KPCFF TEVNRU5UIHNvdXJjZV9uYW1lICgjUENEQVRBfGNoYXIpKiA+DQogICAgPCEtLSBXaGF0IGlzIHRo aXMgZWxlbWVudCBmb3IsIGFuZCB3aHkgaXMgaXQgbWFuZGF0b3J5PyAtLT4NCg0KPCFFTEVNRU5U IHNvdXJjZV9yZXZfaWQgKCNQQ0RBVEEpID4NCiAgICA8IS0tDQoJV2hhdCBpcyB0aGlzIGVsZW1l bnQgZm9yLCBhbmQgd2h5IGlzIGl0IG1hbmRhdG9yeT8NCglhbmQgaG93IGRvZXMgaXQgZGlmZmVy IGZyb20gdGhlIFJFViBlbGVtZW50J3MgSUQgYXR0cmlidXRlPw0KICAgIC0tPg0KDQo8IUVMRU1F TlQgc291cmNlX2NoYW5nZV9pZCAoI1BDREFUQSkgPg0KICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVs ZW1lbnQgZm9yPyAtLT4NCg0KPCFFTEVNRU5UIHNvdXJjZV9icmFuY2hfaWQgKCNQQ0RBVEEpID4N CiAgICA8IS0tIFdoYXQgaXMgdGhpcyBlbGVtZW50IGZvcj8gLS0+DQoNCjwhLS0NCiAgVGhlc2Ug ZmllbGRzIGFyZSBzaW1pbGFyIGluIHB1cnBvc2UgdG8gYWJvdmUsIGJ1dCBkb24ndCBoYXZlDQog IGRpcmVjdGx5IGNvcnJlc3BvbmRpbmcgYW5hbG9ndWVzIHdpdGhvdXQgdGhlICdzb3VyY2VfJyBw cmVmaXguDQotLT4NCg0KPCFFTEVNRU5UIHNvdXJjZV9maWxlYnJhbmNoX2lkICgjUENEQVRBKSA+ DQogICAgPCEtLSBXaGF0IGlzIHRoaXMgZWxlbWVudCBmb3IsIGFuZCB3aHkgaXMgaXQgbWFuZGF0 b3J5Pw0KCSBXaGF0IGhhcHBlbmVkIHRvIHRoZSB1bmRlcnNjb3JlIGJldHdlZW4gZmlsZSBhbmQg YnJhbmNoPw0KICAgICAgICAgLS0+DQoNCjwhRUxFTUVOVCBzb3VyY2VfcmVwb19pZCAoI1BDREFU QSkgPg0KICAgIDwhLS0gV2hhdCBpcyB0aGlzIGVsZW1lbnQgZm9yLCBhbmQgd2h5IGlzIGl0IG1h bmRhdG9yeT8gLS0+DQoNCjwhLS0gVGhlIGdlbmVyaWMgYXR0cmlidXRlIGVsZW1lbnRzLiAgUE1p bGxlciAtLT4NCjwhRUxFTUVOVCBhdHRyaWJ1dGUgKG5hbWUsdmFsdWUpDQogICAgLS0NCiAgICAg ICAgVGhlIEFUVFJJQlVURSBlbGVtZW50IGlzIHVzZWQgdG8gY2FwdHVyZSBhcmJpdHJhcnkgbmFt ZS12YWx1ZQ0KICAgICAgICBwYWlycyBmb3IgZGVzY3JiaW5nIGZpbGUgYXR0cmlidXRlcyBvciBj aGFuZ2Ugc2V0IGF0dHJpYnV0ZXMNCiAgICAgICAgd2l0aG91dCBuZWVkaW5nIHRvIGV4dGVuZCB0 aGUgRFREIHRvIGFjY29tb2RhdGUgdGhlbS4NCg0KICAgICAgICBUaGVyZSBhcmUgKHdpbGwgYmUp IHNvbWUgd2VsbCBrbm93biBuYW1lcyB0aGF0IGFsbCAobW9zdCkNCiAgICAgICAgc3lzdGVtcyBh cmUgZXhwZWN0ZWQgdG8gdW5kZXJzdGFuZC4NCg0KICAgICAgICBGb3Igc3lzdGVtIHNwZWNpZmlj IGV4dGVudGlvbnMsIHVzZSBhIG5hbWUgZm9ybSBzaW1pbGFyIHRvDQogICAgICAgIHRoZSBSRkMg ODIyIGhlYWRlciBleHRlbnRpb24gbWVjaGFuaXNtOiBYLVN5c3RlbS1ibGFoLiAgRm9yDQogICAg ICAgIGV4YW1wbGUsIGEgUGVyZm9yY2Ugc3BlY2lmaWMgYXR0cmlidXRlIHdvdWxkIHVzZSBhIG5h bWUgbGlrZQ0KICAgICAgICAiWC1QZXJmb3JjZS1wZW5ndWluLWNvbG9yIi4NCg0KICAgICAgICBJ ZiBhIHN5c3RlbSBzdXBwb3J0cyBhcmJpdHJhcnkgdXNlci1kZWZpbmVkIGF0dHJpYnV0ZXMgZm9y DQogICAgICAgIGZpbGVzIG9yIGNoYW5nZSBzZXRzLCBhIG5hbWUgb2YgdGhlIGZvcm0gIlVzZXIt YmxhaCIgc2VydmVzIHRvDQogICAgICAgIGRpc3Rpbmd1aXNoIHRoZW0gZnJvbSBzeXN0ZW0gc3Bl Y2lmaWMgYW5kIHdlbGwga25vd24gYXR0cmlidXRlcy4NCiAgICAtLSA+DQo8IUVMRU1FTlQgdmFs dWUgKCNQQ0RBVEF8Y2hhcikqDQogICAgLS0NCiAgICAgICAgVGhlIHZhbHVlIG9mIGFuIGF0dHJp YnV0ZSBpcyB1bmNvbnN0cmFpbmVkLiAgSXQgY2FuIGJlIGFueXRoaW5nLA0KICAgICAgICBiaW5h cnkgb3IgdGV4dC4gIFRoZSBpbnRlcnByZXRhdGlvbiBvZiB0aGUgdmFsdWUgZGVwZW5kcyBvbiB0 aGUNCiAgICAgICAgcmVjZWl2aW5nIHN5c3RlbS4NCg0KICAgICAgICBGb3IgYXR0cmlidXRlcyB3 aXRoIHdlbGwga25vd24gbmFtZXMsIHRoZSBpbnRlcnByZXRhdGlvbiBvZiB0aGUNCiAgICAgICAg dmFsdWUgd2lsbCBiZSBkZWZpbmUgd2hlbiB0aGUgd2VsbCBrbm93biBuYW1lIGlzIGRlZmluZWQu DQogICAgLS0gPg0KPCFFTEVNRU5UIG1vdmUgKCNQQ0RBVEF8Y2hhcikqDQogICAgLS0NCiAgICAg ICAgVGhpcyBlbGVtZW50IGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgZGVzdGluYXRpb24gZmlsZSBu YW1lIHdoZW4gYQ0KICAgICAgICBmaWxlIGlzIGJlaW5nIHJlbmFtZWQgb3IgbW92ZWQuDQoNCglJ dCBpcyBwcm9iYWJseSBuZWVkZWQgZm9yIHRoZSAiY2xvbmUiIGFjdGlvbiwgYXMgd2VsbC4NCiAg ICAtLSA+DQoNCjwhLS0gUE1pbGxlcjogVGhpcyBuZXh0IHNlY3Rpb24gaXMgZm9yIFNHTUwgcGFy c2Vycywgd2hpY2ggbmVlZCB0bw0KICAgICBiZSBpbmZvcm1lZCBvZiB0aGUgbmFtZXMgb2Ygc3Bl Y2lhbCBlbnRpdGllcyAmYW1wOywgJmx0OywgJmd0Ow0KICAgICBhbmQgJnF1b3Q7LiAgVGhlIGFs dGVybmF0aXZlIGlzIHRvIGRlZmluZSB0aGVtIGhlcmUgaW5zdGVhZCBvZg0KICAgICBpbmNsdWRp bmcgdGhlIHJldm1sLmVudGl0aWVzIGZpbGUuIC0tPg0KPCFFTlRJVFkgJSBSZXZNTHN5bWJvbCBQ VUJMSUMNCiAgICAgICAiLS8vLS8vRU5USVRJRVMgU3ltYm9saWMvL0VOLy9SZXZNTCIgInJldm1s LmVudGl0aWVzIj4NCiVSZXZNTHN5bWJvbDsNCn== --=-peE4xTKX43+WUycvWfpn Content-Disposition: attachment; filename=revml.entities Content-Type: text/plain; name=revml.entities; charset=ISO-8859-1 Content-Transfer-Encoding: base64 DQoNCjwhLS0gU29tZSBnZW5lcmFsIGVudGl0aWVzIGZvciBlbmNvZGluZyBtYWdpYyBjaGFyYWN0 ZXJzLiAtLT4NCjwhRU5USVRZIHF1b3QgQ0RBVEEgIiYjMzQ7IiAtLSBxdW90YXRpb24gbWFyayA9 IEFQTCBxdW90ZSwgVSswMDIyIElTT251bSAtLT4NCjwhRU5USVRZIGFtcCAgQ0RBVEEgIiYjMzg7 IiAtLSBhbXBlcnNhbmQsIFUrMDAyNiBJU09udW0gLS0+DQo8IUVOVElUWSBsdCAgIENEQVRBICIm IzYwOyIgLS0gbGVzcy10aGFuIHNpZ24sIFUrMDAzQyBJU09udW0gLS0+DQo8IUVOVElUWSBndCAg IENEQVRBICImIzYyOyIgLS0gZ3JlYXRlci10aGFuIHNpZ24sIFUrMDAzRSBJU09udW0gLS0+DQo= --=-peE4xTKX43+WUycvWfpn-- --=-QrjsBZRTTzbV2uRgLxUy Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (GNU/Linux) iD8DBQBB6kvuGNik4tDttk0RAi0QAJ43PFRZpxSU/ulc0rC+GUTU6qBNwQCgjyA6 7WiZ/004DOw42n4gJ47abkI= =pXx7 -----END PGP SIGNATURE----- --=-QrjsBZRTTzbV2uRgLxUy--