• Bug#1109421: unblock: rust-virtiofsd/1.13.2-1 (2/3)

    From Michael Tokarev@21:1/5 to All on Thu Jul 17 14:30:01 2025
    [continued from previous message]

    ZmFsc2UsCkBAIC03MzgsMTIgKzc0OSwxMiBAQAogICAgICAgICAgICAgbGV0IHBpZF9maWxlX25h bWUgPSBzb2NrZXQudG9fb3duZWQoKSArICIucGlkIjsKICAgICAgICAgICAgIGxldCBwaWRfZmls ZV9wYXRoID0gUGF0aDo6bmV3KHBpZF9maWxlX25hbWUuYXNfc3RyKCkpOwogICAgICAgICAgICAg bGV0IHBpZF9maWxlID0gd3JpdGVfcGlkX2ZpbGUocGlkX2ZpbGVfcGF0aCkudW53cmFwX29yX2Vs c2UofGVycm9yfCB7Ci0gICAgICAgICAgICAgICAgZXJyb3IhKCJFcnJvciBjcmVhdGluZyBwaWQg ZmlsZSAne30nOiB7fSIsIHBpZF9maWxlX25hbWUsIGVycm9yKTsKKyAgICAgICAgICAgICAgICBl cnJvciEoIkVycm9yIGNyZWF0aW5nIHBpZCBmaWxlICd7cGlkX2ZpbGVfbmFtZX0nOiB7ZXJyb3J9 Iik7CiAgICAgICAgICAgICAgICAgcHJvY2Vzczo6ZXhpdCgxKTsKICAgICAgICAgICAgIH0pOwog CiAgICAgICAgICAgICBsZXQgbGlzdGVuZXIgPSBMaXN0ZW5lcjo6bmV3KHNvY2tldCwgdHJ1ZSku dW53cmFwX29yX2Vsc2UofGVycm9yfCB7Ci0gICAgICAgICAgICAgICAgZXJyb3IhKCJFcnJvciBj cmVhdGluZyBsaXN0ZW5lcjoge30iLCBlcnJvcik7CisgICAgICAgICAgICAgICAgZXJyb3IhKCJF cnJvciBjcmVhdGluZyBsaXN0ZW5lcjoge2Vycm9yfSIpOwogICAgICAgICAgICAgICAgIHByb2Nl c3M6OmV4aXQoMSk7CiAgICAgICAgICAgICB9KTsKIApAQCAtNzcxLDExICs3ODIsMjUgQEAKICAg ICAgICAgfQogICAgIH0KIAotICAgIGxpbWl0czo6c2V0dXBfcmxpbWl0X25vZmlsZShvcHQucmxp bWl0X25vZmlsZSkudW53cmFwX29yX2Vsc2UofGVycm9yfCB7Ci0gICAgICAgIGVycm9yISgiRXJy b3IgaW5jcmVhc2luZyBudW1iZXIgb2Ygb3BlbiBmaWxlczoge30iLCBlcnJvcik7CisgICAgbGV0 IGZkX2NvdW50X2xpbWl0ID0gbGltaXRzOjpzZXR1cF9ybGltaXRfbm9maWxlKG9wdC5ybGltaXRf bm9maWxlKS51bndyYXBfb3JfZWxzZSh8ZXJyb3J8IHsKKyAgICAgICAgZXJyb3IhKCJFcnJvciBp bmNyZWFzaW5nIG51bWJlciBvZiBvcGVuIGZpbGVzOiB7ZXJyb3J9Iik7CiAgICAgICAgIHByb2Nl c3M6OmV4aXQoMSkKICAgICB9KTsKIAorICAgIC8vIEFjY291bnQgZm9yIGd1ZXN0IEZEcyB0aGF0 IGFyZSBjcmVhdGVkIGZpcnN0IGFuZCBvbmx5IGFjY291bnRlZCBmb3IgdGhlbiAoc2VlIGRvYyBj b21tZW50IG9uCisgICAgLy8gYElOVEVSTkFMX0ZEX1JFU0VSVkVgCisgICAgbGV0IGludGVybmFs X2ZkX3Jlc2VydmUgPSBJTlRFUk5BTF9GRF9SRVNFUlZFICsgY21wOjptYXgob3B0LnRocmVhZF9w b29sX3NpemUgYXMgdTY0LCAxKTsKKyAgICBsZXQgZ3Vlc3RfZmRfbGltaXQgPSBmZF9jb3VudF9s aW1pdC5jaGVja2VkX3N1YihpbnRlcm5hbF9mZF9yZXNlcnZlKS51bndyYXBfb3JfZWxzZSh8fCB7 CisgICAgICAgIGVycm9yISgiTWF4aW11bSBudW1iZXIgb2YgZmlsZSBkZXNjcmlwdG9ycyB0b28g c21hbGw6IExpbWl0IGlzIHtmZF9jb3VudF9saW1pdH0sIG11c3QgYmUgYXQgbGVhc3Qge2ludGVy bmFsX2ZkX3Jlc2VydmV9Iik7CisgICAgICAgIHByb2Nlc3M6OmV4aXQoMSkKKyAgICB9KTsKKwor ICAgIC8vIFdhcm4gdGhlIHVzZXIgaWYgdGhlcmUgaXMgYSBzdXNwaWNpb3VzbHkgbG93IGxpbWl0 IG9uIHRoZSBndWVzdCBGRCBjb3VudCB0aGF0IHdpbGwgbWFrZSBpdAorICAgIC8vIGhhcmQgdG8g YWN0dWFsbHkgZG8gc29tZXRoaW5nOyB0aGUgbnVtYmVyIG9mIGAxMjhgIGlzIGNvbXBsZXRlbHkg YXJiaXRyYXJ5LgorICAgIGlmIGd1ZXN0X2ZkX2xpbWl0IDwgMTI4IHsKKyAgICAgICAgd2FybiEo IkZpbGUgZGVzY3JpcHRvciBjb3VudCBsaW1pdCBpcyB2ZXJ5IHNtYWxsLCBsZWF2aW5nIG9ubHkg e2d1ZXN0X2ZkX2xpbWl0fSBmaWxlIGRlc2NyaXB0b3JzIGZvciB0aGUgZ3Vlc3QiKTsKKyAgICB9 CisKICAgICBsZXQgbXV0IHNhbmRib3ggPSBTYW5kYm94OjpuZXcoCiAgICAgICAgIHNoYXJlZF9k aXIudG9fc3RyaW5nKCksCiAgICAgICAgIG9wdC5zYW5kYm94LApAQCAtNzgzLDE0ICs4MDgsMTQg QEAKICAgICAgICAgb3B0LmdpZF9tYXAsCiAgICAgKQogICAgIC51bndyYXBfb3JfZWxzZSh8ZXJy b3J8IHsKLSAgICAgICAgZXJyb3IhKCJFcnJvciBjcmVhdGluZyBzYW5kYm94OiB7fSIsIGVycm9y KTsKKyAgICAgICAgZXJyb3IhKCJFcnJvciBjcmVhdGluZyBzYW5kYm94OiB7ZXJyb3J9Iik7CiAg ICAgICAgIHByb2Nlc3M6OmV4aXQoMSkKICAgICB9KTsKIAogICAgIC8vIEVudGVyIHRoZSBzYW5k Ym94LCBmcm9tIHRoaXMgcG9pbnQgdGhlIHByb2Nlc3Mgd2lsbCBiZSBpc29sYXRlZCAob3Igbm90 KQogICAgIC8vIGFzIGNob3NlbiBpbiAnLS1zYW5kYm94Jy4KICAgICBsZXQgbGlzdGVuZXIgPSBz YW5kYm94LmVudGVyKGxpc3RlbmVyKS51bndyYXBfb3JfZWxzZSh8ZXJyb3J8IHsKLSAgICAgICAg ZXJyb3IhKCJFcnJvciBlbnRlcmluZyBzYW5kYm94OiB7fSIsIGVycm9yKTsKKyAgICAgICAgZXJy b3IhKCJFcnJvciBlbnRlcmluZyBzYW5kYm94OiB7ZXJyb3J9Iik7CiAgICAgICAgIHByb2Nlc3M6 OmV4aXQoMSkKICAgICB9KTsKIApAQCAtODIwLDYgKzg0NSw3IEBACiAgICAgICAgIG1pZ3JhdGlv bl9tb2RlOiBvcHQubWlncmF0aW9uX21vZGUsCiAgICAgICAgIHVpZF9tYXA6IFNvbWUob3B0LnRy YW5zbGF0ZV91aWQpLAogICAgICAgICBnaWRfbWFwOiBTb21lKG9wdC50cmFuc2xhdGVfZ2lkKSwK KyAgICAgICAgZ3Vlc3RfZmRfbGltaXQsCiAgICAgICAgIC4uRGVmYXVsdDo6ZGVmYXVsdCgpCiAg ICAgfTsKIApAQCAtODY0LDcgKzg5MCw3IEBACiAgICAgICAgICAgICAuc2V0X3RhZyh0YWcpCiAg ICAgICAgICAgICAuYnVpbGQoZnMpCiAgICAgICAgICAgICAudW53cmFwX29yX2Vsc2UofGVycm9y fCB7Ci0gICAgICAgICAgICAgICAgZXJyb3IhKCJFcnJvciBjcmVhdGluZyB2aG9zdC11c2VyIGJh Y2tlbmQ6IHt9IiwgZXJyb3IpOworICAgICAgICAgICAgICAgIGVycm9yISgiRXJyb3IgY3JlYXRp bmcgdmhvc3QtdXNlciBiYWNrZW5kOiB7ZXJyb3J9Iik7CiAgICAgICAgICAgICAgICAgcHJvY2Vz czo6ZXhpdCgxKQogICAgICAgICAgICAgfSksCiAgICAgKTsKQEAgLTg3OSw3ICs5MDUsNyBAQAog ICAgIGluZm8hKCJXYWl0aW5nIGZvciB2aG9zdC11c2VyIHNvY2tldCBjb25uZWN0aW9uLi4uIik7 CiAKICAgICBpZiBsZXQgRXJyKGUpID0gZGFlbW9uLnN0YXJ0KGxpc3RlbmVyKSB7Ci0gICAgICAg IGVycm9yISgiRmFpbGVkIHRvIHN0YXJ0IGRhZW1vbjogezo/fSIsIGUpOworICAgICAgICBlcnJv ciEoIkZhaWxlZCB0byBzdGFydCBkYWVtb246IHtlOj99Iik7CiAgICAgICAgIHByb2Nlc3M6OmV4 aXQoMSk7CiAgICAgfQogCkBAIC04ODgsNyArOTE0LDcgQEAKICAgICBpZiBsZXQgRXJyKGUpID0g ZGFlbW9uLndhaXQoKSB7CiAgICAgICAgIG1hdGNoIGUgewogICAgICAgICAgICAgSGFuZGxlUmVx dWVzdChEaXNjb25uZWN0ZWQpID0+IGluZm8hKCJDbGllbnQgZGlzY29ubmVjdGVkLCBzaHV0dGlu ZyBkb3duIiksCi0gICAgICAgICAgICBfID0+IGVycm9yISgiV2FpdGluZyBmb3IgZGFlbW9uIGZh aWxlZDogezo/fSIsIGUpLAorICAgICAgICAgICAgXyA9PiBlcnJvciEoIldhaXRpbmcgZm9yIGRh ZW1vbiBmYWlsZWQ6IHtlOj99IiksCiAgICAgICAgIH0KICAgICB9CiB9CmRpZmYgLU5ydSBydXN0 LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL29zbGliLnJzIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMv b3NsaWIucnMKLS0tIHJ1c3QtdmlydGlvZnNkLTEuMTMuMC9zcmMvb3NsaWIucnMJMjAwNi0wNy0y NCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMv b3NsaWIucnMJMjAwNi0wNy0yNCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKQEAgLTI4NiwxNyAr Mjg2LDE1IEBACiAgICAgICAgICAgICBPayhDRmlsZUhhbmRsZSB7CiAgICAgICAgICAgICAgICAg aGFuZGxlX2J5dGVzOiBzZmhfYnl0ZXMubGVuKCkudHJ5X2ludG8oKS5tYXBfZXJyKHxlcnJ8IHsK ICAgICAgICAgICAgICAgICAgICAgb3RoZXJfaW9fZXJyb3IoZm9ybWF0ISgKLSAgICAgICAgICAg ICAgICAgICAgICAgICJIYW5kbGUgc2l6ZSAoe30gYnl0ZXMpIHRvbyBiaWc6IHt9IiwKKyAgICAg ICAgICAgICAgICAgICAgICAgICJIYW5kbGUgc2l6ZSAoe30gYnl0ZXMpIHRvbyBiaWc6IHtlcnJ9 IiwKICAgICAgICAgICAgICAgICAgICAgICAgIHNmaF9ieXRlcy5sZW4oKSwKLSAgICAgICAgICAg ICAgICAgICAgICAgIGVycgogICAgICAgICAgICAgICAgICAgICApKQogICAgICAgICAgICAgICAg IH0pPywKICAgICAgICAgICAgICAgICAjW2FsbG93KGNsaXBweTo6dXNlbGVzc19jb252ZXJzaW9u KV0KICAgICAgICAgICAgICAgICBoYW5kbGVfdHlwZTogc2ZoLmhhbmRsZV90eXBlKCkudHJ5X2lu dG8oKS5tYXBfZXJyKHxlcnJ8IHsKICAgICAgICAgICAgICAgICAgICAgb3RoZXJfaW9fZXJyb3Io Zm9ybWF0ISgKLSAgICAgICAgICAgICAgICAgICAgICAgICJIYW5kbGUgdHlwZSAoMHh7Onh9KSB0 b28gbGFyZ2U6IHt9IiwKKyAgICAgICAgICAgICAgICAgICAgICAgICJIYW5kbGUgdHlwZSAoMHh7 Onh9KSB0b28gbGFyZ2U6IHtlcnJ9IiwKICAgICAgICAgICAgICAgICAgICAgICAgIHNmaC5oYW5k bGVfdHlwZSgpLAotICAgICAgICAgICAgICAgICAgICAgICAgZXJyCiAgICAgICAgICAgICAgICAg ICAgICkpCiAgICAgICAgICAgICAgICAgfSk/LAogICAgICAgICAgICAgICAgIGZfaGFuZGxlLApA QCAtNTMzLDEyICs1MzEsMTQgQEAKIC8vLyBTZXQgc3VwcGxlbWVudGFyeSBncm91cAogcHViIGZu IHNldHN1cGdyb3VwKGdpZDogSG9zdEdpZCkgLT4gaW86OlJlc3VsdDwoKT4gewogICAgIGxldCBn aWRfcmF3ID0gZ2lkLmludG9faW5uZXIoKTsKLSAgICBjaGVja19yZXR2YWwodW5zYWZlIHsgbGli Yzo6c2V0Z3JvdXBzKDEsICZnaWRfcmF3KSB9KT87CisgICAgY2hlY2tfcmV0dmFsKHVuc2FmZSB7 IGxpYmM6OnN5c2NhbGwobGliYzo6U1lTX3NldGdyb3VwcywgMSwgJmdpZF9yYXcpIH0pPzsKICAg ICBPaygoKSkKIH0KIAogLy8vIERyb3AgYWxsIHN1cHBsZW1lbnRhcnkgZ3JvdXBzCiBwdWIgZm4g ZHJvcHN1cGdyb3VwcygpIC0+IGlvOjpSZXN1bHQ8KCk+IHsKLSAgICBjaGVja19yZXR2YWwodW5z YWZlIHsgbGliYzo6c2V0Z3JvdXBzKDAsIHN0ZDo6cHRyOjpudWxsKCkpIH0pPzsKKyAgICBjaGVj a19yZXR2YWwodW5zYWZlIHsKKyAgICAgICAgbGliYzo6c3lzY2FsbChsaWJjOjpTWVNfc2V0Z3Jv dXBzLCAwLCBzdGQ6OnB0cjo6bnVsbDo6PGxpYmM6OmdpZF90PigpKQorICAgIH0pPzsKICAgICBP aygoKSkKIH0KZGlmZiAtTnJ1IHJ1c3QtdmlydGlvZnNkLTEuMTMuMC9zcmMvcGFzc3Rocm91Z2gv Y3JlZGVudGlhbHMucnMgcnVzdC12aXJ0aW9mc2QtMS4xMy4yL3NyYy9wYXNzdGhyb3VnaC9jcmVk ZW50aWFscy5ycwotLS0gcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhyb3VnaC9jcmVk ZW50aWFscy5ycwkyMDA2LTA3LTI0IDA1OjIxOjI4LjAwMDAwMDAwMCArMDQwMAorKysgcnVzdC12 aXJ0aW9mc2QtMS4xMy4yL3NyYy9wYXNzdGhyb3VnaC9jcmVkZW50aWFscy5ycwkyMDA2LTA3LTI0 IDA1OjIxOjI4LjAwMDAwMDAwMCArMDQwMApAQCAtMTIzLDEwICsxMjMsNyBAQAogCiAgICAgICAg IGxldCBjYXAgPSBjYXBuZzo6bmFtZV90b19jYXBhYmlsaXR5KGNhcF9uYW1lKS5tYXBfZXJyKHxf fCB7CiAgICAgICAgICAgICBsZXQgZXJyID0gaW86OkVycm9yOjpsYXN0X29zX2Vycm9yKCk7Ci0g ICAgICAgICAgICBlcnJvciEoCi0gICAgICAgICAgICAgICAgImNvdWxkbid0IGdldCB0aGUgY2Fw YWJpbGl0eSBpZCBmb3IgbmFtZSB7fTogezo/fSIsCi0gICAgICAgICAgICAgICAgY2FwX25hbWUs IGVycgotICAgICAgICAgICAgKTsKKyAgICAgICAgICAgIGVycm9yISgiY291bGRuJ3QgZ2V0IHRo ZSBjYXBhYmlsaXR5IGlkIGZvciBuYW1lIHtjYXBfbmFtZX06IHtlcnI6P30iKTsKICAgICAgICAg ICAgIGVycgogICAgICAgICB9KT87CiAKQEAgLTEzNywxNCArMTM0LDExIEBACiAgICAgICAgICAg ICAgICAgY2FwYWJpbGl0eTogY2FwLAogICAgICAgICAgICAgfV07CiAgICAgICAgICAgICBjYXBu Zzo6dXBkYXRlKHJlcSkubWFwX2Vycih8ZXwgewotICAgICAgICAgICAgICAgIGVycm9yISgiY291 bGRuJ3QgZHJvcCB7fSBjYXBhYmlsaXR5OiB7Oj99IiwgY2FwLCBlKTsKKyAgICAgICAgICAgICAg ICBlcnJvciEoImNvdWxkbid0IGRyb3Age2NhcH0gY2FwYWJpbGl0eToge2U6P30iKTsKICAgICAg ICAgICAgICAgICBlaW52YWwoKQogICAgICAgICAgICAgfSk/OwogICAgICAgICAgICAgY2Fwbmc6 OmFwcGx5KFNldDo6Q0FQUykubWFwX2Vycih8ZXwgewotICAgICAgICAgICAgICAgIGVycm9yISgK LSAgICAgICAgICAgICAgICAgICAgImNvdWxkbid0IGFwcGx5IGNhcGFiaWxpdGllcyBhZnRlciBk cm9wcGluZyB7fTogezo/fSIsCi0gICAgICAgICAgICAgICAgICAgIGNhcCwgZQotICAgICAgICAg ICAgICAgICk7CisgICAgICAgICAgICAgICAgZXJyb3IhKCJjb3VsZG4ndCBhcHBseSBjYXBhYmls aXRpZXMgYWZ0ZXIgZHJvcHBpbmcge2NhcH06IHtlOj99Iik7CiAgICAgICAgICAgICAgICAgZWlu dmFsKCkKICAgICAgICAgICAgIH0pPzsKICAgICAgICAgICAgIE9rKFNvbWUoU2VsZiB7IGNhcCB9 KSkKZGlmZiAtTnJ1IHJ1c3QtdmlydGlvZnNkLTEuMTMuMC9zcmMvcGFzc3Rocm91Z2gvZGV2aWNl X3N0YXRlL2Rlc2VyaWFsaXphdGlvbi5ycyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0 aHJvdWdoL2RldmljZV9zdGF0ZS9kZXNlcmlhbGl6YXRpb24ucnMKLS0tIHJ1c3QtdmlydGlvZnNk LTEuMTMuMC9zcmMvcGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL2Rlc2VyaWFsaXphdGlvbi5ycwky MDA2LTA3LTI0IDA1OjIxOjI4LjAwMDAwMDAwMCArMDQwMAorKysgcnVzdC12aXJ0aW9mc2QtMS4x My4yL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUvZGVzZXJpYWxpemF0aW9uLnJzCTIwMDYt MDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICswNDAwCkBAIC0yNSw3ICsyNSw3IEBACiB1c2Ugc3Rk Ojpjb252ZXJ0Ojp7VHJ5RnJvbSwgVHJ5SW50b307CiB1c2Ugc3RkOjppbzsKIHVzZSBzdGQ6OnN5 bmM6OmF0b21pYzo6e0F0b21pY1U2NCwgT3JkZXJpbmd9OwotdXNlIHN0ZDo6c3luYzo6e0FyYywg TXV0ZXgsIFJ3TG9ja307Cit1c2Ugc3RkOjpzeW5jOjp7QXJjLCBNdXRleH07CiAKIGltcGwgVHJ5 RnJvbTxWZWM8dTg+PiBmb3Igc2VyaWFsaXplZDo6UGFzc3Rocm91Z2hGcyB7CiAgICAgdHlwZSBF cnJvciA9IGlvOjpFcnJvcjsKQEAgLTM2MCwxMSArMzYwLDggQEAKICAgICAgICAgICAgIGlvOjpF cnJvcjo6bmV3KAogICAgICAgICAgICAgICAgIGVyci5raW5kKCksCiAgICAgICAgICAgICAgICAg Zm9ybWF0ISgKLSAgICAgICAgICAgICAgICAgICAgIk9wZW5pbmcge317fXt9OiB7fSIsCi0gICAg ICAgICAgICAgICAgICAgIHBmZCwKKyAgICAgICAgICAgICAgICAgICAgIk9wZW5pbmcge3BmZH17 fXtmaWxlbmFtZX06IHtlcnJ9IiwKICAgICAgICAgICAgICAgICAgICAgaWYgcGZkLmVuZHNfd2l0 aCgnLycpIHsgIiIgfSBlbHNlIHsgIi8iIH0sCi0gICAgICAgICAgICAgICAgICAgIGZpbGVuYW1l LAotICAgICAgICAgICAgICAgICAgICBlcnIKICAgICAgICAgICAgICAgICApLAogICAgICAgICAg ICAgKQogICAgICAgICB9KT87CkBAIC0zNzUsNyArMzcyLDcgQEAKICAgICAgICAgbGV0IGZpbGVf b3JfaGFuZGxlID0gaWYgbGV0IFNvbWUoaCkgPSBoYW5kbGUuYXNfcmVmKCkgewogICAgICAgICAg ICAgRmlsZU9ySGFuZGxlOjpIYW5kbGUoZnMubWFrZV9maWxlX2hhbmRsZV9vcGVuYWJsZShoKT8p CiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBGaWxlT3JIYW5kbGU6OkZpbGUoZmQpCisg ICAgICAgICAgICBGaWxlT3JIYW5kbGU6OkZpbGUoZnMuZ3Vlc3RfZmRzLmFsbG9jYXRlKGZkKT8p CiAgICAgICAgIH07CiAKICAgICAgICAgT2soSW5vZGVEYXRhIHsKQEAgLTQwNCw3ICs0MDEsNyBA QAogICAgICAgICBtYXRjaCBmcy5jZmcubWlncmF0aW9uX29uX2Vycm9yIHsKICAgICAgICAgICAg IE1pZ3JhdGlvbk9uRXJyb3I6OkFib3J0ID0+IEVycihlcnIuY29udGV4dChmb3JtYXQhKCJJbm9k ZSB7fSIsIHNlbGYuaWQpKSksCiAgICAgICAgICAgICBNaWdyYXRpb25PbkVycm9yOjpHdWVzdEVy cm9yID0+IHsKLSAgICAgICAgICAgICAgICB3YXJuISgiSW52YWxpZCBpbm9kZSB7fSBpbmRleGVk OiB7fSIsIHNlbGYuaWQsIGVycik7CisgICAgICAgICAgICAgICAgd2FybiEoIkludmFsaWQgaW5v ZGUge30gaW5kZXhlZDoge2Vycn0iLCBzZWxmLmlkKTsKICAgICAgICAgICAgICAgICBPayhJbm9k ZURhdGEgewogICAgICAgICAgICAgICAgICAgICBpbm9kZTogc2VsZi5pZCwKICAgICAgICAgICAg ICAgICAgICAgZmlsZV9vcl9oYW5kbGU6IEZpbGVPckhhbmRsZTo6SW52YWxpZChBcmM6Om5ldyhl cnIpKSwKQEAgLTQyNyw4ICs0MjQsOCBAQAogICAgICAgICAvLyBEaXNyZWdhcmQgdGhlIG1vdW50 IElELCB0aGlzIG1heSBiZSBhIGRpZmZlcmVudCBob3N0LCBzbyB0aGUgbW91bnQgSUQgbWF5IGRp ZmZlcgogICAgICAgICBpc19maC5yZXF1aXJlX2VxdWFsX3dpdGhvdXRfbW91bnRfaWQocmVmX2Zo KS5tYXBfZXJyKHxlcnJ8IHsKICAgICAgICAgICAgIG90aGVyX2lvX2Vycm9yKGZvcm1hdCEoCi0g ICAgICAgICAgICAgICAgIklub2RlIHt9IGlzIG5vdCB0aGUgc2FtZSBpbm9kZSBhcyBpbiB0aGUg bWlncmF0aW9uIHNvdXJjZToge30iLAotICAgICAgICAgICAgICAgIHNlbGYuaWQsIGVycgorICAg ICAgICAgICAgICAgICJJbm9kZSB7fSBpcyBub3QgdGhlIHNhbWUgaW5vZGUgYXMgaW4gdGhlIG1p Z3JhdGlvbiBzb3VyY2U6IHtlcnJ9IiwKKyAgICAgICAgICAgICAgICBzZWxmLmlkCiAgICAgICAg ICAgICApKQogICAgICAgICB9KQogICAgIH0KQEAgLTQ1OCw3ICs0NTUsNyBAQAogICAgICAgICBs ZXQgc3QgPSBzdGF0eCgmZmQsIE5vbmUpLmVycl9jb250ZXh0KHx8ICJzdGF0Iik/OwogCiAgICAg ICAgIGxldCBmaWxlX29yX2hhbmRsZSA9IG1hdGNoIGZzLmNmZy5pbm9kZV9maWxlX2hhbmRsZXMg ewotICAgICAgICAgICAgSW5vZGVGaWxlSGFuZGxlc01vZGU6Ok5ldmVyID0+IEZpbGVPckhhbmRs ZTo6RmlsZShmZCksCisgICAgICAgICAgICBJbm9kZUZpbGVIYW5kbGVzTW9kZTo6TmV2ZXIgPT4g RmlsZU9ySGFuZGxlOjpGaWxlKGZzLmd1ZXN0X2Zkcy5hbGxvY2F0ZShmZCk/KSwKICAgICAgICAg ICAgIElub2RlRmlsZUhhbmRsZXNNb2RlOjpNYW5kYXRvcnkgfCBJbm9kZUZpbGVIYW5kbGVzTW9k ZTo6UHJlZmVyID0+IHsKICAgICAgICAgICAgICAgICBGaWxlT3JIYW5kbGU6OkhhbmRsZShvZmgp CiAgICAgICAgICAgICB9CkBAIC00OTMsMzAgKzQ5MCwzMiBAQAogICAgICAgICAgICAgICAgICAg ICAub3Blbl9maWxlKGZsYWdzLCAmZnMucHJvY19zZWxmX2ZkKQogICAgICAgICAgICAgICAgICAg ICAuYW5kX3RoZW4ofGZ8IGYuaW50b19maWxlKCkpCiAgICAgICAgICAgICAgICAgewotICAgICAg ICAgICAgICAgICAgICBPayhmKSA9PiBIYW5kbGVEYXRhRmlsZTo6RmlsZShSd0xvY2s6Om5ldyhm KSksCisgICAgICAgICAgICAgICAgICAgIE9rKGYpID0+IGZzLmd1ZXN0X2Zkcy5hbGxvY2F0ZShm KS5tYXAoSW50bzo6aW50byksCiAgICAgICAgICAgICAgICAgICAgIEVycihlcnIpID0+IHsKICAg ICAgICAgICAgICAgICAgICAgICAgIGxldCBlcnJvcl9tc2cgPSBpZiBsZXQgT2socGF0aCkgPSBp bm9kZS5nZXRfcGF0aCgmZnMucHJvY19zZWxmX2ZkKSB7CiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbGV0IHAgPSBwYXRoLmFzX2Nfc3RyKCkudG9fc3RyaW5nX2xvc3N5KCk7CiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZm9ybWF0ISgKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIk9wZW5pbmcgaW5vZGUge30gKHt9KSBhcyBoYW5kbGUge306IHt9IiwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbm9kZSwgcCwgc2VsZi5pZCwgZXJyCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJPcGVuaW5nIGlub2RlIHt9ICh7cH0pIGFzIGhh bmRsZSB7fToge2Vycn0iLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWxmLmlu b2RlLCBzZWxmLmlkCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAg ICAgICAgICAgICAgfSBlbHNlIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3JtYXQh KAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiT3BlbmluZyBpbm9kZSB7fSBhcyBo YW5kbGUge306IHt9IiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5pbm9k ZSwgc2VsZi5pZCwgZXJyCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKQorICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGZvcm1hdCEoIk9wZW5pbmcgaW5vZGUge30gYXMgaGFuZGxlIHt9 OiB7ZXJyfSIsIHNlbGYuaW5vZGUsIHNlbGYuaWQpCiAgICAgICAgICAgICAgICAgICAgICAgICB9 OwotICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVyciA9IGlvOjpFcnJvcjo6bmV3KGVyci5r aW5kKCksIGVycm9yX21zZyk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBtYXRjaCBmcy5jZmcu bWlncmF0aW9uX29uX2Vycm9yIHsKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBNaWdyYXRp b25PbkVycm9yOjpBYm9ydCA9PiByZXR1cm4gRXJyKGVyciksCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgTWlncmF0aW9uT25FcnJvcjo6R3Vlc3RFcnJvciA9PiB7Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHdhcm4hKCJJbnZhbGlkIGhhbmRsZSB7fSBpcyBvcGVuIGluIGd1 ZXN0OiB7fSIsIHNlbGYuaWQsIGVycik7Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IEhhbmRsZURhdGFGaWxlOjpJbnZhbGlkKEFyYzo6bmV3KGVycikpCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgfQotICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAg ICAgICAgICAgRXJyKGlvOjpFcnJvcjo6bmV3KGVyci5raW5kKCksIGVycm9yX21zZykpCiAgICAg ICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICB9OworCisgICAgICAgICAgICAgICAg bGV0IGhhbmRsZV9kYXRhX2ZpbGUgPSBtYXRjaCBoYW5kbGVfZGF0YV9maWxlIHsKKyAgICAgICAg ICAgICAgICAgICAgT2soaGRmKSA9PiBoZGYsCisgICAgICAgICAgICAgICAgICAgIEVycihlcnIp ID0+IG1hdGNoIGZzLmNmZy5taWdyYXRpb25fb25fZXJyb3IgeworICAgICAgICAgICAgICAgICAg ICAgICAgTWlncmF0aW9uT25FcnJvcjo6QWJvcnQgPT4gcmV0dXJuIEVycihlcnIpLAorICAgICAg ICAgICAgICAgICAgICAgICAgTWlncmF0aW9uT25FcnJvcjo6R3Vlc3RFcnJvciA9PiB7CisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgd2FybiEoIkludmFsaWQgaGFuZGxlIHt9IGlzIG9wZW4g aW4gZ3Vlc3Q6IHtlcnJ9Iiwgc2VsZi5pZCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg SGFuZGxlRGF0YUZpbGU6OkludmFsaWQoQXJjOjpuZXcoZXJyKSkKKyAgICAgICAgICAgICAgICAg ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgfSwKKyAgICAgICAgICAgICAgICB9OworCiAg ICAgICAgICAgICAgICAgbGV0IG1pZ3JhdGlvbl9pbmZvID0gSGFuZGxlTWlncmF0aW9uSW5mbzo6 T3Blbklub2RlIHsgZmxhZ3MgfTsKICAgICAgICAgICAgICAgICAoaGFuZGxlX2RhdGFfZmlsZSwg bWlncmF0aW9uX2luZm8pCiAgICAgICAgICAgICB9CmRpZmYgLU5ydSBydXN0LXZpcnRpb2ZzZC0x LjEzLjAvc3JjL3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9tb2QucnMgcnVzdC12aXJ0aW9mc2Qt MS4xMy4yL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUvbW9kLnJzCi0tLSBydXN0LXZpcnRp b2ZzZC0xLjEzLjAvc3JjL3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9tb2QucnMJMjAwNi0wNy0y NCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMv cGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL21vZC5ycwkyMDA2LTA3LTI0IDA1OjIxOjI4LjAwMDAw MDAwMCArMDQwMApAQCAtNyw5ICs3LDggQEAKICAqIGZvbGxvd2luZyBzdWJtb2R1bGVzOgogICog LSBzZXJpYWxpemVkOiBTZXJpYWxpemVkIGRhdGEgc3RydWN0dXJlcwogICogLSBwcmVzZXJpYWxp emF0aW9uOiBTdHJ1Y3R1cmVzIGFuZCBmdW5jdGlvbmFsaXR5IGZvciBwcmVwYXJpbmcgZm9yIG1p Z3JhdGlvbiAoc2VyaWFsaXphdGlvbiksCi0gKiAgICAgICAgICAgICAgICAgICAgIGkuZS4gZGVm aW5lIGFuZCBjb25zdHJ1Y3QgdGhlIHByZWN1cnNvcnMgdG8gdGhlIGV2ZW50dWFsbHkgc2VyaWFs aXplZAotICogICAgICAgICAgICAgICAgICAgICBpbmZvcm1hdGlvbiB0aGF0IGFyZSBzdG9yZWQg YWxvbmdzaWRlIHRoZSBhc3NvY2lhdGVkIGlub2RlcyBhbmQgaGFuZGxlcyB0aGV5Ci0gKiAgICAg ICAgICAgICAgICAgICAgIGRlc2NyaWJlCisgKiAgIGkuZS4gZGVmaW5lIGFuZCBjb25zdHJ1Y3Qg dGhlIHByZWN1cnNvcnMgdG8gdGhlIGV2ZW50dWFsbHkgc2VyaWFsaXplZCBpbmZvcm1hdGlvbiB0 aGF0IGFyZQorICogICBzdG9yZWQgYWxvbmdzaWRlIHRoZSBhc3NvY2lhdGVkIGlub2RlcyBhbmQg aGFuZGxlcyB0aGV5IGRlc2NyaWJlCiAgKiAtIHNlcmlhbGl6YXRpb246IEZ1bmN0aW9uYWxpdHkg Zm9yIHNlcmlhbGl6aW5nCiAgKiAtIGRlc2VyaWFsaXphdGlvbjogRnVuY3Rpb25hbGl0eSBmb3Ig ZGVzZXJpYWxpemluZwogICovCmRpZmYgLU5ydSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL3Bh c3N0aHJvdWdoL2RldmljZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL2ZpbGVfaGFuZGxlcy5ycyBy dXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9wcmVzZXJp YWxpemF0aW9uL2ZpbGVfaGFuZGxlcy5ycwotLS0gcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9w YXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUvcHJlc2VyaWFsaXphdGlvbi9maWxlX2hhbmRsZXMucnMJ MjAwNi0wNy0yNCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1c3QtdmlydGlvZnNkLTEu MTMuMi9zcmMvcGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL3ByZXNlcmlhbGl6YXRpb24vZmlsZV9o YW5kbGVzLnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICswNDAwCkBAIC02OSwxMCAr NjksOSBAQAogCiAgICAgICAgICAgICBpZiBsZXQgRXJyKGVycikgPSBzZWxmLnNldF9taWdyYXRp b25faW5mbygmaW5vZGVfZGF0YSkgewogICAgICAgICAgICAgICAgIGVycm9yISgKLSAgICAgICAg ICAgICAgICAgICAgIklub2RlIHt9ICh7fSk6IHt9IiwKKyAgICAgICAgICAgICAgICAgICAgIklu b2RlIHt9ICh7fSk6IHtlcnJ9IiwKICAgICAgICAgICAgICAgICAgICAgaW5vZGVfZGF0YS5pbm9k ZSwKICAgICAgICAgICAgICAgICAgICAgaW5vZGVfZGF0YS5pZGVudGlmeSgmc2VsZi5mcy5wcm9j X3NlbGZfZmQpLAotICAgICAgICAgICAgICAgICAgICBlcnIKICAgICAgICAgICAgICAgICApOwog ICAgICAgICAgICAgfQogICAgICAgICB9CmRpZmYgLU5ydSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAv c3JjL3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL2ZpbmRfcGF0aHMu cnMgcnVzdC12aXJ0aW9mc2QtMS4xMy4yL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUvcHJl c2VyaWFsaXphdGlvbi9maW5kX3BhdGhzLnJzCi0tLSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3Jj L3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL2ZpbmRfcGF0aHMucnMJ MjAwNi0wNy0yNCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1c3QtdmlydGlvZnNkLTEu MTMuMi9zcmMvcGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL3ByZXNlcmlhbGl6YXRpb24vZmluZF9w YXRocy5ycwkyMDA2LTA3LTI0IDA1OjIxOjI4LjAwMDAwMDAwMCArMDQwMApAQCAtMjg2LDcgKzI4 Niw3IEBACiAgICAgICAgIGxldCBmaWxlX29yX2hhbmRsZSA9IGlmIGxldCBTb21lKGgpID0gaGFu ZGxlLmFzX3JlZigpIHsKICAgICAgICAgICAgIEZpbGVPckhhbmRsZTo6SGFuZGxlKHNlbGYuZnMu bWFrZV9maWxlX2hhbmRsZV9vcGVuYWJsZShoKT8pCiAgICAgICAgIH0gZWxzZSB7Ci0gICAgICAg ICAgICBGaWxlT3JIYW5kbGU6OkZpbGUocGF0aF9mZCkKKyAgICAgICAgICAgIEZpbGVPckhhbmRs ZTo6RmlsZShzZWxmLmZzLmd1ZXN0X2Zkcy5hbGxvY2F0ZShwYXRoX2ZkKT8pCiAgICAgICAgIH07 CiAKICAgICAgICAgbGV0IG1pZ19pbmZvID0gSW5vZGVNaWdyYXRpb25JbmZvOjpuZXdfaW50ZXJu YWwoCmRpZmYgLU5ydSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL3Bhc3N0aHJvdWdoL2Rldmlj ZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL21vZC5ycyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3Jj L3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL21vZC5ycwotLS0gcnVz dC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUvcHJlc2VyaWFs aXphdGlvbi9tb2QucnMJMjAwNi0wNy0yNCAwNToyMToyOC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1 c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMvcGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL3ByZXNlcmlh bGl6YXRpb24vbW9kLnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICswNDAwCkBAIC02 Nyw5ICs2Nyw4IEBACiAgICAgICAgICAgICBNaWdyYXRpb25Nb2RlOjpGaWxlSGFuZGxlcyA9PiB7 CiAgICAgICAgICAgICAgICAgbGV0IGhhbmRsZSA9IGZpbGVfb3JfaGFuZGxlLnRyeV9pbnRvKCku ZXJyX2NvbnRleHQofHwgewogICAgICAgICAgICAgICAgICAgICBmb3JtYXQhKAotICAgICAgICAg ICAgICAgICAgICAgICAgIihpbm9kZSB7fSkvezo/fTogRmFpbGVkIHRvIGdlbmVyYXRlIGZpbGUg aGFuZGxlIiwKKyAgICAgICAgICAgICAgICAgICAgICAgICIoaW5vZGUge30pL3tmaWxlbmFtZTo/ fTogRmFpbGVkIHRvIGdlbmVyYXRlIGZpbGUgaGFuZGxlIiwKICAgICAgICAgICAgICAgICAgICAg ICAgIHBhcmVudF9yZWYuZ2V0KCkuaW5vZGUsCi0gICAgICAgICAgICAgICAgICAgICAgICBmaWxl bmFtZSwKICAgICAgICAgICAgICAgICAgICAgKQogICAgICAgICAgICAgICAgIH0pPzsKICAgICAg ICAgICAgICAgICBmaWxlX2hhbmRsZXM6OkZpbGVIYW5kbGU6Om5ldyhoYW5kbGUpLmludG8oKQpk aWZmIC1OcnUgcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3Rh dGUvcHJlc2VyaWFsaXphdGlvbi9wcm9jX3BhdGhzLnJzIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9z cmMvcGFzc3Rocm91Z2gvZGV2aWNlX3N0YXRlL3ByZXNlcmlhbGl6YXRpb24vcHJvY19wYXRocy5y cwotLS0gcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhyb3VnaC9kZXZpY2Vfc3RhdGUv cHJlc2VyaWFsaXphdGlvbi9wcm9jX3BhdGhzLnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAw MDAwICswNDAwCisrKyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0aHJvdWdoL2Rldmlj ZV9zdGF0ZS9wcmVzZXJpYWxpemF0aW9uL3Byb2NfcGF0aHMucnMJMjAwNi0wNy0yNCAwNToyMToy OC4wMDAwMDAwMDAgKzA0MDAKQEAgLTIyNCwxMSArMjI0LDEwIEBACiAgICAgICoKICAgICAgKiBJ biBjYXNlIG9mIGVycm9yLCBkaWZmZXJlbnRpYXRlIGJldHdlZW46CiAgICAgICogLSBgRmFsbGJh Y2soZXJyKWA6IFdlIGZhaWxlZCB0byBjb25zdHJ1Y3QgaW5vZGUgbWlncmF0aW9uIGluZm8gZm9y IHNvbWUgbnVtYmVyIG9mIGlub2Rlcy4KLSAgICAgKiAgICAgICAgICAgICAgICAgICAgSG93ZXZl ciwgd2UgZXhwZWN0IGEgZGlmZmVyZW50LCBtb3JlIGV4aGF1c3RpdmUgbWV0aG9kIHRvIGZpbmQg aW5vZGVz4oCZCi0gICAgICogICAgICAgICAgICAgICAgICAgIHBhdGhzIChlLmcuIERGUyB0aHJv dWdoIHRoZSBzaGFyZWQgZGlyZWN0b3J5KSBjYW4gc3VjY2VlZC4gIEluIGNhc2Ugb2YKLSAgICAg KiAgICAgICAgICAgICAgICAgICAgYE1vZGU6OkNvbnN0cnVjdG9yYCwgdGhlIGNhbGxlciBtdXN0 IGZhbGwgYmFjayB0byBzdWNoIGEgZGlmZmVyZW50Ci0gICAgICogICAgICAgICAgICAgICAgICAg IHByZXNlcmlhbGl6YXRpb24gbW9kdWxlIChpLmUuIFtgc3VwZXI6OmZpbmRfcGF0aHNgXSkuICBJ biBvdGhlciBtb2RlcywKLSAgICAgKiAgICAgICAgICAgICAgICAgICAgdGhpcyBzaG91bGQgYmUg dHJlYXRlZCB0aGUgc2FtZSBhcyBgVW5yZWNvdmVyYWJsZWAuCisgICAgICogICBIb3dldmVyLCB3 ZSBleHBlY3QgYSBkaWZmZXJlbnQsIG1vcmUgZXhoYXVzdGl2ZSBtZXRob2QgdG8gZmluZCBpbm9k ZXPigJkgcGF0aHMgKGUuZy4gREZTCisgICAgICogICB0aHJvdWdoIHRoZSBzaGFyZWQgZGlyZWN0 b3J5KSBjYW4gc3VjY2VlZC4gIEluIGNhc2Ugb2YgYE1vZGU6OkNvbnN0cnVjdG9yYCwgdGhlIGNh bGxlcgorICAgICAqICAgbXVzdCBmYWxsIGJhY2sgdG8gc3VjaCBhIGRpZmZlcmVudCBwcmVzZXJp YWxpemF0aW9uIG1vZHVsZSAoaS5lLiBbYHN1cGVyOjpmaW5kX3BhdGhzYF0pLgorICAgICAqICAg SW4gb3RoZXIgbW9kZXMsIHRoaXMgc2hvdWxkIGJlIHRyZWF0ZWQgdGhlIHNhbWUgYXMgYFVucmVj b3ZlcmFibGVgLgogICAgICAqIC0gYFVucmVjb3ZlcmFibGUoZXJyKWA6IEhhcmQgZXJyb3IsIGZh bGxpbmcgYmFjayB0byBhIGRpZmZlcmVudCBtZXRob2QgaXMgbm90IGFkdmlzZWQuCiAgICAgICov CiAgICAgZm4gcnVuKHNlbGYpIC0+IFJlc3VsdDwoKSwgV3JhcHBlZEVycm9yPiB7CmRpZmYgLU5y dSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL3Bhc3N0aHJvdWdoL2RldmljZV9zdGF0ZS9zZXJp YWxpemF0aW9uLnJzIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMvcGFzc3Rocm91Z2gvZGV2aWNl X3N0YXRlL3NlcmlhbGl6YXRpb24ucnMKLS0tIHJ1c3QtdmlydGlvZnNkLTEuMTMuMC9zcmMvcGFz c3Rocm91Z2gvZGV2aWNlX3N0YXRlL3NlcmlhbGl6YXRpb24ucnMJMjAwNi0wNy0yNCAwNToyMToy OC4wMDAwMDAwMDAgKzA0MDAKKysrIHJ1c3QtdmlydGlvZnNkLTEuMTMuMi9zcmMvcGFzc3Rocm91 Z2gvZGV2aWNlX3N0YXRlL3NlcmlhbGl6YXRpb24ucnMJMjAwNi0wNy0yNCAwNToyMToyOC4wMDAw MDAwMDAgKzA0MDAKQEAgLTU4LDggKzU4LDggQEAKICAgICAgICAgICAgICAgICAuYXNfc2VyaWFs aXplZChmcykKICAgICAgICAgICAgICAgICAudW53cmFwX29yX2Vsc2UofGVycnwgewogICAgICAg ICAgICAgICAgICAgICB3YXJuISgKLSAgICAgICAgICAgICAgICAgICAgICAgICJGYWlsZWQgdG8g c2VyaWFsaXplIGlub2RlIHt9IChzdF9kZXY9e30sIG1udF9pZD17fSwgc3RfaW5vPXt9KToge307 IG1hcmtpbmcgYXMgaW52YWxpZCIsCi0gICAgICAgICAgICAgICAgICAgICAgICBpbm9kZS5pbm9k ZSwgaW5vZGUuaWRzLmRldiwgaW5vZGUuaWRzLm1udF9pZCwgaW5vZGUuaWRzLmlubywgZXJyCisg ICAgICAgICAgICAgICAgICAgICAgICAiRmFpbGVkIHRvIHNlcmlhbGl6ZSBpbm9kZSB7fSAoc3Rf ZGV2PXt9LCBtbnRfaWQ9e30sIHN0X2lubz17fSk6IHtlcnJ9OyBtYXJraW5nIGFzIGludmFsaWQi LAorICAgICAgICAgICAgICAgICAgICAgICAgaW5vZGUuaW5vZGUsIGlub2RlLmlkcy5kZXYsIGlu b2RlLmlkcy5tbnRfaWQsIGlub2RlLmlkcy5pbm8KICAgICAgICAgICAgICAgICAgICAgKTsKICAg ICAgICAgICAgICAgICAgICAgc2VyaWFsaXplZDo6SW5vZGUgewogICAgICAgICAgICAgICAgICAg ICAgICAgaWQ6IGlub2RlLmlub2RlLApkaWZmIC1OcnUgcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3Ny Yy9wYXNzdGhyb3VnaC9maWxlX2hhbmRsZS5ycyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bh c3N0aHJvdWdoL2ZpbGVfaGFuZGxlLnJzCi0tLSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL3Bh c3N0aHJvdWdoL2ZpbGVfaGFuZGxlLnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICsw NDAwCisrKyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0aHJvdWdoL2ZpbGVfaGFuZGxl LnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICswNDAwCkBAIC0zLDYgKzMsNyBAQAog Ly8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KIAogdXNlIGNyYXRlOjpvc2xpYjsKK3VzZSBj cmF0ZTo6cGFzc3Rocm91Z2g6Omd1ZXN0X2ZkX2xpbWl0OjpHdWVzdEZpbGU7CiB1c2UgY3JhdGU6 OnBhc3N0aHJvdWdoOjptb3VudF9mZDo6e01QUlJlc3VsdCwgTW91bnRGZCwgTW91bnRGZHN9Owog dXNlIGNyYXRlOjpwYXNzdGhyb3VnaDo6c3RhdDo6TW91bnRJZDsKIHVzZSBzZXJkZTo6e0Rlc2Vy aWFsaXplLCBTZXJpYWxpemV9OwpAQCAtMzUsNyArMzYsNyBAQAogfQogCiBwdWIgZW51bSBGaWxl T3JIYW5kbGUgewotICAgIEZpbGUoRmlsZSksCisgICAgRmlsZShHdWVzdEZpbGUpLAogICAgIEhh bmRsZShPcGVuYWJsZUZpbGVIYW5kbGUpLAogICAgIC8vIGBpbzo6RXJyb3JgIGRvZXMgbm90IGlt cGxlbWVudCBgQ2xvbmVgLCBzbyB3aXRob3V0IHdyYXBwaW5nIGl0IGluIGBBcmNgLCByZXR1cm5p bmcgdGhlIGVycm9yCiAgICAgLy8gYW55d2hlcmUgd291bGQgYmUgaW1wb3NzaWJsZSB3aXRob3V0 IGNvbnN1bWluZyBpdApkaWZmIC1OcnUgcnVzdC12aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhy b3VnaC9ndWVzdF9mZF9saW1pdC5ycyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0aHJv dWdoL2d1ZXN0X2ZkX2xpbWl0LnJzCi0tLSBydXN0LXZpcnRpb2ZzZC0xLjEzLjAvc3JjL3Bhc3N0 aHJvdWdoL2d1ZXN0X2ZkX2xpbWl0LnJzCTE5NzAtMDEtMDEgMDM6MDA6MDAuMDAwMDAwMDAwICsw MzAwCisrKyBydXN0LXZpcnRpb2ZzZC0xLjEzLjIvc3JjL3Bhc3N0aHJvdWdoL2d1ZXN0X2ZkX2xp bWl0LnJzCTIwMDYtMDctMjQgMDU6MjE6MjguMDAwMDAwMDAwICswNDAwCkBAIC0wLDAgKzEsMTEx IEBACisvLyBDb3B5cmlnaHQgMjAyNCBSZWQgSGF0LCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu CisvLworLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IChBcGFjaGUtMi4wIEFORCBCU0QtMy1D bGF1c2UpCisKKy8vISBBbGxvdyBsaW1pdGluZyB0aGUgbnVtYmVyIG9mIGZpbGUgZGVzY3JpcHRv cnMgd2UgYWxsb2NhdGUgZm9yIHRoZSBndWVzdC4KKy8vIQorLy8hIEFueSBwcm9jZXNzIG9ubHkg aGFzIGEgbGltaXRlZCBudW1iZXIgb2YgZmlsZSBkZXNjcmlwdG9yIHNsb3RzIGF2YWlsYWJsZSBm b3IgdXNlLCBhbmQgYmVzaWRlcworLy8hIGFsbG9jYXRpbmcgRkRzIGZvciB0aGUgZ3Vlc3QsIHZp cnRpb2ZzZCBhbHNvIG5lZWRzIHRvIGJlIGFibGUgdG8gY3JlYXRlIGZpbGUgZGVzY3JpcHRvcnMg Zm9yCisvLyEgaW50ZXJuYWwgdXNlLiAgQnkgbGltaXRpbmcgdGhlIG51bWJlciB3ZSB3aWxsIGFs bG9jYXRlIGZvciB0aGUgZ3Vlc3QsIHdlIGNhbiBlbnN1cmUgdGhlcmUgYXJlCisvLyEgYWx3YXlz IGZyZWUgc2xvdHMgb3BlbiBmb3Igc3VjaCBpbnRlcm5hbCB1c2UuCisKK3VzZSBzdGQ6OmZzOjpG aWxlOwordXNlIHN0ZDo6aW87Cit1c2Ugc3RkOjpvczo6dW5peDo6aW86OntBc1Jhd0ZkLCBSYXdG ZH07Cit1c2Ugc3RkOjpzeW5jOjphdG9taWM6OntBdG9taWNCb29sLCBBdG9taWNVNjQsIE9yZGVy aW5nfTsKK3VzZSBzdGQ6OnN5bmM6OkFyYzsKKworLy8vIEJhc2ljYWxseSBqdXN0IGEgc2VtYXBo b3JlLCBidXQgc3BlY2lmaWNhbGx5IGZvciBsaW1pdGluZyBndWVzdCBGRCB1c2UuCisvLy8KKy8v LyBXcmFwcyBwbGFpbiBgRmlsZWBzIHRvIGNyZWF0ZSBgR3Vlc3RGaWxlYHMgdGhhdCBjb3VudCBh Z2FpbnN0IHRoZSBndWVzdCBGRCBsaW1pdCB1bnRpbCBkcm9wcGVkLgorcHViKGNyYXRlKSBzdHJ1 Y3QgR3Vlc3RGZFNlbWFwaG9yZSB7CisgICAgLy8vIEluaXRpYWwgKG92ZXJhbGwpIGxpbWl0Lgor ICAgIGluaXRpYWw6IHU2NCwKKworICAgIC8vLyBIb3cgbWFueSBhbGxvY2F0aW9ucyBhcmUgc3Rp bGwgYXZhaWxhYmxlIGJlZm9yZSBleGhhdXN0aW5nIHRoZSBsaW1pdC4KKyAgICBhdmFpbGFibGU6 IEF0b21pY1U2NCwKKworICAgIC8vLyBXaGV0aGVyIGFuIGVycm9yIGFib3V0IG5vIHJlbWFpbmlu ZyBGRCBzbG90cyBoYXMgYmVlbiBsb2dnZWQuCisgICAgLy8vCisgICAgLy8vIEZ1cnRoZXIgZXJy b3JzIHdpbGwgdGhlbiBiZSBzdXBwcmVzc2VkLgorICAgIGVycm9yX2xvZ2dlZDogQXRvbWljQm9v bCwKK30KKworLy8vIFJldHVybmVkIGJ5IGBHdWVzdEZkU2VtYXBob3JlOjphbGxvY2F0ZSgpYCwg d2lsbCByZWxlYXNlIHRoZSBzbG90IHdoZW4gZHJvcHBlZC4KK3B1YiBzdHJ1Y3QgR3Vlc3RGaWxl IHsKKyAgICAvLy8gQ29udGFpbmVkIEZELgorICAgIGZpbGU6IEZpbGUsCisKKyAgICAvLy8gU2Vt YXBob3JlIHJlZmVyZW5jZS4KKyAgICBzZW06IEFyYzxHdWVzdEZkU2VtYXBob3JlPiwKK30KKwor aW1wbCBHdWVzdEZkU2VtYXBob3JlIHsKKyAgICAvLy8gQ3JlYXRlIGEgbmV3IGluc3RhbmNlIHdp dGggdGhlIGdpdmVuIGBsaW1pdGAuCisgICAgcHViIGZuIG5ldyhsaW1pdDogdTY0KSAtPiBTZWxm IHsKKyAgICAgICAgR3Vlc3RGZFNlbWFwaG9yZSB7CisgICAgICAgICAgICBpbml0aWFsOiBsaW1p dCwKKyAgICAgICAgICAgIGF2YWlsYWJsZTogbGltaXQuaW50bygpLAorICAgICAgICAgICAgZXJy b3JfbG9nZ2VkOiBmYWxzZS5pbnRvKCksCisgICAgICAgIH0KKyAgICB9CisKKyAgICAvLy8gUHV0 IHRoZSBnaXZlbiBmaWxlIGludG8gYSBmcmVlIHNsb3QuCisgICAgLy8vCisgICAgLy8vIFRoZSBz bG90IGlzIHJlbGVhc2VkIGJ5IGRyb3BwaW5nIHRoZSByZXR1cm5lZCBgR3Vlc3RGaWxlYC4KKyAg ICBwdWIgZm4gYWxsb2NhdGUoc2VsZjogJkFyYzxTZWxmPiwgZmlsZTogRmlsZSkgLT4gaW86OlJl c3VsdDxHdWVzdEZpbGU+IHsKKyAgICAgICAgc2VsZi5hdmFpbGFibGUuZmV0Y2hfdXBkYXRlKAor ICAgICAgICAgICAgT3JkZXJpbmc6OlJlbGF4ZWQsCisgICAgICAgICAgICBPcmRlcmluZzo6UmVs YXhlZCwKKyAgICAgICAgICAgIHxwcmV2aW91c3wgcHJldmlvdXMuY2hlY2tlZF9zdWIoMSksCisg ICAgICAgICkubWFwX2Vycih8X3wgeworICAgICAgICAgICAgaWYgIXNlbGYuZXJyb3JfbG9nZ2Vk LmZldGNoX29yKHRydWUsIE9yZGVyaW5nOjpSZWxheGVkKSB7CisgICAgICAgICAgICAgICAgZXJy b3IhKAorICAgICAgICAgICAgICAgICAgICAiTm8gbW9yZSBmaWxlIGRlc2NyaXB0b3JzIGF2YWls YWJsZSB0byB0aGUgZ3Vlc3QgKDAgYXZhaWxhYmxlIG91dCBvZiB7fSBpbml0aWFsbHkpLCBcCisg ICAgICAgICAgICAgICAgICAgIGNvbnNpZGVyIGluY3JlYXNpbmcgdGhlIC0tcmxpbWl0LW5vZmls ZSB2YWx1ZSIsCisgICAgICAgICAgICAgICAgICAgIHNlbGYuaW5pdGlhbCwKKyAgICAgICAgICAg ICAgICApOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICAvLyBTaW5jZSB0aGlzIGVycm9y IGlzIGxpa2VseSByZXR1cm5lZCB0byB0aGUgZ3Vlc3QgKGFuZCBub3QgbG9nZ2VkKSwgcHJlZmVy IGFuCisgICAgICAgICAgICAvLyBlcnJvciB3aXRoIGEgcmVhc29uYWJsZSBlcnJubyBudW1iZXIg b3ZlciBhIHVzZWZ1bCBlcnJvciBtZXNzYWdlLgorICAgICAgICAgICAgaW86OkVycm9yOjpmcm9t X3Jhd19vc19lcnJvcihsaWJjOjpFTkZJTEUpCisgICAgICAgIH0pPzsKKworICAgICAgICBPayhH dWVzdEZpbGUgeworICAgICAgICAgICAgZmlsZSwKKyAgICAgICAgICAgIHNlbTogQXJjOjpjbG9u ZShzZWxmKSwKKyAgICAgICAgfSkKKyAgICB9CisKKyAgICAvLy8gUmVsZWFzZSBvbmUgc2xvdC4K KyAgICAvLy8KKyAgICAvLy8gRG8gbm90IHVzZSBkaXJlY3RseSwganVzdCBkcm9wIFtgR3Vlc3RG aWxlYF0uCisgICAgZm4gcmVsZWFzZSgmc2VsZikgeworICAgICAgICBsZXQgaW5jcmVhc2VkX3Rv ID0gc2VsZgorICAgICAgICAgICAgLmF2YWlsYWJsZQorICAgICAgICAgICAgLmZldGNoX2FkZCgx LCBPcmRlcmluZzo6UmVsYXhlZCkKKyAgICAgICAgICAgIC5jaGVja2VkX2FkZCgxKQorICAgICAg ICAgICAgLnVud3JhcF9vcl9lbHNlKHx8IHBhbmljISgiRkQgc2VtYXBob3JlIG92ZXJmbG93Iikp OworICAgICAgICBkZWJ1Z19hc3NlcnQhKGluY3JlYXNlZF90byA8PSBzZWxmLmluaXRpYWwpOwor ICAgIH0KK30KKworaW1wbCBHdWVzdEZpbGUgeworICAgIC8vLyBHZXQgdGhlIGlubmVyIGZpbGUu CisgICAgcHViIGZuIGdldF9maWxlKCZzZWxmKSAtPiAmRmlsZSB7CisgICAgICAgICZzZWxmLmZp bGUKKyAgICB9Cit9CisKK2ltcGwgQXNSYXdGZCBmb3IgR3Vlc3RGaWxlIHsKKyAgICBmbiBhc19y YXdfZmQoJnNlbGYpIC0+IFJhd0ZkIHsKKyAgICAgICAgc2VsZi5maWxlLmFzX3Jhd19mZCgpCisg ICAgfQorfQorCitpbXBsIERyb3AgZm9yIEd1ZXN0RmlsZSB7CisgICAgZm4gZHJvcCgmbXV0IHNl bGYpIHsKKyAgICAgICAgc2VsZi5zZW0ucmVsZWFzZSgpOworICAgIH0KK30KZGlmZiAtTnJ1IHJ1 c3QtdmlydGlvZnNkLTEuMTMuMC9zcmMvcGFzc3Rocm91Z2gvaW5vZGVfc3RvcmUucnMgcnVzdC12 aXJ0aW9mc2QtMS4xMy4yL3NyYy9wYXNzdGhyb3VnaC9pbm9kZV9zdG9yZS5ycwotLS0gcnVzdC12 aXJ0aW9mc2QtMS4xMy4wL3NyYy9wYXNzdGhyb3VnaC9pbm9kZV9zdG9yZS5ycwkyMDA2LTA3LTI0 IDA1OjIxOjI4LjAwMDAwMDAwMCArMDQwMAorKysgcnVzdC12aXJ0aW9mc2QtMS4xMy4yL3NyYy9w YXNzdGhyb3VnaC9pbm9kZV9zdG9yZS5ycwkyMDA2LTA3LTI0IDA1OjIxOjI4LjAwMDAwMDAwMCAr MDQwMApAQCAtMTMyLDcgKzEzMiw3IEBACiAgICAgLy8vIEdldCBhbiBgT19QQVRIYCBmaWxlIGZv ciB0aGlzIGlub2RlCiAgICAgcHViIGZuIGdldF9maWxlKCYnYSBzZWxmKSAtPiBpbzo6UmVzdWx0 PElub2RlRmlsZTwnYT4+IHsKICAgICAgICAgbWF0Y2ggJnNlbGYuZmlsZV9vcl9oYW5kbGUgewot ICAgICAgICAgICAgRmlsZU9ySGFuZGxlOjpGaWxlKGYpID0+IE9rKElub2RlRmlsZTo6UmVmKGYp KSwKKyAgICAgICAgICAgIEZpbGVPckhhbmRsZTo6RmlsZShmKSA9PiBPayhJbm9kZUZpbGU6OlJl ZihmLmdldF9maWxlKCkpKSwKICAgICAgICAgICAgIEZpbGVPckhhbmRsZTo6SGFuZGxlKGgpID0+ IHsKICAgICAgICAgICAgICAgICBsZXQgZmlsZSA9IGgub3BlbihsaWJjOjpPX1BBVEgpPzsKICAg ICAgICAgICAgICAgICBPayhJbm9kZUZpbGU6Ok93bmVkKGZpbGUpKQpAQCAtMjA2LDggKzIwNiw4 IEBACiAgICAgICAgICAgICAgICAgXyA9PiAidW5rbm93biBpbm9kZSB0eXBlIiwKICAgICAgICAg ICAgIH07CiAgICAgICAgICAgICBmb3JtYXQhKAotICAgICAgICAgICAgICAgICJbe307IG1vdW50 X2lkPXt9IGRldmljZV9pZD17fSBpbm9kZV9pZD17fV0iLAotICAgICAgICAgICAgICAgIG1vZGUs

    [continued in next message]

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)