<?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>85659</bug_id>
          
          <creation_ts>2012-05-04 13:42:24 -0700</creation_ts>
          <short_desc>V8RecursionScope not declared in V8Proxy::newInstance which causes ASSERT() failure from NPAPI</short_desc>
          <delta_ts>2012-05-07 11:25:24 -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>Platform</component>
          <version>528+ (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="Rafael Weinstein">rafaelw</reporter>
          <assigned_to name="Rafael Weinstein">rafaelw</assigned_to>
          <cc>abarth</cc>
    
    <cc>adamk</cc>
    
    <cc>fishd</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>616591</commentid>
    <comment_count>0</comment_count>
    <who name="Rafael Weinstein">rafaelw</who>
    <bug_when>2012-05-04 13:42:24 -0700</bug_when>
    <thetext>newInstance should be treated as calling into page script just like instrumentedCallFunction</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616598</commentid>
    <comment_count>1</comment_count>
      <attachid>140313</attachid>
    <who name="Rafael Weinstein">rafaelw</who>
    <bug_when>2012-05-04 13:44:52 -0700</bug_when>
    <thetext>Created attachment 140313
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616657</commentid>
    <comment_count>2</comment_count>
      <attachid>140313</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-04 14:21:08 -0700</bug_when>
    <thetext>Comment on attachment 140313
Patch

Clearing flags on attachment: 140313

Committed r116171: &lt;http://trac.webkit.org/changeset/116171&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>616658</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-04 14:21:13 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617740</commentid>
    <comment_count>4</comment_count>
    <who name="Rafael Weinstein">rafaelw</who>
    <bug_when>2012-05-07 11:14:10 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617742</commentid>
    <comment_count>5</comment_count>
      <attachid>140559</attachid>
    <who name="Rafael Weinstein">rafaelw</who>
    <bug_when>2012-05-07 11:14:13 -0700</bug_when>
    <thetext>Created attachment 140559
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617755</commentid>
    <comment_count>6</comment_count>
    <who name="Ojan Vafai">ojan</who>
    <bug_when>2012-05-07 11:23:51 -0700</bug_when>
    <thetext>Pretty sure you meant this patch for a different bug. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>617758</commentid>
    <comment_count>7</comment_count>
    <who name="Rafael Weinstein">rafaelw</who>
    <bug_when>2012-05-07 11:25:24 -0700</bug_when>
    <thetext>woops. yes</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140313</attachid>
            <date>2012-05-04 13:44:52 -0700</date>
            <delta_ts>2012-05-07 11:14:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85659-20120504134451.patch</filename>
            <type>text/plain</type>
            <size>1462</size>
            <attacher name="Rafael Weinstein">rafaelw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2MTM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzdmNjc1YzljZmJjMzgx
ZDY1MzA3Y2QwMzcwNzEyZmQyMjViODRlZS4uOGZmNTliYTMxMWE2ZTc1ZjEyZTRkNzZlODgzMzU4
NzRlM2E1NjEwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTA1LTA0ICBSYWZh
ZWwgV2VpbnN0ZWluICA8cmFmYWVsd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgVjhSZWN1cnNp
b25TY29wZSBub3QgZGVjbGFyZWQgaW4gVjhQcm94eTo6bmV3SW5zdGFuY2Ugd2hpY2ggY2F1c2Vz
IEFTU0VSVCgpIGZhaWx1cmUgZnJvbSBOUEFQSQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODU2NTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBhIHN0YWNrLWFsbG9jdGVkIFY4UmVjdXJzaW9uU2Nv
cGUgdG8gdGhlIG5ld0luc3RhbmNlIGNhbGwuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiBObyBj
aGFuZ2UgaW4gb2JzZXJ2YWJsZSBiZWhhdmlvci4KKworICAgICAgICAqIGJpbmRpbmdzL3Y4L1Y4
UHJveHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6VjhQcm94eTo6bmV3SW5zdGFuY2UpOgorCiAy
MDEyLTA1LTA0ICBPamFuIFZhZmFpICA8b2phbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmVt
b3ZlIGZpbGUgdGhhdCB3YXMgZGVsZXRlZCBpbiBodHRwOi8vdHJhYy53ZWJraXQub3JnL2NoYW5n
ZXNldC8xMTYwODUvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQ
cm94eS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCA0
OTU5M2E0ZTgyN2M0NmU4OGI2ZGI4Mzg0MGQ0NjQ2OWZiOGZkNWE1Li5lOTI3ZDUzYWYyYmE1ZThi
NzU5NmQ5MDljNWUzMDVkNjBhOTA5MTNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy92OC9WOFByb3h5LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFBy
b3h5LmNwcApAQCAtNDM1LDYgKzQzNSw3IEBAIHY4OjpMb2NhbDx2ODo6VmFsdWU+IFY4UHJveHk6
Om5ld0luc3RhbmNlKHY4OjpIYW5kbGU8djg6OkZ1bmN0aW9uPiBjb25zdHJ1Y3RvciwKICAgICAv
LyBWOFByb3h5OjpjYWxsRnVuY3Rpb24uCiAgICAgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gcmVzdWx0
OwogICAgIHsKKyAgICAgICAgVjhSZWN1cnNpb25TY29wZSByZWN1cnNpb25TY29wZShmcmFtZSgp
ID8gZnJhbWUoKS0+ZG9jdW1lbnQoKSA6IDApOwogICAgICAgICByZXN1bHQgPSBjb25zdHJ1Y3Rv
ci0+TmV3SW5zdGFuY2UoYXJnYywgYXJncyk7CiAgICAgfQogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>140559</attachid>
            <date>2012-05-07 11:14:13 -0700</date>
            <delta_ts>2012-05-07 11:24:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-85659-20120507111412.patch</filename>
            <type>text/plain</type>
            <size>29768</size>
            <attacher name="Rafael Weinstein">rafaelw</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE2MTM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzdmNjc1YzljZmJjMzgx
ZDY1MzA3Y2QwMzcwNzEyZmQyMjViODRlZS4uOTk5ZjUzNjZmM2UyOTA4OThiNjNiNjZkNTYwM2Rm
YmU1MjA4YmRlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDEyLTA0LTIzICBSYWZh
ZWwgV2VpbnN0ZWluICA8cmFmYWVsd0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgSW1wbGVtZW50
IERvY3VtZW50RnJhZ21lbnQuaW5uZXJIVE1MCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD04NDY0NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIERvY3VtZW50RnJhZ21lbnQuaW5uZXJIVE1MIG5vdyBwYXJzZXMg
YmFzZWQgb24gYW4gImltcGxpZWQgY29udGV4dCBlbGVtZW50IiB3aGljaCBpcyBwaWNrcyBiYXNl
ZAorICAgICAgICBvbiB0aGUgbmFtZSBvZiB0aGUgZmlyc3QgdGFnIHdoaWNoIGFwcGVhcnMgaW4g
dGhlIHByb3ZpZGVkIG1hcmt1cC4KKworICAgICAgICBObyBuZXcgdGVzdHMuIChPT1BTISkKKwor
ICAgICAgICAqIGRvbS9Eb2N1bWVudEZyYWdtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkRv
Y3VtZW50RnJhZ21lbnQ6OmlubmVySFRNTCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAg
KFdlYkNvcmU6OkRvY3VtZW50RnJhZ21lbnQ6OnNldElubmVySFRNTCk6CisgICAgICAgICogZG9t
L0RvY3VtZW50RnJhZ21lbnQuaDoKKyAgICAgICAgKERvY3VtZW50RnJhZ21lbnQpOgorICAgICAg
ICAqIGRvbS9Eb2N1bWVudEZyYWdtZW50LmlkbDoKKyAgICAgICAgKiBkb20vU2hhZG93Um9vdC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpTaGFkb3dSb290OjpzZXRJbm5lckhUTUwpOgorICAgICAg
ICAqIGVkaXRpbmcvbWFya3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OmNyZWF0ZUZyYWdtZW50
RnJvbVNvdXJjZSk6CisgICAgICAgICogZWRpdGluZy9tYXJrdXAuaDoKKyAgICAgICAgKiBodG1s
L0hUTUxFbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxFbGVtZW50OjpzZXRJbm5l
ckhUTUwpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVsZW1lbnQ6OnNldE91dGVySFRNTCk6Cisg
ICAgICAgICogaHRtbC9wYXJzZXIvSFRNTFRyZWVCdWlsZGVyLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OkhUTUxUcmVlQnVpbGRlcjo6SFRNTFRyZWVCdWlsZGVyKToKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxUcmVlQnVpbGRlcjo6cHJvY2Vzc1N0YXJ0VGFnKToKKyAgICAgICAgKFdlYkNvcmU6OkhU
TUxUcmVlQnVpbGRlcjo6cmVzZXRJbnNlcnRpb25Nb2RlQXBwcm9wcmlhdGVseSk6CisgICAgICAg
IChXZWJDb3JlOjpIVE1MVHJlZUJ1aWxkZXI6OnByb2Nlc3NFbmRUYWcpOgorICAgICAgICAoV2Vi
Q29yZTo6SFRNTFRyZWVCdWlsZGVyOjpwcm9jZXNzQ2hhcmFjdGVyQnVmZmVyKToKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxUcmVlQnVpbGRlcjo6cHJvY2Vzc0VuZE9mRmlsZSk6CisgICAgICAgICog
aHRtbC9wYXJzZXIvSFRNTFRyZWVCdWlsZGVyLmg6CisgICAgICAgIChXZWJDb3JlOjpIVE1MVHJl
ZUJ1aWxkZXI6OkZyYWdtZW50UGFyc2luZ0NvbnRleHQ6OmNvbnRleHRFbGVtZW50KToKKwogMjAx
Mi0wNS0wNCAgT2phbiBWYWZhaSAgPG9qYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJlbW92
ZSBmaWxlIHRoYXQgd2FzIGRlbGV0ZWQgaW4gaHR0cDovL3RyYWMud2Via2l0Lm9yZy9jaGFuZ2Vz
ZXQvMTE2MDg1Ly4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdt
ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmNwcAppbmRleCBm
N2NmYWRmY2M3OWYzMWQ1MTY2M2VhYWMwNDJiMzQ1ZGE3MzRjMTlhLi45YmNjMzNjNzAxYmI3MGI0
ODg1N2UzOTUyNWVhNDdkMGIzYjUzMWRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20v
RG9jdW1lbnRGcmFnbWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50RnJh
Z21lbnQuY3BwCkBAIC0yOSw2ICsyOSw3IEBACiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUg
IlNldHRpbmdzLmgiCiAjaW5jbHVkZSAiWE1MRG9jdW1lbnRQYXJzZXIuaCIKKyNpbmNsdWRlICJt
YXJrdXAuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC05MCw0ICs5MSwyMSBAQCBib29s
IERvY3VtZW50RnJhZ21lbnQ6OnBhcnNlWE1MKGNvbnN0IFN0cmluZyYgc291cmNlLCBFbGVtZW50
KiBjb250ZXh0RWxlbWVudCwgRgogI2VuZGlmCiB9CiAKK1N0cmluZyBEb2N1bWVudEZyYWdtZW50
Ojppbm5lckhUTUwoKSBjb25zdAoreworICAgIHJldHVybiBjcmVhdGVNYXJrdXAodGhpcywgQ2hp
bGRyZW5Pbmx5KTsKK30KKwordm9pZCBEb2N1bWVudEZyYWdtZW50OjpzZXRJbm5lckhUTUwoY29u
c3QgU3RyaW5nJiBodG1sLCBFeGNlcHRpb25Db2RlJiBlYykKK3sKKyAgICBpZiAoIWRvY3VtZW50
KCktPmlzSFRNTERvY3VtZW50KCkpIHsKKyAgICAgICAgZWMgPSBJTlZBTElEX1NUQVRFX0VSUjsK
KyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBm
cmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50RnJvbVNvdXJjZShodG1sLCBkb2N1bWVudCgpLCAwIC8q
IGNvbnRleHRFbGVtZW50ICovLCBlYyk7CisgICAgaWYgKGZyYWdtZW50KQorICAgICAgICByZXBs
YWNlQ2hpbGRyZW5XaXRoRnJhZ21lbnQodGhpcywgZnJhZ21lbnQucmVsZWFzZSgpLCBlYyk7Cit9
CisKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50Lmgg
Yi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9jdW1lbnRGcmFnbWVudC5oCmluZGV4IDFlYTRkY2IzMjY1
ZmYyYTg2NjhiNDBkZjRmYWY3M2RmNWUwZTRkNTQuLjVjYzk2YjcyYjc0MmM5MWJkZWZkNGNhMTYw
ODNjMzNlNDBmNzY3ODMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9Eb2N1bWVudEZy
YWdtZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuaApAQCAt
MzgsNiArMzgsOSBAQCBwdWJsaWM6CiAgICAgCiAgICAgdmlydHVhbCBib29sIGNhbkNvbnRhaW5S
YW5nZUVuZFBvaW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCisgICAgU3RyaW5nIGlubmVy
SFRNTCgpIGNvbnN0OworICAgIHZvaWQgc2V0SW5uZXJIVE1MKGNvbnN0IFN0cmluZyYsIEV4Y2Vw
dGlvbkNvZGUmKTsKKwogcHJvdGVjdGVkOgogICAgIERvY3VtZW50RnJhZ21lbnQoRG9jdW1lbnQq
LCBDb25zdHJ1Y3Rpb25UeXBlID0gQ3JlYXRlQ29udGFpbmVyKTsKICAgICB2aXJ0dWFsIFN0cmlu
ZyBub2RlTmFtZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZG9tL0RvY3Vt
ZW50RnJhZ21lbnQuaWRsIGIvU291cmNlL1dlYkNvcmUvZG9tL0RvY3VtZW50RnJhZ21lbnQuaWRs
CmluZGV4IDg4MmI2MmRiMzllYjdmMmUwNTA0NzgyMDQ5MmI3ZTkzNjFhOGVkZWQuLmY1ZjU5MTM5
NzJkYjdlZDAwNDE4ODJhNjY4ZWE2MzMxYWNjNzNmZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9Eb2N1bWVudEZyYWdtZW50LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRG9j
dW1lbnRGcmFnbWVudC5pZGwKQEAgLTI1LDYgKzI1LDggQEAgbW9kdWxlIGNvcmUgewogICAgICAg
ICAgICAgcmFpc2VzKERPTUV4Y2VwdGlvbik7CiAgICAgICAgIE5vZGVMaXN0IHF1ZXJ5U2VsZWN0
b3JBbGwoaW4gRE9NU3RyaW5nIHNlbGVjdG9ycykKICAgICAgICAgICAgIHJhaXNlcyhET01FeGNl
cHRpb24pOworICAgICAgICBhdHRyaWJ1dGUgW1RyZWF0TnVsbEFzPU51bGxTdHJpbmddIERPTVN0
cmluZyBpbm5lckhUTUwKKyAgICAgICAgICAgIHNldHRlciByYWlzZXMoRE9NRXhjZXB0aW9uKTsK
ICAgICB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20vUXVhbGlmaWVkTmFt
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9kb20vUXVhbGlmaWVkTmFtZS5jcHAKaW5kZXggZTA4NTUw
NzBhN2NiMzI1MzRjY2JmOGFiOGQwNTI2NjdkYTMxOWYxNS4uZmFiMWMyYjZiMjcyMzc4ZjZiOWIw
N2M4MGE2NDdlMzBjNDg1NjMxZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvZG9tL1F1YWxp
ZmllZE5hbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9RdWFsaWZpZWROYW1lLmNwcApA
QCAtMTA0LDYgKzEwNCw3IEBAIFN0cmluZyBRdWFsaWZpZWROYW1lOjp0b1N0cmluZygpIGNvbnN0
CiAKIC8vIEdsb2JhbCBpbml0IHJvdXRpbmVzCiBERUZJTkVfR0xPQkFMKFF1YWxpZmllZE5hbWUs
IGFueU5hbWUsIG51bGxBdG9tLCBzdGFyQXRvbSwgc3RhckF0b20pCitERUZJTkVfR0xPQkFMKFF1
YWxpZmllZE5hbWUsIG51bGxOYW1lLCBudWxsQXRvbSwgbnVsbEF0b20sIG51bGxBdG9tKQogCiB2
b2lkIFF1YWxpZmllZE5hbWU6OmluaXQoKQogewpAQCAtMTEzLDYgKzExNCw3IEBAIHZvaWQgUXVh
bGlmaWVkTmFtZTo6aW5pdCgpCiAgICAgICAgIAogICAgICAgICBBdG9taWNTdHJpbmc6OmluaXQo
KTsKICAgICAgICAgbmV3ICgodm9pZCopJmFueU5hbWUpIFF1YWxpZmllZE5hbWUobnVsbEF0b20s
IHN0YXJBdG9tLCBzdGFyQXRvbSk7CisgICAgICAgIG5ldyAoKHZvaWQqKSZudWxsTmFtZSkgUXVh
bGlmaWVkTmFtZShudWxsQXRvbSwgbnVsbEF0b20sIG51bGxBdG9tKTsKICAgICAgICAgaW5pdGlh
bGl6ZWQgPSB0cnVlOwogICAgIH0KIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2RvbS9R
dWFsaWZpZWROYW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vUXVhbGlmaWVkTmFtZS5oCmluZGV4
IDYzNmIyYTUxNTBjOWU5ODdjMDI3ZTc1Njk3OTJkOWJhYzM0YTg5ZTkuLjllZmI4ODEyNzM2OTc2
ZTFjNTQzODlhMDM3ZTIxYzA4YTlmZDc3ZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9RdWFsaWZpZWROYW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1F1YWxpZmllZE5hbWUu
aApAQCAtMTA1LDYgKzEwNSw4IEBAIHByaXZhdGU6CiAjaWZuZGVmIFdFQkNPUkVfUVVBTElGSUVE
TkFNRV9ISURFX0dMT0JBTFMKIGV4dGVybiBjb25zdCBRdWFsaWZpZWROYW1lIGFueU5hbWU7CiBp
bmxpbmUgY29uc3QgUXVhbGlmaWVkTmFtZSYgYW55UU5hbWUoKSB7IHJldHVybiBhbnlOYW1lOyB9
CitleHRlcm4gY29uc3QgUXVhbGlmaWVkTmFtZSBudWxsTmFtZTsKK2lubGluZSBjb25zdCBRdWFs
aWZpZWROYW1lJiBudWxsUU5hbWUoKSB7IHJldHVybiBudWxsTmFtZTsgfQogI2VuZGlmCiAKIGlu
bGluZSBib29sIG9wZXJhdG9yPT0oY29uc3QgQXRvbWljU3RyaW5nJiBhLCBjb25zdCBRdWFsaWZp
ZWROYW1lJiBxKSB7IHJldHVybiBhID09IHEubG9jYWxOYW1lKCk7IH0KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFk
b3dSb290LmNwcAppbmRleCA4YzFkOGIyZDhjNjQ5N2VlMGQ0ZDE5MGMzZjdhNjQyNmI2NjQ3NzM4
Li5iNTU3MDIwODI3MzBiODZmYTUzNThhMTExZmM2ODVlNzZjNGM2NzZkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9kb20vU2hhZG93Um9vdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvZG9t
L1NoYWRvd1Jvb3QuY3BwCkBAIC0xMzcsMTggKzEzNyw2IEBAIFBhc3NSZWZQdHI8Tm9kZT4gU2hh
ZG93Um9vdDo6Y2xvbmVOb2RlKGJvb2wpCiAgICAgcmV0dXJuIDA7CiB9CiAKLVN0cmluZyBTaGFk
b3dSb290Ojppbm5lckhUTUwoKSBjb25zdAotewotICAgIHJldHVybiBjcmVhdGVNYXJrdXAodGhp
cywgQ2hpbGRyZW5Pbmx5KTsKLX0KLQotdm9pZCBTaGFkb3dSb290OjpzZXRJbm5lckhUTUwoY29u
c3QgU3RyaW5nJiBtYXJrdXAsIEV4Y2VwdGlvbkNvZGUmIGVjKQotewotICAgIFJlZlB0cjxEb2N1
bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50RnJvbVNvdXJjZShtYXJrdXAs
IGhvc3QoKSwgZWMpOwotICAgIGlmIChmcmFnbWVudCkKLSAgICAgICAgcmVwbGFjZUNoaWxkcmVu
V2l0aEZyYWdtZW50KHRoaXMsIGZyYWdtZW50LnJlbGVhc2UoKSwgZWMpOwotfQotCiBET01TZWxl
Y3Rpb24qIFNoYWRvd1Jvb3Q6OnNlbGVjdGlvbigpCiB7CiAgICAgaWYgKGRvY3VtZW50KCkgJiYg
ZG9jdW1lbnQoKS0+ZG9tV2luZG93KCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9kb20v
U2hhZG93Um9vdC5oIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jvb3QuaAppbmRleCBlNWIy
MjFiNzNhMzM3MWEwNTQ1ZjBjNDk1OTcxNjY4ZGE4MjY5YWE4Li5hNDJlNjM1Y2JjMzMyN2E0YjAz
Yjg2MTFkYTk5ZTNhMmQxZGI1ZDA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9kb20vU2hh
ZG93Um9vdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290LmgKQEAgLTczLDkg
KzczLDYgQEAgcHVibGljOgogICAgIEVsZW1lbnQqIGhvc3QoKSBjb25zdCB7IHJldHVybiBzaGFk
b3dIb3N0KCk7IH0KICAgICBTaGFkb3dUcmVlKiB0cmVlKCkgY29uc3Q7CiAKLSAgICBTdHJpbmcg
aW5uZXJIVE1MKCkgY29uc3Q7Ci0gICAgdm9pZCBzZXRJbm5lckhUTUwoY29uc3QgU3RyaW5nJiwg
RXhjZXB0aW9uQ29kZSYpOwotCiAgICAgRWxlbWVudCogYWN0aXZlRWxlbWVudCgpIGNvbnN0Owog
CiAgICAgRE9NU2VsZWN0aW9uKiBzZWxlY3Rpb24oKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL2RvbS9TaGFkb3dSb290LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2RvbS9TaGFkb3dSb290Lmlk
bAppbmRleCA1ZWU1NjYzMzI5ZjZhNzYwNmE0NjQxNTE1MDQxNmVjMDgyZTcwMGEyLi42NWUxMWQ3
ZjZmOTYwYjdjNzc2MjE1MjhmMjRkNDg2Y2I4YjRjMzhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9kb20vU2hhZG93Um9vdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL1NoYWRvd1Jv
b3QuaWRsCkBAIC0zNiw5ICszNiw2IEBAIG1vZHVsZSBjb3JlIHsKICAgICAgICAgcmVhZG9ubHkg
YXR0cmlidXRlIEVsZW1lbnQgYWN0aXZlRWxlbWVudDsKICAgICAgICAgcmVhZG9ubHkgYXR0cmli
dXRlIERPTVNlbGVjdGlvbiBzZWxlY3Rpb247CiAKLSAgICAgICAgYXR0cmlidXRlIFtUcmVhdE51
bGxBcz1OdWxsU3RyaW5nXSBET01TdHJpbmcgaW5uZXJIVE1MCi0gICAgICAgICAgICBzZXR0ZXIg
cmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0KICAgICAgICAgRWxlbWVudCBnZXRFbGVtZW50QnlJZChp
biBbT3B0aW9uYWw9RGVmYXVsdElzVW5kZWZpbmVkXSBET01TdHJpbmcgZWxlbWVudElkKTsKICAg
ICAgICAgTm9kZUxpc3QgZ2V0RWxlbWVudHNCeUNsYXNzTmFtZShpbiBbT3B0aW9uYWw9RGVmYXVs
dElzVW5kZWZpbmVkXSBET01TdHJpbmcgY2xhc3NOYW1lKTsKICAgICAgICAgTm9kZUxpc3QgZ2V0
RWxlbWVudHNCeVRhZ05hbWUoaW4gW09wdGlvbmFsPURlZmF1bHRJc1VuZGVmaW5lZF0gRE9NU3Ry
aW5nIHRhZ05hbWUpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYXJrdXAu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYXJrdXAuY3BwCmluZGV4IGJiNDliMzcyZjRi
M2JiNTJiNjdkZGQ0NjRmMGU0OWFmMzQ3MmU5NTIuLmE5ZWU0OGI1Nzg0OTBhMGZhODQyYzQ5YzVm
Y2FkZmI0NDRlYmM1YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFya3Vw
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL21hcmt1cC5jcHAKQEAgLTk5Miw5ICs5
OTIsOCBAQCBTdHJpbmcgdXJsVG9NYXJrdXAoY29uc3QgS1VSTCYgdXJsLCBjb25zdCBTdHJpbmcm
IHRpdGxlKQogICAgIHJldHVybiBtYXJrdXAudG9TdHJpbmcoKTsKIH0KIAotUGFzc1JlZlB0cjxE
b2N1bWVudEZyYWdtZW50PiBjcmVhdGVGcmFnbWVudEZyb21Tb3VyY2UoY29uc3QgU3RyaW5nJiBt
YXJrdXAsIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50LCBFeGNlcHRpb25Db2RlJiBlYykKK1Bhc3NS
ZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gY3JlYXRlRnJhZ21lbnRGcm9tU291cmNlKGNvbnN0IFN0
cmluZyYgbWFya3VwLCBEb2N1bWVudCogZG9jdW1lbnQsIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50
LCBFeGNlcHRpb25Db2RlJiBlYykKIHsKLSAgICBEb2N1bWVudCogZG9jdW1lbnQgPSBjb250ZXh0
RWxlbWVudC0+ZG9jdW1lbnQoKTsKICAgICBSZWZQdHI8RG9jdW1lbnRGcmFnbWVudD4gZnJhZ21l
bnQgPSBEb2N1bWVudEZyYWdtZW50OjpjcmVhdGUoZG9jdW1lbnQpOwogCiAgICAgaWYgKGRvY3Vt
ZW50LT5pc0hUTUxEb2N1bWVudCgpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL21hcmt1cC5oIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9tYXJrdXAuaAppbmRleCA5MThh
ZTliMTNlOTFjYTc4YjhiN2FmYTRkY2Y3ZDc2ZWQ2ODYzOTBkLi41NGVkOGMwMWNlY2U3NjYxOWE3
NmE0MzU3Mjc1NmIwNmVmZDZkN2JjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L21hcmt1cC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvbWFya3VwLmgKQEAgLTUwLDcg
KzUwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFn
bWVudD4gY3JlYXRlRnJhZ21lbnRGcm9tTWFya3VwKERvY3VtZW50KiwgY29uc3QgU3RyaW5nJiBt
YXJrdXAsIGNvbnN0IFN0cmluZyYgYmFzZVVSTCwgRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9u
ID0gRnJhZ21lbnRTY3JpcHRpbmdBbGxvd2VkKTsKICAgICBQYXNzUmVmUHRyPERvY3VtZW50RnJh
Z21lbnQ+IGNyZWF0ZUZyYWdtZW50RnJvbU1hcmt1cFdpdGhDb250ZXh0KERvY3VtZW50KiwgY29u
c3QgU3RyaW5nJiBtYXJrdXAsIHVuc2lnbmVkIGZyYWdtZW50U3RhcnQsIHVuc2lnbmVkIGZyYWdt
ZW50RW5kLCBjb25zdCBTdHJpbmcmIGJhc2VVUkwsIEZyYWdtZW50U2NyaXB0aW5nUGVybWlzc2lv
bik7CiAgICAgUGFzc1JlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBjcmVhdGVGcmFnbWVudEZyb21O
b2RlcyhEb2N1bWVudCosIGNvbnN0IFZlY3RvcjxOb2RlKj4mKTsKLSAgICBQYXNzUmVmUHRyPERv
Y3VtZW50RnJhZ21lbnQ+IGNyZWF0ZUZyYWdtZW50RnJvbVNvdXJjZShjb25zdCBTdHJpbmcmLCBF
bGVtZW50KiwgRXhjZXB0aW9uQ29kZSYpOworICAgIFBhc3NSZWZQdHI8RG9jdW1lbnRGcmFnbWVu
dD4gY3JlYXRlRnJhZ21lbnRGcm9tU291cmNlKGNvbnN0IFN0cmluZyYsIERvY3VtZW50KiwgRWxl
bWVudCosIEV4Y2VwdGlvbkNvZGUmKTsKIAogICAgIGJvb2wgaXNQbGFpblRleHRNYXJrdXAoTm9k
ZSAqbm9kZSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVsZW1lbnQu
Y3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAKaW5kZXggNWY4YjIyM2Rh
YWY4MTA2YWVhZTk1ZDZkYTFhNThiZDA2Yzc4MjBjNS4uY2MzNzAxZjg5ZDcxMWNhMTQ0NTc1YTEy
YWI2MjdmZTY3ZDFlNzQ0MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxl
bWVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRWxlbWVudC5jcHAKQEAgLTM0
NCw3ICszNDQsNyBAQCBTdHJpbmcgSFRNTEVsZW1lbnQ6Om91dGVySFRNTCgpIGNvbnN0CiAKIHZv
aWQgSFRNTEVsZW1lbnQ6OnNldElubmVySFRNTChjb25zdCBTdHJpbmcmIGh0bWwsIEV4Y2VwdGlv
bkNvZGUmIGVjKQogewotICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNy
ZWF0ZUZyYWdtZW50RnJvbVNvdXJjZShodG1sLCB0aGlzLCBlYyk7CisgICAgUmVmUHRyPERvY3Vt
ZW50RnJhZ21lbnQ+IGZyYWdtZW50ID0gY3JlYXRlRnJhZ21lbnRGcm9tU291cmNlKGh0bWwsIGRv
Y3VtZW50KCksIHRoaXMsIGVjKTsKICAgICBpZiAoZnJhZ21lbnQpCiAgICAgICAgIHJlcGxhY2VD
aGlsZHJlbldpdGhGcmFnbWVudCh0aGlzLCBmcmFnbWVudC5yZWxlYXNlKCksIGVjKTsKIH0KQEAg
LTM3Niw3ICszNzYsNyBAQCB2b2lkIEhUTUxFbGVtZW50OjpzZXRPdXRlckhUTUwoY29uc3QgU3Ry
aW5nJiBodG1sLCBFeGNlcHRpb25Db2RlJiBlYykKICAgICBSZWZQdHI8Tm9kZT4gcHJldiA9IHBy
ZXZpb3VzU2libGluZygpOwogICAgIFJlZlB0cjxOb2RlPiBuZXh0ID0gbmV4dFNpYmxpbmcoKTsK
IAotICAgIFJlZlB0cjxEb2N1bWVudEZyYWdtZW50PiBmcmFnbWVudCA9IGNyZWF0ZUZyYWdtZW50
RnJvbVNvdXJjZShodG1sLCBwYXJlbnQuZ2V0KCksIGVjKTsKKyAgICBSZWZQdHI8RG9jdW1lbnRG
cmFnbWVudD4gZnJhZ21lbnQgPSBjcmVhdGVGcmFnbWVudEZyb21Tb3VyY2UoaHRtbCwgZG9jdW1l
bnQoKSwgcGFyZW50LmdldCgpLCBlYyk7CiAgICAgaWYgKGVjKQogICAgICAgICByZXR1cm47CiAg
ICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVu
dFBhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MRG9jdW1lbnRQYXJz
ZXIuY3BwCmluZGV4IDdhMDZiNDIzOTY5MTNkOWQ5NmQ0ZTU3MWQ1YjIzM2E5MjM3MDQyOTUuLmRj
ODY0YmZmOWVhM2E3Y2Q0Y2MxMmI0ZjljNWE1MzlmMTQ1ZDZjZDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTERvY3VtZW50UGFyc2VyLmNwcApAQCAtMjUwLDYgKzI1
MCw4IEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2VyOjpwdW1wVG9rZW5pemVyKFN5bmNocm9ub3Vz
TW9kZSBtb2RlKQogICAgIEFTU0VSVCghaXNTY2hlZHVsZWRGb3JSZXN1bWUoKSk7CiAgICAgLy8g
QVNTRVJUIHRoYXQgdGhpcyBvYmplY3QgaXMgYm90aCBhdHRhY2hlZCB0byB0aGUgRG9jdW1lbnQg
YW5kIHByb3RlY3RlZC4KICAgICBBU1NFUlQocmVmQ291bnQoKSA+PSAyKTsKKyAgICAvLyBBU1NF
UlQgdGhhdCBydW5uaW5nIHF1ZXVlZEF0b21pY1Rva2VucyBoYXNuJ3QgY2F1c2VkIHJlLWVudHJ5
LiBQZW5kaW5nIHRva2VucyBzaG91bGQgbm90IGJlIGFibGUgdG8gY29udGFpbiBzY3JpcHQuCisg
ICAgQVNTRVJUKG1fcXVldWVkQXRvbWljVG9rZW5zLmlzRW1wdHkoKSk7CiAKICAgICBQdW1wU2Vz
c2lvbiBzZXNzaW9uKG1fcHVtcFNlc3Npb25OZXN0aW5nTGV2ZWwpOwogCkBAIC0yNzUsNiArMjc3
LDIzIEBAIHZvaWQgSFRNTERvY3VtZW50UGFyc2VyOjpwdW1wVG9rZW5pemVyKFN5bmNocm9ub3Vz
TW9kZSBtb2RlKQogICAgICAgICAgICAgbV94c3NBdWRpdG9yLmZpbHRlclRva2VuKG1fdG9rZW4p
OwogICAgICAgICB9CiAKKyAgICAgICAgaWYgKCFtX3RyZWVCdWlsZGVyLT5jYW5Db250aW51ZSht
X3Rva2VuKSkgeworICAgICAgICAgICAgLy8gVHJlZSBjb25zdHJ1Y3Rpb24gc2hvdWxkIG9ubHkg
YmUgYmxvY2tlZCBieSB3YWl0aW5nIG9uIHRoZSBuZXh0CisgICAgICAgICAgICAvLyBzdGFydCB0
YWcuCisgICAgICAgICAgICBBU1NFUlQobV90b2tlbi50eXBlKCkgIT0gSFRNTFRva2VuVHlwZXM6
OlN0YXJ0VGFnCisgICAgICAgICAgICAgICAgICAgJiYgbV90b2tlbi50eXBlKCkgIT0gSFRNTFRv
a2VuVHlwZXM6OkVuZE9mRmlsZSk7CisgICAgICAgICAgICBtX3F1ZXVlZEF0b21pY1Rva2Vucy5h
cHBlbmQoQXRvbWljSFRNTFRva2VuOjpjcmVhdGUobV90b2tlbikpOworICAgICAgICAgICAgbV90
b2tlbi5jbGVhcigpOworICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KKworICAgICAg
ICBpZiAoIW1fcXVldWVkQXRvbWljVG9rZW5zLmlzRW1wdHkoKSkgeworICAgICAgICAgICAgVmVj
dG9yPE93blB0cjxBdG9taWNIVE1MVG9rZW4+ID4gcXVldWVkVG9rZW5zOworICAgICAgICAgICAg
cXVldWVkVG9rZW5zLnN3YXAobV9xdWV1ZWRBdG9taWNUb2tlbnMpOworICAgICAgICAgICAgZm9y
IChWZWN0b3I8T3duUHRyPEF0b21pY0hUTUxUb2tlbj4gPjo6Y29uc3RfaXRlcmF0b3IgaXQgPSBx
dWV1ZWRUb2tlbnMuYmVnaW4oKTsgaXQgIT0gcXVldWVkVG9rZW5zLmVuZCgpOyArK2l0KQorICAg
ICAgICAgICAgICAgIG1fdHJlZUJ1aWxkZXItPmNvbnN0cnVjdFRyZWVGcm9tQXRvbWljVG9rZW4o
KihpdC0+Z2V0KCkpKTsKKyAgICAgICAgfQorCiAgICAgICAgIG1fdHJlZUJ1aWxkZXItPmNvbnN0
cnVjdFRyZWVGcm9tVG9rZW4obV90b2tlbik7CiAgICAgICAgIEFTU0VSVChtX3Rva2VuLmlzVW5p
bml0aWFsaXplZCgpKTsKICAgICB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3Bh
cnNlci9IVE1MRG9jdW1lbnRQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hU
TUxEb2N1bWVudFBhcnNlci5oCmluZGV4IGVlZTg4MmM3MjRlM2UzYjBkNmRkNzRmYmQ2YTg2ZDVj
YjcyMmJhYzQuLjM2Y2NiYTUwNTBkNWY0MGViY2NlNDdjZGNlNmEwM2U5MWQyZDJiZmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxEb2N1bWVudFBhcnNlci5oCkBAIC03
MSw3ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHJlc3VtZVBhcnNpbmdBZnRlcllpZWxkKCk7
CiAKICAgICBzdGF0aWMgdm9pZCBwYXJzZURvY3VtZW50RnJhZ21lbnQoY29uc3QgU3RyaW5nJiwg
RG9jdW1lbnRGcmFnbWVudCosIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50LCBGcmFnbWVudFNjcmlw
dGluZ1Blcm1pc3Npb24gPSBGcmFnbWVudFNjcmlwdGluZ0FsbG93ZWQpOwotICAgIAorCiAgICAg
c3RhdGljIGJvb2wgdXNlUHJlSFRNTDVQYXJzZXJRdWlya3MoRG9jdW1lbnQqKTsKICAgICBzdGF0
aWMgdW5zaWduZWQgbWF4aW11bURPTVRyZWVEZXB0aChEb2N1bWVudCopOwogCkBAIC0xNDUsNiAr
MTQ1LDcgQEAgcHJpdmF0ZToKICAgICAvLyBXZSBob2xkIG1fdG9rZW4gaGVyZSBiZWNhdXNlIGl0
IG1pZ2h0IGJlIHBhcnRpYWxseSBjb21wbGV0ZS4KICAgICBIVE1MVG9rZW4gbV90b2tlbjsKIAor
ICAgIFZlY3RvcjxPd25QdHI8QXRvbWljSFRNTFRva2VuPiA+IG1fcXVldWVkQXRvbWljVG9rZW5z
OwogICAgIE93blB0cjxIVE1MVG9rZW5pemVyPiBtX3Rva2VuaXplcjsKICAgICBPd25QdHI8SFRN
TFNjcmlwdFJ1bm5lcj4gbV9zY3JpcHRSdW5uZXI7CiAgICAgT3duUHRyPEhUTUxUcmVlQnVpbGRl
cj4gbV90cmVlQnVpbGRlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2Vy
L0hUTUxUb2tlbi5oIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIvSFRNTFRva2VuLmgKaW5k
ZXggNGFjZmVjOWY4NzVmNzY5OTViYzBhZWFmZTY3YjdiY2EyNjAwYmVhMy4uZDk4OTliOTY1YzYy
MzVlYTE2ZmU3MWQ3NTNlZGY1OGQzZDUyODYxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
aHRtbC9wYXJzZXIvSFRNTFRva2VuLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9wYXJzZXIv
SFRNTFRva2VuLmgKQEAgLTg0LDcgKzg0LDEyIEBAIHB1YmxpYzoKIGNsYXNzIEF0b21pY0hUTUxU
b2tlbiA6IHB1YmxpYyBBdG9taWNNYXJrdXBUb2tlbkJhc2U8SFRNTFRva2VuPiB7CiAgICAgV1RG
X01BS0VfTk9OQ09QWUFCTEUoQXRvbWljSFRNTFRva2VuKTsKIHB1YmxpYzoKLSAgICBBdG9taWNI
VE1MVG9rZW4oSFRNTFRva2VuJiB0b2tlbikgOiBBdG9taWNNYXJrdXBUb2tlbkJhc2U8SFRNTFRv
a2VuPigmdG9rZW4pIHsgfQorICAgIHN0YXRpYyBQYXNzT3duUHRyPEF0b21pY0hUTUxUb2tlbj4g
Y3JlYXRlKEhUTUxUb2tlbiYgdG9rZW4pCisgICAgeworICAgICAgICByZXR1cm4gYWRvcHRQdHIo
bmV3IEF0b21pY0hUTUxUb2tlbih0b2tlbiwgSW50ZXJuYWxpemVDaGFyYWN0ZXJzKSk7CisgICAg
fQorCisgICAgQXRvbWljSFRNTFRva2VuKEhUTUxUb2tlbiYgdG9rZW4sIENoYXJhY3RlclN0b3Jh
Z2VNb2RlIGNoYXJhY3RlclN0b3JhZ2UgPSBSZWZlcmVuY2VFeHRlcm5hbENoYXJhY3RlcnMpIDog
QXRvbWljTWFya3VwVG9rZW5CYXNlPEhUTUxUb2tlbj4oJnRva2VuLCBjaGFyYWN0ZXJTdG9yYWdl
KSB7IH0KIAogICAgIEF0b21pY0hUTUxUb2tlbihIVE1MVG9rZW5UeXBlczo6VHlwZSB0eXBlLCBB
dG9taWNTdHJpbmcgbmFtZSwgY29uc3QgVmVjdG9yPEF0dHJpYnV0ZT4mIGF0dHJpYnV0ZXMgPSBW
ZWN0b3I8QXR0cmlidXRlPigpKQogICAgICAgICA6IEF0b21pY01hcmt1cFRva2VuQmFzZTxIVE1M
VG9rZW4+KHR5cGUsIG5hbWUsIGF0dHJpYnV0ZXMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9odG1sL3BhcnNlci9IVE1MVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvaHRtbC9w
YXJzZXIvSFRNTFRyZWVCdWlsZGVyLmNwcAppbmRleCA1ZDUzNDJiYjAwNGU2Y2Y0NDljOTg2ZTI0
NDhkNTQ0NjY3Zjg2ZmE2Li40M2Y3YWQ1ZjcyYjUxMTZhOWEwMzRjY2IyNGMyODlhZmYxN2I0MWNj
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL3BhcnNlci9IVE1MVHJlZUJ1aWxkZXIu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxUcmVlQnVpbGRlci5jcHAK
QEAgLTI0OCw4ICsyNDgsOCBAQCBjbGFzcyBIVE1MVHJlZUJ1aWxkZXI6OkV4dGVybmFsQ2hhcmFj
dGVyVG9rZW5CdWZmZXIgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKEV4dGVybmFsQ2hhcmFj
dGVyVG9rZW5CdWZmZXIpOwogcHVibGljOgogICAgIGV4cGxpY2l0IEV4dGVybmFsQ2hhcmFjdGVy
VG9rZW5CdWZmZXIoQXRvbWljSFRNTFRva2VuJiB0b2tlbikKLSAgICAgICAgOiBtX2N1cnJlbnQo
dG9rZW4uY2hhcmFjdGVycygpLmRhdGEoKSkKLSAgICAgICAgLCBtX2VuZChtX2N1cnJlbnQgKyB0
b2tlbi5jaGFyYWN0ZXJzKCkuc2l6ZSgpKQorICAgICAgICA6IG1fY3VycmVudCh0b2tlbi5jaGFy
YWN0ZXJEYXRhKCkpCisgICAgICAgICwgbV9lbmQobV9jdXJyZW50ICsgdG9rZW4uY2hhcmFjdGVy
RGF0YVNpemUoKSkKICAgICB7CiAgICAgICAgIEFTU0VSVCghaXNFbXB0eSgpKTsKICAgICB9CkBA
IC0zNjgsNyArMzY4LDcgQEAgSFRNTFRyZWVCdWlsZGVyOjpIVE1MVHJlZUJ1aWxkZXIoSFRNTERv
Y3VtZW50UGFyc2VyKiBwYXJzZXIsIEhUTUxEb2N1bWVudCogZG9jdW0KIC8vIG1pbmltaXplIGNv
ZGUgZHVwbGljYXRpb24gYmV0d2VlbiB0aGVzZSBjb25zdHJ1Y3RvcnMuCiBIVE1MVHJlZUJ1aWxk
ZXI6OkhUTUxUcmVlQnVpbGRlcihIVE1MRG9jdW1lbnRQYXJzZXIqIHBhcnNlciwgRG9jdW1lbnRG
cmFnbWVudCogZnJhZ21lbnQsIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50LCBGcmFnbWVudFNjcmlw
dGluZ1Blcm1pc3Npb24gc2NyaXB0aW5nUGVybWlzc2lvbiwgYm9vbCB1c2VQcmVIVE1MNVBhcnNl
clF1aXJrcywgdW5zaWduZWQgbWF4aW11bURPTVRyZWVEZXB0aCkKICAgICA6IG1fZnJhbWVzZXRP
ayh0cnVlKQotICAgICwgbV9mcmFnbWVudENvbnRleHQoZnJhZ21lbnQsIGNvbnRleHRFbGVtZW50
LCBzY3JpcHRpbmdQZXJtaXNzaW9uKQorICAgICwgbV9mcmFnbWVudENvbnRleHQoZnJhZ21lbnQs
IGNvbnRleHRFbGVtZW50ID8gY29udGV4dEVsZW1lbnQtPnRhZ1FOYW1lKCkgOiBudWxsUU5hbWUo
KSwgc2NyaXB0aW5nUGVybWlzc2lvbikKICAgICAsIG1fZG9jdW1lbnQoZnJhZ21lbnQtPmRvY3Vt
ZW50KCkpCiAgICAgLCBtX3RyZWUoZnJhZ21lbnQsIHNjcmlwdGluZ1Blcm1pc3Npb24sIG1heGlt
dW1ET01UcmVlRGVwdGgpCiAgICAgLCBtX3JlcG9ydEVycm9ycyhmYWxzZSkgLy8gRklYTUU6IFdo
eSBub3QgcmVwb3J0IGVycm9ycyBpbiBmcmFnbWVudHM/CkBAIC0zODEsMTcgKzM4MSwxNCBAQCBI
VE1MVHJlZUJ1aWxkZXI6OkhUTUxUcmVlQnVpbGRlcihIVE1MRG9jdW1lbnRQYXJzZXIqIHBhcnNl
ciwgRG9jdW1lbnRGcmFnbWVudCogZgogICAgICwgbV9sYXN0U2NyaXB0RWxlbWVudFN0YXJ0UG9z
aXRpb24oVGV4dFBvc2l0aW9uOjpiZWxvd1JhbmdlUG9zaXRpb24oKSkKICAgICAsIG1fdXNlUHJl
SFRNTDVQYXJzZXJRdWlya3ModXNlUHJlSFRNTDVQYXJzZXJRdWlya3MpCiB7Ci0gICAgLy8gRklY
TUU6IFRoaXMgYXNzZXJ0aW9uIHdpbGwgYmVjb21lIGludmFsaWQgaWYgPGh0dHA6Ly93ZWJraXQu
b3JnL2IvNjAzMTY+IGlzIGZpeGVkLgotICAgIEFTU0VSVChjb250ZXh0RWxlbWVudCk7Ci0gICAg
aWYgKGNvbnRleHRFbGVtZW50KSB7Ci0gICAgICAgIC8vIFN0ZXBzIDQuMi00LjYgb2YgdGhlIEhU
TUw1IEZyYWdtZW50IENhc2UgcGFyc2luZyBhbGdvcml0aG06Ci0gICAgICAgIC8vIGh0dHA6Ly93
d3cud2hhdHdnLm9yZy9zcGVjcy93ZWItYXBwcy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL3RoZS1l
bmQuaHRtbCNmcmFnbWVudC1jYXNlCi0gICAgICAgIC8vIEZvciBlZmZpY2llbmN5LCB3ZSBza2lw
IHN0ZXAgNC4yICgiTGV0IHJvb3QgYmUgYSBuZXcgaHRtbCBlbGVtZW50IHdpdGggbm8gYXR0cmli
dXRlcyIpCi0gICAgICAgIC8vIGFuZCBpbnN0ZWFkIHVzZSB0aGUgRG9jdW1lbnRGcmFnbWVudCBh
cyBhIHJvb3Qgbm9kZS4KLSAgICAgICAgbV90cmVlLm9wZW5FbGVtZW50cygpLT5wdXNoUm9vdE5v
ZGUoZnJhZ21lbnQpOwotICAgICAgICByZXNldEluc2VydGlvbk1vZGVBcHByb3ByaWF0ZWx5KCk7
CisgICAgLy8gU3RlcHMgNC4yLTQuNiBvZiB0aGUgSFRNTDUgRnJhZ21lbnQgQ2FzZSBwYXJzaW5n
IGFsZ29yaXRobToKKyAgICAvLyBodHRwOi8vd3d3LndoYXR3Zy5vcmcvc3BlY3Mvd2ViLWFwcHMv
Y3VycmVudC13b3JrL211bHRpcGFnZS90aGUtZW5kLmh0bWwjZnJhZ21lbnQtY2FzZQorICAgIC8v
IEZvciBlZmZpY2llbmN5LCB3ZSBza2lwIHN0ZXAgNC4yICgiTGV0IHJvb3QgYmUgYSBuZXcgaHRt
bCBlbGVtZW50IHdpdGggbm8gYXR0cmlidXRlcyIpCisgICAgLy8gYW5kIGluc3RlYWQgdXNlIHRo
ZSBEb2N1bWVudEZyYWdtZW50IGFzIGEgcm9vdCBub2RlLgorICAgIG1fdHJlZS5vcGVuRWxlbWVu
dHMoKS0+cHVzaFJvb3ROb2RlKGZyYWdtZW50KTsKKyAgICByZXNldEluc2VydGlvbk1vZGVBcHBy
b3ByaWF0ZWx5KCk7CisgICAgaWYgKGNvbnRleHRFbGVtZW50KQogICAgICAgICBtX3RyZWUuc2V0
Rm9ybShjbG9zZXN0Rm9ybUFuY2VzdG9yKGNvbnRleHRFbGVtZW50KSk7Ci0gICAgfQogfQogCiBI
VE1MVHJlZUJ1aWxkZXI6On5IVE1MVHJlZUJ1aWxkZXIoKQpAQCAtNDEwLDE0ICs0MDcsMTQgQEAg
dm9pZCBIVE1MVHJlZUJ1aWxkZXI6OmRldGFjaCgpCiAKIEhUTUxUcmVlQnVpbGRlcjo6RnJhZ21l
bnRQYXJzaW5nQ29udGV4dDo6RnJhZ21lbnRQYXJzaW5nQ29udGV4dCgpCiAgICAgOiBtX2ZyYWdt
ZW50KDApCi0gICAgLCBtX2NvbnRleHRFbGVtZW50KDApCisgICAgLCBtX2NvbnRleHRUYWcobnVs
bFFOYW1lKCkpCiAgICAgLCBtX3NjcmlwdGluZ1Blcm1pc3Npb24oRnJhZ21lbnRTY3JpcHRpbmdB
bGxvd2VkKQogewogfQogCi1IVE1MVHJlZUJ1aWxkZXI6OkZyYWdtZW50UGFyc2luZ0NvbnRleHQ6
OkZyYWdtZW50UGFyc2luZ0NvbnRleHQoRG9jdW1lbnRGcmFnbWVudCogZnJhZ21lbnQsIEVsZW1l
bnQqIGNvbnRleHRFbGVtZW50LCBGcmFnbWVudFNjcmlwdGluZ1Blcm1pc3Npb24gc2NyaXB0aW5n
UGVybWlzc2lvbikKK0hUTUxUcmVlQnVpbGRlcjo6RnJhZ21lbnRQYXJzaW5nQ29udGV4dDo6RnJh
Z21lbnRQYXJzaW5nQ29udGV4dChEb2N1bWVudEZyYWdtZW50KiBmcmFnbWVudCwgY29uc3QgUXVh
bGlmaWVkTmFtZSYgY29udGV4dFRhZywgRnJhZ21lbnRTY3JpcHRpbmdQZXJtaXNzaW9uIHNjcmlw
dGluZ1Blcm1pc3Npb24pCiAgICAgOiBtX2ZyYWdtZW50KGZyYWdtZW50KQotICAgICwgbV9jb250
ZXh0RWxlbWVudChjb250ZXh0RWxlbWVudCkKKyAgICAsIG1fY29udGV4dFRhZyhjb250ZXh0VGFn
KQogICAgICwgbV9zY3JpcHRpbmdQZXJtaXNzaW9uKHNjcmlwdGluZ1Blcm1pc3Npb24pCiB7CiAg
ICAgQVNTRVJUKCFmcmFnbWVudC0+aGFzQ2hpbGROb2RlcygpKTsKQEAgLTQ0Nyw3ICs0NDQsNyBA
QCB2b2lkIEhUTUxUcmVlQnVpbGRlcjo6Y29uc3RydWN0VHJlZUZyb21Ub2tlbihIVE1MVG9rZW4m
IHJhd1Rva2VuKQogICAgIC8vIHN5bmNocm9ub3VzbHkgcmUtZW50ZXJzIHRoZSBwYXJzZXIuIFdl
IGRvbid0IGNsZWFyIHRoZSB0b2tlbiBpbW1lZGF0ZWx5CiAgICAgLy8gZm9yIENoYXJhY3RlciB0
b2tlbnMgYmVjYXVzZSB0aGUgQXRvbWljSFRNTFRva2VuIGF2b2lkcyBjb3B5aW5nIHRoZQogICAg
IC8vIGNoYXJhY3RlcnMgYnkga2VlcGluZyBhIHBvaW50ZXIgdG8gdGhlIHVuZGVybHlpbmcgYnVm
ZmVyIGluIHRoZQotICAgIC8vIEhUTUxUb2tlbi4gRm9ydHVhbnRlbHksIENoYXJhY3RlciB0b2tl
bnMgY2FuJ3QgY2F1c2UgdXNlIHRvIHJlLWVudGVyCisgICAgLy8gSFRNTFRva2VuLiBGb3J0dW5h
dGVseSwgQ2hhcmFjdGVyIHRva2VucyBjYW4ndCBjYXVzZSB1c2UgdG8gcmUtZW50ZXIKICAgICAv
LyB0aGUgcGFyc2VyLgogICAgIC8vCiAgICAgLy8gRklYTUU6IFN0b3AgY2xlYXJpbmcgdGhlIHJh
d1Rva2VuIG9uY2Ugd2Ugc3RhcnQgcnVubmluZyB0aGUgcGFyc2VyIG9mZgpAQCAtMTYzMCw2ICsx
NjI3LDQ3IEBAIHZvaWQgSFRNTFRyZWVCdWlsZGVyOjpjYWxsVGhlQWRvcHRpb25BZ2VuY3koQXRv
bWljSFRNTFRva2VuJiB0b2tlbikKICAgICB9CiB9CiAKKy8vIEZJWE1FOiBSZWZlcmVuY2UgdG8g
RE9NNCBzcGVjIGRlc2NyaWJpbmcgdGhlIGZvbGxvd2luZzogVGhlIGltcGxpZWQgY29udGV4dCBl
bGVtZW50IG9mCisvLyBEb2N1bWVudEZyYWdtZW50LmlubmVySFRNTCBpcyBiYXNlZCBvbiB0aGUg
aWRlbnRpdHkgb2YgdGhlIHRhZ05hbWUgb2YgdGhlIGZpcnN0IHN0YXJ0VGFnIHRva2VuIGVuY291
bnRlcmVkLgorLy8gRklYTUU6IEVsZW1lbnQuaW5uZXJIVE1MIGRvZXNuJ3Qgd29yayBmb3IgWE1M
IGVsZW1lbnRzLiBXaGVuIGl0IGlzIGZpeGVkLCB0aGlzIG5lZWRzIHRvIGlkZW5pdGlmeQorLy8g
dGFnTmFtZXMgcGFydGljdWxhciB0byBlaXRoZXIgbmFtZXNwYWNlIGFuZCBwaWNrIGFuIGFwcHJv
cHJpYXRlIGltcGxpZWQgY29udGV4dCBlbGVtZW50Lgorc3RhdGljIGNvbnN0IFF1YWxpZmllZE5h
bWUmIGdldEltcGxpZWRDb250ZXh0VGFnKGNvbnN0IEF0b21pY1N0cmluZyYgdGFnTmFtZSkKK3sK
KyAgICBpZiAoaXNUYWJsZUJvZHlDb250ZXh0VGFnKHRhZ05hbWUpCisgICAgICAgIHx8IHRhZ05h
bWUgPT0gY2FwdGlvblRhZworICAgICAgICB8fCB0YWdOYW1lID09IGNvbGdyb3VwVGFnKSB7Cisg
ICAgICAgIHJldHVybiB0YWJsZVRhZzsKKyAgICB9CisgICAgaWYgKHRhZ05hbWUgPT0gdHJUYWcp
CisgICAgICAgIHJldHVybiB0Ym9keVRhZzsKKyAgICBpZiAodGFnTmFtZSA9PSBjb2xUYWcpCisg
ICAgICAgIHJldHVybiBjb2xncm91cFRhZzsKKyAgICBpZiAoaXNUYWJsZUNlbGxDb250ZXh0VGFn
KHRhZ05hbWUpKQorICAgICAgICByZXR1cm4gdHJUYWc7CisgICAgaWYgKHRhZ05hbWUgPT0gaGVh
ZFRhZyB8fCB0YWdOYW1lID09IGJvZHlUYWcpCisgICAgICAgIHJldHVybiBodG1sVGFnOworICAg
IGlmICh0YWdOYW1lID09IHJwVGFnIHx8IHRhZ05hbWUgPT0gcnRUYWcpCisgICAgICAgIHJldHVy
biBydWJ5VGFnOworCisgICAgcmV0dXJuIGJvZHlUYWc7Cit9CisKK2Jvb2wgSFRNTFRyZWVCdWls
ZGVyOjppbXBsaWVkQ29udGV4dFRhZyhIVE1MVG9rZW4mIHRva2VuKQoreworICAgIEFTU0VSVCht
X2ZyYWdtZW50Q29udGV4dC5mcmFnbWVudCgpICYmIG1fZnJhZ21lbnRDb250ZXh0LmNvbnRleHRU
YWcoKSA9PSBudWxsUU5hbWUoKSk7CisgICAgaWYgKHRva2VuLnR5cGUoKSA9PSBIVE1MVG9rZW5U
eXBlczo6RW5kT2ZGaWxlKSB7CisgICAgICAgIG1fZnJhZ21lbnRDb250ZXh0LnNldENvbnRleHRU
YWcoYm9keVRhZyk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKworICAgIGlmICh0b2tl
bi50eXBlKCkgIT0gSFRNTFRva2VuVHlwZXM6OlN0YXJ0VGFnKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICBtX2ZyYWdtZW50Q29udGV4dC5zZXRDb250ZXh0VGFnKGdldEltcGxpZWRDb250
ZXh0VGFnKEF0b21pY1N0cmluZyh0b2tlbi5uYW1lKCkuZGF0YSgpLCB0b2tlbi5uYW1lKCkuc2l6
ZSgpKSkpOworICAgIHJlc2V0SW5zZXJ0aW9uTW9kZUFwcHJvcHJpYXRlbHkoKTsKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwogdm9pZCBIVE1MVHJlZUJ1aWxkZXI6OnJlc2V0SW5zZXJ0aW9uTW9kZUFw
cHJvcHJpYXRlbHkoKQogewogICAgIC8vIGh0dHA6Ly93d3cud2hhdHdnLm9yZy9zcGVjcy93ZWIt
YXBwcy9jdXJyZW50LXdvcmsvbXVsdGlwYWdlL3BhcnNpbmcuaHRtbCNyZXNldC10aGUtaW5zZXJ0
aW9uLW1vZGUtYXBwcm9wcmlhdGVseQpAQCAtMTYzNyw0MCArMTY3NSw0MCBAQCB2b2lkIEhUTUxU
cmVlQnVpbGRlcjo6cmVzZXRJbnNlcnRpb25Nb2RlQXBwcm9wcmlhdGVseSgpCiAgICAgSFRNTEVs
ZW1lbnRTdGFjazo6RWxlbWVudFJlY29yZCogbm9kZVJlY29yZCA9IG1fdHJlZS5vcGVuRWxlbWVu
dHMoKS0+dG9wUmVjb3JkKCk7CiAgICAgd2hpbGUgKDEpIHsKICAgICAgICAgQ29udGFpbmVyTm9k
ZSogbm9kZSA9IG5vZGVSZWNvcmQtPm5vZGUoKTsKKyAgICAgICAgY29uc3QgUXVhbGlmaWVkTmFt
ZSYgdGFnTmFtZSA9IG5vZGUgPT0gbV90cmVlLm9wZW5FbGVtZW50cygpLT5yb290Tm9kZSgpID8g
bV9mcmFnbWVudENvbnRleHQuY29udGV4dFRhZygpIDogbm9kZVJlY29yZC0+ZWxlbWVudCgpLT50
YWdRTmFtZSgpOwogICAgICAgICBpZiAobm9kZSA9PSBtX3RyZWUub3BlbkVsZW1lbnRzKCktPnJv
b3ROb2RlKCkpIHsKICAgICAgICAgICAgIEFTU0VSVChpc1BhcnNpbmdGcmFnbWVudCgpKTsKICAg
ICAgICAgICAgIGxhc3QgPSB0cnVlOwotICAgICAgICAgICAgbm9kZSA9IG1fZnJhZ21lbnRDb250
ZXh0LmNvbnRleHRFbGVtZW50KCk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKG5vZGUtPmhhc1Rh
Z05hbWUoc2VsZWN0VGFnKSkgeworICAgICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKHNlbGVjdFRh
ZykpIHsKICAgICAgICAgICAgIEFTU0VSVChpc1BhcnNpbmdGcmFnbWVudCgpKTsKICAgICAgICAg
ICAgIHJldHVybiBzZXRJbnNlcnRpb25Nb2RlKEluU2VsZWN0TW9kZSk7CiAgICAgICAgIH0KLSAg
ICAgICAgaWYgKG5vZGUtPmhhc1RhZ05hbWUodGRUYWcpIHx8IG5vZGUtPmhhc1RhZ05hbWUodGhU
YWcpKQorICAgICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKHRkVGFnKSB8fCB0YWdOYW1lLm1hdGNo
ZXModGhUYWcpKQogICAgICAgICAgICAgcmV0dXJuIHNldEluc2VydGlvbk1vZGUoSW5DZWxsTW9k
ZSk7Ci0gICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1lKHRyVGFnKSkKKyAgICAgICAgaWYgKHRh
Z05hbWUubWF0Y2hlcyh0clRhZykpCiAgICAgICAgICAgICByZXR1cm4gc2V0SW5zZXJ0aW9uTW9k
ZShJblJvd01vZGUpOwotICAgICAgICBpZiAobm9kZS0+aGFzVGFnTmFtZSh0Ym9keVRhZykgfHwg
bm9kZS0+aGFzVGFnTmFtZSh0aGVhZFRhZykgfHwgbm9kZS0+aGFzVGFnTmFtZSh0Zm9vdFRhZykp
CisgICAgICAgIGlmICh0YWdOYW1lLm1hdGNoZXModGJvZHlUYWcpIHx8IHRhZ05hbWUubWF0Y2hl
cyh0aGVhZFRhZykgfHwgdGFnTmFtZS5tYXRjaGVzKHRmb290VGFnKSkKICAgICAgICAgICAgIHJl
dHVybiBzZXRJbnNlcnRpb25Nb2RlKEluVGFibGVCb2R5TW9kZSk7Ci0gICAgICAgIGlmIChub2Rl
LT5oYXNUYWdOYW1lKGNhcHRpb25UYWcpKQorICAgICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKGNh
cHRpb25UYWcpKQogICAgICAgICAgICAgcmV0dXJuIHNldEluc2VydGlvbk1vZGUoSW5DYXB0aW9u
TW9kZSk7Ci0gICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1lKGNvbGdyb3VwVGFnKSkgeworICAg
ICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKGNvbGdyb3VwVGFnKSkgewogICAgICAgICAgICAgQVNT
RVJUKGlzUGFyc2luZ0ZyYWdtZW50KCkpOwogICAgICAgICAgICAgcmV0dXJuIHNldEluc2VydGlv
bk1vZGUoSW5Db2x1bW5Hcm91cE1vZGUpOwogICAgICAgICB9Ci0gICAgICAgIGlmIChub2RlLT5o
YXNUYWdOYW1lKHRhYmxlVGFnKSkKKyAgICAgICAgaWYgKHRhZ05hbWUubWF0Y2hlcyh0YWJsZVRh
ZykpCiAgICAgICAgICAgICByZXR1cm4gc2V0SW5zZXJ0aW9uTW9kZShJblRhYmxlTW9kZSk7Ci0g
ICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1lKGhlYWRUYWcpKSB7CisgICAgICAgIGlmICh0YWdO
YW1lLm1hdGNoZXMoaGVhZFRhZykpIHsKICAgICAgICAgICAgIEFTU0VSVChpc1BhcnNpbmdGcmFn
bWVudCgpKTsKICAgICAgICAgICAgIHJldHVybiBzZXRJbnNlcnRpb25Nb2RlKEluQm9keU1vZGUp
OwogICAgICAgICB9Ci0gICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1lKGJvZHlUYWcpKQorICAg
ICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKGJvZHlUYWcpKQogICAgICAgICAgICAgcmV0dXJuIHNl
dEluc2VydGlvbk1vZGUoSW5Cb2R5TW9kZSk7Ci0gICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1l
KGZyYW1lc2V0VGFnKSkgeworICAgICAgICBpZiAodGFnTmFtZS5tYXRjaGVzKGZyYW1lc2V0VGFn
KSkgewogICAgICAgICAgICAgQVNTRVJUKGlzUGFyc2luZ0ZyYWdtZW50KCkpOwogICAgICAgICAg
ICAgcmV0dXJuIHNldEluc2VydGlvbk1vZGUoSW5GcmFtZXNldE1vZGUpOwogICAgICAgICB9Ci0g
ICAgICAgIGlmIChub2RlLT5oYXNUYWdOYW1lKGh0bWxUYWcpKSB7CisgICAgICAgIGlmICh0YWdO
YW1lLm1hdGNoZXMoaHRtbFRhZykpIHsKICAgICAgICAgICAgIEFTU0VSVChpc1BhcnNpbmdGcmFn
bWVudCgpKTsKICAgICAgICAgICAgIHJldHVybiBzZXRJbnNlcnRpb25Nb2RlKEJlZm9yZUhlYWRN
b2RlKTsKICAgICAgICAgfQpAQCAtMjc4NSw3ICsyODIzLDcgQEAgdm9pZCBIVE1MVHJlZUJ1aWxk
ZXI6OnByb2Nlc3NUb2tlbkluRm9yZWlnbkNvbnRlbnQoQXRvbWljSFRNTFRva2VuJiB0b2tlbikK
ICAgICAgICAgbV90cmVlLmluc2VydENvbW1lbnQodG9rZW4pOwogICAgICAgICByZXR1cm47CiAg
ICAgY2FzZSBIVE1MVG9rZW5UeXBlczo6Q2hhcmFjdGVyOiB7Ci0gICAgICAgIFN0cmluZyBjaGFy
YWN0ZXJzID0gU3RyaW5nKHRva2VuLmNoYXJhY3RlcnMoKS5kYXRhKCksIHRva2VuLmNoYXJhY3Rl
cnMoKS5zaXplKCkpOworICAgICAgICBTdHJpbmcgY2hhcmFjdGVycyA9IFN0cmluZyh0b2tlbi5j
aGFyYWN0ZXJEYXRhKCksIHRva2VuLmNoYXJhY3RlckRhdGFTaXplKCkpOwogICAgICAgICBtX3Ry
ZWUuaW5zZXJ0VGV4dE5vZGUoY2hhcmFjdGVycyk7CiAgICAgICAgIGlmIChtX2ZyYW1lc2V0T2sg
JiYgIWlzQWxsV2hpdGVzcGFjZU9yUmVwbGFjZW1lbnRDaGFyYWN0ZXJzKGNoYXJhY3RlcnMpKQog
ICAgICAgICAgICAgbV9mcmFtZXNldE9rID0gZmFsc2U7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9odG1sL3BhcnNlci9IVE1MVHJlZUJ1aWxkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2h0bWwv
cGFyc2VyL0hUTUxUcmVlQnVpbGRlci5oCmluZGV4IDY0YTkzYjM0ZmZiZjFmMDRhYTBiNzM0MjIz
N2M3OWQ5YWRkNWJiMjMuLmIyZmFiOWFlZDVmYmRlNmI4YTY4NjFlM2M1YmM5Mjg2MjRhMWI0Y2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxUcmVlQnVpbGRlci5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvcGFyc2VyL0hUTUxUcmVlQnVpbGRlci5oCkBAIC01
MCw2ICs1MCw3IEBAIGNsYXNzIERvY3VtZW50RnJhZ21lbnQ7CiBjbGFzcyBGcmFtZTsKIGNsYXNz
IEhUTUxUb2tlbjsKIGNsYXNzIEhUTUxEb2N1bWVudDsKK2NsYXNzIFF1YWxpZmllZE5hbWU7CiBj
bGFzcyBOb2RlOwogY2xhc3MgSFRNTERvY3VtZW50UGFyc2VyOwogCkBAIC04NSw2ICs4Niw5IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgc2V0U2hvdWxkU2tpcExlYWRpbmdOZXdsaW5lKGJvb2wgc2hv
dWxkU2tpcCkgeyBtX3Nob3VsZFNraXBMZWFkaW5nTmV3bGluZSA9IHNob3VsZFNraXA7IH0KIAor
ICAgIGJvb2wgaW1wbGllZENvbnRleHRUYWcoSFRNTFRva2VuJik7CisgICAgYm9vbCBjYW5Db250
aW51ZShIVE1MVG9rZW4mIHRva2VuKSB7IHJldHVybiAhbV9mcmFnbWVudENvbnRleHQuZnJhZ21l
bnQoKSB8fCBtX2ZyYWdtZW50Q29udGV4dC5jb250ZXh0VGFnKCkgIT0gbnVsbFFOYW1lKCkgfHwg
aW1wbGllZENvbnRleHRUYWcodG9rZW4pOyB9CisKICAgICBzdGF0aWMgYm9vbCBzY3JpcHRFbmFi
bGVkKEZyYW1lKik7CiAgICAgc3RhdGljIGJvb2wgcGx1Z2luc0VuYWJsZWQoRnJhbWUqKTsKIApA
QCAtMTk1LDE2ICsxOTksMTcgQEAgcHJpdmF0ZToKICAgICAgICAgV1RGX01BS0VfTk9OQ09QWUFC
TEUoRnJhZ21lbnRQYXJzaW5nQ29udGV4dCk7CiAgICAgcHVibGljOgogICAgICAgICBGcmFnbWVu
dFBhcnNpbmdDb250ZXh0KCk7Ci0gICAgICAgIEZyYWdtZW50UGFyc2luZ0NvbnRleHQoRG9jdW1l
bnRGcmFnbWVudCosIEVsZW1lbnQqIGNvbnRleHRFbGVtZW50LCBGcmFnbWVudFNjcmlwdGluZ1Bl
cm1pc3Npb24pOworICAgICAgICBGcmFnbWVudFBhcnNpbmdDb250ZXh0KERvY3VtZW50RnJhZ21l
bnQqLCBjb25zdCBRdWFsaWZpZWROYW1lJiBjb250ZXh0VGFnLCBGcmFnbWVudFNjcmlwdGluZ1Bl
cm1pc3Npb24pOwogICAgICAgICB+RnJhZ21lbnRQYXJzaW5nQ29udGV4dCgpOwogCiAgICAgICAg
IERvY3VtZW50RnJhZ21lbnQqIGZyYWdtZW50KCkgY29uc3QgeyByZXR1cm4gbV9mcmFnbWVudDsg
fQotICAgICAgICBFbGVtZW50KiBjb250ZXh0RWxlbWVudCgpIGNvbnN0IHsgQVNTRVJUKG1fZnJh
Z21lbnQpOyByZXR1cm4gbV9jb250ZXh0RWxlbWVudDsgfQorICAgICAgICBjb25zdCBRdWFsaWZp
ZWROYW1lJiBjb250ZXh0VGFnKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZXh0VGFnOyB9CisgICAg
ICAgIHZvaWQgc2V0Q29udGV4dFRhZyhjb25zdCBRdWFsaWZpZWROYW1lJiBjb250ZXh0VGFnKSB7
IG1fY29udGV4dFRhZyA9IGNvbnRleHRUYWc7IH0KICAgICAgICAgRnJhZ21lbnRTY3JpcHRpbmdQ
ZXJtaXNzaW9uIHNjcmlwdGluZ1Blcm1pc3Npb24oKSBjb25zdCB7IEFTU0VSVChtX2ZyYWdtZW50
KTsgcmV0dXJuIG1fc2NyaXB0aW5nUGVybWlzc2lvbjsgfQogCiAgICAgcHJpdmF0ZToKICAgICAg
ICAgRG9jdW1lbnRGcmFnbWVudCogbV9mcmFnbWVudDsKLSAgICAgICAgRWxlbWVudCogbV9jb250
ZXh0RWxlbWVudDsKKyAgICAgICAgUXVhbGlmaWVkTmFtZSBtX2NvbnRleHRUYWc7CiAKICAgICAg
ICAgLy8gRnJhZ21lbnRTY3JpcHRpbmdOb3RBbGxvd2VkIGNhdXNlcyB0aGUgUGFyc2VyIHRvIHJl
bW92ZSBjaGlsZHJlbgogICAgICAgICAvLyBmcm9tIDxzY3JpcHQ+IHRhZ3MgKHNvIGphdmFzY3Jp
cHQgZG9lc24ndCBzaG93IHVwIGluIHBhc3RlcykuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS94bWwvcGFyc2VyL01hcmt1cFRva2VuQmFzZS5oIGIvU291cmNlL1dlYkNvcmUveG1sL3BhcnNl
ci9NYXJrdXBUb2tlbkJhc2UuaAppbmRleCBjOTYyYTZhYmEzM2E0YjVlNTE0YzFlYTNkZTAxMGM5
OGQxYmRlYmYyLi4yNTBkYTE2ZmEwMmIxMjM0NjRkNmQ3NDUwOTk4MzQ5ZDIxOWU5YmQ1IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS94bWwvcGFyc2VyL01hcmt1cFRva2VuQmFzZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3htbC9wYXJzZXIvTWFya3VwVG9rZW5CYXNlLmgKQEAgLTI4LDYgKzI4
LDcgQEAKICNkZWZpbmUgTWFya3VwVG9rZW5CYXNlX2gKIAogI2luY2x1ZGUgIkVsZW1lbnRBdHRy
aWJ1dGVEYXRhLmgiCisjaW5jbHVkZSA8d3RmL093bkFycmF5UHRyLmg+CiAjaW5jbHVkZSA8d3Rm
L1ZlY3Rvci5oPgogCiAjaWZuZGVmIE5ERUJVRwpAQCAtMzcyLDEyICszNzMsMTUgQEAgcHJvdGVj
dGVkOgogICAgIEF0dHJpYnV0ZSogbV9jdXJyZW50QXR0cmlidXRlOwogfTsKIAorZW51bSBDaGFy
YWN0ZXJTdG9yYWdlTW9kZSB7IEludGVybmFsaXplQ2hhcmFjdGVycywgUmVmZXJlbmNlRXh0ZXJu
YWxDaGFyYWN0ZXJzIH07CisKIHRlbXBsYXRlPHR5cGVuYW1lIFRva2VuPgogY2xhc3MgQXRvbWlj
TWFya3VwVG9rZW5CYXNlIHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShBdG9taWNNYXJrdXBU
b2tlbkJhc2UpOwogcHVibGljOgotICAgIEF0b21pY01hcmt1cFRva2VuQmFzZShUb2tlbiogdG9r
ZW4pCisgICAgQXRvbWljTWFya3VwVG9rZW5CYXNlKFRva2VuKiB0b2tlbiwgQ2hhcmFjdGVyU3Rv
cmFnZU1vZGUgY2hhcmFjdGVyU3RvcmFnZSA9IFJlZmVyZW5jZUV4dGVybmFsQ2hhcmFjdGVycykK
ICAgICAgICAgOiBtX3R5cGUodG9rZW4tPnR5cGUoKSkKKyAgICAgICAgLCBtX2V4dGVybmFsQ2hh
cmFjdGVycygwKQogICAgIHsKICAgICAgICAgQVNTRVJUKHRva2VuKTsKIApAQCAtNDAyLDcgKzQw
NiwxNSBAQCBwdWJsaWM6CiAgICAgICAgICAgICBtX2RhdGEgPSBTdHJpbmcodG9rZW4tPmNvbW1l
bnQoKS5kYXRhKCksIHRva2VuLT5jb21tZW50KCkuc2l6ZSgpKTsKICAgICAgICAgICAgIGJyZWFr
OwogICAgICAgICBjYXNlIFRva2VuOjpUeXBlOjpDaGFyYWN0ZXI6Ci0gICAgICAgICAgICBtX2V4
dGVybmFsQ2hhcmFjdGVycyA9ICZ0b2tlbi0+Y2hhcmFjdGVycygpOworICAgICAgICAgICAgaWYg
KGNoYXJhY3RlclN0b3JhZ2UgPT0gUmVmZXJlbmNlRXh0ZXJuYWxDaGFyYWN0ZXJzKSB7CisgICAg
ICAgICAgICAgICAgbV9leHRlcm5hbENoYXJhY3RlcnMgPSAmdG9rZW4tPmNoYXJhY3RlcnMoKTsK
KyAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAgbV9p
bnRlcm5hbENoYXJhY3RlcnNTaXplID0gdG9rZW4tPmNoYXJhY3RlcnMoKS5zaXplKCk7CisgICAg
ICAgICAgICBtX2ludGVybmFsQ2hhcmFjdGVycyA9IGFkb3B0QXJyYXlQdHIobmV3IFVDaGFyW21f
aW50ZXJuYWxDaGFyYWN0ZXJzU2l6ZV0pOworICAgICAgICAgICAgZm9yICh1bnNpZ25lZCBpID0g
MDsgaSA8IG1faW50ZXJuYWxDaGFyYWN0ZXJzU2l6ZTsgaSsrKQorICAgICAgICAgICAgICAgIG1f
aW50ZXJuYWxDaGFyYWN0ZXJzW2ldID0gdG9rZW4tPmNoYXJhY3RlcnMoKS5kYXRhKClbaV07CiAg
ICAgICAgICAgICBicmVhazsKICAgICAgICAgZGVmYXVsdDoKICAgICAgICAgICAgIGJyZWFrOwpA
QCAtNDU2LDEwICs0NjgsMTYgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gbV9hdHRyaWJ1dGVz
OwogICAgIH0KIAotICAgIGNvbnN0IHR5cGVuYW1lIFRva2VuOjpEYXRhVmVjdG9yJiBjaGFyYWN0
ZXJzKCkgY29uc3QKKyAgICBjb25zdCBVQ2hhciogY2hhcmFjdGVyRGF0YSgpIGNvbnN0CisgICAg
eworICAgICAgICBBU1NFUlQobV90eXBlID09IFRva2VuOjpUeXBlOjpDaGFyYWN0ZXIpOworICAg
ICAgICByZXR1cm4gbV9leHRlcm5hbENoYXJhY3RlcnMgPyBtX2V4dGVybmFsQ2hhcmFjdGVycy0+
ZGF0YSgpIDogbV9pbnRlcm5hbENoYXJhY3RlcnMuZ2V0KCk7CisgICAgfQorCisgICAgY29uc3Qg
c2l6ZV90IGNoYXJhY3RlckRhdGFTaXplKCkgY29uc3QKICAgICB7CiAgICAgICAgIEFTU0VSVCht
X3R5cGUgPT0gVG9rZW46OlR5cGU6OkNoYXJhY3Rlcik7Ci0gICAgICAgIHJldHVybiAqbV9leHRl
cm5hbENoYXJhY3RlcnM7CisgICAgICAgIHJldHVybiBtX2V4dGVybmFsQ2hhcmFjdGVycyA/IG1f
ZXh0ZXJuYWxDaGFyYWN0ZXJzLT5zaXplKCkgOiBtX2ludGVybmFsQ2hhcmFjdGVyc1NpemU7CiAg
ICAgfQogCiAgICAgY29uc3QgU3RyaW5nJiBjb21tZW50KCkgY29uc3QKQEAgLTUwMCwxMyArNTE4
LDE5IEBAIHByb3RlY3RlZDoKIAogICAgIC8vICJjaGFyYWN0ZXJzIiBmb3IgQ2hhcmFjdGVyCiAg
ICAgLy8KLSAgICAvLyBXZSBkb24ndCB3YW50IHRvIGNvcHkgdGhlIHRoZSBjaGFyYWN0ZXJzIG91
dCBvZiB0aGUgVG9rZW4sIHNvIHdlCi0gICAgLy8ga2VlcCBhIHBvaW50ZXIgdG8gaXRzIGJ1ZmZl
ciBpbnN0ZWFkLiBUaGlzIGJ1ZmZlciBpcyBvd25lZCBieSB0aGUKLSAgICAvLyBUb2tlbiBhbmQg
Y2F1c2VzIGEgbGlmZXRpbWUgZGVwZW5kZW5jZSBiZXR3ZWVuIHRoZXNlIG9iamVjdHMuCisgICAg
Ly8gSW4gc3RlYWR5LXN0YXRlIGNhc2UsIHdlIGRvbid0IHdhbnQgdG8gY29weSB0aGUgdGhlIGNo
YXJhY3RlcnMgb3V0IG9mIHRoZQorICAgIC8vIFRva2VuLCBzbyB3ZSBrZWVwIGEgcG9pbnRlciB0
byBpdHMgYnVmZmVyIGluc3RlYWQuIFRoaXMgYnVmZmVyIGlzIG93bmVkCisgICAgLy8gYnkgdGhl
IFRva2VuIGFuZCBjYXVzZXMgYSBsaWZldGltZSBkZXBlbmRlbmNlIGJldHdlZW4gdGhlc2Ugb2Jq
ZWN0cy4gVGhpcworICAgIC8vIGlzIHRoZSBiZWhhdmlvciB3aGVuIGNvbnN0cnVjdGVkIHdpdGgg
UmVmZXJlbmNlRXh0ZXJuYWxDaGFyYWN0ZXJzLgogICAgIC8vCi0gICAgLy8gRklYTUU6IEFkZCBh
IG1lY2hhbmlzbSBmb3IgImludGVybmFsaXppbmciIHRoZSBjaGFyYWN0ZXJzIHdoZW4gdGhlCi0g
ICAgLy8gICAgICAgIEhUTUxUb2tlbiBpcyBkZXN0cnVjdGVkLgorICAgIC8vIEluIHRoZSAiaW1w
bGllZCBjb250ZXh0IiBmcmFnbWVudCBjYXNlLCB3ZSBuZWVkIHRvIGxldCB0aGUgdG9rZW5pemVy
CisgICAgLy8gc2NhbiBhaGVhZCBhbmQgcXVldWUgdG9rZW5zIGZvciBsYXRlciBkZWxpdmVyeS4g
SW4gdGhpcyBjYXNlLCB3ZSBtYWtlIGFuCisgICAgLy8gaW50ZXJuYWwgY29weSBvZiB0aGUgY2hh
cmFjdGVycyBzbyB0aGF0IGl0IGlzIHNhZmUgdG8gbGV0IHRoZSB1bmRlcmx5aW5nCisgICAgLy8g
VG9rZW4gYmUgZnJlZWQuIFRoaXMgaXMgdGhlIGJlaGF2aW9yIHdoZW4gY29uc3RydWN0ZWQgd2l0
aAorICAgIC8vIEludGVybmFsaXplQ2hhcmFjdGVycwogICAgIGNvbnN0IHR5cGVuYW1lIFRva2Vu
OjpEYXRhVmVjdG9yKiBtX2V4dGVybmFsQ2hhcmFjdGVyczsKKyAgICBPd25BcnJheVB0cjxVQ2hh
cj4gbV9pbnRlcm5hbENoYXJhY3RlcnM7CisgICAgc2l6ZV90IG1faW50ZXJuYWxDaGFyYWN0ZXJz
U2l6ZTsKIAogICAgIC8vIEZvciBET0NUWVBFCiAgICAgT3duUHRyPHR5cGVuYW1lIFRva2VuOjpE
b2N0eXBlRGF0YT4gbV9kb2N0eXBlRGF0YTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3ht
bC9wYXJzZXIvWE1MVHJlZUJ1aWxkZXIuY3BwIGIvU291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9Y
TUxUcmVlQnVpbGRlci5jcHAKaW5kZXggZGIyMTNjZDYyZWU5M2Q1NDdhZjEzYzU5ZDNmMTAyZjVj
ZGNjNjc5Ny4uNTFlMTQ4ZGNjYzE5NzUyNzZjZDg2Y2RmYzlmOGE0ZTYxNDVjYTMwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9YTUxUcmVlQnVpbGRlci5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9YTUxUcmVlQnVpbGRlci5jcHAKQEAgLTI3Miw3ICsy
NzIsNyBAQCB2b2lkIFhNTFRyZWVCdWlsZGVyOjpwcm9jZXNzRW5kVGFnKGNvbnN0IEF0b21pY1hN
TFRva2VuJiB0b2tlbikKIAogdm9pZCBYTUxUcmVlQnVpbGRlcjo6cHJvY2Vzc0NoYXJhY3Rlcihj
b25zdCBBdG9taWNYTUxUb2tlbiYgdG9rZW4pCiB7Ci0gICAgYXBwZW5kVG9UZXh0KHRva2VuLmNo
YXJhY3RlcnMoKS5kYXRhKCksIHRva2VuLmNoYXJhY3RlcnMoKS5zaXplKCkpOworICAgIGFwcGVu
ZFRvVGV4dCh0b2tlbi5jaGFyYWN0ZXJEYXRhKCksIHRva2VuLmNoYXJhY3RlckRhdGFTaXplKCkp
OwogfQogCiB2b2lkIFhNTFRyZWVCdWlsZGVyOjpwcm9jZXNzQ0RBVEEoY29uc3QgQXRvbWljWE1M
VG9rZW4mIHRva2VuKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>