<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>150872</bug_id>
          
          <creation_ts>2015-11-03 16:52:18 -0800</creation_ts>
          <short_desc>[JSC] Add B3-to-Air lowering for BitXor</short_desc>
          <delta_ts>2015-11-03 21:13:32 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Benjamin Poulain">benjamin</reporter>
          <assigned_to name="Benjamin Poulain">benjamin</assigned_to>
          <cc>fpizlo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1139191</commentid>
    <comment_count>0</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-11-03 16:52:18 -0800</bug_when>
    <thetext>[JSC] Add B3-to-Air lowering for BitXor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139192</commentid>
    <comment_count>1</comment_count>
      <attachid>264756</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-11-03 16:53:03 -0800</bug_when>
    <thetext>Created attachment 264756
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139233</commentid>
    <comment_count>2</comment_count>
      <attachid>264756</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-11-03 21:13:29 -0800</bug_when>
    <thetext>Comment on attachment 264756
Patch

Clearing flags on attachment: 264756

Committed r192008: &lt;http://trac.webkit.org/changeset/192008&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1139234</commentid>
    <comment_count>3</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2015-11-03 21:13:32 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>264756</attachid>
            <date>2015-11-03 16:53:03 -0800</date>
            <delta_ts>2015-11-03 21:13:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150872-20151103165206.patch</filename>
            <type>text/plain</type>
            <size>22781</size>
            <attacher name="Benjamin Poulain">benjamin</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxOTkwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBj
ZWQ2NDhlNDhkOWNkNGQ2Y2MzOWVkMzFjZDdkMTUwN2YxMDEyYmRjLi5lOTgxOTU3OTlkN2U0ZmYx
MGU5NGEwNDNhMDEzMDFlYWE0M2ZmNTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSw0NyBAQAogMjAxNS0xMS0wMyAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxl
LmNvbT4KIAorICAgICAgICBbSlNDXSBBZGQgQjMtdG8tQWlyIGxvd2VyaW5nIGZvciBCaXRYb3IK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1MDg3Mgor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYXNzZW1i
bGVyL01hY3JvQXNzZW1ibGVyWDg2Q29tbW9uLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1i
bGVyWDg2Q29tbW9uOjp4b3IzMik6CisgICAgICAgIEZpeCB0aGUgaW5kZW50YXRpb24uCisKKyAg
ICAgICAgKiBiMy9CM0NvbnN0MzJWYWx1ZS5jcHA6CisgICAgICAgIChKU0M6OkIzOjpDb25zdDMy
VmFsdWU6OmJpdFhvckNvbnN0YW50KToKKyAgICAgICAgKiBiMy9CM0NvbnN0MzJWYWx1ZS5oOgor
ICAgICAgICAqIGIzL0IzQ29uc3Q2NFZhbHVlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkNvbnN0
NjRWYWx1ZTo6Yml0WG9yQ29uc3RhbnQpOgorICAgICAgICAqIGIzL0IzQ29uc3Q2NFZhbHVlLmg6
CisgICAgICAgICogYjMvQjNMb3dlclRvQWlyLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OkFpcjo6
TG93ZXJUb0Fpcjo6dHJ5WG9yKToKKyAgICAgICAgKiBiMy9CM0xvd2VyaW5nTWF0Y2hlci5wYXR0
ZXJuczoKKyAgICAgICAgKiBiMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcDoKKyAgICAgICAgKiBiMy9C
M1ZhbHVlLmNwcDoKKyAgICAgICAgKEpTQzo6QjM6OlZhbHVlOjpiaXRYb3JDb25zdGFudCk6Cisg
ICAgICAgICogYjMvQjNWYWx1ZS5oOgorICAgICAgICAqIGIzL2Fpci9BaXJPcGNvZGUub3Bjb2Rl
czoKKyAgICAgICAgKiBiMy90ZXN0YjMuY3BwOgorICAgICAgICAoSlNDOjpCMzo6dGVzdEJpdFhv
ckFyZ3MpOgorICAgICAgICAoSlNDOjpCMzo6dGVzdEJpdFhvclNhbWVBcmcpOgorICAgICAgICAo
SlNDOjpCMzo6dGVzdEJpdFhvckltbXMpOgorICAgICAgICAoSlNDOjpCMzo6dGVzdEJpdFhvckFy
Z0ltbSk6CisgICAgICAgIChKU0M6OkIzOjp0ZXN0Qml0WG9ySW1tQXJnKToKKyAgICAgICAgKEpT
Qzo6QjM6OnRlc3RCaXRYb3JCaXRYb3JBcmdJbW1JbW0pOgorICAgICAgICAoSlNDOjpCMzo6dGVz
dEJpdFhvckltbUJpdFhvckFyZ0ltbSk6CisgICAgICAgIChKU0M6OkIzOjp0ZXN0Qml0WG9yQXJn
czMyKToKKyAgICAgICAgKEpTQzo6QjM6OnRlc3RCaXRYb3JTYW1lQXJnMzIpOgorICAgICAgICAo
SlNDOjpCMzo6dGVzdEJpdFhvckltbXMzMik6CisgICAgICAgIChKU0M6OkIzOjp0ZXN0Qml0WG9y
QXJnSW1tMzIpOgorICAgICAgICAoSlNDOjpCMzo6dGVzdEJpdFhvckltbUFyZzMyKToKKyAgICAg
ICAgKEpTQzo6QjM6OnRlc3RCaXRYb3JCaXRYb3JBcmdJbW1JbW0zMik6CisgICAgICAgIChKU0M6
OkIzOjp0ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1tMzIpOgorICAgICAgICAoSlNDOjpCMzo6cnVu
KToKKworMjAxNS0xMS0wMyAgQmVuamFtaW4gUG91bGFpbiAgPGJwb3VsYWluQGFwcGxlLmNvbT4K
KwogICAgICAgICBbSlNDXSBBZGQgQWlyIGxvd2VyaW5nIGZvciBCaXRPciBhbmQgaW1wb3ZlIEJp
dEFuZAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTUw
ODI3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9B
c3NlbWJsZXJYODZDb21tb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJYODZDb21tb24uaAppbmRleCA2N2FjYzViMjMzZjhlZTY3OTJjNzg1YTAyODBi
NWUyNmRjZGRmNzZmLi5hOGM0MjEwNzMyYjJkZDk4NDFjYjU2YzRhOGFjNTlhNzViMDVlMDRjIDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVy
WDg2Q29tbW9uLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlclg4NkNvbW1vbi5oCkBAIC00MTgsOSArNDE4LDkgQEAgcHVibGljOgogICAgIHZvaWQg
eG9yMzIoVHJ1c3RlZEltbTMyIGltbSwgUmVnaXN0ZXJJRCBkZXN0KQogICAgIHsKICAgICAgICAg
aWYgKGltbS5tX3ZhbHVlID09IC0xKQotICAgICAgICBtX2Fzc2VtYmxlci5ub3RsX3IoZGVzdCk7
CisgICAgICAgICAgICBtX2Fzc2VtYmxlci5ub3RsX3IoZGVzdCk7CiAgICAgICAgIGVsc2UKLSAg
ICAgICAgbV9hc3NlbWJsZXIueG9ybF9pcihpbW0ubV92YWx1ZSwgZGVzdCk7CisgICAgICAgICAg
ICBtX2Fzc2VtYmxlci54b3JsX2lyKGltbS5tX3ZhbHVlLCBkZXN0KTsKICAgICB9CiAKICAgICB2
b2lkIHhvcjMyKFJlZ2lzdGVySUQgc3JjLCBBZGRyZXNzIGRlc3QpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25zdDMyVmFsdWUuY3BwIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL0IzQ29uc3QzMlZhbHVlLmNwcAppbmRleCAyZDU5ZjQxYjJmMzdlNmEyYzk5YjFi
ZWQ1ZTBkMWYzNzczNTVhY2Q0Li5kMjBkYTZkYzc4ZjY0YmM5M2EyZTJiYTU5OTQ3YTMxOTAzMDli
YjAwIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25zdDMyVmFsdWUu
Y3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbnN0MzJWYWx1ZS5jcHAKQEAg
LTc1LDYgKzc1LDEzIEBAIFZhbHVlKiBDb25zdDMyVmFsdWU6OmJpdE9yQ29uc3RhbnQoUHJvY2Vk
dXJlJiBwcm9jLCBWYWx1ZSogb3RoZXIpIGNvbnN0CiAgICAgcmV0dXJuIHByb2MuYWRkPENvbnN0
MzJWYWx1ZT4ob3JpZ2luKCksIG1fdmFsdWUgfCBvdGhlci0+YXNJbnQzMigpKTsKIH0KIAorVmFs
dWUqIENvbnN0MzJWYWx1ZTo6Yml0WG9yQ29uc3RhbnQoUHJvY2VkdXJlJiBwcm9jLCBWYWx1ZSog
b3RoZXIpIGNvbnN0Cit7CisgICAgaWYgKCFvdGhlci0+aGFzSW50MzIoKSkKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisgICAgcmV0dXJuIHByb2MuYWRkPENvbnN0MzJWYWx1ZT4ob3JpZ2luKCks
IG1fdmFsdWUgXiBvdGhlci0+YXNJbnQzMigpKTsKK30KKwogVmFsdWUqIENvbnN0MzJWYWx1ZTo6
ZXF1YWxDb25zdGFudChQcm9jZWR1cmUmIHByb2MsIFZhbHVlKiBvdGhlcikgY29uc3QKIHsKICAg
ICBpZiAoIW90aGVyLT5oYXNJbnQzMigpKQpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRD
b3JlL2IzL0IzQ29uc3QzMlZhbHVlLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25z
dDMyVmFsdWUuaAppbmRleCBiZjAyODFlMTQyZWU4NWE3ZjYyZmNhNDE2MTg4NmMwNzdlNTMzNDcw
Li4yNDZlMGE0MDQ3NWM3YTNhY2Y5Y2FlNWI1ZjAzOTgxYjQ0Y2RlYzI2IDEwMDY0NAotLS0gYS9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25zdDMyVmFsdWUuaAorKysgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvQjNDb25zdDMyVmFsdWUuaApAQCAtNDYsNiArNDYsNyBAQCBwdWJsaWM6
CiAgICAgVmFsdWUqIHN1YkNvbnN0YW50KFByb2NlZHVyZSYsIFZhbHVlKiBvdGhlcikgY29uc3Qg
b3ZlcnJpZGU7CiAgICAgVmFsdWUqIGJpdEFuZENvbnN0YW50KFByb2NlZHVyZSYsIFZhbHVlKiBv
dGhlcikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgVmFsdWUqIGJpdE9yQ29uc3RhbnQoUHJvY2VkdXJl
JiwgVmFsdWUqIG90aGVyKSBjb25zdCBvdmVycmlkZTsKKyAgICBWYWx1ZSogYml0WG9yQ29uc3Rh
bnQoUHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBjb25zdCBvdmVycmlkZTsKICAgICBWYWx1ZSog
ZXF1YWxDb25zdGFudChQcm9jZWR1cmUmLCBWYWx1ZSogb3RoZXIpIGNvbnN0IG92ZXJyaWRlOwog
ICAgIFZhbHVlKiBub3RFcXVhbENvbnN0YW50KFByb2NlZHVyZSYsIFZhbHVlKiBvdGhlcikgY29u
c3Qgb3ZlcnJpZGU7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0Nv
bnN0NjRWYWx1ZS5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25zdDY0VmFsdWUu
Y3BwCmluZGV4IGVhZWZhMzFiOGUxMzhkOWE3ZDA5YjY2OGIzMmFlYjM2MzVjOGZiOGUuLjAyODQ3
ZWM2MzViNDNlYzE0YTk1ZDk5MGExMGMxOWYxZTBjMDg2MzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9iMy9CM0NvbnN0NjRWYWx1ZS5jcHAKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL2IzL0IzQ29uc3Q2NFZhbHVlLmNwcApAQCAtNzUsNiArNzUsMTMgQEAgVmFsdWUqIENv
bnN0NjRWYWx1ZTo6Yml0T3JDb25zdGFudChQcm9jZWR1cmUmIHByb2MsIFZhbHVlKiBvdGhlcikg
Y29uc3QKICAgICByZXR1cm4gcHJvYy5hZGQ8Q29uc3Q2NFZhbHVlPihvcmlnaW4oKSwgbV92YWx1
ZSB8IG90aGVyLT5hc0ludDY0KCkpOwogfQogCitWYWx1ZSogQ29uc3Q2NFZhbHVlOjpiaXRYb3JD
b25zdGFudChQcm9jZWR1cmUmIHByb2MsIFZhbHVlKiBvdGhlcikgY29uc3QKK3sKKyAgICBpZiAo
IW90aGVyLT5oYXNJbnQ2NCgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKyAgICByZXR1cm4g
cHJvYy5hZGQ8Q29uc3Q2NFZhbHVlPihvcmlnaW4oKSwgbV92YWx1ZSBeIG90aGVyLT5hc0ludDY0
KCkpOworfQorCiBWYWx1ZSogQ29uc3Q2NFZhbHVlOjplcXVhbENvbnN0YW50KFByb2NlZHVyZSYg
cHJvYywgVmFsdWUqIG90aGVyKSBjb25zdAogewogICAgIGlmICghb3RoZXItPmhhc0ludDY0KCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNDb25zdDY0VmFsdWUuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbnN0NjRWYWx1ZS5oCmluZGV4IGNmMzUyYTUw
YzE0OTZkNWVlOWU5NzEwMWQwNTZkNjIwNDQ4MzJlODIuLjk1MzEwODA0NjU5MWE0NDRkNjEwM2Uy
YWFkMDgwYTU3MDFjOGM5ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9C
M0NvbnN0NjRWYWx1ZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0NvbnN0NjRW
YWx1ZS5oCkBAIC00Niw2ICs0Niw3IEBAIHB1YmxpYzoKICAgICBWYWx1ZSogc3ViQ29uc3RhbnQo
UHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBjb25zdCBvdmVycmlkZTsKICAgICBWYWx1ZSogYml0
QW5kQ29uc3RhbnQoUHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBjb25zdCBvdmVycmlkZTsKICAg
ICBWYWx1ZSogYml0T3JDb25zdGFudChQcm9jZWR1cmUmLCBWYWx1ZSogb3RoZXIpIGNvbnN0IG92
ZXJyaWRlOworICAgIFZhbHVlKiBiaXRYb3JDb25zdGFudChQcm9jZWR1cmUmLCBWYWx1ZSogb3Ro
ZXIpIGNvbnN0IG92ZXJyaWRlOwogICAgIFZhbHVlKiBlcXVhbENvbnN0YW50KFByb2NlZHVyZSYs
IFZhbHVlKiBvdGhlcikgY29uc3Qgb3ZlcnJpZGU7CiAgICAgVmFsdWUqIG5vdEVxdWFsQ29uc3Rh
bnQoUHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBjb25zdCBvdmVycmlkZTsKIApkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJUb0Fpci5jcHAgYi9Tb3VyY2UvSmF2
YVNjcmlwdENvcmUvYjMvQjNMb3dlclRvQWlyLmNwcAppbmRleCA1MDMyMTg1MGY5MmYyMjAzODdj
ODEwMjQzZGJmMjBiYWQ5ODA5OTJlLi43NzM3NjVlNjY0NjUyOTJhYmYyN2E2MDZiMWU3N2ZjYTdm
OTAxZWIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNMb3dlclRvQWly
LmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNMb3dlclRvQWlyLmNwcApAQCAt
NjY5LDYgKzY2OSwyMSBAQCBwdWJsaWM6CiAgICAgICAgIH0KICAgICB9CiAKKyAgICBib29sIHRy
eVhvcihWYWx1ZSogbGVmdCwgVmFsdWUqIHJpZ2h0KQorICAgIHsKKyAgICAgICAgc3dpdGNoIChs
ZWZ0LT50eXBlKCkpIHsKKyAgICAgICAgY2FzZSBJbnQzMjoKKyAgICAgICAgICAgIGFwcGVuZEJp
bk9wPFhvcjMyLCBDb21tdXRhdGl2ZT4obGVmdCwgcmlnaHQpOworICAgICAgICAgICAgcmV0dXJu
IHRydWU7CisgICAgICAgIGNhc2UgSW50NjQ6CisgICAgICAgICAgICBhcHBlbmRCaW5PcDxYb3I2
NCwgQ29tbXV0YXRpdmU+KGxlZnQsIHJpZ2h0KTsKKyAgICAgICAgICAgIHJldHVybiB0cnVlOwor
ICAgICAgICBkZWZhdWx0OgorICAgICAgICAgICAgLy8gRklYTUU6IEltcGxlbWVudCBtb3JlIHR5
cGVzIQorICAgICAgICAgICAgcmV0dXJuIGZhbHNlOworICAgICAgICB9CisgICAgfQorCiAgICAg
Ym9vbCB0cnlTaGwoVmFsdWUqIHZhbHVlLCBWYWx1ZSogYW1vdW50KQogICAgIHsKICAgICAgICAg
QWlyOjpPcGNvZGUgb3Bjb2RlID0gdmFsdWUtPnR5cGUoKSA9PSBJbnQzMiA/IExzaGlmdDMyIDog
THNoaWZ0NjQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNMb3dlcmlu
Z01hdGNoZXIucGF0dGVybnMgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNMb3dlcmluZ01h
dGNoZXIucGF0dGVybnMKaW5kZXggN2NjZmRlNmE5NjJlNTFkZDI3NjA0YzVmZGMzNTM2ZjRiMGJi
MzFhZi4uNGI2NTJhNWJiZjMwMDQyMWY5OTE3ZWM1YmRmOTIxYjkwZTkwNzlkMSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzTG93ZXJpbmdNYXRjaGVyLnBhdHRlcm5zCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM0xvd2VyaW5nTWF0Y2hlci5wYXR0ZXJucwpA
QCAtMzQsNiArMzQsNyBAQCBBZGQgPSBBZGQobGVmdCwgcmlnaHQpCiBTdWIgPSBTdWIobGVmdCwg
cmlnaHQpCiBBbmQgPSBCaXRBbmQobGVmdCwgcmlnaHQpCiBPciA9IEJpdE9yKGxlZnQsIHJpZ2h0
KQorWG9yID0gQml0WG9yKGxlZnQsIHJpZ2h0KQogCiBTaGwgPSBTaGwodmFsdWUsIGFtb3VudCkK
IApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGgu
Y3BwIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzUmVkdWNlU3RyZW5ndGguY3BwCmluZGV4
IDNlMzYwMjViMTVkNDRjYzY0NjAzMDFkOTJiNTRmNzA4OGQzZDU0OTUuLjM1NjIwMTM1Y2E0ZThm
ZTEwNzQxNjJhN2UyMjdiMGQ4ZDJlNzczM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9iMy9CM1JlZHVjZVN0cmVuZ3RoLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YjMvQjNSZWR1Y2VTdHJlbmd0aC5jcHAKQEAgLTE5MSwxMyArMTkxLDEzIEBAIHByaXZhdGU6CiAK
ICAgICAgICAgICAgIC8vIFR1cm4gdGhpczogQml0T3IoY29uc3RhbnQxLCBjb25zdGFudDIpCiAg
ICAgICAgICAgICAvLyBJbnRvIHRoaXM6IGNvbnN0YW50MSB8IGNvbnN0YW50MgotICAgICAgICAg
ICAgaWYgKFZhbHVlKiBjb25zdGFudEJpdEFuZCA9IG1fdmFsdWUtPmNoaWxkKDApLT5iaXRPckNv
bnN0YW50KG1fcHJvYywgbV92YWx1ZS0+Y2hpbGQoMSkpKSB7Ci0gICAgICAgICAgICAgICAgcmVw
bGFjZVdpdGhOZXdWYWx1ZShjb25zdGFudEJpdEFuZCk7CisgICAgICAgICAgICBpZiAoVmFsdWUq
IGNvbnN0YW50Qml0T3IgPSBtX3ZhbHVlLT5jaGlsZCgwKS0+Yml0T3JDb25zdGFudChtX3Byb2Ms
IG1fdmFsdWUtPmNoaWxkKDEpKSkgeworICAgICAgICAgICAgICAgIHJlcGxhY2VXaXRoTmV3VmFs
dWUoY29uc3RhbnRCaXRPcik7CiAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICB9
CiAKLSAgICAgICAgICAgIC8vIFR1cm4gdGhpczogQml0QW5kKEJpdEFuZCh2YWx1ZSwgY29uc3Rh
bnQxKSwgY29uc3RhbnQyKQotICAgICAgICAgICAgLy8gSW50byB0aGlzOiBCaXRBbmQodmFsdWUs
IGNvbnN0YW50MSAmIGNvbnN0YW50MikuCisgICAgICAgICAgICAvLyBUdXJuIHRoaXM6IEJpdE9y
KEJpdE9yKHZhbHVlLCBjb25zdGFudDEpLCBjb25zdGFudDIpCisgICAgICAgICAgICAvLyBJbnRv
IHRoaXM6IEJpdE9yKHZhbHVlLCBjb25zdGFudDEgJiBjb25zdGFudDIpLgogICAgICAgICAgICAg
aWYgKG1fdmFsdWUtPmNoaWxkKDApLT5vcGNvZGUoKSA9PSBCaXRPcikgewogICAgICAgICAgICAg
ICAgIFZhbHVlKiBuZXdDb25zdGFudCA9IG1fdmFsdWUtPmNoaWxkKDEpLT5iaXRPckNvbnN0YW50
KG1fcHJvYywgbV92YWx1ZS0+Y2hpbGQoMCktPmNoaWxkKDEpKTsKICAgICAgICAgICAgICAgICBp
ZiAobmV3Q29uc3RhbnQpIHsKQEAgLTIzNSw2ICsyMzUsNTQgQEAgcHJpdmF0ZToKIAogICAgICAg
ICAgICAgYnJlYWs7CiAKKyAgICAgICAgY2FzZSBCaXRYb3I6CisgICAgICAgICAgICBoYW5kbGVD
b21tdXRhdGl2aXR5KCk7CisKKyAgICAgICAgICAgIC8vIFR1cm4gdGhpczogQml0WG9yKGNvbnN0
YW50MSwgY29uc3RhbnQyKQorICAgICAgICAgICAgLy8gSW50byB0aGlzOiBjb25zdGFudDEgXiBj
b25zdGFudDIKKyAgICAgICAgICAgIGlmIChWYWx1ZSogY29uc3RhbnRCaXRYb3IgPSBtX3ZhbHVl
LT5jaGlsZCgwKS0+Yml0WG9yQ29uc3RhbnQobV9wcm9jLCBtX3ZhbHVlLT5jaGlsZCgxKSkpIHsK
KyAgICAgICAgICAgICAgICByZXBsYWNlV2l0aE5ld1ZhbHVlKGNvbnN0YW50Qml0WG9yKTsKKyAg
ICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgLy8gVHVy
biB0aGlzOiBCaXRYb3IoQml0WG9yKHZhbHVlLCBjb25zdGFudDEpLCBjb25zdGFudDIpCisgICAg
ICAgICAgICAvLyBJbnRvIHRoaXM6IEJpdFhvcih2YWx1ZSwgY29uc3RhbnQxIF4gY29uc3RhbnQy
KS4KKyAgICAgICAgICAgIGlmIChtX3ZhbHVlLT5jaGlsZCgwKS0+b3Bjb2RlKCkgPT0gQml0WG9y
KSB7CisgICAgICAgICAgICAgICAgVmFsdWUqIG5ld0NvbnN0YW50ID0gbV92YWx1ZS0+Y2hpbGQo
MSktPmJpdFhvckNvbnN0YW50KG1fcHJvYywgbV92YWx1ZS0+Y2hpbGQoMCktPmNoaWxkKDEpKTsK
KyAgICAgICAgICAgICAgICBpZiAobmV3Q29uc3RhbnQpIHsKKyAgICAgICAgICAgICAgICAgICAg
bV9pbnNlcnRpb25TZXQuaW5zZXJ0VmFsdWUobV9pbmRleCwgbmV3Q29uc3RhbnQpOworICAgICAg
ICAgICAgICAgICAgICBtX3ZhbHVlLT5jaGlsZCgwKSA9IG1fdmFsdWUtPmNoaWxkKDApLT5jaGls
ZCgwKTsKKyAgICAgICAgICAgICAgICAgICAgbV92YWx1ZS0+Y2hpbGQoMSkgPSBuZXdDb25zdGFu
dDsKKyAgICAgICAgICAgICAgICAgICAgbV9jaGFuZ2VkID0gdHJ1ZTsKKyAgICAgICAgICAgICAg
ICB9CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8vIFR1cm4gdGhpczogQml0WG9yKHZh
bHVlWCwgdmFsdWVYKQorICAgICAgICAgICAgLy8gSW50byB0aGlzOiB6ZXJvLWNvbnN0YW50Lgor
ICAgICAgICAgICAgaWYgKG1fdmFsdWUtPmNoaWxkKDApID09IG1fdmFsdWUtPmNoaWxkKDEpKSB7
CisgICAgICAgICAgICAgICAgVmFsdWUqIHplcm9Db25zdGFudDsKKyAgICAgICAgICAgICAgICBp
ZiAobV92YWx1ZS0+dHlwZSgpID09IEludDMyKQorICAgICAgICAgICAgICAgICAgICB6ZXJvQ29u
c3RhbnQgPSBtX3Byb2MuYWRkPENvbnN0MzJWYWx1ZT4obV92YWx1ZS0+b3JpZ2luKCksIDApOwor
ICAgICAgICAgICAgICAgIGVsc2UgaWYgKG1fdmFsdWUtPnR5cGUoKSA9PSBJbnQ2NCkKKyAgICAg
ICAgICAgICAgICAgICAgemVyb0NvbnN0YW50ID0gbV9wcm9jLmFkZDxDb25zdDY0VmFsdWU+KG1f
dmFsdWUtPm9yaWdpbigpLCAwKTsKKyAgICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAg
ICAgICAgICAgUkVMRUFTRV9BU1NFUlQobV92YWx1ZS0+dHlwZSgpID09IERvdWJsZSk7CisgICAg
ICAgICAgICAgICAgICAgIHplcm9Db25zdGFudCA9IG1fcHJvYy5hZGQ8Q29uc3REb3VibGVWYWx1
ZT4obV92YWx1ZS0+b3JpZ2luKCksIDApOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAg
ICAgICByZXBsYWNlV2l0aE5ld1ZhbHVlKHplcm9Db25zdGFudCk7CisgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIC8vIFR1cm4gdGhpczogQml0WG9y
KHZhbHVlLCB6ZXJvLWNvbnN0YW50KQorICAgICAgICAgICAgLy8gSW50byB0aGlzOiB2YWx1ZS4K
KyAgICAgICAgICAgIGlmIChtX3ZhbHVlLT5jaGlsZCgxKS0+aXNJbnQoMCkpIHsKKyAgICAgICAg
ICAgICAgICBtX3ZhbHVlLT5yZXBsYWNlV2l0aElkZW50aXR5KG1fdmFsdWUtPmNoaWxkKDApKTsK
KyAgICAgICAgICAgICAgICBtX2NoYW5nZWQgPSB0cnVlOworICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBicmVhazsKKwogICAgICAgICBjYXNlIExv
YWQ4WjoKICAgICAgICAgY2FzZSBMb2FkOFM6CiAgICAgICAgIGNhc2UgTG9hZDE2WjoKZGlmZiAt
LWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmNwcCBiL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmNwcAppbmRleCA2ZjY4MzRhODU1NzUzMjgyODU3ZmQ3MTBm
MDYwNjY2OGVlNmM2NzliLi5kYTMzMWNlNTE1NDkxODU1YTBlZjE1YTM0NTM1MDdlZGNkMTkzMDYz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5jcHAKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0IzVmFsdWUuY3BwCkBAIC0xMzcsNiArMTM3LDExIEBA
IFZhbHVlKiBWYWx1ZTo6Yml0T3JDb25zdGFudChQcm9jZWR1cmUmLCBWYWx1ZSopIGNvbnN0CiAg
ICAgcmV0dXJuIG51bGxwdHI7CiB9CiAKK1ZhbHVlKiBWYWx1ZTo6Yml0WG9yQ29uc3RhbnQoUHJv
Y2VkdXJlJiwgVmFsdWUqKSBjb25zdAoreworICAgIHJldHVybiBudWxscHRyOworfQorCiBWYWx1
ZSogVmFsdWU6OmVxdWFsQ29uc3RhbnQoUHJvY2VkdXJlJiwgVmFsdWUqKSBjb25zdAogewogICAg
IHJldHVybiBudWxscHRyOwpkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2IzL0Iz
VmFsdWUuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9CM1ZhbHVlLmgKaW5kZXggMjJjM2Nh
ZDAwM2M5YjJlNDdlY2ZhZjk3MDE3ZmE2ODNkMGE1ZmM5OC4uM2RkMjBiZjU4OWQ5NzQxZjQwNzhm
MmMxOGI3ZGM2YTc0NGFjYTg0ZCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Iz
L0IzVmFsdWUuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvQjNWYWx1ZS5oCkBAIC0x
MTQsNiArMTE0LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgVmFsdWUqIHN1YkNvbnN0YW50KFBy
b2NlZHVyZSYsIFZhbHVlKiBvdGhlcikgY29uc3Q7CiAgICAgdmlydHVhbCBWYWx1ZSogYml0QW5k
Q29uc3RhbnQoUHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBjb25zdDsKICAgICB2aXJ0dWFsIFZh
bHVlKiBiaXRPckNvbnN0YW50KFByb2NlZHVyZSYsIFZhbHVlKiBvdGhlcikgY29uc3Q7CisgICAg
dmlydHVhbCBWYWx1ZSogYml0WG9yQ29uc3RhbnQoUHJvY2VkdXJlJiwgVmFsdWUqIG90aGVyKSBj
b25zdDsKICAgICB2aXJ0dWFsIFZhbHVlKiBlcXVhbENvbnN0YW50KFByb2NlZHVyZSYsIFZhbHVl
KiBvdGhlcikgY29uc3Q7CiAgICAgdmlydHVhbCBWYWx1ZSogbm90RXF1YWxDb25zdGFudChQcm9j
ZWR1cmUmLCBWYWx1ZSogb3RoZXIpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvYWlyL0Fpck9wY29kZS5vcGNvZGVzIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2IzL2Fpci9BaXJPcGNvZGUub3Bjb2RlcwppbmRleCAzZDAyNTAyN2M4MTAxY2E2Mjc5YzJkNzk0
ZjFlMjUxNzg0N2E4N2ZlLi5kZDM1MWMyYmZmOWFkYzM0M2U0OTkyYzhkMTQyMTZmNmJiMTBmN2Q5
IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvYWlyL0Fpck9wY29kZS5vcGNv
ZGVzCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9iMy9haXIvQWlyT3Bjb2RlLm9wY29kZXMK
QEAgLTExOCw2ICsxMTgsMTggQEAgT3I2NCBVOkcsIFVEOkcKICAgICBUbXAsIFRtcAogICAgIElt
bSwgVG1wCiAKK1hvcjMyIFU6RywgVUQ6RworICAgIFRtcCwgVG1wCisgICAgSW1tLCBUbXAKKyAg
ICBUbXAsIEFkZHIKKyAgICBBZGRyLCBUbXAKKyAgICBJbW0sIEFkZHIKKworWG9yNjQgVTpHLCBV
RDpHCisgICAgVG1wLCBUbXAKKyAgICBUbXAsIEFkZHIKKyAgICBJbW0sIFRtcAorCiBMc2hpZnQ2
NCBVOkcsIFVEOkcKICAgICBUbXAqLCBUbXAKICAgICBJbW0sIFRtcApkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL2IzL3Rlc3RiMy5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUv
YjMvdGVzdGIzLmNwcAppbmRleCBkY2YyNDg5ZGQ0YzFiNGY3Zjc5YWNiYTZhMjY0MzUyZGNhMjdk
ZjAzLi5lNWJmYmQyNzdjNGEyNzE3Mzc5NWYzMTMxODdhZTA2MTFmMGUyMmYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYjMvdGVzdGIzLmNwcAorKysgYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvYjMvdGVzdGIzLmNwcApAQCAtNzM4LDYgKzczOCwyMzQgQEAgdm9pZCB0ZXN0Qml0
T3JJbW1CaXRPckFyZ0ltbTMyKGludCBhLCBpbnQgYiwgaW50IGMpCiAgICAgQ0hFQ0soY29tcGls
ZUFuZFJ1bjxpbnQ+KHByb2MsIGIpID09IChhIHwgKGIgfCBjKSkpOwogfQogCit2b2lkIHRlc3RC
aXRYb3JBcmdzKGludDY0X3QgYSwgaW50NjRfdCBiKQoreworICAgIFByb2NlZHVyZSBwcm9jOwor
ICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9jLmFkZEJsb2NrKCk7CisgICAgcm9vdC0+YXBwZW5k
TmV3PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCksCisgICAg
ICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRYb3IsIE9y
aWdpbigpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+KHBy
b2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQUjApLAorICAgICAgICAgICAgcm9vdC0+
YXBwZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1
bWVudEdQUjEpKSk7CisKKyAgICBDSEVDSyhjb21waWxlQW5kUnVuPGludDY0X3Q+KHByb2MsIGEs
IGIpID09IChhIF4gYikpOworfQorCit2b2lkIHRlc3RCaXRYb3JTYW1lQXJnKGludDY0X3QgYSkK
K3sKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0gcHJvYy5hZGRC
bG9jaygpOworICAgIFZhbHVlKiBhcmd1bWVudCA9IHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJl
Z1ZhbHVlPihwcm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKTsKKyAgICByb290
LT5hcHBlbmROZXc8Q29udHJvbFZhbHVlPigKKyAgICAgICAgcHJvYywgUmV0dXJuLCBPcmlnaW4o
KSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAgIHByb2MsIEJp
dFhvciwgT3JpZ2luKCksCisgICAgICAgICAgICBhcmd1bWVudCwKKyAgICAgICAgICAgIGFyZ3Vt
ZW50KSk7CisKKyAgICBDSEVDSyghY29tcGlsZUFuZFJ1bjxpbnQ2NF90Pihwcm9jLCBhKSk7Cit9
CisKK3ZvaWQgdGVzdEJpdFhvckltbXMoaW50NjRfdCBhLCBpbnQ2NF90IGIpCit7CisgICAgUHJv
Y2VkdXJlIHByb2M7CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2soKTsKKyAg
ICByb290LT5hcHBlbmROZXc8Q29udHJvbFZhbHVlPigKKyAgICAgICAgcHJvYywgUmV0dXJuLCBP
cmlnaW4oKSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAgIHBy
b2MsIEJpdFhvciwgT3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBlbmROZXc8Q29uc3Q2
NFZhbHVlPihwcm9jLCBPcmlnaW4oKSwgYSksCisgICAgICAgICAgICByb290LT5hcHBlbmROZXc8
Q29uc3Q2NFZhbHVlPihwcm9jLCBPcmlnaW4oKSwgYikpKTsKKworICAgIENIRUNLKGNvbXBpbGVB
bmRSdW48aW50NjRfdD4ocHJvYykgPT0gKGEgXiBiKSk7Cit9CisKK3ZvaWQgdGVzdEJpdFhvckFy
Z0ltbShpbnQ2NF90IGEsIGludDY0X3QgYikKK3sKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBC
YXNpY0Jsb2NrKiByb290ID0gcHJvYy5hZGRCbG9jaygpOworICAgIHJvb3QtPmFwcGVuZE5ldzxD
b250cm9sVmFsdWU+KAorICAgICAgICBwcm9jLCBSZXR1cm4sIE9yaWdpbigpLAorICAgICAgICBy
b290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAgICAgICAgcHJvYywgQml0WG9yLCBPcmlnaW4o
KSwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihwcm9jLCBP
cmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKSwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVu
ZE5ldzxDb25zdDY0VmFsdWU+KHByb2MsIE9yaWdpbigpLCBiKSkpOworCisgICAgQ0hFQ0soY29t
cGlsZUFuZFJ1bjxpbnQ2NF90Pihwcm9jLCBhKSA9PSAoYSBeIGIpKTsKK30KKwordm9pZCB0ZXN0
Qml0WG9ySW1tQXJnKGludDY0X3QgYSwgaW50NjRfdCBiKQoreworICAgIFByb2NlZHVyZSBwcm9j
OworICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9jLmFkZEJsb2NrKCk7CisgICAgcm9vdC0+YXBw
ZW5kTmV3PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCksCisg
ICAgICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRYb3Is
IE9yaWdpbigpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0NjRWYWx1ZT4ocHJv
YywgT3JpZ2luKCksIGEpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PEFyZ3VtZW50UmVn
VmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQUjApKSk7CisKKyAgICBD
SEVDSyhjb21waWxlQW5kUnVuPGludDY0X3Q+KHByb2MsIGIpID09IChhIF4gYikpOworfQorCit2
b2lkIHRlc3RCaXRYb3JCaXRYb3JBcmdJbW1JbW0oaW50NjRfdCBhLCBpbnQ2NF90IGIsIGludDY0
X3QgYykKK3sKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0gcHJv
Yy5hZGRCbG9jaygpOworICAgIFZhbHVlKiBpbm5lckJpdFhvciA9IHJvb3QtPmFwcGVuZE5ldzxW
YWx1ZT4oCisgICAgICAgIHByb2MsIEJpdFhvciwgT3JpZ2luKCksCisgICAgICAgIHJvb3QtPmFw
cGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihwcm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1l
bnRHUFIwKSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0NjRWYWx1ZT4ocHJvYywgT3Jp
Z2luKCksIGIpKTsKKyAgICByb290LT5hcHBlbmROZXc8Q29udHJvbFZhbHVlPigKKyAgICAgICAg
cHJvYywgUmV0dXJuLCBPcmlnaW4oKSwKKyAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigK
KyAgICAgICAgICAgIHByb2MsIEJpdFhvciwgT3JpZ2luKCksCisgICAgICAgICAgICBpbm5lckJp
dFhvciwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxDb25zdDY0VmFsdWU+KHByb2MsIE9y
aWdpbigpLCBjKSkpOworCisgICAgQ0hFQ0soY29tcGlsZUFuZFJ1bjxpbnQ2NF90Pihwcm9jLCBh
KSA9PSAoKGEgXiBiKSBeIGMpKTsKK30KKwordm9pZCB0ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1t
KGludDY0X3QgYSwgaW50NjRfdCBiLCBpbnQ2NF90IGMpCit7CisgICAgUHJvY2VkdXJlIHByb2M7
CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2soKTsKKyAgICBWYWx1ZSogaW5u
ZXJCaXRYb3IgPSByb290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAgICBwcm9jLCBCaXRYb3Is
IE9yaWdpbigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJv
YywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50R1BSMCksCisgICAgICAgIHJvb3QtPmFwcGVu
ZE5ldzxDb25zdDY0VmFsdWU+KHByb2MsIE9yaWdpbigpLCBjKSk7CisgICAgcm9vdC0+YXBwZW5k
TmV3PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCksCisgICAg
ICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRYb3IsIE9y
aWdpbigpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0NjRWYWx1ZT4ocHJvYywg
T3JpZ2luKCksIGEpLAorICAgICAgICAgICAgaW5uZXJCaXRYb3IpKTsKKworICAgIENIRUNLKGNv
bXBpbGVBbmRSdW48aW50NjRfdD4ocHJvYywgYikgPT0gKGEgXiAoYiBeIGMpKSk7Cit9CisKK3Zv
aWQgdGVzdEJpdFhvckFyZ3MzMihpbnQgYSwgaW50IGIpCit7CisgICAgUHJvY2VkdXJlIHByb2M7
CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2soKTsKKyAgICByb290LT5hcHBl
bmROZXc8Q29udHJvbFZhbHVlPigKKyAgICAgICAgcHJvYywgUmV0dXJuLCBPcmlnaW4oKSwKKyAg
ICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAgIHByb2MsIEJpdFhvciwg
T3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAgICAg
ICAgICAgIHByb2MsIFRydW5jLCBPcmlnaW4oKSwKKyAgICAgICAgICAgICAgICByb290LT5hcHBl
bmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50
R1BSMCkpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAg
ICAgICBwcm9jLCBUcnVuYywgT3JpZ2luKCksCisgICAgICAgICAgICAgICAgcm9vdC0+YXBwZW5k
TmV3PEFyZ3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1bWVudEdQ
UjEpKSkpOworCisgICAgQ0hFQ0soY29tcGlsZUFuZFJ1bjxpbnQ+KHByb2MsIGEsIGIpID09IChh
IF4gYikpOworfQorCit2b2lkIHRlc3RCaXRYb3JTYW1lQXJnMzIoaW50IGEpCit7CisgICAgUHJv
Y2VkdXJlIHByb2M7CisgICAgQmFzaWNCbG9jayogcm9vdCA9IHByb2MuYWRkQmxvY2soKTsKKyAg
ICBWYWx1ZSogYXJndW1lbnQgPSByb290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAgICBwcm9j
LCBUcnVuYywgT3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBlbmROZXc8QXJndW1lbnRS
ZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50R1BSMCkpOworICAgIHJv
b3QtPmFwcGVuZE5ldzxDb250cm9sVmFsdWU+KAorICAgICAgICBwcm9jLCBSZXR1cm4sIE9yaWdp
bigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+KAorICAgICAgICAgICAgcHJvYywg
Qml0WG9yLCBPcmlnaW4oKSwKKyAgICAgICAgICAgIGFyZ3VtZW50LAorICAgICAgICAgICAgYXJn
dW1lbnQpKTsKKworICAgIENIRUNLKCFjb21waWxlQW5kUnVuPGludD4ocHJvYywgYSkpOworfQor
Cit2b2lkIHRlc3RCaXRYb3JJbW1zMzIoaW50IGEsIGludCBiKQoreworICAgIFByb2NlZHVyZSBw
cm9jOworICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9jLmFkZEJsb2NrKCk7CisgICAgcm9vdC0+
YXBwZW5kTmV3PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCks
CisgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRY
b3IsIE9yaWdpbigpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0MzJWYWx1ZT4o
cHJvYywgT3JpZ2luKCksIGEpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0MzJW
YWx1ZT4ocHJvYywgT3JpZ2luKCksIGIpKSk7CisKKyAgICBDSEVDSyhjb21waWxlQW5kUnVuPGlu
dD4ocHJvYykgPT0gKGEgXiBiKSk7Cit9CisKK3ZvaWQgdGVzdEJpdFhvckFyZ0ltbTMyKGludCBh
LCBpbnQgYikKK3sKKyAgICBQcm9jZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0g
cHJvYy5hZGRCbG9jaygpOworICAgIHJvb3QtPmFwcGVuZE5ldzxDb250cm9sVmFsdWU+KAorICAg
ICAgICBwcm9jLCBSZXR1cm4sIE9yaWdpbigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8VmFs
dWU+KAorICAgICAgICAgICAgcHJvYywgQml0WG9yLCBPcmlnaW4oKSwKKyAgICAgICAgICAgIHJv
b3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICAgICAgcHJvYywgVHJ1bmMsIE9yaWdp
bigpLAorICAgICAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihw
cm9jLCBPcmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKSksCisgICAgICAgICAgICByb290
LT5hcHBlbmROZXc8Q29uc3QzMlZhbHVlPihwcm9jLCBPcmlnaW4oKSwgYikpKTsKKworICAgIENI
RUNLKGNvbXBpbGVBbmRSdW48aW50Pihwcm9jLCBhKSA9PSAoYSBeIGIpKTsKK30KKwordm9pZCB0
ZXN0Qml0WG9ySW1tQXJnMzIoaW50IGEsIGludCBiKQoreworICAgIFByb2NlZHVyZSBwcm9jOwor
ICAgIEJhc2ljQmxvY2sqIHJvb3QgPSBwcm9jLmFkZEJsb2NrKCk7CisgICAgcm9vdC0+YXBwZW5k
TmV3PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCksCisgICAg
ICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRYb3IsIE9y
aWdpbigpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PENvbnN0MzJWYWx1ZT4ocHJvYywg
T3JpZ2luKCksIGEpLAorICAgICAgICAgICAgcm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAg
ICAgICAgICAgICBwcm9jLCBUcnVuYywgT3JpZ2luKCksCisgICAgICAgICAgICAgICAgcm9vdC0+
YXBwZW5kTmV3PEFyZ3VtZW50UmVnVmFsdWU+KHByb2MsIE9yaWdpbigpLCBHUFJJbmZvOjphcmd1
bWVudEdQUjApKSkpOworCisgICAgQ0hFQ0soY29tcGlsZUFuZFJ1bjxpbnQ+KHByb2MsIGIpID09
IChhIF4gYikpOworfQorCit2b2lkIHRlc3RCaXRYb3JCaXRYb3JBcmdJbW1JbW0zMihpbnQgYSwg
aW50IGIsIGludCBjKQoreworICAgIFByb2NlZHVyZSBwcm9jOworICAgIEJhc2ljQmxvY2sqIHJv
b3QgPSBwcm9jLmFkZEJsb2NrKCk7CisgICAgVmFsdWUqIGlubmVyQml0WG9yID0gcm9vdC0+YXBw
ZW5kTmV3PFZhbHVlPigKKyAgICAgICAgcHJvYywgQml0WG9yLCBPcmlnaW4oKSwKKyAgICAgICAg
cm9vdC0+YXBwZW5kTmV3PFZhbHVlPigKKyAgICAgICAgICAgIHByb2MsIFRydW5jLCBPcmlnaW4o
KSwKKyAgICAgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxBcmd1bWVudFJlZ1ZhbHVlPihwcm9jLCBP
cmlnaW4oKSwgR1BSSW5mbzo6YXJndW1lbnRHUFIwKSksCisgICAgICAgIHJvb3QtPmFwcGVuZE5l
dzxDb25zdDMyVmFsdWU+KHByb2MsIE9yaWdpbigpLCBiKSk7CisgICAgcm9vdC0+YXBwZW5kTmV3
PENvbnRyb2xWYWx1ZT4oCisgICAgICAgIHByb2MsIFJldHVybiwgT3JpZ2luKCksCisgICAgICAg
IHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgICAgICBwcm9jLCBCaXRYb3IsIE9yaWdp
bigpLAorICAgICAgICAgICAgaW5uZXJCaXRYb3IsCisgICAgICAgICAgICByb290LT5hcHBlbmRO
ZXc8Q29uc3QzMlZhbHVlPihwcm9jLCBPcmlnaW4oKSwgYykpKTsKKworICAgIENIRUNLKGNvbXBp
bGVBbmRSdW48aW50Pihwcm9jLCBhKSA9PSAoKGEgXiBiKSBeIGMpKTsKK30KKwordm9pZCB0ZXN0
Qml0WG9ySW1tQml0WG9yQXJnSW1tMzIoaW50IGEsIGludCBiLCBpbnQgYykKK3sKKyAgICBQcm9j
ZWR1cmUgcHJvYzsKKyAgICBCYXNpY0Jsb2NrKiByb290ID0gcHJvYy5hZGRCbG9jaygpOworICAg
IFZhbHVlKiBpbm5lckJpdFhvciA9IHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisgICAgICAgIHBy
b2MsIEJpdFhvciwgT3JpZ2luKCksCisgICAgICAgIHJvb3QtPmFwcGVuZE5ldzxWYWx1ZT4oCisg
ICAgICAgICAgICBwcm9jLCBUcnVuYywgT3JpZ2luKCksCisgICAgICAgICAgICByb290LT5hcHBl
bmROZXc8QXJndW1lbnRSZWdWYWx1ZT4ocHJvYywgT3JpZ2luKCksIEdQUkluZm86OmFyZ3VtZW50
R1BSMCkpLAorICAgICAgICByb290LT5hcHBlbmROZXc8Q29uc3QzMlZhbHVlPihwcm9jLCBPcmln
aW4oKSwgYykpOworICAgIHJvb3QtPmFwcGVuZE5ldzxDb250cm9sVmFsdWU+KAorICAgICAgICBw
cm9jLCBSZXR1cm4sIE9yaWdpbigpLAorICAgICAgICByb290LT5hcHBlbmROZXc8VmFsdWU+KAor
ICAgICAgICAgICAgcHJvYywgQml0WG9yLCBPcmlnaW4oKSwKKyAgICAgICAgICAgIHJvb3QtPmFw
cGVuZE5ldzxDb25zdDMyVmFsdWU+KHByb2MsIE9yaWdpbigpLCBhKSwKKyAgICAgICAgICAgIGlu
bmVyQml0WG9yKSk7CisKKyAgICBDSEVDSyhjb21waWxlQW5kUnVuPGludD4ocHJvYywgYikgPT0g
KGEgXiAoYiBeIGMpKSk7Cit9CisKIHZvaWQgdGVzdFN0b3JlKGludCB2YWx1ZSkKIHsKICAgICBQ
cm9jZWR1cmUgcHJvYzsKQEAgLTE4NjMsNiArMjA5MSw1OSBAQCB2b2lkIHJ1bihjb25zdCBjaGFy
KiBmaWx0ZXIpCiAgICAgUlVOKHRlc3RCaXRPckltbUJpdE9yQXJnSW1tMzIoNiwgMSwgNikpOwog
ICAgIFJVTih0ZXN0Qml0T3JJbW1CaXRPckFyZ0ltbTMyKDI0LCAweGZmZmYsIDcpKTsKIAorICAg
IFJVTih0ZXN0Qml0WG9yQXJncyg0MywgNDMpKTsKKyAgICBSVU4odGVzdEJpdFhvckFyZ3MoNDMs
IDApKTsKKyAgICBSVU4odGVzdEJpdFhvckFyZ3MoMTAsIDMpKTsKKyAgICBSVU4odGVzdEJpdFhv
ckFyZ3MoNDIsIDB4ZmZmZmZmZmZmZmZmZmZmZikpOworICAgIFJVTih0ZXN0Qml0WG9yU2FtZUFy
Zyg0MykpOworICAgIFJVTih0ZXN0Qml0WG9yU2FtZUFyZygwKSk7CisgICAgUlVOKHRlc3RCaXRY
b3JTYW1lQXJnKDMpKTsKKyAgICBSVU4odGVzdEJpdFhvclNhbWVBcmcoMHhmZmZmZmZmZmZmZmZm
ZmZmKSk7CisgICAgUlVOKHRlc3RCaXRYb3JJbW1zKDQzLCA0MykpOworICAgIFJVTih0ZXN0Qml0
WG9ySW1tcyg0MywgMCkpOworICAgIFJVTih0ZXN0Qml0WG9ySW1tcygxMCwgMykpOworICAgIFJV
Tih0ZXN0Qml0WG9ySW1tcyg0MiwgMHhmZmZmZmZmZmZmZmZmZmZmKSk7CisgICAgUlVOKHRlc3RC
aXRYb3JBcmdJbW0oNDMsIDQzKSk7CisgICAgUlVOKHRlc3RCaXRYb3JBcmdJbW0oNDMsIDApKTsK
KyAgICBSVU4odGVzdEJpdFhvckFyZ0ltbSgxMCwgMykpOworICAgIFJVTih0ZXN0Qml0WG9yQXJn
SW1tKDQyLCAweGZmZmZmZmZmZmZmZmZmZmYpKTsKKyAgICBSVU4odGVzdEJpdFhvckltbUFyZyg0
MywgNDMpKTsKKyAgICBSVU4odGVzdEJpdFhvckltbUFyZyg0MywgMCkpOworICAgIFJVTih0ZXN0
Qml0WG9ySW1tQXJnKDEwLCAzKSk7CisgICAgUlVOKHRlc3RCaXRYb3JJbW1BcmcoNDIsIDB4ZmZm
ZmZmZmZmZmZmZmZmZikpOworICAgIFJVTih0ZXN0Qml0WG9yQml0WG9yQXJnSW1tSW1tKDIsIDcs
IDMpKTsKKyAgICBSVU4odGVzdEJpdFhvckJpdFhvckFyZ0ltbUltbSgxLCA2LCA2KSk7CisgICAg
UlVOKHRlc3RCaXRYb3JCaXRYb3JBcmdJbW1JbW0oMHhmZmZmLCAyNCwgNykpOworICAgIFJVTih0
ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1tKDcsIDIsIDMpKTsKKyAgICBSVU4odGVzdEJpdFhvcklt
bUJpdFhvckFyZ0ltbSg2LCAxLCA2KSk7CisgICAgUlVOKHRlc3RCaXRYb3JJbW1CaXRYb3JBcmdJ
bW0oMjQsIDB4ZmZmZiwgNykpOworICAgIFJVTih0ZXN0Qml0WG9yQXJnczMyKDQzLCA0MykpOwor
ICAgIFJVTih0ZXN0Qml0WG9yQXJnczMyKDQzLCAwKSk7CisgICAgUlVOKHRlc3RCaXRYb3JBcmdz
MzIoMTAsIDMpKTsKKyAgICBSVU4odGVzdEJpdFhvckFyZ3MzMig0MiwgMHhmZmZmZmZmZikpOwor
ICAgIFJVTih0ZXN0Qml0WG9yU2FtZUFyZzMyKDQzKSk7CisgICAgUlVOKHRlc3RCaXRYb3JTYW1l
QXJnMzIoMCkpOworICAgIFJVTih0ZXN0Qml0WG9yU2FtZUFyZzMyKDMpKTsKKyAgICBSVU4odGVz
dEJpdFhvclNhbWVBcmczMigweGZmZmZmZmZmKSk7CisgICAgUlVOKHRlc3RCaXRYb3JJbW1zMzIo
NDMsIDQzKSk7CisgICAgUlVOKHRlc3RCaXRYb3JJbW1zMzIoNDMsIDApKTsKKyAgICBSVU4odGVz
dEJpdFhvckltbXMzMigxMCwgMykpOworICAgIFJVTih0ZXN0Qml0WG9ySW1tczMyKDQyLCAweGZm
ZmZmZmZmKSk7CisgICAgUlVOKHRlc3RCaXRYb3JBcmdJbW0zMig0MywgNDMpKTsKKyAgICBSVU4o
dGVzdEJpdFhvckFyZ0ltbTMyKDQzLCAwKSk7CisgICAgUlVOKHRlc3RCaXRYb3JBcmdJbW0zMigx
MCwgMykpOworICAgIFJVTih0ZXN0Qml0WG9yQXJnSW1tMzIoNDIsIDB4ZmZmZmZmZmYpKTsKKyAg
ICBSVU4odGVzdEJpdFhvckltbUFyZzMyKDQzLCA0MykpOworICAgIFJVTih0ZXN0Qml0WG9ySW1t
QXJnMzIoNDMsIDApKTsKKyAgICBSVU4odGVzdEJpdFhvckltbUFyZzMyKDEwLCAzKSk7CisgICAg
UlVOKHRlc3RCaXRYb3JJbW1BcmczMig0MiwgMHhmZmZmZmZmZikpOworICAgIFJVTih0ZXN0Qml0
WG9yQml0WG9yQXJnSW1tSW1tMzIoMiwgNywgMykpOworICAgIFJVTih0ZXN0Qml0WG9yQml0WG9y
QXJnSW1tSW1tMzIoMSwgNiwgNikpOworICAgIFJVTih0ZXN0Qml0WG9yQml0WG9yQXJnSW1tSW1t
MzIoMHhmZmZmLCAyNCwgNykpOworICAgIFJVTih0ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1tMzIo
NywgMiwgMykpOworICAgIFJVTih0ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1tMzIoNiwgMSwgNikp
OworICAgIFJVTih0ZXN0Qml0WG9ySW1tQml0WG9yQXJnSW1tMzIoMjQsIDB4ZmZmZiwgNykpOwor
CiAgICAgUlVOKHRlc3RTdG9yZSg0NCkpOwogICAgIFJVTih0ZXN0U3RvcmVDb25zdGFudCg0OSkp
OwogICAgIFJVTih0ZXN0U3RvcmVDb25zdGFudFB0cig0OSkpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>