<?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>178775</bug_id>
          
          <creation_ts>2017-10-25 00:48:35 -0700</creation_ts>
          <short_desc>[Curl] Rename CurlJobManager to CurlRequestScheduler</short_desc>
          <delta_ts>2017-11-15 13:00:21 -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>WebCore Misc.</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Basuke Suzuki">basuke</reporter>
          <assigned_to name="Basuke Suzuki">basuke</assigned_to>
          <cc>achristensen</cc>
    
    <cc>basuke</cc>
    
    <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>pvollan</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1364141</commentid>
    <comment_count>0</comment_count>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2017-10-25 00:48:35 -0700</bug_when>
    <thetext>To match the meaning of the class. It was originally meant to be more generic purpose, but as other classes was introduced, the objective of the class is now only to handle the life cycle of curl requests.

The delegate is also renamed to CurlRequestSchedulerClient.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364716</commentid>
    <comment_count>1</comment_count>
      <attachid>324968</attachid>
    <who name="Basuke Suzuki">basuke</who>
    <bug_when>2017-10-25 23:52:19 -0700</bug_when>
    <thetext>Created attachment 324968
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364954</commentid>
    <comment_count>2</comment_count>
      <attachid>324968</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-26 11:58:32 -0700</bug_when>
    <thetext>Comment on attachment 324968
patch

Clearing flags on attachment: 324968

Committed r224037: &lt;https://trac.webkit.org/changeset/224037&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364955</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-26 11:58:34 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1372304</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-15 13:00:21 -0800</bug_when>
    <thetext>&lt;rdar://problem/35568587&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>324968</attachid>
            <date>2017-10-25 23:52:19 -0700</date>
            <delta_ts>2017-10-26 11:58:32 -0700</delta_ts>
            <desc>patch</desc>
            <filename>178775-1.diff</filename>
            <type>text/plain</type>
            <size>26000</size>
            <attacher name="Basuke Suzuki">basuke</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjZDcwMDlhN2Y4MC4uMzg1NDQ0MDEyNWYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw2MiBAQAorMjAxNy0xMC0yNSAgQmFzdWtlIFN1enVraSAgPEJhc3VrZS5TdXp1a2lAc29u
eS5jb20+CisKKyAgICAgICAgW0N1cmxdIFJlbmFtZSBDdXJsSm9iTWFuYWdlciB0byBDdXJsUmVx
dWVzdFNjaGVkdWxlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTc4Nzc1CisKKyAgICAgICAgVG8gbWF0Y2ggdGhlIG1lYW5pbmcgb2YgdGhlIGNsYXNz
LgorICAgICAgICBJdCB3YXMgb3JpZ2luYWxseSBtZWFudCB0byBiZSBtb3JlIGdlbmVyaWMgcHVy
cG9zZSwgYnV0IGFzCisgICAgICAgIG90aGVyIGNsYXNzZXMgd2FzIGludHJvZHVjZWQsIHRoZSBv
YmplY3RpdmUgb2YgdGhlIGNsYXNzIGlzCisgICAgICAgIG5vdyBvbmx5IHRvIGhhbmRsZSB0aGUg
bGlmZSBjeWNsZSBvZiBjdXJsIHJlcXVlc3RzLgorCisgICAgICAgIFRoZSBkZWxlZ2F0ZSBpcyBh
bHNvIHJlbmFtZWQgdG8gQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQuCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9DdXJsLmNtYWtl
OgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsRG93bmxvYWQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6Q3VybERvd25sb2FkOjp+Q3VybERvd25sb2FkKToKKyAgICAgICAgKFdl
YkNvcmU6OkN1cmxEb3dubG9hZDo6d2lsbFNlbmRSZXF1ZXN0KToKKyAgICAgICAgKiBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3VybERvd25sb2FkLmg6CisgICAgICAgICogcGxhdGZvcm0vbmV0d29y
ay9jdXJsL0N1cmxSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0OjpD
dXJsUmVxdWVzdCk6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVzdDo6c3RhcnQpOgorICAg
ICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6OnN0YXJ0V2l0aEpvYk1hbmFnZXIpOgorICAgICAg
ICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6OmNhbmNlbCk6CisgICAgICAgIChXZWJDb3JlOjpDdXJs
UmVxdWVzdDo6Y2FsbENsaWVudCk6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVzdDo6ZGlk
UmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6OmRpZENvbXBsZXRl
VHJhbnNmZXIpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6Omludm9rZURpZFJlY2Vp
dmVSZXNwb25zZUZvckZpbGUpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6Omludm9r
ZURpZFJlY2VpdmVSZXNwb25zZSk6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVzdDo6Y29t
cGxldGVEaWRSZWNlaXZlUmVzcG9uc2UpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6
OnBhdXNlZFN0YXR1c0NoYW5nZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3Q6OmNh
bGxEZWxlZ2F0ZSk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1
cmxSZXF1ZXN0Lmg6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVzdDo6Y3JlYXRlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0OjpzZXRDbGllbnQpOgorICAgICAgICAoV2ViQ29y
ZTo6Q3VybFJlcXVlc3Q6OnNldERlbGVnYXRlKTogRGVsZXRlZC4KKyAgICAgICAgKiBwbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3RDbGllbnQuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdERlbGVnYXRlLmguCisgICAg
ICAgICogcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0U2NoZWR1bGVyLmNwcDogUmVu
YW1lZCBmcm9tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsSm9iTWFu
YWdlci5jcHAuCisgICAgICAgIChXZWJDb3JlOjpDdXJsSm9iTGlzdDo6c3RhcnRKb2JzKToKKyAg
ICAgICAgKFdlYkNvcmU6OkN1cmxKb2JMaXN0OjpmaW5pc2hKb2JzKToKKyAgICAgICAgKFdlYkNv
cmU6OkN1cmxSZXF1ZXN0U2NoZWR1bGVyOjpzaW5nbGV0b24pOgorICAgICAgICAoV2ViQ29yZTo6
Q3VybFJlcXVlc3RTY2hlZHVsZXI6OmFkZCk6CisgICAgICAgIChXZWJDb3JlOjpDdXJsUmVxdWVz
dFNjaGVkdWxlcjo6Y2FuY2VsKToKKyAgICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0U2NoZWR1
bGVyOjpjYWxsT25Xb3JrZXJUaHJlYWQpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJlcXVlc3RT
Y2hlZHVsZXI6OnN0YXJ0VGhyZWFkSWZOZWVkZWQpOgorICAgICAgICAoV2ViQ29yZTo6Q3VybFJl
cXVlc3RTY2hlZHVsZXI6OnN0b3BUaHJlYWRJZk5vTW9yZUpvYlJ1bm5pbmcpOgorICAgICAgICAo
V2ViQ29yZTo6Q3VybFJlcXVlc3RTY2hlZHVsZXI6OnN0b3BUaHJlYWQpOgorICAgICAgICAoV2Vi
Q29yZTo6Q3VybFJlcXVlc3RTY2hlZHVsZXI6OnVwZGF0ZUpvYkxpc3QpOgorICAgICAgICAoV2Vi
Q29yZTo6Q3VybFJlcXVlc3RTY2hlZHVsZXI6OndvcmtlclRocmVhZCk6CisgICAgICAgICogcGxh
dGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0U2NoZWR1bGVyLmg6IFJlbmFtZWQgZnJvbSBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybEpvYk1hbmFnZXIuaC4KKyAg
ICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0U2NoZWR1bGVyOjp+Q3VybFJlcXVlc3RTY2hlZHVs
ZXIpOgorICAgICAgICAqIHBsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdFNjaGVkdWxl
ckNsaWVudC5oOiBBZGRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkN1cmxSZXF1ZXN0U2NoZWR1bGVy
Q2xpZW50Ojp+Q3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQpOgorICAgICAgICAqIHBsYXRmb3Jt
L25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZTo6flJlc291cmNlSGFuZGxlQ3VybERl
bGVnYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlJlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlOjpz
ZXRBdXRoZW50aWNhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZUN1cmxE
ZWxlZ2F0ZTo6Y29udGludWVBZnRlcldpbGxTZW5kUmVxdWVzdCk6CisgICAgICAgICogcGxhdGZv
cm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlLmg6CisKIDIwMTctMTAt
MjMgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxlckBhcHBsZS5jb20+CiAKICAgICAgICAgVW5y
ZXZpZXdlZCwgZml4IHdpbmRvd3MgYnVpbGQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9DdXJsLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3VybC5jbWFrZQpp
bmRleCA3YTgzMmVkZjRmNi4uOTIxNTE1NGVmNDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL0N1cmwuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vQ3VybC5j
bWFrZQpAQCAtMTAsOCArMTAsOCBAQCBsaXN0KEFQUEVORCBXZWJDb3JlX1NPVVJDRVMKICAgICBw
bGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybENhY2hlTWFuYWdlci5jcHAKICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvQ3VybENvbnRleHQuY3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1
cmxEb3dubG9hZC5jcHAKLSAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybEpvYk1hbmFnZXIu
Y3BwCiAgICAgcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmNwcAorICAgIHBsYXRm
b3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdFNjaGVkdWxlci5jcHAKICAgICBwbGF0Zm9ybS9u
ZXR3b3JrL2N1cmwvQ3VybFNTTEhhbmRsZS5jcHAKICAgICBwbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFNTTFZlcmlmaWVyLmNwcAogICAgIHBsYXRmb3JtL25ldHdvcmsvY3VybC9ETlNDdXJsLmNw
cApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxE
b3dubG9hZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybERv
d25sb2FkLmNwcAppbmRleCA0YTg5NWExYWU1OC4uODUwNDdmZGM2Y2UgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsRG93bmxvYWQuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsRG93bmxvYWQuY3BwCkBA
IC00MCw3ICs0MCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIEN1cmxEb3dubG9hZDo6fkN1cmxE
b3dubG9hZCgpCiB7CiAgICAgaWYgKG1fY3VybFJlcXVlc3QpCi0gICAgICAgIG1fY3VybFJlcXVl
c3QtPnNldERlbGVnYXRlKG51bGxwdHIpOworICAgICAgICBtX2N1cmxSZXF1ZXN0LT5zZXRDbGll
bnQobnVsbHB0cik7CiB9CiAKIHZvaWQgQ3VybERvd25sb2FkOjppbml0KEN1cmxEb3dubG9hZExp
c3RlbmVyJiBsaXN0ZW5lciwgY29uc3QgVVJMJiB1cmwpCkBAIC0xOTYsNyArMTk2LDcgQEAgdm9p
ZCBDdXJsRG93bmxvYWQ6OndpbGxTZW5kUmVxdWVzdCgpCiAgICAgfQogCiAgICAgbV9jdXJsUmVx
dWVzdC0+Y2FuY2VsKCk7Ci0gICAgbV9jdXJsUmVxdWVzdC0+c2V0RGVsZWdhdGUobnVsbHB0cik7
CisgICAgbV9jdXJsUmVxdWVzdC0+c2V0Q2xpZW50KG51bGxwdHIpOwogCiAgICAgbV9jdXJsUmVx
dWVzdCA9IGNyZWF0ZUN1cmxSZXF1ZXN0KG5ld1JlcXVlc3QpOwogICAgIG1fY3VybFJlcXVlc3Qt
PnN0YXJ0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvQ3VybERvd25sb2FkLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybERvd25sb2FkLmgKaW5kZXggNWJiN2ExZDQwMmQuLjk5OGQ3MDdhNTczIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybERvd25sb2FkLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxEb3dubG9hZC5oCkBA
IC0zMCw3ICszMCw3IEBACiAjaWYgVVNFKENVUkwpCiAKICNpbmNsdWRlICJDdXJsUmVxdWVzdC5o
IgotI2luY2x1ZGUgIkN1cmxSZXF1ZXN0RGVsZWdhdGUuaCIKKyNpbmNsdWRlICJDdXJsUmVxdWVz
dENsaWVudC5oIgogI2luY2x1ZGUgIlJlc291cmNlUmVxdWVzdC5oIgogI2luY2x1ZGUgIlJlc291
cmNlUmVzcG9uc2UuaCIKIApAQCAtNDcsNyArNDcsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2
b2lkIGRpZEZhaWwoKSB7IH0KIH07CiAKLWNsYXNzIEN1cmxEb3dubG9hZCA6IHB1YmxpYyBUaHJl
YWRTYWZlUmVmQ291bnRlZDxDdXJsRG93bmxvYWQ+LCBwdWJsaWMgQ3VybFJlcXVlc3REZWxlZ2F0
ZSB7CitjbGFzcyBDdXJsRG93bmxvYWQgOiBwdWJsaWMgVGhyZWFkU2FmZVJlZkNvdW50ZWQ8Q3Vy
bERvd25sb2FkPiwgcHVibGljIEN1cmxSZXF1ZXN0Q2xpZW50IHsKIHB1YmxpYzoKICAgICBDdXJs
RG93bmxvYWQoKSA9IGRlZmF1bHQ7CiAgICAgfkN1cmxEb3dubG9hZCgpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5jcHAKaW5kZXgg
MzdjZjczMzgzMWYuLjlhYjFhMjhiNTU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5jcHAKQEAgLTI4LDcgKzI4LDggQEAKIAog
I2lmIFVTRShDVVJMKQogCi0jaW5jbHVkZSAiQ3VybFJlcXVlc3REZWxlZ2F0ZS5oIgorI2luY2x1
ZGUgIkN1cmxSZXF1ZXN0Q2xpZW50LmgiCisjaW5jbHVkZSAiQ3VybFJlcXVlc3RTY2hlZHVsZXIu
aCIKICNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VFcnJv
ci5oIgogI2luY2x1ZGUgIlNoYXJlZEJ1ZmZlci5oIgpAQCAtMzYsMTMgKzM3LDEzIEBACiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIAotQ3VybFJlcXVlc3Q6OkN1cmxSZXF1ZXN0KGNvbnN0IFJlc291
cmNlUmVxdWVzdCZyZXF1ZXN0LCBDdXJsUmVxdWVzdERlbGVnYXRlKiBkZWxlZ2F0ZSwgYm9vbCBz
aG91bGRTdXNwZW5kKQorQ3VybFJlcXVlc3Q6OkN1cmxSZXF1ZXN0KGNvbnN0IFJlc291cmNlUmVx
dWVzdCZyZXF1ZXN0LCBDdXJsUmVxdWVzdENsaWVudCogY2xpZW50LCBib29sIHNob3VsZFN1c3Bl
bmQpCiAgICAgOiBtX3JlcXVlc3QocmVxdWVzdC5pc29sYXRlZENvcHkoKSkKICAgICAsIG1fc2hv
dWxkU3VzcGVuZChzaG91bGRTdXNwZW5kKQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7
CiAKLSAgICBzZXREZWxlZ2F0ZShkZWxlZ2F0ZSk7CisgICAgc2V0Q2xpZW50KGNsaWVudCk7CiAg
ICAgcmVzb2x2ZUJsb2JSZWZlcmVuY2VzKG1fcmVxdWVzdCk7CiB9CiAKQEAgLTcyLDEzICs3Mywx
MyBAQCB2b2lkIEN1cmxSZXF1ZXN0OjpzdGFydChib29sIGlzU3luY1JlcXVlc3QpCiAgICAgYXV0
byB1cmwgPSBtX3JlcXVlc3QudXJsKCkuaXNvbGF0ZWRDb3B5KCk7CiAKICAgICBpZiAoIW1faXNT
eW5jUmVxdWVzdCkgewotICAgICAgICAvLyBGb3IgYXN5bmNocm9ub3VzLCB1c2UgQ3VybEpvYk1h
bmFnZXIuIEN1cmwgcHJvY2Vzc2VzIHJ1bnMgb24gc3ViIHRocmVhZC4KKyAgICAgICAgLy8gRm9y
IGFzeW5jaHJvbm91cywgdXNlIEN1cmxSZXF1ZXN0U2NoZWR1bGVyLiBDdXJsIHByb2Nlc3NlcyBy
dW5zIG9uIHN1YiB0aHJlYWQuCiAgICAgICAgIGlmICh1cmwuaXNMb2NhbEZpbGUoKSkKICAgICAg
ICAgICAgIGludm9rZURpZFJlY2VpdmVSZXNwb25zZUZvckZpbGUodXJsKTsKICAgICAgICAgZWxz
ZQogICAgICAgICAgICAgc3RhcnRXaXRoSm9iTWFuYWdlcigpOwogICAgIH0gZWxzZSB7Ci0gICAg
ICAgIC8vIEZvciBzeW5jaHJvbm91cywgZG9lcyBub3QgdXNlIEN1cmxKb2JNYW5hZ2VyLiBDdXJs
IHByb2Nlc3NlcyBydW5zIG9uIG1haW4gdGhyZWFkLgorICAgICAgICAvLyBGb3Igc3luY2hyb25v
dXMsIGRvZXMgbm90IHVzZSBDdXJsUmVxdWVzdFNjaGVkdWxlci4gQ3VybCBwcm9jZXNzZXMgcnVu
cyBvbiBtYWluIHRocmVhZC4KICAgICAgICAgLy8gY3VybF9lYXN5X3BlcmZvcm0gYmxvY2tzIHVu
dGlsIHRoZSB0cmFuc2ZlciBpcyBmaW5pc2hlZC4KICAgICAgICAgcmV0YWluKCk7CiAgICAgICAg
IGlmICh1cmwuaXNMb2NhbEZpbGUoKSkKQEAgLTk1LDcgKzk2LDcgQEAgdm9pZCBDdXJsUmVxdWVz
dDo6c3RhcnRXaXRoSm9iTWFuYWdlcigpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsK
IAotICAgIEN1cmxKb2JNYW5hZ2VyOjpzaW5nbGV0b24oKS5hZGQodGhpcyk7CisgICAgQ3VybFJl
cXVlc3RTY2hlZHVsZXI6OnNpbmdsZXRvbigpLmFkZCh0aGlzKTsKIH0KIAogdm9pZCBDdXJsUmVx
dWVzdDo6Y2FuY2VsKCkKQEAgLTEwOCw3ICsxMDksNyBAQCB2b2lkIEN1cmxSZXF1ZXN0OjpjYW5j
ZWwoKQogICAgIG1fY2FuY2VsbGVkID0gdHJ1ZTsKIAogICAgIGlmICghbV9pc1N5bmNSZXF1ZXN0
KQotICAgICAgICBDdXJsSm9iTWFuYWdlcjo6c2luZ2xldG9uKCkuY2FuY2VsKHRoaXMpOworICAg
ICAgICBDdXJsUmVxdWVzdFNjaGVkdWxlcjo6c2luZ2xldG9uKCkuY2FuY2VsKHRoaXMpOwogCiAg
ICAgc2V0UmVxdWVzdFBhdXNlZChmYWxzZSk7CiAgICAgc2V0Q2FsbGJhY2tQYXVzZWQoZmFsc2Up
OwpAQCAtMTI5LDE1ICsxMzAsMTUgQEAgdm9pZCBDdXJsUmVxdWVzdDo6cmVzdW1lKCkKIH0KIAog
LyogYHRoaXNgIGlzIHByb3RlY3RlZCBpbnNpZGUgdGhpcyBtZXRob2QuICovCi12b2lkIEN1cmxS
ZXF1ZXN0OjpjYWxsRGVsZWdhdGUoV1RGOjpGdW5jdGlvbjx2b2lkKEN1cmxSZXF1ZXN0RGVsZWdh
dGUqKT4gdGFzaykKK3ZvaWQgQ3VybFJlcXVlc3Q6OmNhbGxDbGllbnQoV1RGOjpGdW5jdGlvbjx2
b2lkKEN1cmxSZXF1ZXN0Q2xpZW50Kik+IHRhc2spCiB7CiAgICAgaWYgKGlzTWFpblRocmVhZCgp
KSB7Ci0gICAgICAgIGlmIChDdXJsUmVxdWVzdERlbGVnYXRlKiBkZWxlZ2F0ZSA9IG1fZGVsZWdh
dGUpCi0gICAgICAgICAgICB0YXNrKGRlbGVnYXRlKTsKKyAgICAgICAgaWYgKEN1cmxSZXF1ZXN0
Q2xpZW50KiBjbGllbnQgPSBtX2NsaWVudCkKKyAgICAgICAgICAgIHRhc2soY2xpZW50KTsKICAg
ICB9IGVsc2UgewogICAgICAgICBjYWxsT25NYWluVGhyZWFkKFtwcm90ZWN0ZWRUaGlzID0gbWFr
ZVJlZigqdGhpcyksIHRhc2sgPSBXVEZNb3ZlKHRhc2spXSgpIG11dGFibGUgewotICAgICAgICAg
ICAgaWYgKEN1cmxSZXF1ZXN0RGVsZWdhdGUqIGRlbGVnYXRlID0gcHJvdGVjdGVkVGhpcy0+bV9k
ZWxlZ2F0ZSkKLSAgICAgICAgICAgICAgICB0YXNrKGRlbGVnYXRlKTsKKyAgICAgICAgICAgIGlm
IChDdXJsUmVxdWVzdENsaWVudCogY2xpZW50ID0gcHJvdGVjdGVkVGhpcy0+bV9jbGllbnQpCisg
ICAgICAgICAgICAgICAgdGFzayhjbGllbnQpOwogICAgICAgICB9KTsKICAgICB9CiB9CkBAIC0z
MjgsOSArMzI5LDkgQEAgc2l6ZV90IEN1cmxSZXF1ZXN0OjpkaWRSZWNlaXZlRGF0YShSZWY8U2hh
cmVkQnVmZmVyPiYmIGJ1ZmZlcikKICAgICB3cml0ZURhdGFUb0Rvd25sb2FkRmlsZUlmRW5hYmxl
ZChidWZmZXIpOwogCiAgICAgaWYgKHJlY2VpdmVCeXRlcykgewotICAgICAgICBjYWxsRGVsZWdh
dGUoW3RoaXMsIGJ1ZmZlciA9IFdURk1vdmUoYnVmZmVyKV0oQ3VybFJlcXVlc3REZWxlZ2F0ZSog
ZGVsZWdhdGUpIG11dGFibGUgewotICAgICAgICAgICAgaWYgKGRlbGVnYXRlKQotICAgICAgICAg
ICAgICAgIGRlbGVnYXRlLT5jdXJsRGlkUmVjZWl2ZUJ1ZmZlcihXVEZNb3ZlKGJ1ZmZlcikpOwor
ICAgICAgICBjYWxsQ2xpZW50KFt0aGlzLCBidWZmZXIgPSBXVEZNb3ZlKGJ1ZmZlcildKEN1cmxS
ZXF1ZXN0Q2xpZW50KiBjbGllbnQpIG11dGFibGUgeworICAgICAgICAgICAgaWYgKGNsaWVudCkK
KyAgICAgICAgICAgICAgICBjbGllbnQtPmN1cmxEaWRSZWNlaXZlQnVmZmVyKFdURk1vdmUoYnVm
ZmVyKSk7CiAgICAgICAgIH0pOwogICAgIH0KIApAQCAtMzU2LDkgKzM1Nyw5IEBAIHZvaWQgQ3Vy
bFJlcXVlc3Q6OmRpZENvbXBsZXRlVHJhbnNmZXIoQ1VSTGNvZGUgcmVzdWx0KQogICAgICAgICAg
ICAgICAgIG1fbmV0d29ya0xvYWRNZXRyaWNzID0gKm1ldHJpY3M7CiAKICAgICAgICAgICAgIGZp
bmFsaXplVHJhbnNmZXIoKTsKLSAgICAgICAgICAgIGNhbGxEZWxlZ2F0ZShbdGhpc10oQ3VybFJl
cXVlc3REZWxlZ2F0ZSogZGVsZWdhdGUpIHsKLSAgICAgICAgICAgICAgICBpZiAoZGVsZWdhdGUp
Ci0gICAgICAgICAgICAgICAgICAgIGRlbGVnYXRlLT5jdXJsRGlkQ29tcGxldGUoKTsKKyAgICAg
ICAgICAgIGNhbGxDbGllbnQoW3RoaXNdKEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQpIHsKKyAg
ICAgICAgICAgICAgICBpZiAoY2xpZW50KQorICAgICAgICAgICAgICAgICAgICBjbGllbnQtPmN1
cmxEaWRDb21wbGV0ZSgpOwogICAgICAgICAgICAgfSk7CiAgICAgICAgIH0KICAgICB9IGVsc2Ug
ewpAQCAtMzY3LDkgKzM2OCw5IEBAIHZvaWQgQ3VybFJlcXVlc3Q6OmRpZENvbXBsZXRlVHJhbnNm
ZXIoQ1VSTGNvZGUgcmVzdWx0KQogICAgICAgICAgICAgcmVzb3VyY2VFcnJvci5zZXRTc2xFcnJv
cnMobV9zc2xWZXJpZmllci5zc2xFcnJvcnMoKSk7CiAKICAgICAgICAgZmluYWxpemVUcmFuc2Zl
cigpOwotICAgICAgICBjYWxsRGVsZWdhdGUoW3RoaXMsIGVycm9yID0gcmVzb3VyY2VFcnJvci5p
c29sYXRlZENvcHkoKV0oQ3VybFJlcXVlc3REZWxlZ2F0ZSogZGVsZWdhdGUpIHsKLSAgICAgICAg
ICAgIGlmIChkZWxlZ2F0ZSkKLSAgICAgICAgICAgICAgICBkZWxlZ2F0ZS0+Y3VybERpZEZhaWxX
aXRoRXJyb3IoZXJyb3IpOworICAgICAgICBjYWxsQ2xpZW50KFt0aGlzLCBlcnJvciA9IHJlc291
cmNlRXJyb3IuaXNvbGF0ZWRDb3B5KCldKEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQpIHsKKyAg
ICAgICAgICAgIGlmIChjbGllbnQpCisgICAgICAgICAgICAgICAgY2xpZW50LT5jdXJsRGlkRmFp
bFdpdGhFcnJvcihlcnJvcik7CiAgICAgICAgIH0pOwogICAgIH0KIH0KQEAgLTQ5NSw3ICs0OTYs
NyBAQCB2b2lkIEN1cmxSZXF1ZXN0OjppbnZva2VEaWRSZWNlaXZlUmVzcG9uc2VGb3JGaWxlKFVS
TCYgdXJsKQogCiAgICAgaWYgKCFtX2lzU3luY1JlcXVlc3QpIHsKICAgICAgICAgLy8gRGlkUmVj
ZWl2ZVJlc3BvbnNlIG11c3Qgbm90IGJlIGNhbGxlZCBpbW1lZGlhdGVseQotICAgICAgICBDdXJs
Sm9iTWFuYWdlcjo6c2luZ2xldG9uKCkuY2FsbE9uSm9iVGhyZWFkKFtwcm90ZWN0ZWRUaGlzID0g
bWFrZVJlZigqdGhpcyldKCkgeworICAgICAgICBDdXJsUmVxdWVzdFNjaGVkdWxlcjo6c2luZ2xl
dG9uKCkuY2FsbE9uV29ya2VyVGhyZWFkKFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyld
KCkgewogICAgICAgICAgICAgcHJvdGVjdGVkVGhpcy0+aW52b2tlRGlkUmVjZWl2ZVJlc3BvbnNl
KEFjdGlvbjo6U3RhcnRUcmFuc2Zlcik7CiAgICAgICAgIH0pOwogICAgIH0gZWxzZSB7CkBAIC01
MTEsOSArNTEyLDkgQEAgdm9pZCBDdXJsUmVxdWVzdDo6aW52b2tlRGlkUmVjZWl2ZVJlc3BvbnNl
KEFjdGlvbiBiZWhhdmlvckFmdGVySW52b2tlKQogICAgIG1fZGlkTm90aWZ5UmVzcG9uc2UgPSB0
cnVlOwogICAgIG1fYWN0aW9uQWZ0ZXJJbnZva2UgPSBiZWhhdmlvckFmdGVySW52b2tlOwogCi0g
ICAgY2FsbERlbGVnYXRlKFt0aGlzLCByZXNwb25zZSA9IG1fcmVzcG9uc2UuaXNvbGF0ZWRDb3B5
KCldKEN1cmxSZXF1ZXN0RGVsZWdhdGUqIGRlbGVnYXRlKSB7Ci0gICAgICAgIGlmIChkZWxlZ2F0
ZSkKLSAgICAgICAgICAgIGRlbGVnYXRlLT5jdXJsRGlkUmVjZWl2ZVJlc3BvbnNlKHJlc3BvbnNl
KTsKKyAgICBjYWxsQ2xpZW50KFt0aGlzLCByZXNwb25zZSA9IG1fcmVzcG9uc2UuaXNvbGF0ZWRD
b3B5KCldKEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQpIHsKKyAgICAgICAgaWYgKGNsaWVudCkK
KyAgICAgICAgICAgIGNsaWVudC0+Y3VybERpZFJlY2VpdmVSZXNwb25zZShyZXNwb25zZSk7CiAg
ICAgfSk7CiB9CiAKQEAgLTUzNyw3ICs1MzgsNyBAQCB2b2lkIEN1cmxSZXF1ZXN0Ojpjb21wbGV0
ZURpZFJlY2VpdmVSZXNwb25zZSgpCiAgICAgfSBlbHNlIGlmIChtX2FjdGlvbkFmdGVySW52b2tl
ID09IEFjdGlvbjo6RmluaXNoVHJhbnNmZXIpIHsKICAgICAgICAgLy8gS2VlcCB0aGUgY2FsbGlu
ZyB0aHJlYWQgb2YgZGlkQ29tcGxldGVUcmFuc2ZlcigpCiAgICAgICAgIGlmICghbV9pc1N5bmNS
ZXF1ZXN0KSB7Ci0gICAgICAgICAgICBDdXJsSm9iTWFuYWdlcjo6c2luZ2xldG9uKCkuY2FsbE9u
Sm9iVGhyZWFkKFtwcm90ZWN0ZWRUaGlzID0gbWFrZVJlZigqdGhpcyksIGZpbmlzaGVkUmVzdWx0
Q29kZSA9IG1fZmluaXNoZWRSZXN1bHRDb2RlXSgpIHsKKyAgICAgICAgICAgIEN1cmxSZXF1ZXN0
U2NoZWR1bGVyOjpzaW5nbGV0b24oKS5jYWxsT25Xb3JrZXJUaHJlYWQoW3Byb3RlY3RlZFRoaXMg
PSBtYWtlUmVmKCp0aGlzKSwgZmluaXNoZWRSZXN1bHRDb2RlID0gbV9maW5pc2hlZFJlc3VsdENv
ZGVdKCkgewogICAgICAgICAgICAgICAgIHByb3RlY3RlZFRoaXMtPmRpZENvbXBsZXRlVHJhbnNm
ZXIoZmluaXNoZWRSZXN1bHRDb2RlKTsKICAgICAgICAgICAgIH0pOwogICAgICAgICB9IGVsc2UK
QEAgLTU3OSw3ICs1ODAsNyBAQCB2b2lkIEN1cmxSZXF1ZXN0OjpwYXVzZWRTdGF0dXNDaGFuZ2Vk
KCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaWYgKCFtX2lzU3luY1JlcXVlc3QgJiYgaXNNYWlu
VGhyZWFkKCkpIHsKLSAgICAgICAgQ3VybEpvYk1hbmFnZXI6OnNpbmdsZXRvbigpLmNhbGxPbkpv
YlRocmVhZChbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwYXVzZWQgPSBpc1BhdXNl
ZCgpXSgpIHsKKyAgICAgICAgQ3VybFJlcXVlc3RTY2hlZHVsZXI6OnNpbmdsZXRvbigpLmNhbGxP
bldvcmtlclRocmVhZChbcHJvdGVjdGVkVGhpcyA9IG1ha2VSZWYoKnRoaXMpLCBwYXVzZWQgPSBp
c1BhdXNlZCgpXSgpIHsKICAgICAgICAgICAgIGlmIChwcm90ZWN0ZWRUaGlzLT5tX2NhbmNlbGxl
ZCkKICAgICAgICAgICAgICAgICByZXR1cm47CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0LmgKaW5kZXggMzE5MTNmZTU1MDkuLjAzMDJl
NDg4NmQ2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlcXVlc3QuaApAQCAtMjUsNyArMjUsNyBAQAogCiAjcHJhZ21hIG9uY2UKIAotI2luY2x1
ZGUgIkN1cmxKb2JNYW5hZ2VyLmgiCisjaW5jbHVkZSAiQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGll
bnQuaCIKICNpbmNsdWRlICJDdXJsUmVzcG9uc2UuaCIKICNpbmNsdWRlICJDdXJsU1NMVmVyaWZp
ZXIuaCIKICNpbmNsdWRlICJGaWxlU3lzdGVtLmgiCkBAIC0zNiwyMiArMzYsMjIgQEAKIAogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCi1jbGFzcyBDdXJsUmVxdWVzdERlbGVnYXRlOworY2xhc3MgQ3Vy
bFJlcXVlc3RDbGllbnQ7CiBjbGFzcyBSZXNvdXJjZUVycm9yOwogY2xhc3MgU2hhcmVkQnVmZmVy
OwogCi1jbGFzcyBDdXJsUmVxdWVzdCA6IHB1YmxpYyBUaHJlYWRTYWZlUmVmQ291bnRlZDxDdXJs
UmVxdWVzdD4sIHB1YmxpYyBDdXJsSm9iQ2xpZW50IHsKK2NsYXNzIEN1cmxSZXF1ZXN0IDogcHVi
bGljIFRocmVhZFNhZmVSZWZDb3VudGVkPEN1cmxSZXF1ZXN0PiwgcHVibGljIEN1cmxSZXF1ZXN0
U2NoZWR1bGVyQ2xpZW50IHsKICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDdXJsUmVxdWVzdCk7
CiAKIHB1YmxpYzoKLSAgICBzdGF0aWMgUmVmPEN1cmxSZXF1ZXN0PiBjcmVhdGUoY29uc3QgUmVz
b3VyY2VSZXF1ZXN0JiByZXF1ZXN0LCBDdXJsUmVxdWVzdERlbGVnYXRlKiBkZWxlZ2F0ZSwgYm9v
bCBzaG91bGRTdXNwZW5kID0gZmFsc2UpCisgICAgc3RhdGljIFJlZjxDdXJsUmVxdWVzdD4gY3Jl
YXRlKGNvbnN0IFJlc291cmNlUmVxdWVzdCYgcmVxdWVzdCwgQ3VybFJlcXVlc3RDbGllbnQqIGNs
aWVudCwgYm9vbCBzaG91bGRTdXNwZW5kID0gZmFsc2UpCiAgICAgewotICAgICAgICByZXR1cm4g
YWRvcHRSZWYoKm5ldyBDdXJsUmVxdWVzdChyZXF1ZXN0LCBkZWxlZ2F0ZSwgc2hvdWxkU3VzcGVu
ZCkpOworICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBDdXJsUmVxdWVzdChyZXF1ZXN0LCBj
bGllbnQsIHNob3VsZFN1c3BlbmQpKTsKICAgICB9CiAKICAgICB2aXJ0dWFsIH5DdXJsUmVxdWVz
dCgpID0gZGVmYXVsdDsKIAotICAgIHZvaWQgc2V0RGVsZWdhdGUoQ3VybFJlcXVlc3REZWxlZ2F0
ZSogZGVsZWdhdGUpIHsgbV9kZWxlZ2F0ZSA9IGRlbGVnYXRlOyAgfQorICAgIHZvaWQgc2V0Q2xp
ZW50KEN1cmxSZXF1ZXN0Q2xpZW50KiBjbGllbnQpIHsgbV9jbGllbnQgPSBjbGllbnQ7ICB9CiAg
ICAgdm9pZCBzZXRVc2VyUGFzcyhjb25zdCBTdHJpbmcmLCBjb25zdCBTdHJpbmcmKTsKIAogICAg
IHZvaWQgc3RhcnQoYm9vbCBpc1N5bmNSZXF1ZXN0ID0gZmFsc2UpOwpAQCAtNzgsNyArNzgsNyBA
QCBwcml2YXRlOgogICAgICAgICBGaW5pc2hUcmFuc2ZlcgogICAgIH07CiAKLSAgICBDdXJsUmVx
dWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBDdXJsUmVxdWVzdERlbGVnYXRlKiwgYm9vbCBz
aG91bGRTdXNwZW5kKTsKKyAgICBDdXJsUmVxdWVzdChjb25zdCBSZXNvdXJjZVJlcXVlc3QmLCBD
dXJsUmVxdWVzdENsaWVudCosIGJvb2wgc2hvdWxkU3VzcGVuZCk7CiAKICAgICB2b2lkIHJldGFp
bigpIG92ZXJyaWRlIHsgcmVmKCk7IH0KICAgICB2b2lkIHJlbGVhc2UoKSBvdmVycmlkZSB7IGRl
cmVmKCk7IH0KQEAgLTg2LDcgKzg2LDcgQEAgcHJpdmF0ZToKIAogICAgIHZvaWQgc3RhcnRXaXRo
Sm9iTWFuYWdlcigpOwogCi0gICAgdm9pZCBjYWxsRGVsZWdhdGUoV1RGOjpGdW5jdGlvbjx2b2lk
KEN1cmxSZXF1ZXN0RGVsZWdhdGUqKT4pOworICAgIHZvaWQgY2FsbENsaWVudChXVEY6OkZ1bmN0
aW9uPHZvaWQoQ3VybFJlcXVlc3RDbGllbnQqKT4pOwogCiAgICAgLy8gVHJhbnNmZXIgcHJvY2Vz
c2luZyBvZiBSZXF1ZXN0IGJvZHksIFJlc3BvbnNlIGhlYWRlci9ib2R5CiAgICAgLy8gQ2FsbGVk
IGJ5IHdvcmtlciB0aHJlYWQgaW4gY2FzZSBvZiBhc3luYywgbWFpbiB0aHJlYWQgaW4gY2FzZSBv
ZiBzeW5jLgpAQCAtMTI1LDcgKzEyNSw3IEBAIHByaXZhdGU6CiAgICAgc3RhdGljIHNpemVfdCBk
aWRSZWNlaXZlRGF0YUNhbGxiYWNrKGNoYXIqLCBzaXplX3QsIHNpemVfdCwgdm9pZCopOwogCiAK
LSAgICBzdGQ6OmF0b21pYzxDdXJsUmVxdWVzdERlbGVnYXRlKj4gbV9kZWxlZ2F0ZSB7IH07Cisg
ICAgc3RkOjphdG9taWM8Q3VybFJlcXVlc3RDbGllbnQqPiBtX2NsaWVudCB7IH07CiAgICAgYm9v
bCBtX2lzU3luY1JlcXVlc3QgeyBmYWxzZSB9OwogICAgIGJvb2wgbV9jYW5jZWxsZWQgeyBmYWxz
ZSB9OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwv
Q3VybFJlcXVlc3REZWxlZ2F0ZS5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
dXJsL0N1cmxSZXF1ZXN0Q2xpZW50LmgKc2ltaWxhcml0eSBpbmRleCA5OCUKcmVuYW1lIGZyb20g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0RGVsZWdhdGUu
aApyZW5hbWUgdG8gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1
ZXN0Q2xpZW50LmgKaW5kZXggZjdmNWJjYTkyZWIuLjZkNzYzMmI0Y2MwIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3REZWxlZ2F0ZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdENs
aWVudC5oCkBAIC0zMyw3ICszMyw3IEBAIGNsYXNzIEN1cmxSZXNwb25zZTsKIGNsYXNzIFJlc291
cmNlRXJyb3I7CiBjbGFzcyBTaGFyZWRCdWZmZXI7CiAKLWNsYXNzIEN1cmxSZXF1ZXN0RGVsZWdh
dGUgeworY2xhc3MgQ3VybFJlcXVlc3RDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgdm9p
ZCBjdXJsRGlkUmVjZWl2ZVJlc3BvbnNlKGNvbnN0IEN1cmxSZXNwb25zZSYpID0gMDsKICAgICB2
aXJ0dWFsIHZvaWQgY3VybERpZFJlY2VpdmVCdWZmZXIoUmVmPFNoYXJlZEJ1ZmZlcj4mJikgPSAw
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxK
b2JNYW5hZ2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJs
UmVxdWVzdFNjaGVkdWxlci5jcHAKc2ltaWxhcml0eSBpbmRleCA4MiUKcmVuYW1lIGZyb20gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxKb2JNYW5hZ2VyLmNwcApyZW5h
bWUgdG8gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0U2No
ZWR1bGVyLmNwcAppbmRleCA3NWM2ZDExODc0Ny4uOGU4ODQ5ZWQ5MTUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsSm9iTWFuYWdlci5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0U2NoZWR1
bGVyLmNwcApAQCAtMjYsMTAgKzI2LDExIEBACiAgKi8KIAogI2luY2x1ZGUgImNvbmZpZy5oIgot
I2luY2x1ZGUgIkN1cmxKb2JNYW5hZ2VyLmgiCisjaW5jbHVkZSAiQ3VybFJlcXVlc3RTY2hlZHVs
ZXIuaCIKIAogI2lmIFVTRShDVVJMKQogCisjaW5jbHVkZSAiQ3VybFJlcXVlc3RTY2hlZHVsZXJD
bGllbnQuaCIKICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpAQCAtNDEsNyArNDIsNyBAQCBjbGFzcyBDdXJsSm9iTGlzdCA6IHB1YmxpYyBDdXJs
TXVsdGlIYW5kbGUgewogcHVibGljOgogICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJu
IG1fYWN0aXZlSm9icy5pc0VtcHR5KCk7IH0KIAotICAgIHZvaWQgc3RhcnRKb2JzKEhhc2hTZXQ8
Q3VybEpvYkNsaWVudCo+JiYgam9icykKKyAgICB2b2lkIHN0YXJ0Sm9icyhIYXNoU2V0PEN1cmxS
ZXF1ZXN0U2NoZWR1bGVyQ2xpZW50Kj4mJiBqb2JzKQogICAgIHsKICAgICAgICAgYXV0byBsb2Nh
bEpvYnMgPSBXVEZNb3ZlKGpvYnMpOwogICAgICAgICBmb3IgKGF1dG8mIGNsaWVudCA6IGxvY2Fs
Sm9icykgewpAQCAtNTQsNyArNTUsNyBAQCBwdWJsaWM6CiAgICAgICAgIH0KICAgICB9CiAKLSAg
ICB2b2lkIGZpbmlzaEpvYnMoSGFzaE1hcDxDVVJMKiwgQ1VSTGNvZGU+JiYgdGlja2V0cywgV1RG
OjpGdW5jdGlvbjx2b2lkKEN1cmxKb2JDbGllbnQqLCBDVVJMY29kZSk+IGNvbXBsZXRpb25IYW5k
bGVyKQorICAgIHZvaWQgZmluaXNoSm9icyhIYXNoTWFwPENVUkwqLCBDVVJMY29kZT4mJiB0aWNr
ZXRzLCBXVEY6OkZ1bmN0aW9uPHZvaWQoQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQqLCBDVVJM
Y29kZSk+IGNvbXBsZXRpb25IYW5kbGVyKQogICAgIHsKICAgICAgICAgYXV0byBsb2NhbFRpY2tl
dHMgPSBXVEZNb3ZlKHRpY2tldHMpOwogICAgICAgICBmb3IgKGF1dG8mIHRpY2tldCA6IGxvY2Fs
VGlja2V0cykgewpAQCAtNjMsNyArNjQsNyBAQCBwdWJsaWM6CiAKICAgICAgICAgICAgIENVUkwq
IGhhbmRsZSA9IHRpY2tldC5rZXk7CiAgICAgICAgICAgICBDVVJMY29kZSByZXN1bHQgPSB0aWNr
ZXQudmFsdWU7Ci0gICAgICAgICAgICBDdXJsSm9iQ2xpZW50KiBjbGllbnQgPSBtX2FjdGl2ZUpv
YnMuaW5saW5lR2V0KGhhbmRsZSk7CisgICAgICAgICAgICBDdXJsUmVxdWVzdFNjaGVkdWxlckNs
aWVudCogY2xpZW50ID0gbV9hY3RpdmVKb2JzLmlubGluZUdldChoYW5kbGUpOwogCiAgICAgICAg
ICAgICByZW1vdmVIYW5kbGUoaGFuZGxlKTsKICAgICAgICAgICAgIG1fYWN0aXZlSm9icy5yZW1v
dmUoaGFuZGxlKTsKQEAgLTc2LDE2ICs3NywxNiBAQCBwdWJsaWM6CiAgICAgfQogCiBwcml2YXRl
OgotICAgIEhhc2hNYXA8Q1VSTCosIEN1cmxKb2JDbGllbnQqPiBtX2FjdGl2ZUpvYnM7CisgICAg
SGFzaE1hcDxDVVJMKiwgQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQqPiBtX2FjdGl2ZUpvYnM7
CiB9OwogCi1DdXJsSm9iTWFuYWdlciYgQ3VybEpvYk1hbmFnZXI6OnNpbmdsZXRvbigpCitDdXJs
UmVxdWVzdFNjaGVkdWxlciYgQ3VybFJlcXVlc3RTY2hlZHVsZXI6OnNpbmdsZXRvbigpCiB7Ci0g
ICAgc3RhdGljIE5ldmVyRGVzdHJveWVkPEN1cmxKb2JNYW5hZ2VyPiBzaGFyZWRJbnN0YW5jZTsK
KyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8Q3VybFJlcXVlc3RTY2hlZHVsZXI+IHNoYXJlZElu
c3RhbmNlOwogICAgIHJldHVybiBzaGFyZWRJbnN0YW5jZTsKIH0KIAotYm9vbCBDdXJsSm9iTWFu
YWdlcjo6YWRkKEN1cmxKb2JDbGllbnQqIGNsaWVudCkKK2Jvb2wgQ3VybFJlcXVlc3RTY2hlZHVs
ZXI6OmFkZChDdXJsUmVxdWVzdFNjaGVkdWxlckNsaWVudCogY2xpZW50KQogewogICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CiAKQEAgLTEwNCw3ICsxMDUsNyBAQCBib29sIEN1cmxKb2JNYW5h
Z2VyOjphZGQoQ3VybEpvYkNsaWVudCogY2xpZW50KQogICAgIHJldHVybiB0cnVlOwogfQogCi12
b2lkIEN1cmxKb2JNYW5hZ2VyOjpjYW5jZWwoQ3VybEpvYkNsaWVudCogY2xpZW50KQordm9pZCBD
dXJsUmVxdWVzdFNjaGVkdWxlcjo6Y2FuY2VsKEN1cmxSZXF1ZXN0U2NoZWR1bGVyQ2xpZW50KiBj
bGllbnQpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIApAQCAtMTE1LDcgKzExNiw3
IEBAIHZvaWQgQ3VybEpvYk1hbmFnZXI6OmNhbmNlbChDdXJsSm9iQ2xpZW50KiBjbGllbnQpCiAg
ICAgbV9jYW5jZWxsZWRKb2JzLmFkZChjbGllbnQtPmhhbmRsZSgpLCBDVVJMRV9PSyk7CiB9CiAK
LXZvaWQgQ3VybEpvYk1hbmFnZXI6OmNhbGxPbkpvYlRocmVhZChXVEY6OkZ1bmN0aW9uPHZvaWQo
KT4mJiB0YXNrKQordm9pZCBDdXJsUmVxdWVzdFNjaGVkdWxlcjo6Y2FsbE9uV29ya2VyVGhyZWFk
KFdURjo6RnVuY3Rpb248dm9pZCgpPiYmIHRhc2spCiB7CiAgICAgewogICAgICAgICBMb2NrSG9s
ZGVyIGxvY2tlcihtX211dGV4KTsKQEAgLTEyNSw3ICsxMjYsNyBAQCB2b2lkIEN1cmxKb2JNYW5h
Z2VyOjpjYWxsT25Kb2JUaHJlYWQoV1RGOjpGdW5jdGlvbjx2b2lkKCk+JiYgdGFzaykKICAgICBz
dGFydFRocmVhZElmTmVlZGVkKCk7CiB9CiAKLXZvaWQgQ3VybEpvYk1hbmFnZXI6OnN0YXJ0VGhy
ZWFkSWZOZWVkZWQoKQordm9pZCBDdXJsUmVxdWVzdFNjaGVkdWxlcjo6c3RhcnRUaHJlYWRJZk5l
ZWRlZCgpCiB7CiAgICAgQVNTRVJUKGlzTWFpblRocmVhZCgpKTsKIApAQCAtMTQyLDcgKzE0Myw3
IEBAIHZvaWQgQ3VybEpvYk1hbmFnZXI6OnN0YXJ0VGhyZWFkSWZOZWVkZWQoKQogICAgIH0KIH0K
IAotdm9pZCBDdXJsSm9iTWFuYWdlcjo6c3RvcFRocmVhZElmTm9Nb3JlSm9iUnVubmluZygpCit2
b2lkIEN1cmxSZXF1ZXN0U2NoZWR1bGVyOjpzdG9wVGhyZWFkSWZOb01vcmVKb2JSdW5uaW5nKCkK
IHsKICAgICBBU1NFUlQoIWlzTWFpblRocmVhZCgpKTsKIApAQCAtMTUyLDcgKzE1Myw3IEBAIHZv
aWQgQ3VybEpvYk1hbmFnZXI6OnN0b3BUaHJlYWRJZk5vTW9yZUpvYlJ1bm5pbmcoKQogICAgICAg
ICBtX3J1blRocmVhZCA9IGZhbHNlOwogfQogCi12b2lkIEN1cmxKb2JNYW5hZ2VyOjpzdG9wVGhy
ZWFkKCkKK3ZvaWQgQ3VybFJlcXVlc3RTY2hlZHVsZXI6OnN0b3BUaHJlYWQoKQogewogICAgIG1f
cnVuVGhyZWFkID0gZmFsc2U7CiAKQEAgLTE2MiwxMSArMTYzLDExIEBAIHZvaWQgQ3VybEpvYk1h
bmFnZXI6OnN0b3BUaHJlYWQoKQogICAgIH0KIH0KIAotdm9pZCBDdXJsSm9iTWFuYWdlcjo6dXBk
YXRlSm9iTGlzdChDdXJsSm9iTGlzdCYgam9icykKK3ZvaWQgQ3VybFJlcXVlc3RTY2hlZHVsZXI6
OnVwZGF0ZUpvYkxpc3QoQ3VybEpvYkxpc3QmIGpvYnMpCiB7CiAgICAgQVNTRVJUKCFpc01haW5U
aHJlYWQoKSk7CiAKLSAgICBIYXNoU2V0PEN1cmxKb2JDbGllbnQqPiBwZW5kaW5nSm9iczsKKyAg
ICBIYXNoU2V0PEN1cmxSZXF1ZXN0U2NoZWR1bGVyQ2xpZW50Kj4gcGVuZGluZ0pvYnM7CiAgICAg
SGFzaE1hcDxDVVJMKiwgQ1VSTGNvZGU+IGNhbmNlbGxlZEpvYnM7CiAgICAgVmVjdG9yPFdURjo6
RnVuY3Rpb248dm9pZCgpPj4gdGFza1F1ZXVlOwogCkBAIC0xODMsMTYgKzE4NCwxNiBAQCB2b2lk
IEN1cmxKb2JNYW5hZ2VyOjp1cGRhdGVKb2JMaXN0KEN1cmxKb2JMaXN0JiBqb2JzKQogCiAgICAg
am9icy5zdGFydEpvYnMoV1RGTW92ZShwZW5kaW5nSm9icykpOwogCi0gICAgam9icy5maW5pc2hK
b2JzKFdURk1vdmUoY2FuY2VsbGVkSm9icyksIFtdKEN1cmxKb2JDbGllbnQqIGNsaWVudCwgQ1VS
TGNvZGUpIHsKKyAgICBqb2JzLmZpbmlzaEpvYnMoV1RGTW92ZShjYW5jZWxsZWRKb2JzKSwgW10o
Q3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQqIGNsaWVudCwgQ1VSTGNvZGUpIHsKICAgICAgICAg
Y2xpZW50LT5kaWRDYW5jZWxUcmFuc2ZlcigpOwogICAgIH0pOwogCi0gICAgam9icy5maW5pc2hK
b2JzKFdURk1vdmUobV9maW5pc2hlZEpvYnMpLCBbXShDdXJsSm9iQ2xpZW50KiBjbGllbnQsIENV
Ukxjb2RlIHJlc3VsdCkgeworICAgIGpvYnMuZmluaXNoSm9icyhXVEZNb3ZlKG1fZmluaXNoZWRK
b2JzKSwgW10oQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQqIGNsaWVudCwgQ1VSTGNvZGUgcmVz
dWx0KSB7CiAgICAgICAgIGNsaWVudC0+ZGlkQ29tcGxldGVUcmFuc2ZlcihyZXN1bHQpOwogICAg
IH0pOwogfQogCi12b2lkIEN1cmxKb2JNYW5hZ2VyOjp3b3JrZXJUaHJlYWQoKQordm9pZCBDdXJs
UmVxdWVzdFNjaGVkdWxlcjo6d29ya2VyVGhyZWFkKCkKIHsKICAgICBBU1NFUlQoIWlzTWFpblRo
cmVhZCgpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9j
dXJsL0N1cmxKb2JNYW5hZ2VyLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1
cmwvQ3VybFJlcXVlc3RTY2hlZHVsZXIuaApzaW1pbGFyaXR5IGluZGV4IDc2JQpyZW5hbWUgZnJv
bSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybEpvYk1hbmFnZXIuaApy
ZW5hbWUgdG8gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29yay9jdXJsL0N1cmxSZXF1ZXN0
U2NoZWR1bGVyLmgKaW5kZXggYjY2ZjIzYjdjYTIuLmY1ZmRlOGMxZDllIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybEpvYk1hbmFnZXIuaAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3RTY2hlZHVs
ZXIuaApAQCAtMzcsMzMgKzM3LDIzIEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGNsYXNzIEN1
cmxKb2JMaXN0OworY2xhc3MgQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQ7CiAKLWNsYXNzIEN1
cmxKb2JDbGllbnQgeworY2xhc3MgQ3VybFJlcXVlc3RTY2hlZHVsZXIgeworICAgIFdURl9NQUtF
X05PTkNPUFlBQkxFKEN1cmxSZXF1ZXN0U2NoZWR1bGVyKTsKKyAgICBmcmllbmQgTmV2ZXJEZXN0
cm95ZWQ8Q3VybFJlcXVlc3RTY2hlZHVsZXI+OwogcHVibGljOgotICAgIHZpcnR1YWwgdm9pZCBy
ZXRhaW4oKSA9IDA7Ci0gICAgdmlydHVhbCB2b2lkIHJlbGVhc2UoKSA9IDA7CisgICAgc3RhdGlj
IEN1cmxSZXF1ZXN0U2NoZWR1bGVyJiBzaW5nbGV0b24oKTsKIAotICAgIHZpcnR1YWwgQ1VSTCog
aGFuZGxlKCkgPSAwOwotICAgIHZpcnR1YWwgQ1VSTCogc2V0dXBUcmFuc2ZlcigpID0gMDsKLSAg
ICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVUcmFuc2ZlcihDVVJMY29kZSkgPSAwOwotICAgIHZp
cnR1YWwgdm9pZCBkaWRDYW5jZWxUcmFuc2ZlcigpID0gMDsKLX07Ci0KLWNsYXNzIEN1cmxKb2JN
YW5hZ2VyIHsKLSAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShDdXJsSm9iTWFuYWdlcik7Ci0gICAg
ZnJpZW5kIE5ldmVyRGVzdHJveWVkPEN1cmxKb2JNYW5hZ2VyPjsKLXB1YmxpYzoKLSAgICBzdGF0
aWMgQ3VybEpvYk1hbmFnZXImIHNpbmdsZXRvbigpOwotCi0gICAgfkN1cmxKb2JNYW5hZ2VyKCkg
eyBzdG9wVGhyZWFkKCk7IH0KKyAgICB+Q3VybFJlcXVlc3RTY2hlZHVsZXIoKSB7IHN0b3BUaHJl
YWQoKTsgfQogCi0gICAgYm9vbCBhZGQoQ3VybEpvYkNsaWVudCopOwotICAgIHZvaWQgY2FuY2Vs
KEN1cmxKb2JDbGllbnQqKTsKKyAgICBib29sIGFkZChDdXJsUmVxdWVzdFNjaGVkdWxlckNsaWVu
dCopOworICAgIHZvaWQgY2FuY2VsKEN1cmxSZXF1ZXN0U2NoZWR1bGVyQ2xpZW50Kik7CiAKLSAg
ICB2b2lkIGNhbGxPbkpvYlRocmVhZChXVEY6OkZ1bmN0aW9uPHZvaWQoKT4mJik7CisgICAgdm9p
ZCBjYWxsT25Xb3JrZXJUaHJlYWQoV1RGOjpGdW5jdGlvbjx2b2lkKCk+JiYpOwogCiBwcml2YXRl
OgotICAgIEN1cmxKb2JNYW5hZ2VyKCkgPSBkZWZhdWx0OworICAgIEN1cmxSZXF1ZXN0U2NoZWR1
bGVyKCkgPSBkZWZhdWx0OwogCiAgICAgdm9pZCBzdGFydFRocmVhZElmTmVlZGVkKCk7CiAgICAg
dm9pZCBzdG9wVGhyZWFkSWZOb01vcmVKb2JSdW5uaW5nKCk7CkBAIC03NCw3ICs2NCw3IEBAIHBy
aXZhdGU6CiAgICAgdm9pZCB3b3JrZXJUaHJlYWQoKTsKIAogICAgIFJlZlB0cjxUaHJlYWQ+IG1f
dGhyZWFkOwotICAgIEhhc2hTZXQ8Q3VybEpvYkNsaWVudCo+IG1fcGVuZGluZ0pvYnM7CisgICAg
SGFzaFNldDxDdXJsUmVxdWVzdFNjaGVkdWxlckNsaWVudCo+IG1fcGVuZGluZ0pvYnM7CiAgICAg
SGFzaE1hcDxDVVJMKiwgQ1VSTGNvZGU+IG1fZmluaXNoZWRKb2JzOwogICAgIEhhc2hNYXA8Q1VS
TCosIENVUkxjb2RlPiBtX2NhbmNlbGxlZEpvYnM7CiAgICAgVmVjdG9yPFdURjo6RnVuY3Rpb248
dm9pZCgpPj4gbV90YXNrUXVldWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9uZXR3b3JrL2N1cmwvQ3VybFJlcXVlc3RTY2hlZHVsZXJDbGllbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVxdWVzdFNjaGVkdWxlckNsaWVudC5oCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi42NjUzNWYxZGYzNAotLS0gL2Rl
di9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9DdXJsUmVx
dWVzdFNjaGVkdWxlckNsaWVudC5oCkBAIC0wLDAgKzEsMzUgQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMTcgU29ueSBJbnRlcmFjdGl2ZSBFbnRlcnRhaW5tZW50IEluYy4KKyAqIENvcHlyaWdo
dCAoQykgMjAxNyBOQVZFUiBDb3JwLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisg
KiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICovCisKKyNwcmFnbWEgb25jZQorCisj
aW5jbHVkZSAiQ3VybENvbnRleHQuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBD
dXJsUmVxdWVzdFNjaGVkdWxlckNsaWVudCB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHJl
dGFpbigpID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgcmVsZWFzZSgpID0gMDsKKworICAgIHZpcnR1
YWwgQ1VSTCogaGFuZGxlKCkgPSAwOworICAgIHZpcnR1YWwgQ1VSTCogc2V0dXBUcmFuc2Zlcigp
ID0gMDsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVUcmFuc2ZlcihDVVJMY29kZSkgPSAw
OworICAgIHZpcnR1YWwgdm9pZCBkaWRDYW5jZWxUcmFuc2ZlcigpID0gMDsKKworcHJvdGVjdGVk
OgorICAgIH5DdXJsUmVxdWVzdFNjaGVkdWxlckNsaWVudCgpIHsgfQorfTsKKworfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZS5jcHAKaW5kZXgg
OGI4NTc3MzhmNDIuLmNjN2E4MzFhMmFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsRGVsZWdhdGUuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmxEZWxl
Z2F0ZS5jcHAKQEAgLTYxLDcgKzYxLDcgQEAgUmVzb3VyY2VIYW5kbGVDdXJsRGVsZWdhdGU6OlJl
c291cmNlSGFuZGxlQ3VybERlbGVnYXRlKFJlc291cmNlSGFuZGxlKiBoYW5kbGUpCiBSZXNvdXJj
ZUhhbmRsZUN1cmxEZWxlZ2F0ZTo6flJlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlKCkKIHsKICAg
ICBpZiAobV9jdXJsUmVxdWVzdCkKLSAgICAgICAgbV9jdXJsUmVxdWVzdC0+c2V0RGVsZWdhdGUo
bnVsbHB0cik7CisgICAgICAgIG1fY3VybFJlcXVlc3QtPnNldENsaWVudChudWxscHRyKTsKIH0K
IAogYm9vbCBSZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZTo6aGFzSGFuZGxlKCkgY29uc3QKQEAg
LTEyNCw3ICsxMjQsNyBAQCB2b2lkIFJlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlOjpzZXRBdXRo
ZW50aWNhdGlvbihjb25zdCBTdHJpbmcmIHVzZXIsIGNvbnN0IFN0cgogCiAgICAgYm9vbCBpc1N5
bmNSZXF1ZXN0ID0gbV9jdXJsUmVxdWVzdC0+aXNTeW5jUmVxdWVzdCgpOwogICAgIG1fY3VybFJl
cXVlc3QtPmNhbmNlbCgpOwotICAgIG1fY3VybFJlcXVlc3QtPnNldERlbGVnYXRlKG51bGxwdHIp
OworICAgIG1fY3VybFJlcXVlc3QtPnNldENsaWVudChudWxscHRyKTsKIAogICAgIG1fY3VybFJl
cXVlc3QgPSBjcmVhdGVDdXJsUmVxdWVzdChtX2N1cnJlbnRSZXF1ZXN0KTsKICAgICBtX2N1cmxS
ZXF1ZXN0LT5zZXRVc2VyUGFzcyh1c2VyLCBwYXNzd29yZCk7CkBAIC0zOTAsNyArMzkwLDcgQEAg
dm9pZCBSZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZTo6Y29udGludWVBZnRlcldpbGxTZW5kUmVx
dWVzdChSZXNvdXJjZVJlcXVlc3QmJgogCiAgICAgYm9vbCBpc1N5bmNSZXF1ZXN0ID0gbV9jdXJs
UmVxdWVzdC0+aXNTeW5jUmVxdWVzdCgpOwogICAgIG1fY3VybFJlcXVlc3QtPmNhbmNlbCgpOwot
ICAgIG1fY3VybFJlcXVlc3QtPnNldERlbGVnYXRlKG51bGxwdHIpOworICAgIG1fY3VybFJlcXVl
c3QtPnNldENsaWVudChudWxscHRyKTsKIAogICAgIG1fY3VybFJlcXVlc3QgPSBjcmVhdGVDdXJs
UmVxdWVzdChtX2N1cnJlbnRSZXF1ZXN0KTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbmV0d29yay9jdXJsL1Jlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlLmggYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9uZXR3b3JrL2N1cmwvUmVzb3VyY2VIYW5kbGVDdXJsRGVsZWdh
dGUuaAppbmRleCAzODQ4Y2YwNDRlZC4uYzY4ZjI1N2Y1Y2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZS5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL25ldHdvcmsvY3VybC9SZXNvdXJjZUhhbmRs
ZUN1cmxEZWxlZ2F0ZS5oCkBAIC0yOSw3ICsyOSw3IEBACiAjaWYgVVNFKENVUkwpCiAKICNpbmNs
dWRlICJDcmVkZW50aWFsLmgiCi0jaW5jbHVkZSAiQ3VybFJlcXVlc3REZWxlZ2F0ZS5oIgorI2lu
Y2x1ZGUgIkN1cmxSZXF1ZXN0Q2xpZW50LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VSZXF1ZXN0Lmgi
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTM5LDcgKzM5LDcgQEAgY2xhc3MgTXVsdGlwYXJ0
SGFuZGxlOwogY2xhc3MgUmVzb3VyY2VIYW5kbGU7CiBjbGFzcyBSZXNvdXJjZVJlc3BvbnNlOwog
Ci1jbGFzcyBSZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZSBmaW5hbCA6IHB1YmxpYyBUaHJlYWRT
YWZlUmVmQ291bnRlZDxSZXNvdXJjZUhhbmRsZUN1cmxEZWxlZ2F0ZT4sIHB1YmxpYyBDdXJsUmVx
dWVzdERlbGVnYXRlIHsKK2NsYXNzIFJlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlIGZpbmFsIDog
cHVibGljIFRocmVhZFNhZmVSZWZDb3VudGVkPFJlc291cmNlSGFuZGxlQ3VybERlbGVnYXRlPiwg
cHVibGljIEN1cmxSZXF1ZXN0Q2xpZW50IHsKIHB1YmxpYzoKICAgICBSZXNvdXJjZUhhbmRsZUN1
cmxEZWxlZ2F0ZShSZXNvdXJjZUhhbmRsZSopOwogICAgIH5SZXNvdXJjZUhhbmRsZUN1cmxEZWxl
Z2F0ZSgpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>