[PATCH branch-1.6 v2 4/4] eval: Fine-tune default size of eval
Eric Blake via M4-patches <[email protected]> Sat, 17 May 2025 22:08:49 -0500
| Newsgroups | gmane.comp.gnu.m4.patches |
|---|---|
| Message-ID | <[email protected]> |
QWRkIGEgbmV3IC0tZXZhbD0zMnw2NCBjb21tYW5kIGxpbmUgb3B0aW9uLCB0byBtYWtlIGl0IGVh c3kgdG8gc2V0IHRoZQpzaXplIG9mIGV2YWwuICBJZiBub3QgcHJlc2VudCwgdGhlbiBpbiAtLWdu dSBtb2RlLCBldmFsIHJlbWFpbnMgMzIKYml0cyAoc2luY2UgZXZhbDY0IGlzIGVhc3kgdG8gYWNj ZXNzIGFuZCBpbnN0YWxsIGFzIGFuIG92ZXJyaWRlKTsKd2hpbGUgaW4gLUcgbW9kZSwgZXZhbCBp cyBzaXplZCB0byBtYXRjaCAnc2lnbmVkIGxvbmcnIGFzIHBlciBQT1NJWAooZWl0aGVyIDMyLSBv ciA2NC1iaXQsIGRlcGVuZGluZyBvbiB0aGUgbWFjaGluZSBtNCB3YXMgY29tcGlsZWQgZm9yKS4K VGVzdGluZyB0aGlzIG91Z2h0IHRvIGJlIGludGVyZXN0aW5nLCBzaW5jZSB0aGlzIGlzIG9uZSBj YXNlIHdoZXJlIG00CmludGVudGlvbmFsbHkgYmVoYXZlcyBkaWZmZXJlbnRseSBiYXNlZCBvbiB0 aGUgcGxhdGZvcm0uCgoqIHNyYy9tNC5oIChldmFsX3NpemUpOiBOZXcgZ2xvYmFsLgooZGVmaW5l X2J1aWx0aW4pOiBBbHRlciBzaWduYXR1cmUuCiogc3JjL200LmMgKHVzYWdlKTogRG9jdW1lbnQg LS1ldmFsLgooZXZhbF9zaXplLCBFVkFMX1NJWkVfT1BUSU9OLCBsb25nX29wdGlvbnMsIG1haW4p OiBIYW5kbGUgbmV3IG9wdGlvbi4KKiBzcmMvYnVpbHRpbi5jIChkZWZpbmVfYnVpbHRpbik6IEFk ZCByZXR1cm4gdHlwZS4KKGJ1aWx0aW5faW5pdCk6IFVzZSB0aGlzIHRvIGFsdGVyIGRlZmF1bHQg bW9kZSBvZiBldmFsLgoqIGRvYy9tNC50ZXhpIChMaW1pdHMgY29udHJvbCk6IERvY3VtZW50IC0t ZXZhbCwgYW5kIGl0cyBpbnRlcmFjdGlvbnMKd2l0aCAtLWdudSBhbmQgLS10cmFkaXRpb25hbC4K KEV2YWwpOiBNZW50aW9uIG1vcmUgb24gZGVmYXVsdCBzaXppbmcgb2YgZXZhbCwgYW5kIGFkZCB0 ZXN0LgoqIE5FV1M6IE1lbnRpb24gdGhpcy4KLS0tCiBORVdTICAgICAgICAgIHwgIDcgKysrKy0K IGRvYy9tNC50ZXhpICAgfCA3NiArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrLS0KIHNyYy9idWlsdGluLmMgfCAxMyArKysrKysrLS0KIHNyYy9tNC5jICAg ICAgfCAxNiArKysrKysrKysrKwogc3JjL200LmggICAgICB8ICA1ICsrLS0KIDUgZmlsZXMgY2hh bmdlZCwgMTA4IGluc2VydGlvbnMoKyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvTkVX UyBiL05FV1MKaW5kZXggZGQzZWEwNGIuLjQ1NzUwMTczIDEwMDY0NAotLS0gYS9ORVdTCisrKyBi L05FV1MKQEAgLTEzMiw3ICsxMzIsMTIgQEAgR05VIE00IE5FV1MgLSBVc2VyIHZpc2libGUgY2hh bmdlcy4KICAgIGJ1aWx0aW4gbm93IHJlZnVzZXMgdG8gcmVjb2duaXplIGA9JyBhcyBhIHN5bm9u eW0gZm9yIGA9PScgKHRoaXMgaGFkCiAgICBlbWl0dGVkIGEgd2FybmluZyBzaW5jZSAxLjQuOGIp LgoKLSoqIEFkZCBhIG5ldyBgZXZhbDY0JyBidWlsdGluIHRoYXQgb3BlcmF0ZXMgb24gNjQtYml0 IGludGVnZXJzLgorKiogQWRkIGEgbmV3IGBldmFsNjQnIGJ1aWx0aW4gdGhhdCBvcGVyYXRlcyBv biA2NC1iaXQgaW50ZWdlcnMuICBCeQorICAgZGVmYXVsdCwgYm90aCBgZXZhbCcgYW5kIGBldmFs NjQnIGFyZSBhdmFpbGFibGUgd2l0aCBgZXZhbCcgaW4gMzItYml0CisgICBtb2RlOyB3aGVuIGBt NCAtRycgaXMgdXNlZCB0byBoaWRlIEdOVSBleHRlbnNpb25zLCBvbmx5IGBldmFsJyBpcworICAg YXZhaWxhYmxlIGJ1dCB1c2luZyB0aGUgc2l6ZSBvZiBgc2lnbmVkIGxvbmcnLiAgVGhlIG5ldyBj b21tYW5kLWxpbmUKKyAgIG9wdGlvbiBgLS1ldmFsPTMyJyBvciBgLS1ldmFsPTY0JyBjYW4gYWxz byBmb3JjZSB0aGUgaW50ZWdlciBzaXplIHVzZWQKKyAgIGJ5IGBldmFsJy4KCiAqKiBBIG51bWJl ciBvZiBwb3J0YWJpbGl0eSBpbXByb3ZlbWVudHMgaW5oZXJpdGVkIGZyb20gZ251bGliLgoKZGlm ZiAtLWdpdCBhL2RvYy9tNC50ZXhpIGIvZG9jL200LnRleGkKaW5kZXggYjBhMzVlYWUuLmM2NDJh OWViIDEwMDY0NAotLS0gYS9kb2MvbTQudGV4aQorKysgYi9kb2MvbTQudGV4aQpAQCAtODA3LDYg KzgwNywxMiBAQCBMaW1pdHMgY29udHJvbAogQGNvZGV7bTR9LgoKIEB0YWJsZSBAY29kZQorQGl0 ZW0gLS1ldmFsIEB2YXJ7c2l6ZX0KK1RoaXMgb3B0aW9uIGZvcmNlcyBAY29kZXtldmFsfSAoQHB4 cmVme0V2YWx9KSB0byB1c2UgdGhlIGdpdmVuCitAdmFye3NpemV9IG9mIDMyIG9yIDY0LCByYXRo ZXIgdGhhbiBkZWZhdWx0aW5nIHRvIDMyIGJpdHMgdW5kZXIKK0BvcHRpb257LS1nbnV9IG9yIHRv IHRoZSBzaXplIG9mIEBjb2Rle3NpZ25lZCBsb25nfSB1bmRlcgorQG9wdGlvbnstLXRyYWRpdGlv bmFsfS4KKwogQGl0ZW0gLWcKIEBpdGVteCAtLWdudQogRW5hYmxlIGFsbCB0aGUgZXh0ZW5zaW9u cyBpbiB0aGlzIGltcGxlbWVudGF0aW9uLiAgSW4gdGhpcyByZWxlYXNlIG9mCkBAIC04MjcsNyAr ODMzLDExIEBAIExpbWl0cyBjb250cm9sCiBAaXRlbSAtRwogQGl0ZW14IC0tdHJhZGl0aW9uYWwK IFN1cHByZXNzIGFsbCB0aGUgZXh0ZW5zaW9ucyBtYWRlIGluIHRoaXMgaW1wbGVtZW50YXRpb24s IGNvbXBhcmVkIHRvIHRoZQotU3lzdGVtIFYgdmVyc2lvbi4gIEB4cmVme0NvbXBhdGliaWxpdHl9 LCBmb3IgYSBsaXN0IG9mIHRoZXNlLgorU3lzdGVtIFYgdmVyc2lvbjsgdGhpcyBtb2RlIGZvY3Vz ZXMgb24gUE9TSVggY29tcGF0aWJpbGl0eS4KK0B4cmVme0NvbXBhdGliaWxpdHl9LCBmb3IgYSBs aXN0IG9mIGl0ZW1zIHRoYXQgYXJlIHN1cHByZXNzZWQuICBTaW5jZQordGhpcyBtb2RlIHN1cHBy ZXNzZXMgQGNvZGV7ZXZhbDY0fSwgdGhlIEBjb2Rle2V2YWx9IG1hY3JvIGRlZmF1bHRzIHRvCit0 aGUgc2l6ZSBvZiBAY29kZXtzaWduZWQgbG9uZ30gdW5sZXNzIEBvcHRpb257LS1ldmFsfSBpcyBh bHNvIHVzZWQgdG8KK3BpY2sgYSBzcGVjaWZpYyBzaXplLgoKIEBpdGVtIC1IIEB2YXJ7bnVtfQog QGl0ZW14IC0taGFzaHNpemU9QHZhcntudW19CkBAIC03MzcxLDggKzczODEsMTEgQEAgRXZhbAog QHJlc3VsdHt9CiBAZW5kIGV4YW1wbGUKCi1JZiB5b3VyIHNjcmlwdCB3YW50cyB0byB1c2UgbGFy Z2VyIG1hdGggYnkgZGVmYXVsdCwgaXQgaXMgZWFzeSB0bwotYXJyYW5nZSBmb3IgdGhhdCB1cCBm cm9udCB3aXRoIEBjb2Rle2RlZm59OgorV2hlbiB1c2luZyBNNCB3aXRoIEdOVSBleHRlbnNpb25z ICh0aGUgZGVmYXVsdCwgb3Igd2hlbiBAb3B0aW9uey0tZ251fQord2FzIHNwZWNpZmllZCksIEBj b2Rle2V2YWx9IHN0YXJ0cyBpbiAzMi1iaXQgbW9kZS4gIElmIHlvdXIgc2NyaXB0IHdhbnRzCit0 byB1c2UgbGFyZ2VyIG1hdGggYnkgZGVmYXVsdCwgaXQgaXMgZWFzeSB0byBhcnJhbmdlIGZvciB0 aGF0IHVwIGZyb250Cit3aXRoIEBjb2Rle2RlZm59LCB3aGlsZSAzMi1iaXQgbW9kZSBpcyBzdGls bCBhY2Nlc3NpYmxlIHVzaW5nCitAY29kZXtidWlsdGlufToKCiBAZXhhbXBsZQogZXZhbChgOTAw MDAgKiA5MDAwMCcpCkBAIC03MzgxLDggKzczOTQsNjUgQEAgRXZhbAogQHJlc3VsdHt9CiBldmFs KGA5MDAwMCAqIDkwMDAwJykKIEByZXN1bHR7fTgxMDAwMDAwMDAKK2J1aWx0aW4oYGV2YWwnLCBg OTAwMDAgKiA5MDAwMCcpCitAcmVzdWx0e30tNDg5OTM0NTkyCiBAZW5kIGV4YW1wbGUKCitCdXQg d2hlbiB1c2luZyBAb3B0aW9uey0tdHJhZGl0aW9uYWx9IG1vZGUgZm9yIG1heGltdW0gUE9TSVgg Y29tcGxpYW5jZSwKK3RoZXJlIGlzIG5vIGFjY2VzcyB0byBlaXRoZXIgb2YgdGhlIGV4dGVuc2lv biBtYWNyb3MgQGNvZGV7ZXZhbDY0fSBvcgorQGNvZGV7YnVpbHRpbn0sIHNvIEBjb2Rle2V2YWx9 IGRlZmF1bHRzIHRvIHVzaW5nIHRoZSBzaXplIG9mIHRoZQorcGxhdGZvcm0ncyBAY29kZXtzaWdu ZWQgbG9uZ30uICBJZiB0aGlzIGRlZmF1bHQgbmVlZHMgdG8gYmUgdHVuZWQsIE00CithbHNvIGhh cyBAb3B0aW9uey0tZXZhbD0zMn0gb3IgQG9wdGlvbnstLWV2YWw9NjR9IHRvIGZvcmNlIHRoZSBz aXplIHVzZWQKK2J5IHRoZSBpbml0aWFsIGRlZmluaXRpb24gb2YgQGNvZGV7ZXZhbH0gQHB4cmVm e0xpbWl0cyBjb250cm9sLCAsCitJbnZva2luZyBtNH0pLiAgRm9yIGV4YW1wbGUsIGlmIHlvdSBh cmUgdGVzdGluZyBvbiBhIDY0LWJpdCBwbGF0Zm9ybToKKworQGNvbW1lbnQgVGhpcyBvdXRwdXQg aXMgcGxhdGZvcm0tc3BlY2lmaWMsIHNlZSBiZWxvdyBmb3IgYSBiZXR0ZXIgdW5pdCB0ZXN0Lgor QGNvbW1lbnQgaWdub3JlCitAZXhhbXBsZQorJCBAa2Jke200IC0tZ251fQoraWZlbHNlKGZvcm1h dChgJWx1JywgYC0xJyksIGAxODQ0Njc0NDA3MzcwOTU1MTYxNScsCitgbG9uZyBpcyA2NCBiaXRz JywgYGxvbmcgaXMgMzIgYml0cycpCitAcmVzdWx0e31sb25nIGlzIDY0IGJpdHMKK2R1bXBkZWYo YGV2YWwnKWRubAorQGVycm9ye31ldmFsOkB0YWJjaGFye308ZXZhbD4KK200ZXhpdAorJCBAa2Jk e200IC1HfQorNjQtYml0IGRlZmF1bHQ6IGV2YWwoYDEgPDwgMzMnKQorQHJlc3VsdHt9NjQtYml0 IGRlZmF1bHQ6IDg1ODk5MzQ1OTIKK2R1bXBkZWYoYGV2YWwnKWRubAorQGVycm9ye31ldmFsOkB0 YWJjaGFye308ZXZhbDY0PgorbTRleGl0CiskIEBrYmR7bTQgLUcgLS1ldmFsPTMyfQorZm9yY2Vk IDMyLWJpdDogZXZhbChgMSA8PCAzMycpCitAcmVzdWx0e31mb3JjZWQgMzItYml0OiAyCitkdW1w ZGVmKGBldmFsJylkbmwKK0BlcnJvcnt9ZXZhbDpAdGFiY2hhcnt9PGV2YWw+CittNGV4aXQKK0Bl bmQgZXhhbXBsZQorCitAaWdub3JlCitAY29tbWVudCBUaGlzIGlzIGEgbW9yZSByZWxpYWJsZSB0 ZXN0IG9mIHRoZSBhYm92ZSBleGFtcGxlLgorQGV4YW1wbGUKK2lmZGVmKGBfX3VuaXhfXycsICwK KyAgICAgIGBlcnJwcmludChgIHNraXBwaW5nOiBzeXNjbWQgZG9lcyBub3QgaGF2ZSB1bml4IHNl bWFudGljcworJyltNGV4aXQoYDc3JyknKWRubAorY2hhbmdlcXVvdGUoYFsnLCBgXScpZG5sCitp ZmVsc2UoZXN5c2NtZChbcHJpbnRmICdmb3JtYXQoJSVseCw0Mjk0OTY3Mjk2KScgfCBdX19wcm9n cmFtX19bIC0tZ251XSkKKy4wLnN5c3ZhbCwKKyAgICAgICBlc3lzY21kKFtwcmludGYgJ2V2YWwo MHgxMDAwMDAwMDAsMTYpJyB8IF1fX3Byb2dyYW1fX1sgLUddKQorLnN5c3ZhbC4wLAorICAgICAg IFttYXRjaF0sIFtvb3BzXSkKK0ByZXN1bHR7fW1hdGNoCitkZWZpbmUoW3Byb2JlXSwgW2V2YWwo MTw8MzMpZHVtcGRlZihldmFsKV0pZG5sCitzeXNjbWQoW3ByaW50ZiAnXWRlZm4oW3Byb2JlXSlb JyB8IF1fX3Byb2dyYW1fX1sgLUcgLS1ldmFsPTMyXSkgc3lzdmFsCitAcmVzdWx0e30yIDAKK0Bl cnJvcnt9ZXZhbDpAdGFiY2hhcnt9PGV2YWw+CitzeXNjbWQoW3ByaW50ZiAnXWRlZm4oW3Byb2Jl XSlbJyB8IF1fX3Byb2dyYW1fX1sgLS1nbnUgLS1ldmFsPTY0XSkgc3lzdmFsCitAcmVzdWx0e304 NTg5OTM0NTkyIDAKK0BlcnJvcnt9ZXZhbDpAdGFiY2hhcnt9PGV2YWw2ND4KK0BlbmQgZXhhbXBs ZQorQGVuZCBpZ25vcmUKKwogSWYgQHZhcntyYWRpeH0gaXMgc3BlY2lmaWVkLCBpdCBzcGVjaWZp ZXMgdGhlIHJhZGl4IHRvIGJlIHVzZWQgaW4gdGhlCiBleHBhbnNpb24uICBUaGUgZGVmYXVsdCBy YWRpeCBpcyAxMDsgdGhpcyBpcyBhbHNvIHRoZSBjYXNlIGlmCiBAdmFye3JhZGl4fSBpcyB0aGUg ZW1wdHkgc3RyaW5nLiAgQSB3YXJuaW5nIHJlc3VsdHMgaWYgdGhlIHJhZGl4IGlzCmRpZmYgLS1n aXQgYS9zcmMvYnVpbHRpbi5jIGIvc3JjL2J1aWx0aW4uYwppbmRleCBiYmE4MGUzMy4uZTdhODJj NGEgMTAwNjQ0Ci0tLSBhL3NyYy9idWlsdGluLmMKKysrIGIvc3JjL2J1aWx0aW4uYwpAQCAtMjI0 LDcgKzIyNCw3IEBAIGZ1bmNfcHJpbnQgKHN0cnVjdCBvYnN0YWNrICpvYnMsIGNvbnN0IGJ1aWx0 aW4gKmZ1bmMsIGJvb2wgZmxhdHRlbiwKIC8qIEluc3RhbGwgYSBidWlsdGluIG1hY3JvIHdpdGgg bmFtZSBOQU1FIGFuZCBsZW5ndGggTEVOLCBib3VuZCB0byB0aGUKICAgIEMgZnVuY3Rpb24gZ2l2 ZW4gaW4gQlAuICBNT0RFIGlzIFNZTUJPTF9JTlNFUlQgb3IKICAgIFNZTUJPTF9QVVNIREVGLiAg Ki8KLXZvaWQKK3N5bWJvbCAqCiBkZWZpbmVfYnVpbHRpbiAoY29uc3QgY2hhciAqbmFtZSwgc2l6 ZV90IGxlbiwgY29uc3QgYnVpbHRpbiAqYnAsCiAgICAgICAgICAgICAgICAgc3ltYm9sX2xvb2t1 cCBtb2RlKQogewpAQCAtMjM1LDYgKzIzNSw3IEBAIGRlZmluZV9idWlsdGluIChjb25zdCBjaGFy ICpuYW1lLCBzaXplX3QgbGVuLCBjb25zdCBidWlsdGluICpicCwKICAgU1lNQk9MX01BQ1JPX0FS R1MgKHN5bSkgPSBicC0+Z3Jva3NfbWFjcm9fYXJnczsKICAgU1lNQk9MX0JMSU5EX05PX0FSR1Mg KHN5bSkgPSBicC0+YmxpbmRfaWZfbm9fYXJnczsKICAgU1lNQk9MX0ZVTkMgKHN5bSkgPSBicC0+ ZnVuYzsKKyAgcmV0dXJuIHN5bTsKIH0KCiAvKiBTdG9yYWdlIGZvciB0aGUgY29tcGlsZWQgcmVn dWxhciBleHByZXNzaW9uIG9mCkBAIC00ODcsNiArNDg4LDcgQEAgYnVpbHRpbl9pbml0ICh2b2lk KQogICBjb25zdCBidWlsdGluICpicDsKICAgY29uc3QgcHJlZGVmaW5lZCAqcHA7CiAgIGNoYXIg KnN0cmluZzsKKyAgc3ltYm9sICpzeW07CgogICBmb3IgKGJwID0gJmJ1aWx0aW5fdGFiWzBdOyBi cC0+bmFtZSAhPSBOVUxMOyBicCsrKQogICAgIGlmICghbm9fZ251X2V4dGVuc2lvbnMgfHwgIWJw LT5nbnVfZXh0ZW5zaW9uKQpAQCAtNDk1LDExICs0OTcsMTYgQEAgYnVpbHRpbl9pbml0ICh2b2lk KQogICAgICAgICBpZiAocHJlZml4X2FsbF9idWlsdGlucykKICAgICAgICAgICB7CiAgICAgICAg ICAgICBzdHJpbmcgPSB4YXNwcmludGYgKCJtNF8lcyIsIGJwLT5uYW1lKTsKLSAgICAgICAgICAg IGRlZmluZV9idWlsdGluIChzdHJpbmcsIGxlbiArIDMsIGJwLCBTWU1CT0xfSU5TRVJUKTsKKyAg ICAgICAgICAgIHN5bSA9IGRlZmluZV9idWlsdGluIChzdHJpbmcsIGxlbiArIDMsIGJwLCBTWU1C T0xfSU5TRVJUKTsKICAgICAgICAgICAgIGZyZWUgKHN0cmluZyk7CiAgICAgICAgICAgfQogICAg ICAgICBlbHNlCi0gICAgICAgICAgZGVmaW5lX2J1aWx0aW4gKGJwLT5uYW1lLCBsZW4sIGJwLCBT WU1CT0xfSU5TRVJUKTsKKyAgICAgICAgICBzeW0gPSBkZWZpbmVfYnVpbHRpbiAoYnAtPm5hbWUs IGxlbiwgYnAsIFNZTUJPTF9JTlNFUlQpOworICAgICAgICAvKiBTcGVjaWFsIGNhc2UgdGhlIGlu aXRpYWwgd2lkdGggb2YgZXZhbC4gICovCisgICAgICAgIGlmIChicC0+ZnVuYyA9PSBtNF9ldmFs CisgICAgICAgICAgICAmJiAoZXZhbF9zaXplID09IDY0IHx8IChldmFsX3NpemUgPT0gMCAmJiBu b19nbnVfZXh0ZW5zaW9ucworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJiYg c2l6ZW9mIChsb25nKSAqIENIQVJfQklUID09IDY0KSkpCisgICAgICAgICAgU1lNQk9MX0ZVTkMg KHN5bSkgPSBtNF9ldmFsNjQ7CiAgICAgICB9CgogICBmb3IgKHBwID0gJnByZWRlZmluZWRfdGFi WzBdOyBwcC0+ZnVuYyAhPSBOVUxMOyBwcCsrKQpkaWZmIC0tZ2l0IGEvc3JjL200LmMgYi9zcmMv bTQuYwppbmRleCA4OWEyZWMyZi4uYTEzNjAyOWUgMTAwNjQ0Ci0tLSBhL3NyYy9tNC5jCisrKyBi L3NyYy9tNC5jCkBAIC00Nyw2ICs0Nyw5IEBAIGludCBkZWJ1Z19sZXZlbCA9IDA7CiAvKiBEaXNh YmxlIEdOVSBleHRlbnNpb25zICgtRykuICAqLwogaW50IG5vX2dudV9leHRlbnNpb25zID0gMDsK CisvKiBEZWZhdWx0IGV2YWwgc2l6ZSAoLS1ldmFsKTogT25lIG9mIDAsIDMyLCBvciA2NC4gICov CitpbnQgZXZhbF9zaXplID0gMDsKKwogLyogUHJlZml4IGFsbCBidWlsdGluIGZ1bmN0aW9ucyBi eSBgbTRfJy4gICovCiBpbnQgcHJlZml4X2FsbF9idWlsdGlucyA9IDA7CgpAQCAtMjcwLDYgKzI3 Myw3IEBAIFByZXByb2Nlc3NvciBmZWF0dXJlczpcblwKICAgICAgIHB1dHMgKCIiKTsKICAgICAg IHhwcmludGYgKF8oIlwKIExpbWl0cyBjb250cm9sOlxuXAorICAgICAgLS1ldmFsPVNJWkUgICAg ICAgICAgICAgIGZvcmNlIGV2YWwgdG8gU0laRSAzMiBvciA2NFxuXAogICAtZywgLS1nbnUgICAg ICAgICAgICAgICAgICAgIG92ZXJyaWRlIC1HIHRvIHJlLWVuYWJsZSBHTlUgZXh0ZW5zaW9uc1xu XAogICAtRywgLS10cmFkaXRpb25hbCAgICAgICAgICAgIHN1cHByZXNzIGFsbCBHTlUgZXh0ZW5z aW9uc1xuXAogICAtSCwgLS1oYXNoc2l6ZT1QUklNRSAgICAgICAgIHNldCBzeW1ib2wgbG9va3Vw IGhhc2ggdGFibGUgc2l6ZSBbJWRdXG5cCkBAIC0zMzIsNiArMzM2LDcgQEAgbWlzbWF0Y2gsIG9y IHdoYXRldmVyIHZhbHVlIHdhcyBwYXNzZWQgdG8gdGhlIG00ZXhpdCBtYWNyby5cblwKIGVudW0K IHsKICAgREVCVUdGSUxFX09QVElPTiA9IENIQVJfTUFYICsgMSwgICAgICAvKiBubyBzaG9ydCBv cHQgKi8KKyAgRVZBTF9TSVpFX09QVElPTiwgICAgICAgICAgICAgLyogbm8gc2hvcnQgb3B0ICov CiAgIFdBUk5fTUFDUk9fU0VRVUVOQ0VfT1BUSU9OLCAgIC8qIG5vIHNob3J0IG9wdCAqLwoKICAg SEVMUF9PUFRJT04sICAgICAgICAgICAgICAgICAgLyogbm8gc2hvcnQgb3B0ICovCkBAIC0zNjIs NiArMzY3LDcgQEAgc3RhdGljIGNvbnN0IHN0cnVjdCBvcHRpb24gbG9uZ19vcHRpb25zW10gPSB7 CiAgIHsidW5kZWZpbmUiLCByZXF1aXJlZF9hcmd1bWVudCwgTlVMTCwgJ1UnfSwKCiAgIHsiZGVi dWdmaWxlIiwgb3B0aW9uYWxfYXJndW1lbnQsIE5VTEwsIERFQlVHRklMRV9PUFRJT059LAorICB7 ImV2YWwtc2l6ZSIsIHJlcXVpcmVkX2FyZ3VtZW50LCBOVUxMLCBFVkFMX1NJWkVfT1BUSU9OfSwK ICAgeyJ3YXJuLW1hY3JvLXNlcXVlbmNlIiwgb3B0aW9uYWxfYXJndW1lbnQsIE5VTEwsCiAgICBX QVJOX01BQ1JPX1NFUVVFTkNFX09QVElPTn0sCgpAQCAtNjM0LDYgKzY0MCwxNiBAQCBtYWluIChp bnQgYXJnYywgY2hhciAqY29uc3QgKmFyZ3YsIGNoYXIgKmNvbnN0ICplbnZwIE1BWUJFX1VOVVNF RCkKICAgICAgICAgZGVidWdmaWxlID0gb3B0YXJnOwogICAgICAgICBicmVhazsKCisgICAgICBj YXNlIEVWQUxfU0laRV9PUFRJT046CisgICAgICAgIGlmIChTVFJFUSAob3B0YXJnLCAiMzIiKSkK KyAgICAgICAgICBldmFsX3NpemUgPSAzMjsKKyAgICAgICAgZWxzZSBpZiAoU1RSRVEgKG9wdGFy ZywgIjY0IikpCisgICAgICAgICAgZXZhbF9zaXplID0gNjQ7CisgICAgICAgIGVsc2UKKyAgICAg ICAgICBlcnJvciAoMCwgMCwgXygiaW52YWxpZCBldmFsIHNpemU6ICVzIiksCisgICAgICAgICAg ICAgICAgIHF1b3RlYXJnX3N0eWxlIChsb2NhbGVfcXVvdGluZ19zdHlsZSwgb3B0YXJnKSk7Cisg ICAgICAgIGJyZWFrOworCiAgICAgICBjYXNlIFdBUk5fTUFDUk9fU0VRVUVOQ0VfT1BUSU9OOgog ICAgICAgICAvKiBEb24ndCBjYWxsIHNldF9tYWNyb19zZXF1ZW5jZSBoZXJlLCBhcyBpdCBjYW4g ZXhpdC4KICAgICAgICAgICAgLS13YXJuLW1hY3JvLXNlcXVlbmNlIHNldHMgb3B0YXJnIHRvIE5V TEwgKHdoaWNoIHVzZXMgdGhlCmRpZmYgLS1naXQgYS9zcmMvbTQuaCBiL3NyYy9tNC5oCmluZGV4 IGMxNzM1MzE4Li4yMzkxMDNiMCAxMDA2NDQKLS0tIGEvc3JjL200LmgKKysrIGIvc3JjL200LmgK QEAgLTEzNCw2ICsxMzQsNyBAQCB0eXBlZGVmIHVuc2lnbmVkIGludCBib29sX2JpdGZpZWxkOwog ZXh0ZXJuIGludCBzeW5jX291dHB1dDsgICAgICAgICAvKiAtcyAqLwogZXh0ZXJuIGludCBkZWJ1 Z19sZXZlbDsgICAgICAgICAvKiAtZCAqLwogZXh0ZXJuIGludCBub19nbnVfZXh0ZW5zaW9uczsg ICAvKiAtRyAqLworZXh0ZXJuIGludCBldmFsX3NpemU7ICAgICAgICAgICAvKiAtLWV2YWwgKi8K IGV4dGVybiBpbnQgcHJlZml4X2FsbF9idWlsdGluczsgLyogLVAgKi8KIGV4dGVybiBzaXplX3Qg bWF4X2RlYnVnX2FyZ3VtZW50X2xlbmd0aDsgICAgICAgIC8qIC1sICovCiBleHRlcm4gaW50IHN1 cHByZXNzX3dhcm5pbmdzOyAgIC8qIC1RICovCkBAIC01MjEsOCArNTIyLDggQEAgc3RydWN0IHJl X3JlZ2lzdGVyczsKCiBleHRlcm4gdm9pZCBidWlsdGluX2luaXQgKHZvaWQpOwogZXh0ZXJuIGJv b2wgYmFkX2FyZ2MgKGNvbnN0IGNhbGxfaW5mbyAqLCBpbnQsIHVuc2lnbmVkIGludCwgdW5zaWdu ZWQgaW50KTsKLWV4dGVybiB2b2lkIGRlZmluZV9idWlsdGluIChjb25zdCBjaGFyICosIHNpemVf dCwgY29uc3QgYnVpbHRpbiAqLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN5bWJvbF9s b29rdXApOworZXh0ZXJuIHN5bWJvbCAqZGVmaW5lX2J1aWx0aW4gKGNvbnN0IGNoYXIgKiwgc2l6 ZV90LCBjb25zdCBidWlsdGluICosCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3lt Ym9sX2xvb2t1cCk7CiBleHRlcm4gdm9pZCBzZXRfbWFjcm9fc2VxdWVuY2UgKGNvbnN0IGNoYXIg Kik7CiBleHRlcm4gdm9pZCBmcmVlX3JlZ2V4ICh2b2lkKTsKIGV4dGVybiB2b2lkIGRlZmluZV91 c2VyX21hY3JvIChjb25zdCBjaGFyICosIHNpemVfdCwgY29uc3QgY2hhciAqLCBzaXplX3QsCi0t IAoyLjQ5LjAKCgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f XwpNNC1wYXRjaGVzIG1haWxpbmcgbGlzdApNNC1wYXRjaGVzQGdudS5vcmcKaHR0cHM6Ly9saXN0 cy5nbnUub3JnL21haWxtYW4vbGlzdGluZm8vbTQtcGF0Y2hlcwo=