<?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>130041</bug_id>
          
          <creation_ts>2014-03-10 14:30:24 -0700</creation_ts>
          <short_desc>Repatch should save and restore all used registers - not just temp ones - when making a call</short_desc>
          <delta_ts>2014-03-10 16:26:13 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          
          <blocked>112840</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Filip Pizlo">fpizlo</reporter>
          <assigned_to name="Filip Pizlo">fpizlo</assigned_to>
          <cc>barraclough</cc>
    
    <cc>commit-queue</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mhahnenberg</cc>
    
    <cc>mmirman</cc>
    
    <cc>msaboff</cc>
    
    <cc>nrotem</cc>
    
    <cc>oliver</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>989053</commentid>
    <comment_count>0</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2014-03-10 14:30:24 -0700</bug_when>
    <thetext>Patch forthcoming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989055</commentid>
    <comment_count>1</comment_count>
      <attachid>226335</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2014-03-10 14:32:47 -0700</bug_when>
    <thetext>Created attachment 226335
the patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989056</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-03-10 14:34:25 -0700</bug_when>
    <thetext>Attachment 226335 did not pass style-queue:


ERROR: Source/JavaScriptCore/jit/ScratchRegisterAllocator.h:72:  The parameter name &quot;scratchBuffer&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
ERROR: Source/JavaScriptCore/jit/ScratchRegisterAllocator.h:74:  The parameter name &quot;scratchBuffer&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 2 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989058</commentid>
    <comment_count>3</comment_count>
      <attachid>226335</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-03-10 14:37:43 -0700</bug_when>
    <thetext>Comment on attachment 226335
the patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>989108</commentid>
    <comment_count>4</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2014-03-10 16:26:13 -0700</bug_when>
    <thetext>Landed in http://trac.webkit.org/changeset/165414</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>226335</attachid>
            <date>2014-03-10 14:32:47 -0700</date>
            <delta_ts>2014-03-10 14:37:42 -0700</delta_ts>
            <desc>the patch</desc>
            <filename>blah.patch</filename>
            <type>text/plain</type>
            <size>16059</size>
            <attacher name="Filip Pizlo">fpizlo</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTY1NDA0KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBA
CisyMDE0LTAzLTEwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CisKKyAgICAgICAg
UmVwYXRjaCBzaG91bGQgc2F2ZSBhbmQgcmVzdG9yZSBhbGwgdXNlZCByZWdpc3RlcnMgLSBub3Qg
anVzdCB0ZW1wIG9uZXMgLSB3aGVuIG1ha2luZyBhIGNhbGwKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzMDA0MQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorICAgICAgICAKKyAgICAgICAgVGhlIHNhdmUvcmVzdG9yZSBjb2Rl
IHdhcyB3cml0dGVuIGJhY2sgd2hlbiB0aGUgb25seSBjbGllbnQgd2FzIHRoZSBERkcsIHdoaWNo
IG9ubHkgdXNlcyBhCisgICAgICAgIHN1YnNldCBvZiBoYXJkd2FyZSByZWdpc3RlcnM6IHRoZSAi
dGVtcCIgcmVnaXN0ZXJzIGluIG91ciBsaW5nby4gQnV0IHRoZSBGVEwgbWF5IHVzZSBtYW55Cisg
ICAgICAgIG90aGVyIHJlZ2lzdGVycywgZXNwZWNpYWxseSBvbiBBUk02NC4gVGhlIGZhY3QgdGhh
dCBSZXBhdGNoIGRvZXNuJ3Qga25vdyB0byBzYXZlIHRob3NlIGNhbgorICAgICAgICBsZWFkIHRv
IGRhdGEgY29ycnVwdGlvbiBvbiBBUk02NC4gCisKKyAgICAgICAgKiBqaXQvUmVnaXN0ZXJTZXQu
Y3BwOgorICAgICAgICAoSlNDOjpSZWdpc3RlclNldDo6Y2FsbGVlU2F2ZVJlZ2lzdGVycyk6Cisg
ICAgICAgIChKU0M6OlJlZ2lzdGVyU2V0OjpudW1iZXJPZlNldEdQUnMpOgorICAgICAgICAoSlND
OjpSZWdpc3RlclNldDo6bnVtYmVyT2ZTZXRGUFJzKToKKyAgICAgICAgKiBqaXQvUmVnaXN0ZXJT
ZXQuaDoKKyAgICAgICAgKiBqaXQvUmVwYXRjaC5jcHA6CisgICAgICAgIChKU0M6OnN0b3JlVG9X
cml0ZUJhcnJpZXJCdWZmZXIpOgorICAgICAgICAoSlNDOjplbWl0UHV0VHJhbnNpdGlvblN0dWIp
OgorICAgICAgICAqIGppdC9TY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3IuY3BwOgorICAgICAgICAo
SlNDOjpTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3I6OlNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcik6
CisgICAgICAgIChKU0M6OlNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcjo6cHJlc2VydmVSZXVzZWRS
ZWdpc3RlcnNCeVB1c2hpbmcpOgorICAgICAgICAoSlNDOjpTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0
b3I6OnJlc3RvcmVSZXVzZWRSZWdpc3RlcnNCeVBvcHBpbmcpOgorICAgICAgICAoSlNDOjpTY3Jh
dGNoUmVnaXN0ZXJBbGxvY2F0b3I6OnVzZWRSZWdpc3RlcnNGb3JDYWxsKToKKyAgICAgICAgKEpT
Qzo6U2NyYXRjaFJlZ2lzdGVyQWxsb2NhdG9yOjpkZXNpcmVkU2NyYXRjaEJ1ZmZlclNpemVGb3JD
YWxsKToKKyAgICAgICAgKEpTQzo6U2NyYXRjaFJlZ2lzdGVyQWxsb2NhdG9yOjpwcmVzZXJ2ZVVz
ZWRSZWdpc3RlcnNUb1NjcmF0Y2hCdWZmZXJGb3JDYWxsKToKKyAgICAgICAgKEpTQzo6U2NyYXRj
aFJlZ2lzdGVyQWxsb2NhdG9yOjpyZXN0b3JlVXNlZFJlZ2lzdGVyc0Zyb21TY3JhdGNoQnVmZmVy
Rm9yQ2FsbCk6CisgICAgICAgICogaml0L1NjcmF0Y2hSZWdpc3RlckFsbG9jYXRvci5oOgorCiAy
MDE0LTAzLTEwICBGaWxpcCBQaXpsbyAgPGZwaXpsb0BhcHBsZS5jb20+CiAKICAgICAgICAganNj
IGNvbW1hbmRsaW5lIHNob3VsZG4ndCBoYXZlIGEgImNvbnNvbGUiIGJlY2F1c2UgdGhhdCBjb25m
dXNlcyBzb21lIHRlc3RzIGludG8gdGhpbmtpbmcKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9qaXQvUmVnaXN0ZXJTZXQuY3BwCShyZXZpc2lvbiAxNjU0MDApCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L1JlZ2lzdGVyU2V0LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzMsMTMgKzcz
LDI2IEBAIFJlZ2lzdGVyU2V0IFJlZ2lzdGVyU2V0OjpzcGVjaWFsUmVnaXN0ZXIKIFJlZ2lzdGVy
U2V0IFJlZ2lzdGVyU2V0OjpjYWxsZWVTYXZlUmVnaXN0ZXJzKCkKIHsKICAgICBSZWdpc3RlclNl
dCByZXN1bHQ7Ci0jaWYgQ1BVKFg4Nl82NCkKKyNpZiBDUFUoWDg2KQorICAgIHJlc3VsdC5zZXQo
WDg2UmVnaXN0ZXJzOjplYngpOworICAgIHJlc3VsdC5zZXQoWDg2UmVnaXN0ZXJzOjplYnApOwor
ICAgIHJlc3VsdC5zZXQoWDg2UmVnaXN0ZXJzOjplZGkpOworICAgIHJlc3VsdC5zZXQoWDg2UmVn
aXN0ZXJzOjplc2kpOworI2VsaWYgQ1BVKFg4Nl82NCkKICAgICByZXN1bHQuc2V0KFg4NlJlZ2lz
dGVyczo6ZWJ4KTsKICAgICByZXN1bHQuc2V0KFg4NlJlZ2lzdGVyczo6ZWJwKTsKICAgICByZXN1
bHQuc2V0KFg4NlJlZ2lzdGVyczo6cjEyKTsKICAgICByZXN1bHQuc2V0KFg4NlJlZ2lzdGVyczo6
cjEzKTsKICAgICByZXN1bHQuc2V0KFg4NlJlZ2lzdGVyczo6cjE0KTsKICAgICByZXN1bHQuc2V0
KFg4NlJlZ2lzdGVyczo6cjE1KTsKKyNlbGlmIENQVShBUk1fVEhVTUIyKQorICAgIHJlc3VsdC5z
ZXQoQVJNUmVnaXN0ZXJzOjpyNCk7CisgICAgcmVzdWx0LnNldChBUk1SZWdpc3RlcnM6OnI1KTsK
KyAgICByZXN1bHQuc2V0KEFSTVJlZ2lzdGVyczo6cjYpOworICAgIHJlc3VsdC5zZXQoQVJNUmVn
aXN0ZXJzOjpyOCk7CisgICAgcmVzdWx0LnNldChBUk1SZWdpc3RlcnM6OnI5KTsKKyAgICByZXN1
bHQuc2V0KEFSTVJlZ2lzdGVyczo6cjEwKTsKKyAgICByZXN1bHQuc2V0KEFSTVJlZ2lzdGVyczo6
cjExKTsKICNlbGlmIENQVShBUk02NCkKICAgICAvLyBXZSBkb24ndCBpbmNsdWRlIExSIGluIHRo
ZSBzZXQgb2YgY2FsbGVlLXNhdmUgcmVnaXN0ZXJzIGV2ZW4gdGhvdWdoIGl0IHRlY2huaWNhbGx5
IGJlbG9uZ3MKICAgICAvLyB0aGVyZS4gVGhpcyBpcyBiZWNhdXNlIHdlIHVzZSB0aGlzIHNldCB0
byBkZXNjcmliZSB0aGUgc2V0IG9mIHJlZ2lzdGVycyB0aGF0IG5lZWQgdG8gYmUgc2F2ZWQKQEAg
LTEyNiw2ICsxMzksMjAgQEAgUmVnaXN0ZXJTZXQgUmVnaXN0ZXJTZXQ6OmFsbFJlZ2lzdGVycygp
CiAgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAorc2l6ZV90IFJlZ2lzdGVyU2V0OjpudW1iZXJPZlNl
dEdQUnMoKSBjb25zdAoreworICAgIFJlZ2lzdGVyU2V0IHRlbXAgPSAqdGhpczsKKyAgICB0ZW1w
LmZpbHRlcihhbGxHUFJzKCkpOworICAgIHJldHVybiB0ZW1wLm51bWJlck9mU2V0UmVnaXN0ZXJz
KCk7Cit9CisKK3NpemVfdCBSZWdpc3RlclNldDo6bnVtYmVyT2ZTZXRGUFJzKCkgY29uc3QKK3sK
KyAgICBSZWdpc3RlclNldCB0ZW1wID0gKnRoaXM7CisgICAgdGVtcC5maWx0ZXIoYWxsRlBScygp
KTsKKyAgICByZXR1cm4gdGVtcC5udW1iZXJPZlNldFJlZ2lzdGVycygpOworfQorCiB2b2lkIFJl
Z2lzdGVyU2V0OjpkdW1wKFByaW50U3RyZWFtJiBvdXQpIGNvbnN0CiB7CiAgICAgbV92ZWN0b3Iu
ZHVtcChvdXQpOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlclNldC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVnaXN0ZXJTZXQuaAko
cmV2aXNpb24gMTY1NDAwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZWdpc3RlclNl
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC03OSw2ICs3OSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGZp
bHRlcihjb25zdCBSZWdpc3RlclNldCYgb3RoZXIpIHsgbV92ZWN0b3IuZmlsdGVyKG90aGVyLm1f
dmVjdG9yKTsgfQogICAgIHZvaWQgZXhjbHVkZShjb25zdCBSZWdpc3RlclNldCYgb3RoZXIpIHsg
bV92ZWN0b3IuZXhjbHVkZShvdGhlci5tX3ZlY3Rvcik7IH0KICAgICAKKyAgICBzaXplX3QgbnVt
YmVyT2ZTZXRHUFJzKCkgY29uc3Q7CisgICAgc2l6ZV90IG51bWJlck9mU2V0RlBScygpIGNvbnN0
OwogICAgIHNpemVfdCBudW1iZXJPZlNldFJlZ2lzdGVycygpIGNvbnN0IHsgcmV0dXJuIG1fdmVj
dG9yLmJpdENvdW50KCk7IH0KICAgICAKICAgICB2b2lkIGR1bXAoUHJpbnRTdHJlYW0mKSBjb25z
dDsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvUmVwYXRjaC5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZXBhdGNoLmNwcAkocmV2aXNpb24gMTY1
NDAwKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9SZXBhdGNoLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtNzkyLDggKzc5Miw4IEBAIHN0YXRpYyBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBzdG9y
ZVRvV3JpdGUKICAgICBNYWNyb0Fzc2VtYmxlcjo6SnVtcCBkb25lID0gaml0Lmp1bXAoKTsKICAg
ICBuZWVkVG9GbHVzaC5saW5rKCZqaXQpOwogCi0gICAgU2NyYXRjaEJ1ZmZlciogc2NyYXRjaEJ1
ZmZlciA9IGppdC52bSgpLT5zY3JhdGNoQnVmZmVyRm9yU2l6ZShhbGxvY2F0b3IuZGVzaXJlZFNj
cmF0Y2hCdWZmZXJTaXplKCkpOwotICAgIGFsbG9jYXRvci5wcmVzZXJ2ZVVzZWRSZWdpc3RlcnNU
b1NjcmF0Y2hCdWZmZXIoaml0LCBzY3JhdGNoQnVmZmVyLCBzY3JhdGNoMSk7CisgICAgU2NyYXRj
aEJ1ZmZlciogc2NyYXRjaEJ1ZmZlciA9IGppdC52bSgpLT5zY3JhdGNoQnVmZmVyRm9yU2l6ZShh
bGxvY2F0b3IuZGVzaXJlZFNjcmF0Y2hCdWZmZXJTaXplRm9yQ2FsbCgpKTsKKyAgICBhbGxvY2F0
b3IucHJlc2VydmVVc2VkUmVnaXN0ZXJzVG9TY3JhdGNoQnVmZmVyRm9yQ2FsbChqaXQsIHNjcmF0
Y2hCdWZmZXIsIHNjcmF0Y2gxKTsKIAogICAgIHVuc2lnbmVkIGJ5dGVzRnJvbUJhc2UgPSBhbGxv
Y2F0b3IubnVtYmVyT2ZSZXVzZWRSZWdpc3RlcnMoKSAqIHNpemVvZih2b2lkKik7CiAgICAgdW5z
aWduZWQgYnl0ZXNUb1N1YnRyYWN0ID0gMDsKQEAgLTgxMiw3ICs4MTIsNyBAQCBzdGF0aWMgTWFj
cm9Bc3NlbWJsZXI6OkNhbGwgc3RvcmVUb1dyaXRlCiAKICAgICBpZiAoYnl0ZXNUb1N1YnRyYWN0
KQogICAgICAgICBqaXQuYWRkUHRyKE1hY3JvQXNzZW1ibGVyOjpUcnVzdGVkSW1tMzIoYnl0ZXNU
b1N1YnRyYWN0KSwgTWFjcm9Bc3NlbWJsZXI6OnN0YWNrUG9pbnRlclJlZ2lzdGVyKTsKLSAgICBh
bGxvY2F0b3IucmVzdG9yZVVzZWRSZWdpc3RlcnNGcm9tU2NyYXRjaEJ1ZmZlcihqaXQsIHNjcmF0
Y2hCdWZmZXIsIHNjcmF0Y2gxKTsKKyAgICBhbGxvY2F0b3IucmVzdG9yZVVzZWRSZWdpc3RlcnNG
cm9tU2NyYXRjaEJ1ZmZlckZvckNhbGwoaml0LCBzY3JhdGNoQnVmZmVyLCBzY3JhdGNoMSk7CiAK
ICAgICBkb25lLmxpbmsoJmppdCk7CiAKQEAgLTEwNzUsMTUgKzEwNzUsMTUgQEAgc3RhdGljIHZv
aWQgZW1pdFB1dFRyYW5zaXRpb25TdHViKAogICAgICAgICBzbG93UGF0aC5saW5rKCZzdHViSml0
KTsKICAgICAgICAgCiAgICAgICAgIGFsbG9jYXRvci5yZXN0b3JlUmV1c2VkUmVnaXN0ZXJzQnlQ
b3BwaW5nKHN0dWJKaXQpOwotICAgICAgICBTY3JhdGNoQnVmZmVyKiBzY3JhdGNoQnVmZmVyID0g
dm0tPnNjcmF0Y2hCdWZmZXJGb3JTaXplKGFsbG9jYXRvci5kZXNpcmVkU2NyYXRjaEJ1ZmZlclNp
emUoKSk7Ci0gICAgICAgIGFsbG9jYXRvci5wcmVzZXJ2ZVVzZWRSZWdpc3RlcnNUb1NjcmF0Y2hC
dWZmZXIoc3R1YkppdCwgc2NyYXRjaEJ1ZmZlciwgc2NyYXRjaEdQUjEpOworICAgICAgICBTY3Jh
dGNoQnVmZmVyKiBzY3JhdGNoQnVmZmVyID0gdm0tPnNjcmF0Y2hCdWZmZXJGb3JTaXplKGFsbG9j
YXRvci5kZXNpcmVkU2NyYXRjaEJ1ZmZlclNpemVGb3JDYWxsKCkpOworICAgICAgICBhbGxvY2F0
b3IucHJlc2VydmVVc2VkUmVnaXN0ZXJzVG9TY3JhdGNoQnVmZmVyRm9yQ2FsbChzdHViSml0LCBz
Y3JhdGNoQnVmZmVyLCBzY3JhdGNoR1BSMSk7CiAjaWYgVVNFKEpTVkFMVUU2NCkKICAgICAgICAg
c3R1YkppdC5zZXR1cEFyZ3VtZW50c1dpdGhFeGVjU3RhdGUoYmFzZUdQUiwgTWFjcm9Bc3NlbWJs
ZXI6OlRydXN0ZWRJbW1QdHIoc3RydWN0dXJlKSwgTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0z
MihzbG90LmNhY2hlZE9mZnNldCgpKSwgdmFsdWVHUFIpOwogI2Vsc2UKICAgICAgICAgc3R1Ykpp
dC5zZXR1cEFyZ3VtZW50c1dpdGhFeGVjU3RhdGUoYmFzZUdQUiwgTWFjcm9Bc3NlbWJsZXI6OlRy
dXN0ZWRJbW1QdHIoc3RydWN0dXJlKSwgTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW0zMihzbG90
LmNhY2hlZE9mZnNldCgpKSwgdmFsdWVHUFIsIHZhbHVlVGFnR1BSKTsKICNlbmRpZgogICAgICAg
ICBvcGVyYXRpb25DYWxsID0gc3R1YkppdC5jYWxsKCk7Ci0gICAgICAgIGFsbG9jYXRvci5yZXN0
b3JlVXNlZFJlZ2lzdGVyc0Zyb21TY3JhdGNoQnVmZmVyKHN0dWJKaXQsIHNjcmF0Y2hCdWZmZXIs
IHNjcmF0Y2hHUFIxKTsKKyAgICAgICAgYWxsb2NhdG9yLnJlc3RvcmVVc2VkUmVnaXN0ZXJzRnJv
bVNjcmF0Y2hCdWZmZXJGb3JDYWxsKHN0dWJKaXQsIHNjcmF0Y2hCdWZmZXIsIHNjcmF0Y2hHUFIx
KTsKICAgICAgICAgc3VjY2Vzc0luU2xvd1BhdGggPSBzdHViSml0Lmp1bXAoKTsKICAgICB9CiAg
ICAgCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L1NjcmF0Y2hSZWdpc3RlckFsbG9j
YXRvci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9TY3JhdGNo
UmVnaXN0ZXJBbGxvY2F0b3IuY3BwCShyZXZpc2lvbiAxNjU0MDEpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L1NjcmF0Y2hSZWdpc3RlckFsbG9jYXRvci5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTMzLDcgKzMzLDcgQEAKIAogbmFtZXNwYWNlIEpTQyB7CiAKLVNjcmF0Y2hSZWdpc3RlckFs
bG9jYXRvcjo6U2NyYXRjaFJlZ2lzdGVyQWxsb2NhdG9yKGNvbnN0IFRlbXBSZWdpc3RlclNldCYg
dXNlZFJlZ2lzdGVycykKK1NjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcjo6U2NyYXRjaFJlZ2lzdGVy
QWxsb2NhdG9yKGNvbnN0IFJlZ2lzdGVyU2V0JiB1c2VkUmVnaXN0ZXJzKQogICAgIDogbV91c2Vk
UmVnaXN0ZXJzKHVzZWRSZWdpc3RlcnMpCiAgICAgLCBtX251bWJlck9mUmV1c2VkUmVnaXN0ZXJz
KDApCiB7CkBAIC05NywxMiArOTcsMTQgQEAgdm9pZCBTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3I6
OnByZXNlcnZlUgogICAgICAgICByZXR1cm47CiAgICAgICAgIAogICAgIGZvciAodW5zaWduZWQg
aSA9IDA7IGkgPCBGUFJJbmZvOjpudW1iZXJPZlJlZ2lzdGVyczsgKytpKSB7Ci0gICAgICAgIGlm
IChtX3NjcmF0Y2hSZWdpc3RlcnMuZ2V0RlBSQnlJbmRleChpKSAmJiBtX3VzZWRSZWdpc3RlcnMu
Z2V0RlBSQnlJbmRleChpKSkKLSAgICAgICAgICAgIGppdC5wdXNoVG9TYXZlKEZQUkluZm86OnRv
UmVnaXN0ZXIoaSkpOworICAgICAgICBGUFJSZWcgcmVnID0gRlBSSW5mbzo6dG9SZWdpc3Rlcihp
KTsKKyAgICAgICAgaWYgKG1fc2NyYXRjaFJlZ2lzdGVycy5nZXRGUFJCeUluZGV4KGkpICYmIG1f
dXNlZFJlZ2lzdGVycy5nZXQocmVnKSkKKyAgICAgICAgICAgIGppdC5wdXNoVG9TYXZlKHJlZyk7
CiAgICAgfQogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBHUFJJbmZvOjpudW1iZXJPZlJl
Z2lzdGVyczsgKytpKSB7Ci0gICAgICAgIGlmIChtX3NjcmF0Y2hSZWdpc3RlcnMuZ2V0R1BSQnlJ
bmRleChpKSAmJiBtX3VzZWRSZWdpc3RlcnMuZ2V0R1BSQnlJbmRleChpKSkKLSAgICAgICAgICAg
IGppdC5wdXNoVG9TYXZlKEdQUkluZm86OnRvUmVnaXN0ZXIoaSkpOworICAgICAgICBHUFJSZWcg
cmVnID0gR1BSSW5mbzo6dG9SZWdpc3RlcihpKTsKKyAgICAgICAgaWYgKG1fc2NyYXRjaFJlZ2lz
dGVycy5nZXRHUFJCeUluZGV4KGkpICYmIG1fdXNlZFJlZ2lzdGVycy5nZXQocmVnKSkKKyAgICAg
ICAgICAgIGppdC5wdXNoVG9TYXZlKHJlZyk7CiAgICAgfQogfQogCkBAIC0xMTIsNDkgKzExNCw2
MSBAQCB2b2lkIFNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcjo6cmVzdG9yZVJlCiAgICAgICAgIHJl
dHVybjsKICAgICAgICAgCiAgICAgZm9yICh1bnNpZ25lZCBpID0gR1BSSW5mbzo6bnVtYmVyT2ZS
ZWdpc3RlcnM7IGktLTspIHsKLSAgICAgICAgaWYgKG1fc2NyYXRjaFJlZ2lzdGVycy5nZXRHUFJC
eUluZGV4KGkpICYmIG1fdXNlZFJlZ2lzdGVycy5nZXRHUFJCeUluZGV4KGkpKQotICAgICAgICAg
ICAgaml0LnBvcFRvUmVzdG9yZShHUFJJbmZvOjp0b1JlZ2lzdGVyKGkpKTsKKyAgICAgICAgR1BS
UmVnIHJlZyA9IEdQUkluZm86OnRvUmVnaXN0ZXIoaSk7CisgICAgICAgIGlmIChtX3NjcmF0Y2hS
ZWdpc3RlcnMuZ2V0R1BSQnlJbmRleChpKSAmJiBtX3VzZWRSZWdpc3RlcnMuZ2V0KHJlZykpCisg
ICAgICAgICAgICBqaXQucG9wVG9SZXN0b3JlKHJlZyk7CiAgICAgfQogICAgIGZvciAodW5zaWdu
ZWQgaSA9IEZQUkluZm86Om51bWJlck9mUmVnaXN0ZXJzOyBpLS07KSB7Ci0gICAgICAgIGlmICht
X3NjcmF0Y2hSZWdpc3RlcnMuZ2V0RlBSQnlJbmRleChpKSAmJiBtX3VzZWRSZWdpc3RlcnMuZ2V0
RlBSQnlJbmRleChpKSkKLSAgICAgICAgICAgIGppdC5wb3BUb1Jlc3RvcmUoRlBSSW5mbzo6dG9S
ZWdpc3RlcihpKSk7CisgICAgICAgIEZQUlJlZyByZWcgPSBGUFJJbmZvOjp0b1JlZ2lzdGVyKGkp
OworICAgICAgICBpZiAobV9zY3JhdGNoUmVnaXN0ZXJzLmdldEZQUkJ5SW5kZXgoaSkgJiYgbV91
c2VkUmVnaXN0ZXJzLmdldChyZWcpKQorICAgICAgICAgICAgaml0LnBvcFRvUmVzdG9yZShyZWcp
OwogICAgIH0KIH0KIAotdW5zaWduZWQgU2NyYXRjaFJlZ2lzdGVyQWxsb2NhdG9yOjpkZXNpcmVk
U2NyYXRjaEJ1ZmZlclNpemUoKSBjb25zdAorUmVnaXN0ZXJTZXQgU2NyYXRjaFJlZ2lzdGVyQWxs
b2NhdG9yOjp1c2VkUmVnaXN0ZXJzRm9yQ2FsbCgpIGNvbnN0CiB7Ci0gICAgcmV0dXJuIG1fdXNl
ZFJlZ2lzdGVycy5udW1iZXJPZlNldFJlZ2lzdGVycygpICogc2l6ZW9mKEpTVmFsdWUpOworICAg
IFJlZ2lzdGVyU2V0IHJlc3VsdCA9IG1fdXNlZFJlZ2lzdGVyczsKKyAgICByZXN1bHQuZXhjbHVk
ZShSZWdpc3RlclNldDo6Y2FsbGVlU2F2ZVJlZ2lzdGVycygpKTsKKyAgICByZXN1bHQuZXhjbHVk
ZShSZWdpc3RlclNldDo6c3RhY2tSZWdpc3RlcnMoKSk7CisgICAgcmVzdWx0LmV4Y2x1ZGUoUmVn
aXN0ZXJTZXQ6OnJlc2VydmVkSGFyZHdhcmVSZWdpc3RlcnMoKSk7CisgICAgcmV0dXJuIHJlc3Vs
dDsKIH0KIAotdm9pZCBTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3I6OnByZXNlcnZlVXNlZFJlZ2lz
dGVyc1RvU2NyYXRjaEJ1ZmZlcihNYWNyb0Fzc2VtYmxlciYgaml0LCBTY3JhdGNoQnVmZmVyKiBz
Y3JhdGNoQnVmZmVyLCBHUFJSZWcgc2NyYXRjaEdQUikKK3Vuc2lnbmVkIFNjcmF0Y2hSZWdpc3Rl
ckFsbG9jYXRvcjo6ZGVzaXJlZFNjcmF0Y2hCdWZmZXJTaXplRm9yQ2FsbCgpIGNvbnN0CiB7Cisg
ICAgcmV0dXJuIHVzZWRSZWdpc3RlcnNGb3JDYWxsKCkubnVtYmVyT2ZTZXRSZWdpc3RlcnMoKSAq
IHNpemVvZihKU1ZhbHVlKTsKK30KKwordm9pZCBTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3I6OnBy
ZXNlcnZlVXNlZFJlZ2lzdGVyc1RvU2NyYXRjaEJ1ZmZlckZvckNhbGwoTWFjcm9Bc3NlbWJsZXIm
IGppdCwgU2NyYXRjaEJ1ZmZlciogc2NyYXRjaEJ1ZmZlciwgR1BSUmVnIHNjcmF0Y2hHUFIpCit7
CisgICAgUmVnaXN0ZXJTZXQgdXNlZFJlZ2lzdGVycyA9IHVzZWRSZWdpc3RlcnNGb3JDYWxsKCk7
CisgICAgCiAgICAgdW5zaWduZWQgY291bnQgPSAwOwotICAgIGZvciAodW5zaWduZWQgaSA9IEdQ
UkluZm86Om51bWJlck9mUmVnaXN0ZXJzOyBpLS07KSB7Ci0gICAgICAgIGlmIChtX3VzZWRSZWdp
c3RlcnMuZ2V0R1BSQnlJbmRleChpKSkgewotI2lmIFVTRShKU1ZBTFVFNjQpCi0gICAgICAgICAg
ICBqaXQuc3RvcmU2NChHUFJJbmZvOjp0b1JlZ2lzdGVyKGkpLCBzdGF0aWNfY2FzdDxFbmNvZGVk
SlNWYWx1ZSo+KHNjcmF0Y2hCdWZmZXItPmRhdGFCdWZmZXIoKSkgKyAoY291bnQrKykpOwotI2Vs
c2UKLSAgICAgICAgICAgIGppdC5zdG9yZTMyKEdQUkluZm86OnRvUmVnaXN0ZXIoaSksIHN0YXRp
Y19jYXN0PEVuY29kZWRKU1ZhbHVlKj4oc2NyYXRjaEJ1ZmZlci0+ZGF0YUJ1ZmZlcigpKSArIChj
b3VudCsrKSk7Ci0jZW5kaWYKLSAgICAgICAgfQotICAgICAgICBpZiAoc2NyYXRjaEdQUiA9PSBJ
bnZhbGlkR1BSUmVnICYmICFtX2xvY2tlZFJlZ2lzdGVycy5nZXRHUFJCeUluZGV4KGkpICYmICFt
X3NjcmF0Y2hSZWdpc3RlcnMuZ2V0R1BSQnlJbmRleChpKSkKLSAgICAgICAgICAgIHNjcmF0Y2hH
UFIgPSBHUFJJbmZvOjp0b1JlZ2lzdGVyKGkpOworICAgIGZvciAoR1BSUmVnIHJlZyA9IE1hY3Jv
QXNzZW1ibGVyOjpmaXJzdFJlZ2lzdGVyKCk7IHJlZyA8PSBNYWNyb0Fzc2VtYmxlcjo6bGFzdFJl
Z2lzdGVyKCk7IHJlZyA9IE1hY3JvQXNzZW1ibGVyOjpuZXh0UmVnaXN0ZXIocmVnKSkgeworICAg
ICAgICBpZiAodXNlZFJlZ2lzdGVycy5nZXQocmVnKSkKKyAgICAgICAgICAgIGppdC5zdG9yZVB0
cihyZWcsIHN0YXRpY19jYXN0PEVuY29kZWRKU1ZhbHVlKj4oc2NyYXRjaEJ1ZmZlci0+ZGF0YUJ1
ZmZlcigpKSArIChjb3VudCsrKSk7CisgICAgICAgIGlmIChHUFJJbmZvOjp0b0luZGV4KHJlZykg
IT0gR1BSSW5mbzo6SW52YWxpZEluZGV4CisgICAgICAgICAgICAmJiBzY3JhdGNoR1BSID09IElu
dmFsaWRHUFJSZWcKKyAgICAgICAgICAgICYmICFtX2xvY2tlZFJlZ2lzdGVycy5nZXQocmVnKSAm
JiAhbV9zY3JhdGNoUmVnaXN0ZXJzLmdldChyZWcpKQorICAgICAgICAgICAgc2NyYXRjaEdQUiA9
IHJlZzsKICAgICB9CiAgICAgUkVMRUFTRV9BU1NFUlQoc2NyYXRjaEdQUiAhPSBJbnZhbGlkR1BS
UmVnKTsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSBGUFJJbmZvOjpudW1iZXJPZlJlZ2lzdGVyczsg
aS0tOykgewotICAgICAgICBpZiAobV91c2VkUmVnaXN0ZXJzLmdldEZQUkJ5SW5kZXgoaSkpIHsK
KyAgICBmb3IgKEZQUlJlZyByZWcgPSBNYWNyb0Fzc2VtYmxlcjo6Zmlyc3RGUFJlZ2lzdGVyKCk7
IHJlZyA8PSBNYWNyb0Fzc2VtYmxlcjo6bGFzdEZQUmVnaXN0ZXIoKTsgcmVnID0gTWFjcm9Bc3Nl
bWJsZXI6Om5leHRGUFJlZ2lzdGVyKHJlZykpIHsKKyAgICAgICAgaWYgKHVzZWRSZWdpc3RlcnMu
Z2V0KHJlZykpIHsKICAgICAgICAgICAgIGppdC5tb3ZlKE1hY3JvQXNzZW1ibGVyOjpUcnVzdGVk
SW1tUHRyKHN0YXRpY19jYXN0PEVuY29kZWRKU1ZhbHVlKj4oc2NyYXRjaEJ1ZmZlci0+ZGF0YUJ1
ZmZlcigpKSArIChjb3VudCsrKSksIHNjcmF0Y2hHUFIpOwotICAgICAgICAgICAgaml0LnN0b3Jl
RG91YmxlKEZQUkluZm86OnRvUmVnaXN0ZXIoaSksIHNjcmF0Y2hHUFIpOworICAgICAgICAgICAg
aml0LnN0b3JlRG91YmxlKHJlZywgc2NyYXRjaEdQUik7CiAgICAgICAgIH0KICAgICB9Ci0gICAg
UkVMRUFTRV9BU1NFUlQoY291bnQgKiBzaXplb2YoSlNWYWx1ZSkgPT0gZGVzaXJlZFNjcmF0Y2hC
dWZmZXJTaXplKCkpOworICAgIFJFTEVBU0VfQVNTRVJUKGNvdW50ICogc2l6ZW9mKEpTVmFsdWUp
ID09IGRlc2lyZWRTY3JhdGNoQnVmZmVyU2l6ZUZvckNhbGwoKSk7CiAgICAgCiAgICAgaml0Lm1v
dmUoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJbW1QdHIoc2NyYXRjaEJ1ZmZlci0+YWN0aXZlTGVu
Z3RoUHRyKCkpLCBzY3JhdGNoR1BSKTsKICAgICBqaXQuc3RvcmVQdHIoTWFjcm9Bc3NlbWJsZXI6
OlRydXN0ZWRJbW1QdHIoc3RhdGljX2Nhc3Q8c2l6ZV90Pihjb3VudCAqIHNpemVvZihKU1ZhbHVl
KSkpLCBzY3JhdGNoR1BSKTsKIH0KIAotdm9pZCBTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3I6OnJl
c3RvcmVVc2VkUmVnaXN0ZXJzRnJvbVNjcmF0Y2hCdWZmZXIoTWFjcm9Bc3NlbWJsZXImIGppdCwg
U2NyYXRjaEJ1ZmZlciogc2NyYXRjaEJ1ZmZlciwgR1BSUmVnIHNjcmF0Y2hHUFIpCit2b2lkIFNj
cmF0Y2hSZWdpc3RlckFsbG9jYXRvcjo6cmVzdG9yZVVzZWRSZWdpc3RlcnNGcm9tU2NyYXRjaEJ1
ZmZlckZvckNhbGwoTWFjcm9Bc3NlbWJsZXImIGppdCwgU2NyYXRjaEJ1ZmZlciogc2NyYXRjaEJ1
ZmZlciwgR1BSUmVnIHNjcmF0Y2hHUFIpCiB7CisgICAgUmVnaXN0ZXJTZXQgdXNlZFJlZ2lzdGVy
cyA9IHVzZWRSZWdpc3RlcnNGb3JDYWxsKCk7CisgICAgCiAgICAgaWYgKHNjcmF0Y2hHUFIgPT0g
SW52YWxpZEdQUlJlZykgewogICAgICAgICAvLyBGaW5kIGEgc2NyYXRjaCByZWdpc3Rlci4KICAg
ICAgICAgZm9yICh1bnNpZ25lZCBpID0gR1BSSW5mbzo6bnVtYmVyT2ZSZWdpc3RlcnM7IGktLTsp
IHsKQEAgLTE2NSwyOCArMTc5LDIzIEBAIHZvaWQgU2NyYXRjaFJlZ2lzdGVyQWxsb2NhdG9yOjpy
ZXN0b3JlVXMKICAgICAgICAgfQogICAgIH0KICAgICBSRUxFQVNFX0FTU0VSVChzY3JhdGNoR1BS
ICE9IEludmFsaWRHUFJSZWcpOwotICAgICAgICAKKyAgICAKICAgICBqaXQubW92ZShNYWNyb0Fz
c2VtYmxlcjo6VHJ1c3RlZEltbVB0cihzY3JhdGNoQnVmZmVyLT5hY3RpdmVMZW5ndGhQdHIoKSks
IHNjcmF0Y2hHUFIpOwogICAgIGppdC5zdG9yZVB0cihNYWNyb0Fzc2VtYmxlcjo6VHJ1c3RlZElt
bVB0cigwKSwgc2NyYXRjaEdQUik7CiAKICAgICAvLyBSZXN0b3JlIGRvdWJsZSByZWdpc3RlcnMg
Zmlyc3QuCi0gICAgdW5zaWduZWQgY291bnQgPSBtX3VzZWRSZWdpc3RlcnMubnVtYmVyT2ZTZXRH
UFJzKCk7Ci0gICAgZm9yICh1bnNpZ25lZCBpID0gRlBSSW5mbzo6bnVtYmVyT2ZSZWdpc3RlcnM7
IGktLTspIHsKLSAgICAgICAgaWYgKG1fdXNlZFJlZ2lzdGVycy5nZXRGUFJCeUluZGV4KGkpKSB7
CisgICAgdW5zaWduZWQgY291bnQgPSB1c2VkUmVnaXN0ZXJzLm51bWJlck9mU2V0R1BScygpOwor
ICAgIGZvciAoRlBSUmVnIHJlZyA9IE1hY3JvQXNzZW1ibGVyOjpmaXJzdEZQUmVnaXN0ZXIoKTsg
cmVnIDw9IE1hY3JvQXNzZW1ibGVyOjpsYXN0RlBSZWdpc3RlcigpOyByZWcgPSBNYWNyb0Fzc2Vt
Ymxlcjo6bmV4dEZQUmVnaXN0ZXIocmVnKSkgeworICAgICAgICBpZiAodXNlZFJlZ2lzdGVycy5n
ZXQocmVnKSkgewogICAgICAgICAgICAgaml0Lm1vdmUoTWFjcm9Bc3NlbWJsZXI6OlRydXN0ZWRJ
bW1QdHIoc3RhdGljX2Nhc3Q8RW5jb2RlZEpTVmFsdWUqPihzY3JhdGNoQnVmZmVyLT5kYXRhQnVm
ZmVyKCkpICsgKGNvdW50KyspKSwgc2NyYXRjaEdQUik7Ci0gICAgICAgICAgICBqaXQubG9hZERv
dWJsZShzY3JhdGNoR1BSLCBGUFJJbmZvOjp0b1JlZ2lzdGVyKGkpKTsKKyAgICAgICAgICAgIGpp
dC5sb2FkRG91YmxlKHNjcmF0Y2hHUFIsIHJlZyk7CiAgICAgICAgIH0KICAgICB9CiAgICAgICAg
IAogICAgIGNvdW50ID0gMDsKLSAgICBmb3IgKHVuc2lnbmVkIGkgPSBHUFJJbmZvOjpudW1iZXJP
ZlJlZ2lzdGVyczsgaS0tOykgewotICAgICAgICBpZiAobV91c2VkUmVnaXN0ZXJzLmdldEdQUkJ5
SW5kZXgoaSkpIHsKLSNpZiBVU0UoSlNWQUxVRTY0KQotICAgICAgICAgICAgaml0LmxvYWQ2NChz
dGF0aWNfY2FzdDxFbmNvZGVkSlNWYWx1ZSo+KHNjcmF0Y2hCdWZmZXItPmRhdGFCdWZmZXIoKSkg
KyAoY291bnQrKyksIEdQUkluZm86OnRvUmVnaXN0ZXIoaSkpOwotI2Vsc2UKLSAgICAgICAgICAg
IGppdC5sb2FkMzIoc3RhdGljX2Nhc3Q8RW5jb2RlZEpTVmFsdWUqPihzY3JhdGNoQnVmZmVyLT5k
YXRhQnVmZmVyKCkpICsgKGNvdW50KyspLCBHUFJJbmZvOjp0b1JlZ2lzdGVyKGkpKTsKLSNlbmRp
ZgotICAgICAgICB9CisgICAgZm9yIChHUFJSZWcgcmVnID0gTWFjcm9Bc3NlbWJsZXI6OmZpcnN0
UmVnaXN0ZXIoKTsgcmVnIDw9IE1hY3JvQXNzZW1ibGVyOjpsYXN0UmVnaXN0ZXIoKTsgcmVnID0g
TWFjcm9Bc3NlbWJsZXI6Om5leHRSZWdpc3RlcihyZWcpKSB7CisgICAgICAgIGlmICh1c2VkUmVn
aXN0ZXJzLmdldChyZWcpKQorICAgICAgICAgICAgaml0LmxvYWRQdHIoc3RhdGljX2Nhc3Q8RW5j
b2RlZEpTVmFsdWUqPihzY3JhdGNoQnVmZmVyLT5kYXRhQnVmZmVyKCkpICsgKGNvdW50KyspLCBy
ZWcpOwogICAgIH0KIH0KIApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9TY3JhdGNo
UmVnaXN0ZXJBbGxvY2F0b3IuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
aml0L1NjcmF0Y2hSZWdpc3RlckFsbG9jYXRvci5oCShyZXZpc2lvbiAxNjU0MDEpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L1NjcmF0Y2hSZWdpc3RlckFsbG9jYXRvci5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yOSw2ICsyOSw3IEBACiAjaWYgRU5BQkxFKEpJVCkKIAogI2luY2x1ZGUgIk1h
Y3JvQXNzZW1ibGVyLmgiCisjaW5jbHVkZSAiUmVnaXN0ZXJTZXQuaCIKICNpbmNsdWRlICJUZW1w
UmVnaXN0ZXJTZXQuaCIKIAogbmFtZXNwYWNlIEpTQyB7CkBAIC0zOSw3ICs0MCw3IEBAIHN0cnVj
dCBTY3JhdGNoQnVmZmVyOwogCiBjbGFzcyBTY3JhdGNoUmVnaXN0ZXJBbGxvY2F0b3IgewogcHVi
bGljOgotICAgIFNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcihjb25zdCBUZW1wUmVnaXN0ZXJTZXQm
IHVzZWRSZWdpc3RlcnMpOworICAgIFNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcihjb25zdCBSZWdp
c3RlclNldCYgdXNlZFJlZ2lzdGVycyk7CiAgICAgflNjcmF0Y2hSZWdpc3RlckFsbG9jYXRvcigp
OwogCiAgICAgdm9pZCBsb2NrKEdQUlJlZyByZWcpOwpAQCAtNjQsMTQgKzY1LDE2IEBAIHB1Ymxp
YzoKICAgICB2b2lkIHByZXNlcnZlUmV1c2VkUmVnaXN0ZXJzQnlQdXNoaW5nKE1hY3JvQXNzZW1i
bGVyJiBqaXQpOwogICAgIHZvaWQgcmVzdG9yZVJldXNlZFJlZ2lzdGVyc0J5UG9wcGluZyhNYWNy
b0Fzc2VtYmxlciYgaml0KTsKICAgICAKLSAgICB1bnNpZ25lZCBkZXNpcmVkU2NyYXRjaEJ1ZmZl
clNpemUoKSBjb25zdDsKKyAgICBSZWdpc3RlclNldCB1c2VkUmVnaXN0ZXJzRm9yQ2FsbCgpIGNv
bnN0OwogICAgIAotICAgIHZvaWQgcHJlc2VydmVVc2VkUmVnaXN0ZXJzVG9TY3JhdGNoQnVmZmVy
KE1hY3JvQXNzZW1ibGVyJiBqaXQsIFNjcmF0Y2hCdWZmZXIqIHNjcmF0Y2hCdWZmZXIsIEdQUlJl
ZyBzY3JhdGNoR1BSID0gSW52YWxpZEdQUlJlZyk7CisgICAgdW5zaWduZWQgZGVzaXJlZFNjcmF0
Y2hCdWZmZXJTaXplRm9yQ2FsbCgpIGNvbnN0OwogICAgIAotICAgIHZvaWQgcmVzdG9yZVVzZWRS
ZWdpc3RlcnNGcm9tU2NyYXRjaEJ1ZmZlcihNYWNyb0Fzc2VtYmxlciYgaml0LCBTY3JhdGNoQnVm
ZmVyKiBzY3JhdGNoQnVmZmVyLCBHUFJSZWcgc2NyYXRjaEdQUiA9IEludmFsaWRHUFJSZWcpOwor
ICAgIHZvaWQgcHJlc2VydmVVc2VkUmVnaXN0ZXJzVG9TY3JhdGNoQnVmZmVyRm9yQ2FsbChNYWNy
b0Fzc2VtYmxlciYgaml0LCBTY3JhdGNoQnVmZmVyKiBzY3JhdGNoQnVmZmVyLCBHUFJSZWcgc2Ny
YXRjaEdQUiA9IEludmFsaWRHUFJSZWcpOworICAgIAorICAgIHZvaWQgcmVzdG9yZVVzZWRSZWdp
c3RlcnNGcm9tU2NyYXRjaEJ1ZmZlckZvckNhbGwoTWFjcm9Bc3NlbWJsZXImIGppdCwgU2NyYXRj
aEJ1ZmZlciogc2NyYXRjaEJ1ZmZlciwgR1BSUmVnIHNjcmF0Y2hHUFIgPSBJbnZhbGlkR1BSUmVn
KTsKICAgICAKIHByaXZhdGU6Ci0gICAgVGVtcFJlZ2lzdGVyU2V0IG1fdXNlZFJlZ2lzdGVyczsK
KyAgICBSZWdpc3RlclNldCBtX3VzZWRSZWdpc3RlcnM7CiAgICAgVGVtcFJlZ2lzdGVyU2V0IG1f
bG9ja2VkUmVnaXN0ZXJzOwogICAgIFRlbXBSZWdpc3RlclNldCBtX3NjcmF0Y2hSZWdpc3RlcnM7
CiAgICAgdW5zaWduZWQgbV9udW1iZXJPZlJldXNlZFJlZ2lzdGVyczsK
</data>
<flag name="review"
          id="250568"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>