<?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>67018</bug_id>
          
          <creation_ts>2011-08-25 22:36:30 -0700</creation_ts>
          <short_desc>WebSocket: Fix indentation of WebSocket header files</short_desc>
          <delta_ts>2011-08-25 23:48:52 -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>WebCore Misc.</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>67013</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Yuta Kitamura">yutak</reporter>
          <assigned_to name="Yuta Kitamura">yutak</assigned_to>
          <cc>tkent</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>457400</commentid>
    <comment_count>0</comment_count>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-08-25 22:36:30 -0700</bug_when>
    <thetext>Let&apos;s make style checker happy.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>457405</commentid>
    <comment_count>1</comment_count>
      <attachid>105315</attachid>
    <who name="Yuta Kitamura">yutak</who>
    <bug_when>2011-08-25 22:42:07 -0700</bug_when>
    <thetext>Created attachment 105315
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>457406</commentid>
    <comment_count>2</comment_count>
      <attachid>105315</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2011-08-25 22:45:31 -0700</bug_when>
    <thetext>Comment on attachment 105315
Patch

ok</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>457430</commentid>
    <comment_count>3</comment_count>
      <attachid>105315</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-25 23:48:48 -0700</bug_when>
    <thetext>Comment on attachment 105315
Patch

Clearing flags on attachment: 105315

Committed r93856: &lt;http://trac.webkit.org/changeset/93856&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>457431</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-08-25 23:48:52 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105315</attachid>
            <date>2011-08-25 22:42:07 -0700</date>
            <delta_ts>2011-08-25 23:48:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67018-20110826144206.patch</filename>
            <type>text/plain</type>
            <size>27598</size>
            <attacher name="Yuta Kitamura">yutak</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTM4NDYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhNGViYzI0YmNjMDI2MGJm
NDYxNzY2ZDU0ZTA5NDgwODQwODg3NTFlLi43OGI5N2IwZmUyYzJlODM2YjgzMjVmNjBmZTc1OWY1
ZTU1NGNlMzgxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjggQEAKKzIwMTEtMDgtMjUgIFl1dGEg
S2l0YW11cmEgIDx5dXRha0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViU29ja2V0OiBGaXgg
aW5kZW50YXRpb24gb2YgV2ViU29ja2V0IGhlYWRlciBmaWxlcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NjcwMTgKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBObyBuZXcgdGVzdHMuIFN0eWxlIGZpeCBvbmx5
LgorCisgICAgICAgICogd2Vic29ja2V0cy9XZWJTb2NrZXQuaDoKKyAgICAgICAgKFdlYkNvcmU6
OldlYlNvY2tldDo6Y3JlYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OldlYlNvY2tldDo6dG9XZWJT
b2NrZXQpOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0OjpyZWZFdmVudFRhcmdldCk6Cisg
ICAgICAgIChXZWJDb3JlOjpXZWJTb2NrZXQ6OmRlcmVmRXZlbnRUYXJnZXQpOgorICAgICAgICAq
IHdlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oOgorICAgICAgICBSZW1vdmVkIGZvcm1hbCBw
YXJhbWV0ZXIgbmFtZSBvZiByZXN1bWVUaW1lckZpcmVkKCkuCisgICAgICAgIChXZWJDb3JlOjpX
ZWJTb2NrZXRDaGFubmVsOjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hh
bm5lbDo6cmVmVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwpOgorICAgICAgICAoV2ViQ29yZTo6
V2ViU29ja2V0Q2hhbm5lbDo6ZGVyZWZUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbCk6CisgICAg
ICAgIChXZWJDb3JlOjpXZWJTb2NrZXRDaGFubmVsOjppc05vbkNvbnRyb2xPcENvZGUpOgorICAg
ICAgICAoV2ViQ29yZTo6V2ViU29ja2V0Q2hhbm5lbDo6aXNDb250cm9sT3BDb2RlKToKKyAgICAg
ICAgKFdlYkNvcmU6OldlYlNvY2tldENoYW5uZWw6OmlzUmVzZXJ2ZWRPcENvZGUpOgorICAgICAg
ICAqIHdlYnNvY2tldHMvV2ViU29ja2V0SGFuZHNoYWtlLmg6CisgICAgICAgIFJlbW92ZWQgZm9y
bWFsIHBhcmFtZXRlciBuYW1lIG9mIHNldENsaWVudFByb3RvY29sKCkuCisKIDIwMTEtMDgtMjUg
IEp1bGllbiBDaGFmZnJhaXggIDxqY2hhZmZyYWl4QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQ29u
Y2VudHJhdGUgUmVuZGVyTGF5ZXIgcmVwYWludCByZWN0cyB1cGRhdGVzCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldC5oIGIvU291cmNlL1dlYkNvcmUvd2Vi
c29ja2V0cy9XZWJTb2NrZXQuaAppbmRleCAyNzEyNTQxZmE5ZmYyZjNlNzliNDg1YWQ5Mzc3YTQx
ODY1MTJiMmI1Li5mOGViMzNiNGZhNDQ2MTA2M2E1NThiZTViZmRkNWZkMjE0OTNmYzAxIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3dlYnNvY2tldHMvV2ViU29ja2V0LmgKQEAgLTQ2LDg4ICs0Niw4OCBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5l
bDsKLQotICAgIGNsYXNzIFdlYlNvY2tldCA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlNvY2tldD4s
IHB1YmxpYyBFdmVudFRhcmdldCwgcHVibGljIEFjdGl2ZURPTU9iamVjdCwgcHVibGljIFdlYlNv
Y2tldENoYW5uZWxDbGllbnQgewotICAgIHB1YmxpYzoKLSAgICAgICAgc3RhdGljIHZvaWQgc2V0
SXNBdmFpbGFibGUoYm9vbCk7Ci0gICAgICAgIHN0YXRpYyBib29sIGlzQXZhaWxhYmxlKCk7Ci0g
ICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYlNvY2tldD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqIGNvbnRleHQpIHsgcmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJTb2NrZXQoY29udGV4
dCkpOyB9Ci0gICAgICAgIHZpcnR1YWwgfldlYlNvY2tldCgpOwotCi0gICAgICAgIGVudW0gU3Rh
dGUgewotICAgICAgICAgICAgQ09OTkVDVElORyA9IDAsCi0gICAgICAgICAgICBPUEVOID0gMSwK
LSAgICAgICAgICAgIENMT1NJTkcgPSAyLAotICAgICAgICAgICAgQ0xPU0VEID0gMwotICAgICAg
ICB9OwotCi0gICAgICAgIHZvaWQgY29ubmVjdChjb25zdCBTdHJpbmcmIHVybCwgRXhjZXB0aW9u
Q29kZSYpOwotICAgICAgICB2b2lkIGNvbm5lY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0
cmluZyYgcHJvdG9jb2wsIEV4Y2VwdGlvbkNvZGUmKTsKLSAgICAgICAgdm9pZCBjb25uZWN0KGNv
bnN0IFN0cmluZyYgdXJsLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcHJvdG9jb2xzLCBFeGNlcHRp
b25Db2RlJik7Ci0KLSAgICAgICAgYm9vbCBzZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgRXhj
ZXB0aW9uQ29kZSYpOwotCi0gICAgICAgIHZvaWQgY2xvc2UoKTsKLQotICAgICAgICBjb25zdCBL
VVJMJiB1cmwoKSBjb25zdDsKLSAgICAgICAgU3RhdGUgcmVhZHlTdGF0ZSgpIGNvbnN0OwotICAg
ICAgICB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVkQW1vdW50KCkgY29uc3Q7Ci0KLSAgICAgICAgU3Ry
aW5nIHByb3RvY29sKCkgY29uc3Q7Ci0KLSAgICAgICAgU3RyaW5nIGJpbmFyeVR5cGUoKSBjb25z
dDsKLSAgICAgICAgdm9pZCBzZXRCaW5hcnlUeXBlKGNvbnN0IFN0cmluZyYgYmluYXJ5VHlwZSwg
RXhjZXB0aW9uQ29kZSYpOwotCi0gICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVO
RVIob3Blbik7Ci0gICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIobWVzc2Fn
ZSk7Ci0gICAgICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoZXJyb3IpOwotICAg
ICAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RFTkVSKGNsb3NlKTsKLQotICAgICAgICAv
LyBFdmVudFRhcmdldAotICAgICAgICB2aXJ0dWFsIFdlYlNvY2tldCogdG9XZWJTb2NrZXQoKSB7
IHJldHVybiB0aGlzOyB9Ci0KLSAgICAgICAgdmlydHVhbCBTY3JpcHRFeGVjdXRpb25Db250ZXh0
KiBzY3JpcHRFeGVjdXRpb25Db250ZXh0KCkgY29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBj
b250ZXh0RGVzdHJveWVkKCk7Ci0gICAgICAgIHZpcnR1YWwgYm9vbCBjYW5TdXNwZW5kKCkgY29u
c3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBzdXNwZW5kKFJlYXNvbkZvclN1c3BlbnNpb24pOwot
ICAgICAgICB2aXJ0dWFsIHZvaWQgcmVzdW1lKCk7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBzdG9w
KCk7Ci0KLSAgICAgICAgdXNpbmcgUmVmQ291bnRlZDxXZWJTb2NrZXQ+OjpyZWY7Ci0gICAgICAg
IHVzaW5nIFJlZkNvdW50ZWQ8V2ViU29ja2V0Pjo6ZGVyZWY7Ci0KLSAgICAgICAgLy8gV2ViU29j
a2V0Q2hhbm5lbENsaWVudAotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkQ29ubmVjdCgpOwotICAg
ICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZU1lc3NhZ2UoY29uc3QgU3RyaW5nJiBtZXNzYWdl
KTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlRXJyb3IoKTsKLSAgICAg
ICAgdmlydHVhbCB2b2lkIGRpZFN0YXJ0Q2xvc2luZ0hhbmRzaGFrZSgpOwotICAgICAgICB2aXJ0
dWFsIHZvaWQgZGlkQ2xvc2UodW5zaWduZWQgbG9uZyB1bmhhbmRsZWRCdWZmZXJlZEFtb3VudCwg
Q2xvc2luZ0hhbmRzaGFrZUNvbXBsZXRpb25TdGF0dXMsIHVuc2lnbmVkIHNob3J0IGNvZGUsIGNv
bnN0IFN0cmluZyYgcmVhc29uKTsKLQotICAgIHByaXZhdGU6Ci0gICAgICAgIFdlYlNvY2tldChT
Y3JpcHRFeGVjdXRpb25Db250ZXh0Kik7Ci0KLSAgICAgICAgdmlydHVhbCB2b2lkIHJlZkV2ZW50
VGFyZ2V0KCkgeyByZWYoKTsgfQotICAgICAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdl
dCgpIHsgZGVyZWYoKTsgfQotICAgICAgICB2aXJ0dWFsIEV2ZW50VGFyZ2V0RGF0YSogZXZlbnRU
YXJnZXREYXRhKCk7Ci0gICAgICAgIHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBlbnN1cmVFdmVu
dFRhcmdldERhdGEoKTsKLQotICAgICAgICBlbnVtIEJpbmFyeVR5cGUgewotICAgICAgICAgICAg
QmluYXJ5VHlwZUJsb2IsCi0gICAgICAgICAgICBCaW5hcnlUeXBlQXJyYXlCdWZmZXIKLSAgICAg
ICAgfTsKLQotICAgICAgICBSZWZQdHI8VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWw+IG1fY2hh
bm5lbDsKLQotICAgICAgICBTdGF0ZSBtX3N0YXRlOwotICAgICAgICBLVVJMIG1fdXJsOwotICAg
ICAgICBFdmVudFRhcmdldERhdGEgbV9ldmVudFRhcmdldERhdGE7Ci0gICAgICAgIHVuc2lnbmVk
IGxvbmcgbV9idWZmZXJlZEFtb3VudEFmdGVyQ2xvc2U7Ci0gICAgICAgIEJpbmFyeVR5cGUgbV9i
aW5hcnlUeXBlOwotICAgICAgICBib29sIG1fdXNlSGl4aWU3NlByb3RvY29sOwotICAgICAgICBT
dHJpbmcgbV9zdWJwcm90b2NvbDsKK2NsYXNzIFRocmVhZGFibGVXZWJTb2NrZXRDaGFubmVsOwor
CitjbGFzcyBXZWJTb2NrZXQgOiBwdWJsaWMgUmVmQ291bnRlZDxXZWJTb2NrZXQ+LCBwdWJsaWMg
RXZlbnRUYXJnZXQsIHB1YmxpYyBBY3RpdmVET01PYmplY3QsIHB1YmxpYyBXZWJTb2NrZXRDaGFu
bmVsQ2xpZW50IHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgdm9pZCBzZXRJc0F2YWlsYWJsZShib29s
KTsKKyAgICBzdGF0aWMgYm9vbCBpc0F2YWlsYWJsZSgpOworICAgIHN0YXRpYyBQYXNzUmVmUHRy
PFdlYlNvY2tldD4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQpIHsgcmV0
dXJuIGFkb3B0UmVmKG5ldyBXZWJTb2NrZXQoY29udGV4dCkpOyB9CisgICAgdmlydHVhbCB+V2Vi
U29ja2V0KCk7CisKKyAgICBlbnVtIFN0YXRlIHsKKyAgICAgICAgQ09OTkVDVElORyA9IDAsCisg
ICAgICAgIE9QRU4gPSAxLAorICAgICAgICBDTE9TSU5HID0gMiwKKyAgICAgICAgQ0xPU0VEID0g
MwogICAgIH07CiAKKyAgICB2b2lkIGNvbm5lY3QoY29uc3QgU3RyaW5nJiB1cmwsIEV4Y2VwdGlv
bkNvZGUmKTsKKyAgICB2b2lkIGNvbm5lY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgcHJvdG9jb2wsIEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIGNvbm5lY3QoY29uc3QgU3Ry
aW5nJiB1cmwsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwcm90b2NvbHMsIEV4Y2VwdGlvbkNvZGUm
KTsKKworICAgIGJvb2wgc2VuZChjb25zdCBTdHJpbmcmIG1lc3NhZ2UsIEV4Y2VwdGlvbkNvZGUm
KTsKKworICAgIHZvaWQgY2xvc2UoKTsKKworICAgIGNvbnN0IEtVUkwmIHVybCgpIGNvbnN0Owor
ICAgIFN0YXRlIHJlYWR5U3RhdGUoKSBjb25zdDsKKyAgICB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVk
QW1vdW50KCkgY29uc3Q7CisKKyAgICBTdHJpbmcgcHJvdG9jb2woKSBjb25zdDsKKworICAgIFN0
cmluZyBiaW5hcnlUeXBlKCkgY29uc3Q7CisgICAgdm9pZCBzZXRCaW5hcnlUeXBlKGNvbnN0IFN0
cmluZyYgYmluYXJ5VHlwZSwgRXhjZXB0aW9uQ29kZSYpOworCisgICAgREVGSU5FX0FUVFJJQlVU
RV9FVkVOVF9MSVNURU5FUihvcGVuKTsKKyAgICBERUZJTkVfQVRUUklCVVRFX0VWRU5UX0xJU1RF
TkVSKG1lc3NhZ2UpOworICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoZXJyb3Ip
OworICAgIERFRklORV9BVFRSSUJVVEVfRVZFTlRfTElTVEVORVIoY2xvc2UpOworCisgICAgLy8g
RXZlbnRUYXJnZXQKKyAgICB2aXJ0dWFsIFdlYlNvY2tldCogdG9XZWJTb2NrZXQoKSB7IHJldHVy
biB0aGlzOyB9CisKKyAgICB2aXJ0dWFsIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIHNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQoKSBjb25zdDsKKyAgICB2aXJ0dWFsIHZvaWQgY29udGV4dERlc3Ryb3ll
ZCgpOworICAgIHZpcnR1YWwgYm9vbCBjYW5TdXNwZW5kKCkgY29uc3Q7CisgICAgdmlydHVhbCB2
b2lkIHN1c3BlbmQoUmVhc29uRm9yU3VzcGVuc2lvbik7CisgICAgdmlydHVhbCB2b2lkIHJlc3Vt
ZSgpOworICAgIHZpcnR1YWwgdm9pZCBzdG9wKCk7CisKKyAgICB1c2luZyBSZWZDb3VudGVkPFdl
YlNvY2tldD46OnJlZjsKKyAgICB1c2luZyBSZWZDb3VudGVkPFdlYlNvY2tldD46OmRlcmVmOwor
CisgICAgLy8gV2ViU29ja2V0Q2hhbm5lbENsaWVudAorICAgIHZpcnR1YWwgdm9pZCBkaWRDb25u
ZWN0KCk7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlKGNvbnN0IFN0cmluZyYg
bWVzc2FnZSk7CisgICAgdmlydHVhbCB2b2lkIGRpZFJlY2VpdmVNZXNzYWdlRXJyb3IoKTsKKyAg
ICB2aXJ0dWFsIHZvaWQgZGlkU3RhcnRDbG9zaW5nSGFuZHNoYWtlKCk7CisgICAgdmlydHVhbCB2
b2lkIGRpZENsb3NlKHVuc2lnbmVkIGxvbmcgdW5oYW5kbGVkQnVmZmVyZWRBbW91bnQsIENsb3Np
bmdIYW5kc2hha2VDb21wbGV0aW9uU3RhdHVzLCB1bnNpZ25lZCBzaG9ydCBjb2RlLCBjb25zdCBT
dHJpbmcmIHJlYXNvbik7CisKK3ByaXZhdGU6CisgICAgV2ViU29ja2V0KFNjcmlwdEV4ZWN1dGlv
bkNvbnRleHQqKTsKKworICAgIHZpcnR1YWwgdm9pZCByZWZFdmVudFRhcmdldCgpIHsgcmVmKCk7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGVyZWZFdmVudFRhcmdldCgpIHsgZGVyZWYoKTsgfQorICAg
IHZpcnR1YWwgRXZlbnRUYXJnZXREYXRhKiBldmVudFRhcmdldERhdGEoKTsKKyAgICB2aXJ0dWFs
IEV2ZW50VGFyZ2V0RGF0YSogZW5zdXJlRXZlbnRUYXJnZXREYXRhKCk7CisKKyAgICBlbnVtIEJp
bmFyeVR5cGUgeworICAgICAgICBCaW5hcnlUeXBlQmxvYiwKKyAgICAgICAgQmluYXJ5VHlwZUFy
cmF5QnVmZmVyCisgICAgfTsKKworICAgIFJlZlB0cjxUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5l
bD4gbV9jaGFubmVsOworCisgICAgU3RhdGUgbV9zdGF0ZTsKKyAgICBLVVJMIG1fdXJsOworICAg
IEV2ZW50VGFyZ2V0RGF0YSBtX2V2ZW50VGFyZ2V0RGF0YTsKKyAgICB1bnNpZ25lZCBsb25nIG1f
YnVmZmVyZWRBbW91bnRBZnRlckNsb3NlOworICAgIEJpbmFyeVR5cGUgbV9iaW5hcnlUeXBlOwor
ICAgIGJvb2wgbV91c2VIaXhpZTc2UHJvdG9jb2w7CisgICAgU3RyaW5nIG1fc3VicHJvdG9jb2w7
Cit9OworCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCX1NP
Q0tFVFMpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldENo
YW5uZWwuaCBiL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oCmlu
ZGV4IDg1NDU2NGY2ZjM3YzMyYTU2ZmJiOTljNTMxODdiY2VkNzJlNGQyN2YuLmRmNGZmMzI3NDg3
ODdjMjI5NzlhMmE2MDM3NjU3YjAxYjlhMGFjYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3dlYnNvY2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3dlYnNv
Y2tldHMvV2ViU29ja2V0Q2hhbm5lbC5oCkBAIC00NCwxNzkgKzQ0LDE3OSBAQAogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CiAKLSAgICBjbGFzcyBTY3JpcHRFeGVjdXRpb25Db250ZXh0OwotICAgIGNs
YXNzIFNvY2tldFN0cmVhbUhhbmRsZTsKLSAgICBjbGFzcyBTb2NrZXRTdHJlYW1FcnJvcjsKLSAg
ICBjbGFzcyBXZWJTb2NrZXRDaGFubmVsQ2xpZW50OwotCi0gICAgY2xhc3MgV2ViU29ja2V0Q2hh
bm5lbCA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlNvY2tldENoYW5uZWw+LCBwdWJsaWMgU29ja2V0
U3RyZWFtSGFuZGxlQ2xpZW50LCBwdWJsaWMgVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwgewot
ICAgICAgICBXVEZfTUFLRV9GQVNUX0FMTE9DQVRFRDsKLSAgICBwdWJsaWM6Ci0gICAgICAgIHN0
YXRpYyBQYXNzUmVmUHRyPFdlYlNvY2tldENoYW5uZWw+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25D
b250ZXh0KiBjb250ZXh0LCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50KiBjbGllbnQpIHsgcmV0dXJu
IGFkb3B0UmVmKG5ldyBXZWJTb2NrZXRDaGFubmVsKGNvbnRleHQsIGNsaWVudCkpOyB9Ci0gICAg
ICAgIHZpcnR1YWwgfldlYlNvY2tldENoYW5uZWwoKTsKLQotICAgICAgICB2aXJ0dWFsIGJvb2wg
dXNlSGl4aWU3NlByb3RvY29sKCk7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBjb25uZWN0KGNvbnN0
IEtVUkwmLCBjb25zdCBTdHJpbmcmIHByb3RvY29sKTsKLSAgICAgICAgdmlydHVhbCBTdHJpbmcg
c3VicHJvdG9jb2woKTsKLSAgICAgICAgdmlydHVhbCBib29sIHNlbmQoY29uc3QgU3RyaW5nJiBt
ZXNzYWdlKTsKLSAgICAgICAgdmlydHVhbCB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVkQW1vdW50KCkg
Y29uc3Q7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBjbG9zZSgpOyAvLyBTdGFydCBjbG9zaW5nIGhh
bmRzaGFrZS4KLSAgICAgICAgdmlydHVhbCB2b2lkIGZhaWwoY29uc3QgU3RyaW5nJiByZWFzb24p
OwotICAgICAgICB2aXJ0dWFsIHZvaWQgZGlzY29ubmVjdCgpOwotCi0gICAgICAgIHZpcnR1YWwg
dm9pZCBzdXNwZW5kKCk7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCByZXN1bWUoKTsKLQotICAgICAg
ICAvLyBTb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQgZnVuY3Rpb25zLgotICAgICAgICB2aXJ0dWFs
IHZvaWQgZGlkT3BlblNvY2tldFN0cmVhbShTb2NrZXRTdHJlYW1IYW5kbGUqKTsKLSAgICAgICAg
dmlydHVhbCB2b2lkIGRpZENsb3NlU29ja2V0U3RyZWFtKFNvY2tldFN0cmVhbUhhbmRsZSopOwot
ICAgICAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVNvY2tldFN0cmVhbURhdGEoU29ja2V0U3Ry
ZWFtSGFuZGxlKiwgY29uc3QgY2hhciosIGludCk7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRG
YWlsU29ja2V0U3RyZWFtKFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IFNvY2tldFN0cmVhbUVy
cm9yJik7Ci0gICAgICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNlaXZlQXV0aGVudGljYXRpb25DaGFs
bGVuZ2UoU29ja2V0U3RyZWFtSGFuZGxlKiwgY29uc3QgQXV0aGVudGljYXRpb25DaGFsbGVuZ2Um
KTsKLSAgICAgICAgdmlydHVhbCB2b2lkIGRpZENhbmNlbEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7Ci0K
LSAgICAgICAgZW51bSBDbG9zZUV2ZW50Q29kZSB7Ci0gICAgICAgICAgICBDbG9zZUV2ZW50Q29k
ZU5vcm1hbENsb3N1cmUgPSAxMDAwLAotICAgICAgICAgICAgQ2xvc2VFdmVudENvZGVHb2luZ0F3
YXkgPSAxMDAxLAotICAgICAgICAgICAgQ2xvc2VFdmVudENvZGVQcm90b2NvbEVycm9yID0gMTAw
MiwKLSAgICAgICAgICAgIENsb3NlRXZlbnRDb2RlVW5zdXBwb3J0ZWREYXRhID0gMTAwMywKLSAg
ICAgICAgICAgIENsb3NlRXZlbnRDb2RlRnJhbWVUb29MYXJnZSA9IDEwMDQsCi0gICAgICAgICAg
ICBDbG9zZUV2ZW50Q29kZU5vU3RhdHVzUmN2ZCA9IDEwMDUsCi0gICAgICAgICAgICBDbG9zZUV2
ZW50Q29kZUFibm9ybWFsQ2xvc3VyZSA9IDEwMDYsCi0gICAgICAgICAgICBDbG9zZUV2ZW50Q29k
ZUludmFsaWRVVEY4ID0gMTAwNwotICAgICAgICB9OwotCi0gICAgICAgIHVzaW5nIFJlZkNvdW50
ZWQ8V2ViU29ja2V0Q2hhbm5lbD46OnJlZjsKLSAgICAgICAgdXNpbmcgUmVmQ291bnRlZDxXZWJT
b2NrZXRDaGFubmVsPjo6ZGVyZWY7Ci0KLSAgICBwcm90ZWN0ZWQ6Ci0gICAgICAgIHZpcnR1YWwg
dm9pZCByZWZUaHJlYWRhYmxlV2ViU29ja2V0Q2hhbm5lbCgpIHsgcmVmKCk7IH0KLSAgICAgICAg
dmlydHVhbCB2b2lkIGRlcmVmVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwoKSB7IGRlcmVmKCk7
IH0KLQotICAgIHByaXZhdGU6Ci0gICAgICAgIFdlYlNvY2tldENoYW5uZWwoU2NyaXB0RXhlY3V0
aW9uQ29udGV4dCosIFdlYlNvY2tldENoYW5uZWxDbGllbnQqKTsKLQotICAgICAgICBib29sIGFw
cGVuZFRvQnVmZmVyKGNvbnN0IGNoYXIqIGRhdGEsIHNpemVfdCBsZW4pOwotICAgICAgICB2b2lk
IHNraXBCdWZmZXIoc2l6ZV90IGxlbik7Ci0gICAgICAgIGJvb2wgcHJvY2Vzc0J1ZmZlcigpOwot
ICAgICAgICB2b2lkIHJlc3VtZVRpbWVyRmlyZWQoVGltZXI8V2ViU29ja2V0Q2hhbm5lbD4qIHRp
bWVyKTsKLSAgICAgICAgdm9pZCBzdGFydENsb3NpbmdIYW5kc2hha2UoKTsKLSAgICAgICAgdm9p
ZCBjbG9zaW5nVGltZXJGaXJlZChUaW1lcjxXZWJTb2NrZXRDaGFubmVsPiopOwotCi0gICAgICAg
IC8vIEh5YmktMTAgb3Bjb2Rlcy4KLSAgICAgICAgdHlwZWRlZiB1bnNpZ25lZCBpbnQgT3BDb2Rl
OwotICAgICAgICBzdGF0aWMgY29uc3QgT3BDb2RlIE9wQ29kZUNvbnRpbnVhdGlvbjsKLSAgICAg
ICAgc3RhdGljIGNvbnN0IE9wQ29kZSBPcENvZGVUZXh0OwotICAgICAgICBzdGF0aWMgY29uc3Qg
T3BDb2RlIE9wQ29kZUJpbmFyeTsKLSAgICAgICAgc3RhdGljIGNvbnN0IE9wQ29kZSBPcENvZGVD
bG9zZTsKLSAgICAgICAgc3RhdGljIGNvbnN0IE9wQ29kZSBPcENvZGVQaW5nOwotICAgICAgICBz
dGF0aWMgY29uc3QgT3BDb2RlIE9wQ29kZVBvbmc7Ci0KLSAgICAgICAgc3RhdGljIGJvb2wgaXNO
b25Db250cm9sT3BDb2RlKE9wQ29kZSBvcENvZGUpIHsgcmV0dXJuIG9wQ29kZSA9PSBPcENvZGVD
b250aW51YXRpb24gfHwgb3BDb2RlID09IE9wQ29kZVRleHQgfHwgb3BDb2RlID09IE9wQ29kZUJp
bmFyeTsgfQotICAgICAgICBzdGF0aWMgYm9vbCBpc0NvbnRyb2xPcENvZGUoT3BDb2RlIG9wQ29k
ZSkgeyByZXR1cm4gb3BDb2RlID09IE9wQ29kZUNsb3NlIHx8IG9wQ29kZSA9PSBPcENvZGVQaW5n
IHx8IG9wQ29kZSA9PSBPcENvZGVQb25nOyB9Ci0gICAgICAgIHN0YXRpYyBib29sIGlzUmVzZXJ2
ZWRPcENvZGUoT3BDb2RlIG9wQ29kZSkgeyByZXR1cm4gIWlzTm9uQ29udHJvbE9wQ29kZShvcENv
ZGUpICYmICFpc0NvbnRyb2xPcENvZGUob3BDb2RlKTsgfQotCi0gICAgICAgIGVudW0gUGFyc2VG
cmFtZVJlc3VsdCB7Ci0gICAgICAgICAgICBGcmFtZU9LLAotICAgICAgICAgICAgRnJhbWVJbmNv
bXBsZXRlLAotICAgICAgICAgICAgRnJhbWVFcnJvcgotICAgICAgICB9OwotCi0gICAgICAgIHN0
cnVjdCBGcmFtZURhdGEgewotICAgICAgICAgICAgT3BDb2RlIG9wQ29kZTsKLSAgICAgICAgICAg
IGJvb2wgZmluYWw7Ci0gICAgICAgICAgICBib29sIHJlc2VydmVkMTsKLSAgICAgICAgICAgIGJv
b2wgcmVzZXJ2ZWQyOwotICAgICAgICAgICAgYm9vbCByZXNlcnZlZDM7Ci0gICAgICAgICAgICBi
b29sIG1hc2tlZDsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIHBheWxvYWQ7Ci0gICAgICAgICAg
ICBzaXplX3QgcGF5bG9hZExlbmd0aDsKLSAgICAgICAgICAgIGNvbnN0IGNoYXIqIGZyYW1lRW5k
OwotICAgICAgICB9OwotCi0gICAgICAgIFBhcnNlRnJhbWVSZXN1bHQgcGFyc2VGcmFtZShGcmFt
ZURhdGEmKTsgLy8gTWF5IG1vZGlmeSBwYXJ0IG9mIG1fYnVmZmVyIHRvIHVubWFzayB0aGUgZnJh
bWUuCi0KLSAgICAgICAgYm9vbCBwcm9jZXNzRnJhbWUoKTsKLSAgICAgICAgYm9vbCBwcm9jZXNz
RnJhbWVIaXhpZTc2KCk7Ci0KLSAgICAgICAgLy8gSXQgaXMgYWxsb3dlZCB0byBzZW5kIGEgQmxv
YiBhcyBhIGJpbmFyeSBmcmFtZSBpZiBoeWJpLTEwIHByb3RvY29sIGlzIGluIHVzZS4gU2VuZGlu
ZyBhIEJsb2IKLSAgICAgICAgLy8gY2FuIGJlIGRlbGF5ZWQgYmVjYXVzZSBpdCBtdXN0IGJlIHJl
YWQgYXN5bmNocm9ub3VzbHkuIE90aGVyIHR5cGVzIG9mIGRhdGEgKFN0cmluZyBvcgotICAgICAg
ICAvLyBBcnJheUJ1ZmZlcikgbWF5IGFsc28gYmUgYmxvY2tlZCBieSBwcmVjZWRpbmcgc2VuZGlu
ZyByZXF1ZXN0IG9mIGEgQmxvYi4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gVG8gYWRkcmVzcyB0
aGlzIHNpdHVhdGlvbiwgbWVzc2FnZXMgdG8gYmUgc2VudCBuZWVkIHRvIGJlIHN0b3JlZCBpbiBh
IHF1ZXVlLiBXaGVuZXZlciBhIG5ldwotICAgICAgICAvLyBkYXRhIGZyYW1lIGlzIGdvaW5nIHRv
IGJlIHNlbnQsIGl0IGZpcnN0IG11c3QgZ28gdG8gdGhlIHF1ZXVlLiBJdGVtcyBpbiB0aGUgcXVl
dWUgYXJlIHByb2Nlc3NlZAotICAgICAgICAvLyBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHB1dCBp
bnRvIHRoZSBxdWV1ZS4gU2VuZGluZyByZXF1ZXN0IG9mIGEgQmxvYiBibG9ja3MgZnVydGhlciBw
cm9jZXNzaW5nCi0gICAgICAgIC8vIHVudGlsIHRoZSBCbG9iIGlzIGNvbXBsZXRlbHkgcmVhZCBh
bmQgc2VudCB0byB0aGUgc29ja2V0IHN0cmVhbS4KLSAgICAgICAgLy8KLSAgICAgICAgLy8gV2hl
biBoaXhpZS03NiBwcm90b2NvbCBpcyBjaG9zZW4sIHRoZSBxdWV1ZSBpcyBub3QgdXNlZCBhbmQg
bWVzc2FnZXMgYXJlIHNlbnQgZGlyZWN0bHkuCi0gICAgICAgIGVudW0gUXVldWVkRnJhbWVUeXBl
IHsKLSAgICAgICAgICAgIFF1ZXVlZEZyYW1lVHlwZVN0cmluZywKLSAgICAgICAgICAgIFF1ZXVl
ZEZyYW1lVHlwZVZlY3RvcgotICAgICAgICAgICAgLy8gRklYTUU6IEFkZCBRdWV1ZWRGcmFtZVR5
cGVCbG9iLgotICAgICAgICB9OwotICAgICAgICBzdHJ1Y3QgUXVldWVkRnJhbWUgewotICAgICAg
ICAgICAgT3BDb2RlIG9wQ29kZTsKLSAgICAgICAgICAgIFF1ZXVlZEZyYW1lVHlwZSBmcmFtZVR5
cGU7Ci0gICAgICAgICAgICAvLyBPbmx5IG9uZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zIGlzIHVz
ZWQsIGFjY29yZGluZyB0byB0aGUgdmFsdWUgb2YgZnJhbWVUeXBlLgotICAgICAgICAgICAgU3Ry
aW5nIHN0cmluZ0RhdGE7Ci0gICAgICAgICAgICBWZWN0b3I8Y2hhcj4gdmVjdG9yRGF0YTsKLSAg
ICAgICAgICAgIC8vIEZJWE1FOiBBZGQgYmxvYkRhdGEuCi0gICAgICAgIH07Ci0gICAgICAgIHZv
aWQgZW5xdWV1ZVRleHRGcmFtZShjb25zdCBTdHJpbmcmKTsKLSAgICAgICAgdm9pZCBlbnF1ZXVl
UmF3RnJhbWUoT3BDb2RlLCBjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgZGF0YUxlbmd0aCk7Ci0g
ICAgICAgIC8vIEZJWE1FOiBBZGQgZW5xdWV1ZUJsb2JGcmFtZSgpLgotCi0gICAgICAgIHZvaWQg
cHJvY2Vzc091dGdvaW5nRnJhbWVRdWV1ZSgpOwotICAgICAgICB2b2lkIGFib3J0T3V0Z29pbmdG
cmFtZVF1ZXVlKCk7Ci0KLSAgICAgICAgZW51bSBPdXRnb2luZ0ZyYW1lUXVldWVTdGF0dXMgewot
ICAgICAgICAgICAgLy8gSXQgaXMgYWxsb3dlZCB0byBwdXQgYSBuZXcgaXRlbSBpbnRvIHRoZSBx
dWV1ZS4KLSAgICAgICAgICAgIE91dGdvaW5nRnJhbWVRdWV1ZU9wZW4sCi0gICAgICAgICAgICAv
LyBDbG9zZSBmcmFtZSBoYXMgYWxyZWFkeSBiZWVuIHB1dCBpbnRvIHRoZSBxdWV1ZSBidXQgbWF5
IG5vdCBoYXZlIGJlZW4gc2VudCB5ZXQ7Ci0gICAgICAgICAgICAvLyBtX2hhbmRsZS0+Y2xvc2Uo
KSB3aWxsIGJlIGNhbGxlZCBhcyBzb29uIGFzIHRoZSBxdWV1ZSBpcyBjbGVhcmVkLiBJdCBpcyBu
b3QKLSAgICAgICAgICAgIC8vIGFsbG93ZWQgdG8gcHV0IGEgbmV3IGl0ZW0gaW50byB0aGUgcXVl
dWUuCi0gICAgICAgICAgICBPdXRnb2luZ0ZyYW1lUXVldWVDbG9zaW5nLAotICAgICAgICAgICAg
Ly8gQ2xvc2UgZnJhbWUgaGFzIGJlZW4gc2VudCBvciB0aGUgcXVldWUgd2FzIGFib3J0ZWQuIEl0
IGlzIG5vdCBhbGxvd2VkIHRvIHB1dAotICAgICAgICAgICAgLy8gYSBuZXcgaXRlbSB0byB0aGUg
cXVldWUuCi0gICAgICAgICAgICBPdXRnb2luZ0ZyYW1lUXVldWVDbG9zZWQKLSAgICAgICAgfTsK
LQotICAgICAgICAvLyBJZiB5b3UgYXJlIGdvaW5nIHRvIHNlbmQgYSBoeWJpLTEwIGZyYW1lLCB5
b3UgbmVlZCB0byB1c2UgdGhlIG91dGdvaW5nIGZyYW1lIHF1ZXVlCi0gICAgICAgIC8vIGluc3Rl
YWQgb2YgY2FsbCBzZW5kRnJhbWUoKSBkaXJlY3RseS4KLSAgICAgICAgYm9vbCBzZW5kRnJhbWUo
T3BDb2RlLCBjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgZGF0YUxlbmd0aCk7Ci0gICAgICAgIGJv
b2wgc2VuZEZyYW1lSGl4aWU3Nihjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgZGF0YUxlbmd0aCk7
Ci0KLSAgICAgICAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogbV9jb250ZXh0OwotICAgICAgICBX
ZWJTb2NrZXRDaGFubmVsQ2xpZW50KiBtX2NsaWVudDsKLSAgICAgICAgT3duUHRyPFdlYlNvY2tl
dEhhbmRzaGFrZT4gbV9oYW5kc2hha2U7Ci0gICAgICAgIFJlZlB0cjxTb2NrZXRTdHJlYW1IYW5k
bGU+IG1faGFuZGxlOwotICAgICAgICBjaGFyKiBtX2J1ZmZlcjsKLSAgICAgICAgc2l6ZV90IG1f
YnVmZmVyU2l6ZTsKLQotICAgICAgICBUaW1lcjxXZWJTb2NrZXRDaGFubmVsPiBtX3Jlc3VtZVRp
bWVyOwotICAgICAgICBib29sIG1fc3VzcGVuZGVkOwotICAgICAgICBib29sIG1fY2xvc2luZzsK
LSAgICAgICAgYm9vbCBtX3JlY2VpdmVkQ2xvc2luZ0hhbmRzaGFrZTsKLSAgICAgICAgVGltZXI8
V2ViU29ja2V0Q2hhbm5lbD4gbV9jbG9zaW5nVGltZXI7Ci0gICAgICAgIGJvb2wgbV9jbG9zZWQ7
Ci0gICAgICAgIGJvb2wgbV9zaG91bGREaXNjYXJkUmVjZWl2ZWREYXRhOwotICAgICAgICB1bnNp
Z25lZCBsb25nIG1fdW5oYW5kbGVkQnVmZmVyZWRBbW91bnQ7Ci0KLSAgICAgICAgdW5zaWduZWQg
bG9uZyBtX2lkZW50aWZpZXI7IC8vIG1faWRlbnRpZmllciA9PSAwIG1lYW5zIHRoYXQgd2UgY291
bGQgbm90IG9idGFpbiBhIHZhbGlkIGlkZW50aWZpZXIuCi0KLSAgICAgICAgYm9vbCBtX3VzZUhp
eGllNzZQcm90b2NvbDsKLQotICAgICAgICAvLyBQcml2YXRlIG1lbWJlcnMgb25seSBmb3IgaHli
aS0xMCBwcm90b2NvbC4KLSAgICAgICAgYm9vbCBtX2hhc0NvbnRpbnVvdXNGcmFtZTsKLSAgICAg
ICAgT3BDb2RlIG1fY29udGludW91c0ZyYW1lT3BDb2RlOwotICAgICAgICBWZWN0b3I8Y2hhcj4g
bV9jb250aW51b3VzRnJhbWVEYXRhOwotICAgICAgICB1bnNpZ25lZCBzaG9ydCBtX2Nsb3NlRXZl
bnRDb2RlOwotICAgICAgICBTdHJpbmcgbV9jbG9zZUV2ZW50UmVhc29uOwotCi0gICAgICAgIERl
cXVlPE93blB0cjxRdWV1ZWRGcmFtZT4gPiBtX291dGdvaW5nRnJhbWVRdWV1ZTsKLSAgICAgICAg
T3V0Z29pbmdGcmFtZVF1ZXVlU3RhdHVzIG1fb3V0Z29pbmdGcmFtZVF1ZXVlU3RhdHVzOworY2xh
c3MgU2NyaXB0RXhlY3V0aW9uQ29udGV4dDsKK2NsYXNzIFNvY2tldFN0cmVhbUhhbmRsZTsKK2Ns
YXNzIFNvY2tldFN0cmVhbUVycm9yOworY2xhc3MgV2ViU29ja2V0Q2hhbm5lbENsaWVudDsKKwor
Y2xhc3MgV2ViU29ja2V0Q2hhbm5lbCA6IHB1YmxpYyBSZWZDb3VudGVkPFdlYlNvY2tldENoYW5u
ZWw+LCBwdWJsaWMgU29ja2V0U3RyZWFtSGFuZGxlQ2xpZW50LCBwdWJsaWMgVGhyZWFkYWJsZVdl
YlNvY2tldENoYW5uZWwgeworICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOworcHVibGljOgor
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPFdlYlNvY2tldENoYW5uZWw+IGNyZWF0ZShTY3JpcHRFeGVj
dXRpb25Db250ZXh0KiBjb250ZXh0LCBXZWJTb2NrZXRDaGFubmVsQ2xpZW50KiBjbGllbnQpIHsg
cmV0dXJuIGFkb3B0UmVmKG5ldyBXZWJTb2NrZXRDaGFubmVsKGNvbnRleHQsIGNsaWVudCkpOyB9
CisgICAgdmlydHVhbCB+V2ViU29ja2V0Q2hhbm5lbCgpOworCisgICAgdmlydHVhbCBib29sIHVz
ZUhpeGllNzZQcm90b2NvbCgpOworICAgIHZpcnR1YWwgdm9pZCBjb25uZWN0KGNvbnN0IEtVUkwm
LCBjb25zdCBTdHJpbmcmIHByb3RvY29sKTsKKyAgICB2aXJ0dWFsIFN0cmluZyBzdWJwcm90b2Nv
bCgpOworICAgIHZpcnR1YWwgYm9vbCBzZW5kKGNvbnN0IFN0cmluZyYgbWVzc2FnZSk7CisgICAg
dmlydHVhbCB1bnNpZ25lZCBsb25nIGJ1ZmZlcmVkQW1vdW50KCkgY29uc3Q7CisgICAgdmlydHVh
bCB2b2lkIGNsb3NlKCk7IC8vIFN0YXJ0IGNsb3NpbmcgaGFuZHNoYWtlLgorICAgIHZpcnR1YWwg
dm9pZCBmYWlsKGNvbnN0IFN0cmluZyYgcmVhc29uKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlzY29u
bmVjdCgpOworCisgICAgdmlydHVhbCB2b2lkIHN1c3BlbmQoKTsKKyAgICB2aXJ0dWFsIHZvaWQg
cmVzdW1lKCk7CisKKyAgICAvLyBTb2NrZXRTdHJlYW1IYW5kbGVDbGllbnQgZnVuY3Rpb25zLgor
ICAgIHZpcnR1YWwgdm9pZCBkaWRPcGVuU29ja2V0U3RyZWFtKFNvY2tldFN0cmVhbUhhbmRsZSop
OworICAgIHZpcnR1YWwgdm9pZCBkaWRDbG9zZVNvY2tldFN0cmVhbShTb2NrZXRTdHJlYW1IYW5k
bGUqKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZVNvY2tldFN0cmVhbURhdGEoU29ja2V0
U3RyZWFtSGFuZGxlKiwgY29uc3QgY2hhciosIGludCk7CisgICAgdmlydHVhbCB2b2lkIGRpZEZh
aWxTb2NrZXRTdHJlYW0oU29ja2V0U3RyZWFtSGFuZGxlKiwgY29uc3QgU29ja2V0U3RyZWFtRXJy
b3ImKTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkUmVjZWl2ZUF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdl
KFNvY2tldFN0cmVhbUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7Cisg
ICAgdmlydHVhbCB2b2lkIGRpZENhbmNlbEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlKFNvY2tldFN0
cmVhbUhhbmRsZSosIGNvbnN0IEF1dGhlbnRpY2F0aW9uQ2hhbGxlbmdlJik7CisKKyAgICBlbnVt
IENsb3NlRXZlbnRDb2RlIHsKKyAgICAgICAgQ2xvc2VFdmVudENvZGVOb3JtYWxDbG9zdXJlID0g
MTAwMCwKKyAgICAgICAgQ2xvc2VFdmVudENvZGVHb2luZ0F3YXkgPSAxMDAxLAorICAgICAgICBD
bG9zZUV2ZW50Q29kZVByb3RvY29sRXJyb3IgPSAxMDAyLAorICAgICAgICBDbG9zZUV2ZW50Q29k
ZVVuc3VwcG9ydGVkRGF0YSA9IDEwMDMsCisgICAgICAgIENsb3NlRXZlbnRDb2RlRnJhbWVUb29M
YXJnZSA9IDEwMDQsCisgICAgICAgIENsb3NlRXZlbnRDb2RlTm9TdGF0dXNSY3ZkID0gMTAwNSwK
KyAgICAgICAgQ2xvc2VFdmVudENvZGVBYm5vcm1hbENsb3N1cmUgPSAxMDA2LAorICAgICAgICBD
bG9zZUV2ZW50Q29kZUludmFsaWRVVEY4ID0gMTAwNwogICAgIH07CiAKKyAgICB1c2luZyBSZWZD
b3VudGVkPFdlYlNvY2tldENoYW5uZWw+OjpyZWY7CisgICAgdXNpbmcgUmVmQ291bnRlZDxXZWJT
b2NrZXRDaGFubmVsPjo6ZGVyZWY7CisKK3Byb3RlY3RlZDoKKyAgICB2aXJ0dWFsIHZvaWQgcmVm
VGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwoKSB7IHJlZigpOyB9CisgICAgdmlydHVhbCB2b2lk
IGRlcmVmVGhyZWFkYWJsZVdlYlNvY2tldENoYW5uZWwoKSB7IGRlcmVmKCk7IH0KKworcHJpdmF0
ZToKKyAgICBXZWJTb2NrZXRDaGFubmVsKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqLCBXZWJTb2Nr
ZXRDaGFubmVsQ2xpZW50Kik7CisKKyAgICBib29sIGFwcGVuZFRvQnVmZmVyKGNvbnN0IGNoYXIq
IGRhdGEsIHNpemVfdCBsZW4pOworICAgIHZvaWQgc2tpcEJ1ZmZlcihzaXplX3QgbGVuKTsKKyAg
ICBib29sIHByb2Nlc3NCdWZmZXIoKTsKKyAgICB2b2lkIHJlc3VtZVRpbWVyRmlyZWQoVGltZXI8
V2ViU29ja2V0Q2hhbm5lbD4qKTsKKyAgICB2b2lkIHN0YXJ0Q2xvc2luZ0hhbmRzaGFrZSgpOwor
ICAgIHZvaWQgY2xvc2luZ1RpbWVyRmlyZWQoVGltZXI8V2ViU29ja2V0Q2hhbm5lbD4qKTsKKwor
ICAgIC8vIEh5YmktMTAgb3Bjb2Rlcy4KKyAgICB0eXBlZGVmIHVuc2lnbmVkIGludCBPcENvZGU7
CisgICAgc3RhdGljIGNvbnN0IE9wQ29kZSBPcENvZGVDb250aW51YXRpb247CisgICAgc3RhdGlj
IGNvbnN0IE9wQ29kZSBPcENvZGVUZXh0OworICAgIHN0YXRpYyBjb25zdCBPcENvZGUgT3BDb2Rl
QmluYXJ5OworICAgIHN0YXRpYyBjb25zdCBPcENvZGUgT3BDb2RlQ2xvc2U7CisgICAgc3RhdGlj
IGNvbnN0IE9wQ29kZSBPcENvZGVQaW5nOworICAgIHN0YXRpYyBjb25zdCBPcENvZGUgT3BDb2Rl
UG9uZzsKKworICAgIHN0YXRpYyBib29sIGlzTm9uQ29udHJvbE9wQ29kZShPcENvZGUgb3BDb2Rl
KSB7IHJldHVybiBvcENvZGUgPT0gT3BDb2RlQ29udGludWF0aW9uIHx8IG9wQ29kZSA9PSBPcENv
ZGVUZXh0IHx8IG9wQ29kZSA9PSBPcENvZGVCaW5hcnk7IH0KKyAgICBzdGF0aWMgYm9vbCBpc0Nv
bnRyb2xPcENvZGUoT3BDb2RlIG9wQ29kZSkgeyByZXR1cm4gb3BDb2RlID09IE9wQ29kZUNsb3Nl
IHx8IG9wQ29kZSA9PSBPcENvZGVQaW5nIHx8IG9wQ29kZSA9PSBPcENvZGVQb25nOyB9CisgICAg
c3RhdGljIGJvb2wgaXNSZXNlcnZlZE9wQ29kZShPcENvZGUgb3BDb2RlKSB7IHJldHVybiAhaXNO
b25Db250cm9sT3BDb2RlKG9wQ29kZSkgJiYgIWlzQ29udHJvbE9wQ29kZShvcENvZGUpOyB9CisK
KyAgICBlbnVtIFBhcnNlRnJhbWVSZXN1bHQgeworICAgICAgICBGcmFtZU9LLAorICAgICAgICBG
cmFtZUluY29tcGxldGUsCisgICAgICAgIEZyYW1lRXJyb3IKKyAgICB9OworCisgICAgc3RydWN0
IEZyYW1lRGF0YSB7CisgICAgICAgIE9wQ29kZSBvcENvZGU7CisgICAgICAgIGJvb2wgZmluYWw7
CisgICAgICAgIGJvb2wgcmVzZXJ2ZWQxOworICAgICAgICBib29sIHJlc2VydmVkMjsKKyAgICAg
ICAgYm9vbCByZXNlcnZlZDM7CisgICAgICAgIGJvb2wgbWFza2VkOworICAgICAgICBjb25zdCBj
aGFyKiBwYXlsb2FkOworICAgICAgICBzaXplX3QgcGF5bG9hZExlbmd0aDsKKyAgICAgICAgY29u
c3QgY2hhciogZnJhbWVFbmQ7CisgICAgfTsKKworICAgIFBhcnNlRnJhbWVSZXN1bHQgcGFyc2VG
cmFtZShGcmFtZURhdGEmKTsgLy8gTWF5IG1vZGlmeSBwYXJ0IG9mIG1fYnVmZmVyIHRvIHVubWFz
ayB0aGUgZnJhbWUuCisKKyAgICBib29sIHByb2Nlc3NGcmFtZSgpOworICAgIGJvb2wgcHJvY2Vz
c0ZyYW1lSGl4aWU3NigpOworCisgICAgLy8gSXQgaXMgYWxsb3dlZCB0byBzZW5kIGEgQmxvYiBh
cyBhIGJpbmFyeSBmcmFtZSBpZiBoeWJpLTEwIHByb3RvY29sIGlzIGluIHVzZS4gU2VuZGluZyBh
IEJsb2IKKyAgICAvLyBjYW4gYmUgZGVsYXllZCBiZWNhdXNlIGl0IG11c3QgYmUgcmVhZCBhc3lu
Y2hyb25vdXNseS4gT3RoZXIgdHlwZXMgb2YgZGF0YSAoU3RyaW5nIG9yCisgICAgLy8gQXJyYXlC
dWZmZXIpIG1heSBhbHNvIGJlIGJsb2NrZWQgYnkgcHJlY2VkaW5nIHNlbmRpbmcgcmVxdWVzdCBv
ZiBhIEJsb2IuCisgICAgLy8KKyAgICAvLyBUbyBhZGRyZXNzIHRoaXMgc2l0dWF0aW9uLCBtZXNz
YWdlcyB0byBiZSBzZW50IG5lZWQgdG8gYmUgc3RvcmVkIGluIGEgcXVldWUuIFdoZW5ldmVyIGEg
bmV3CisgICAgLy8gZGF0YSBmcmFtZSBpcyBnb2luZyB0byBiZSBzZW50LCBpdCBmaXJzdCBtdXN0
IGdvIHRvIHRoZSBxdWV1ZS4gSXRlbXMgaW4gdGhlIHF1ZXVlIGFyZSBwcm9jZXNzZWQKKyAgICAv
LyBpbiB0aGUgb3JkZXIgdGhleSB3ZXJlIHB1dCBpbnRvIHRoZSBxdWV1ZS4gU2VuZGluZyByZXF1
ZXN0IG9mIGEgQmxvYiBibG9ja3MgZnVydGhlciBwcm9jZXNzaW5nCisgICAgLy8gdW50aWwgdGhl
IEJsb2IgaXMgY29tcGxldGVseSByZWFkIGFuZCBzZW50IHRvIHRoZSBzb2NrZXQgc3RyZWFtLgor
ICAgIC8vCisgICAgLy8gV2hlbiBoaXhpZS03NiBwcm90b2NvbCBpcyBjaG9zZW4sIHRoZSBxdWV1
ZSBpcyBub3QgdXNlZCBhbmQgbWVzc2FnZXMgYXJlIHNlbnQgZGlyZWN0bHkuCisgICAgZW51bSBR
dWV1ZWRGcmFtZVR5cGUgeworICAgICAgICBRdWV1ZWRGcmFtZVR5cGVTdHJpbmcsCisgICAgICAg
IFF1ZXVlZEZyYW1lVHlwZVZlY3RvcgorICAgICAgICAvLyBGSVhNRTogQWRkIFF1ZXVlZEZyYW1l
VHlwZUJsb2IuCisgICAgfTsKKyAgICBzdHJ1Y3QgUXVldWVkRnJhbWUgeworICAgICAgICBPcENv
ZGUgb3BDb2RlOworICAgICAgICBRdWV1ZWRGcmFtZVR5cGUgZnJhbWVUeXBlOworICAgICAgICAv
LyBPbmx5IG9uZSBvZiB0aGUgZm9sbG93aW5nIGl0ZW1zIGlzIHVzZWQsIGFjY29yZGluZyB0byB0
aGUgdmFsdWUgb2YgZnJhbWVUeXBlLgorICAgICAgICBTdHJpbmcgc3RyaW5nRGF0YTsKKyAgICAg
ICAgVmVjdG9yPGNoYXI+IHZlY3RvckRhdGE7CisgICAgICAgIC8vIEZJWE1FOiBBZGQgYmxvYkRh
dGEuCisgICAgfTsKKyAgICB2b2lkIGVucXVldWVUZXh0RnJhbWUoY29uc3QgU3RyaW5nJik7Cisg
ICAgdm9pZCBlbnF1ZXVlUmF3RnJhbWUoT3BDb2RlLCBjb25zdCBjaGFyKiBkYXRhLCBzaXplX3Qg
ZGF0YUxlbmd0aCk7CisgICAgLy8gRklYTUU6IEFkZCBlbnF1ZXVlQmxvYkZyYW1lKCkuCisKKyAg
ICB2b2lkIHByb2Nlc3NPdXRnb2luZ0ZyYW1lUXVldWUoKTsKKyAgICB2b2lkIGFib3J0T3V0Z29p
bmdGcmFtZVF1ZXVlKCk7CisKKyAgICBlbnVtIE91dGdvaW5nRnJhbWVRdWV1ZVN0YXR1cyB7Cisg
ICAgICAgIC8vIEl0IGlzIGFsbG93ZWQgdG8gcHV0IGEgbmV3IGl0ZW0gaW50byB0aGUgcXVldWUu
CisgICAgICAgIE91dGdvaW5nRnJhbWVRdWV1ZU9wZW4sCisgICAgICAgIC8vIENsb3NlIGZyYW1l
IGhhcyBhbHJlYWR5IGJlZW4gcHV0IGludG8gdGhlIHF1ZXVlIGJ1dCBtYXkgbm90IGhhdmUgYmVl
biBzZW50IHlldDsKKyAgICAgICAgLy8gbV9oYW5kbGUtPmNsb3NlKCkgd2lsbCBiZSBjYWxsZWQg
YXMgc29vbiBhcyB0aGUgcXVldWUgaXMgY2xlYXJlZC4gSXQgaXMgbm90CisgICAgICAgIC8vIGFs
bG93ZWQgdG8gcHV0IGEgbmV3IGl0ZW0gaW50byB0aGUgcXVldWUuCisgICAgICAgIE91dGdvaW5n
RnJhbWVRdWV1ZUNsb3NpbmcsCisgICAgICAgIC8vIENsb3NlIGZyYW1lIGhhcyBiZWVuIHNlbnQg
b3IgdGhlIHF1ZXVlIHdhcyBhYm9ydGVkLiBJdCBpcyBub3QgYWxsb3dlZCB0byBwdXQKKyAgICAg
ICAgLy8gYSBuZXcgaXRlbSB0byB0aGUgcXVldWUuCisgICAgICAgIE91dGdvaW5nRnJhbWVRdWV1
ZUNsb3NlZAorICAgIH07CisKKyAgICAvLyBJZiB5b3UgYXJlIGdvaW5nIHRvIHNlbmQgYSBoeWJp
LTEwIGZyYW1lLCB5b3UgbmVlZCB0byB1c2UgdGhlIG91dGdvaW5nIGZyYW1lIHF1ZXVlCisgICAg
Ly8gaW5zdGVhZCBvZiBjYWxsIHNlbmRGcmFtZSgpIGRpcmVjdGx5LgorICAgIGJvb2wgc2VuZEZy
YW1lKE9wQ29kZSwgY29uc3QgY2hhciogZGF0YSwgc2l6ZV90IGRhdGFMZW5ndGgpOworICAgIGJv
b2wgc2VuZEZyYW1lSGl4aWU3Nihjb25zdCBjaGFyKiBkYXRhLCBzaXplX3QgZGF0YUxlbmd0aCk7
CisKKyAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX2NvbnRleHQ7CisgICAgV2ViU29ja2V0
Q2hhbm5lbENsaWVudCogbV9jbGllbnQ7CisgICAgT3duUHRyPFdlYlNvY2tldEhhbmRzaGFrZT4g
bV9oYW5kc2hha2U7CisgICAgUmVmUHRyPFNvY2tldFN0cmVhbUhhbmRsZT4gbV9oYW5kbGU7Cisg
ICAgY2hhciogbV9idWZmZXI7CisgICAgc2l6ZV90IG1fYnVmZmVyU2l6ZTsKKworICAgIFRpbWVy
PFdlYlNvY2tldENoYW5uZWw+IG1fcmVzdW1lVGltZXI7CisgICAgYm9vbCBtX3N1c3BlbmRlZDsK
KyAgICBib29sIG1fY2xvc2luZzsKKyAgICBib29sIG1fcmVjZWl2ZWRDbG9zaW5nSGFuZHNoYWtl
OworICAgIFRpbWVyPFdlYlNvY2tldENoYW5uZWw+IG1fY2xvc2luZ1RpbWVyOworICAgIGJvb2wg
bV9jbG9zZWQ7CisgICAgYm9vbCBtX3Nob3VsZERpc2NhcmRSZWNlaXZlZERhdGE7CisgICAgdW5z
aWduZWQgbG9uZyBtX3VuaGFuZGxlZEJ1ZmZlcmVkQW1vdW50OworCisgICAgdW5zaWduZWQgbG9u
ZyBtX2lkZW50aWZpZXI7IC8vIG1faWRlbnRpZmllciA9PSAwIG1lYW5zIHRoYXQgd2UgY291bGQg
bm90IG9idGFpbiBhIHZhbGlkIGlkZW50aWZpZXIuCisKKyAgICBib29sIG1fdXNlSGl4aWU3NlBy
b3RvY29sOworCisgICAgLy8gUHJpdmF0ZSBtZW1iZXJzIG9ubHkgZm9yIGh5YmktMTAgcHJvdG9j
b2wuCisgICAgYm9vbCBtX2hhc0NvbnRpbnVvdXNGcmFtZTsKKyAgICBPcENvZGUgbV9jb250aW51
b3VzRnJhbWVPcENvZGU7CisgICAgVmVjdG9yPGNoYXI+IG1fY29udGludW91c0ZyYW1lRGF0YTsK
KyAgICB1bnNpZ25lZCBzaG9ydCBtX2Nsb3NlRXZlbnRDb2RlOworICAgIFN0cmluZyBtX2Nsb3Nl
RXZlbnRSZWFzb247CisKKyAgICBEZXF1ZTxPd25QdHI8UXVldWVkRnJhbWU+ID4gbV9vdXRnb2lu
Z0ZyYW1lUXVldWU7CisgICAgT3V0Z29pbmdGcmFtZVF1ZXVlU3RhdHVzIG1fb3V0Z29pbmdGcmFt
ZVF1ZXVlU3RhdHVzOworfTsKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCiAjZW5kaWYgLy8g
RU5BQkxFKFdFQl9TT0NLRVRTKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0
cy9XZWJTb2NrZXRIYW5kc2hha2UuaCBiL1NvdXJjZS9XZWJDb3JlL3dlYnNvY2tldHMvV2ViU29j
a2V0SGFuZHNoYWtlLmgKaW5kZXggMGNjZTVhZmJlZGIyMzZhNDkxMmYzMGIzZmI4MTViYmEzMjcx
NDAwZi4uMTJjMTg0MDE5YzJjYWM2N2RhOWZmMzQ5MmM0N2I5YjcwMmFjZWFiNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvd2Vic29ja2V0cy9XZWJTb2NrZXRIYW5kc2hha2UuaAorKysgYi9T
b3VyY2UvV2ViQ29yZS93ZWJzb2NrZXRzL1dlYlNvY2tldEhhbmRzaGFrZS5oCkBAIC00MCw4MyAr
NDAsODMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0gICAgY2xhc3MgU2NyaXB0RXhlY3V0
aW9uQ29udGV4dDsKK2NsYXNzIFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQ7CiAKLSAgICBjbGFzcyBX
ZWJTb2NrZXRIYW5kc2hha2UgewotICAgICAgICBXVEZfTUFLRV9OT05DT1BZQUJMRShXZWJTb2Nr
ZXRIYW5kc2hha2UpOwotICAgIHB1YmxpYzoKLSAgICAgICAgZW51bSBNb2RlIHsKLSAgICAgICAg
ICAgIEluY29tcGxldGUsIE5vcm1hbCwgRmFpbGVkLCBDb25uZWN0ZWQKLSAgICAgICAgfTsKLSAg
ICAgICAgV2ViU29ja2V0SGFuZHNoYWtlKGNvbnN0IEtVUkwmLCBjb25zdCBTdHJpbmcmIHByb3Rv
Y29sLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgYm9vbCB1c2VIaXhpZTc2UHJvdG9jb2wpOwot
ICAgICAgICB+V2ViU29ja2V0SGFuZHNoYWtlKCk7CitjbGFzcyBXZWJTb2NrZXRIYW5kc2hha2Ug
eworICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdlYlNvY2tldEhhbmRzaGFrZSk7CitwdWJsaWM6
CisgICAgZW51bSBNb2RlIHsKKyAgICAgICAgSW5jb21wbGV0ZSwgTm9ybWFsLCBGYWlsZWQsIENv
bm5lY3RlZAorICAgIH07CisgICAgV2ViU29ja2V0SGFuZHNoYWtlKGNvbnN0IEtVUkwmLCBjb25z
dCBTdHJpbmcmIHByb3RvY29sLCBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiwgYm9vbCB1c2VIaXhp
ZTc2UHJvdG9jb2wpOworICAgIH5XZWJTb2NrZXRIYW5kc2hha2UoKTsKIAotICAgICAgICBjb25z
dCBLVVJMJiB1cmwoKSBjb25zdDsKLSAgICAgICAgdm9pZCBzZXRVUkwoY29uc3QgS1VSTCYpOwot
ICAgICAgICBjb25zdCBTdHJpbmcgaG9zdCgpIGNvbnN0OworICAgIGNvbnN0IEtVUkwmIHVybCgp
IGNvbnN0OworICAgIHZvaWQgc2V0VVJMKGNvbnN0IEtVUkwmKTsKKyAgICBjb25zdCBTdHJpbmcg
aG9zdCgpIGNvbnN0OwogCi0gICAgICAgIGNvbnN0IFN0cmluZyYgY2xpZW50UHJvdG9jb2woKSBj
b25zdDsKLSAgICAgICAgdm9pZCBzZXRDbGllbnRQcm90b2NvbChjb25zdCBTdHJpbmcmIHByb3Rv
Y29sKTsKKyAgICBjb25zdCBTdHJpbmcmIGNsaWVudFByb3RvY29sKCkgY29uc3Q7CisgICAgdm9p
ZCBzZXRDbGllbnRQcm90b2NvbChjb25zdCBTdHJpbmcmKTsKIAotICAgICAgICBib29sIHNlY3Vy
ZSgpIGNvbnN0OworICAgIGJvb2wgc2VjdXJlKCkgY29uc3Q7CiAKLSAgICAgICAgU3RyaW5nIGNs
aWVudE9yaWdpbigpIGNvbnN0OwotICAgICAgICBTdHJpbmcgY2xpZW50TG9jYXRpb24oKSBjb25z
dDsKKyAgICBTdHJpbmcgY2xpZW50T3JpZ2luKCkgY29uc3Q7CisgICAgU3RyaW5nIGNsaWVudExv
Y2F0aW9uKCkgY29uc3Q7CiAKLSAgICAgICAgQ1N0cmluZyBjbGllbnRIYW5kc2hha2VNZXNzYWdl
KCkgY29uc3Q7Ci0gICAgICAgIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QgY2xpZW50SGFuZHNo
YWtlUmVxdWVzdCgpIGNvbnN0OworICAgIENTdHJpbmcgY2xpZW50SGFuZHNoYWtlTWVzc2FnZSgp
IGNvbnN0OworICAgIFdlYlNvY2tldEhhbmRzaGFrZVJlcXVlc3QgY2xpZW50SGFuZHNoYWtlUmVx
dWVzdCgpIGNvbnN0OwogCi0gICAgICAgIHZvaWQgcmVzZXQoKTsKLSAgICAgICAgdm9pZCBjbGVh
clNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKKyAgICB2b2lkIHJlc2V0KCk7CisgICAgdm9pZCBj
bGVhclNjcmlwdEV4ZWN1dGlvbkNvbnRleHQoKTsKIAotICAgICAgICBpbnQgcmVhZFNlcnZlckhh
bmRzaGFrZShjb25zdCBjaGFyKiBoZWFkZXIsIHNpemVfdCBsZW4pOwotICAgICAgICBNb2RlIG1v
ZGUoKSBjb25zdDsKLSAgICAgICAgU3RyaW5nIGZhaWx1cmVSZWFzb24oKSBjb25zdDsgLy8gUmV0
dXJucyBhIHN0cmluZyBpbmRpY2F0aW5nIHRoZSByZWFzb24gb2YgZmFpbHVyZSBpZiBtb2RlKCkg
PT0gRmFpbGVkLgorICAgIGludCByZWFkU2VydmVySGFuZHNoYWtlKGNvbnN0IGNoYXIqIGhlYWRl
ciwgc2l6ZV90IGxlbik7CisgICAgTW9kZSBtb2RlKCkgY29uc3Q7CisgICAgU3RyaW5nIGZhaWx1
cmVSZWFzb24oKSBjb25zdDsgLy8gUmV0dXJucyBhIHN0cmluZyBpbmRpY2F0aW5nIHRoZSByZWFz
b24gb2YgZmFpbHVyZSBpZiBtb2RlKCkgPT0gRmFpbGVkLgogCi0gICAgICAgIFN0cmluZyBzZXJ2
ZXJXZWJTb2NrZXRPcmlnaW4oKSBjb25zdDsgLy8gT25seSBmb3IgaGl4aWUtNzYgaGFuZHNoYWtl
LgotICAgICAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0TG9jYXRpb24oKSBjb25zdDsgLy8gT25s
eSBmb3IgaGl4aWUtNzYgaGFuZHNoYWtlLgotICAgICAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0
UHJvdG9jb2woKSBjb25zdDsKLSAgICAgICAgU3RyaW5nIHNlcnZlclNldENvb2tpZSgpIGNvbnN0
OwotICAgICAgICBTdHJpbmcgc2VydmVyU2V0Q29va2llMigpIGNvbnN0OwotICAgICAgICBTdHJp
bmcgc2VydmVyVXBncmFkZSgpIGNvbnN0OwotICAgICAgICBTdHJpbmcgc2VydmVyQ29ubmVjdGlv
bigpIGNvbnN0OwotICAgICAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0QWNjZXB0KCkgY29uc3Q7
IC8vIE9ubHkgZm9yIGh5YmktMTAgaGFuZHNoYWtlLgotICAgICAgICBTdHJpbmcgc2VydmVyV2Vi
U29ja2V0RXh0ZW5zaW9ucygpIGNvbnN0OyAvLyBPbmx5IGZvciBoeWJpLTEwIGhhbmRzaGFrZS4K
KyAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0T3JpZ2luKCkgY29uc3Q7IC8vIE9ubHkgZm9yIGhp
eGllLTc2IGhhbmRzaGFrZS4KKyAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0TG9jYXRpb24oKSBj
b25zdDsgLy8gT25seSBmb3IgaGl4aWUtNzYgaGFuZHNoYWtlLgorICAgIFN0cmluZyBzZXJ2ZXJX
ZWJTb2NrZXRQcm90b2NvbCgpIGNvbnN0OworICAgIFN0cmluZyBzZXJ2ZXJTZXRDb29raWUoKSBj
b25zdDsKKyAgICBTdHJpbmcgc2VydmVyU2V0Q29va2llMigpIGNvbnN0OworICAgIFN0cmluZyBz
ZXJ2ZXJVcGdyYWRlKCkgY29uc3Q7CisgICAgU3RyaW5nIHNlcnZlckNvbm5lY3Rpb24oKSBjb25z
dDsKKyAgICBTdHJpbmcgc2VydmVyV2ViU29ja2V0QWNjZXB0KCkgY29uc3Q7IC8vIE9ubHkgZm9y
IGh5YmktMTAgaGFuZHNoYWtlLgorICAgIFN0cmluZyBzZXJ2ZXJXZWJTb2NrZXRFeHRlbnNpb25z
KCkgY29uc3Q7IC8vIE9ubHkgZm9yIGh5YmktMTAgaGFuZHNoYWtlLgogCi0gICAgICAgIGNvbnN0
IFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlJiBzZXJ2ZXJIYW5kc2hha2VSZXNwb25zZSgpIGNv
bnN0OworICAgIGNvbnN0IFdlYlNvY2tldEhhbmRzaGFrZVJlc3BvbnNlJiBzZXJ2ZXJIYW5kc2hh
a2VSZXNwb25zZSgpIGNvbnN0OwogCi0gICAgcHJpdmF0ZToKLSAgICAgICAgS1VSTCBodHRwVVJM
Rm9yQXV0aGVudGljYXRpb25BbmRDb29raWVzKCkgY29uc3Q7Citwcml2YXRlOgorICAgIEtVUkwg
aHR0cFVSTEZvckF1dGhlbnRpY2F0aW9uQW5kQ29va2llcygpIGNvbnN0OwogCi0gICAgICAgIGlu
dCByZWFkU3RhdHVzTGluZShjb25zdCBjaGFyKiBoZWFkZXIsIHNpemVfdCBoZWFkZXJMZW5ndGgs
IGludCYgc3RhdHVzQ29kZSwgU3RyaW5nJiBzdGF0dXNUZXh0KTsKKyAgICBpbnQgcmVhZFN0YXR1
c0xpbmUoY29uc3QgY2hhciogaGVhZGVyLCBzaXplX3QgaGVhZGVyTGVuZ3RoLCBpbnQmIHN0YXR1
c0NvZGUsIFN0cmluZyYgc3RhdHVzVGV4dCk7CiAKLSAgICAgICAgLy8gUmVhZHMgYWxsIGhlYWRl
cnMgZXhjZXB0IGZvciB0aGUgdHdvIHByZWRlZmluZWQgb25lcy4KLSAgICAgICAgY29uc3QgY2hh
ciogcmVhZEhUVFBIZWFkZXJzKGNvbnN0IGNoYXIqIHN0YXJ0LCBjb25zdCBjaGFyKiBlbmQpOwot
ICAgICAgICB2b2lkIHByb2Nlc3NIZWFkZXJzKCk7Ci0gICAgICAgIGJvb2wgY2hlY2tSZXNwb25z
ZUhlYWRlcnMoKTsKKyAgICAvLyBSZWFkcyBhbGwgaGVhZGVycyBleGNlcHQgZm9yIHRoZSB0d28g
cHJlZGVmaW5lZCBvbmVzLgorICAgIGNvbnN0IGNoYXIqIHJlYWRIVFRQSGVhZGVycyhjb25zdCBj
aGFyKiBzdGFydCwgY29uc3QgY2hhciogZW5kKTsKKyAgICB2b2lkIHByb2Nlc3NIZWFkZXJzKCk7
CisgICAgYm9vbCBjaGVja1Jlc3BvbnNlSGVhZGVycygpOwogCi0gICAgICAgIEtVUkwgbV91cmw7
Ci0gICAgICAgIFN0cmluZyBtX2NsaWVudFByb3RvY29sOwotICAgICAgICBib29sIG1fc2VjdXJl
OwotICAgICAgICBTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBtX2NvbnRleHQ7Ci0gICAgICAgIGJv
b2wgbV91c2VIaXhpZTc2UHJvdG9jb2w7CisgICAgS1VSTCBtX3VybDsKKyAgICBTdHJpbmcgbV9j
bGllbnRQcm90b2NvbDsKKyAgICBib29sIG1fc2VjdXJlOworICAgIFNjcmlwdEV4ZWN1dGlvbkNv
bnRleHQqIG1fY29udGV4dDsKKyAgICBib29sIG1fdXNlSGl4aWU3NlByb3RvY29sOwogCi0gICAg
ICAgIE1vZGUgbV9tb2RlOworICAgIE1vZGUgbV9tb2RlOwogCi0gICAgICAgIFdlYlNvY2tldEhh
bmRzaGFrZVJlc3BvbnNlIG1fcmVzcG9uc2U7CisgICAgV2ViU29ja2V0SGFuZHNoYWtlUmVzcG9u
c2UgbV9yZXNwb25zZTsKIAotICAgICAgICBTdHJpbmcgbV9mYWlsdXJlUmVhc29uOworICAgIFN0
cmluZyBtX2ZhaWx1cmVSZWFzb247CiAKLSAgICAgICAgLy8gRm9yIGhpeGllLTc2IGhhbmRzaGFr
ZS4KLSAgICAgICAgU3RyaW5nIG1faGl4aWU3NlNlY1dlYlNvY2tldEtleTE7Ci0gICAgICAgIFN0
cmluZyBtX2hpeGllNzZTZWNXZWJTb2NrZXRLZXkyOwotICAgICAgICB1bnNpZ25lZCBjaGFyIG1f
aGl4aWU3NktleTNbOF07Ci0gICAgICAgIHVuc2lnbmVkIGNoYXIgbV9oaXhpZTc2RXhwZWN0ZWRD
aGFsbGVuZ2VSZXNwb25zZVsxNl07CisgICAgLy8gRm9yIGhpeGllLTc2IGhhbmRzaGFrZS4KKyAg
ICBTdHJpbmcgbV9oaXhpZTc2U2VjV2ViU29ja2V0S2V5MTsKKyAgICBTdHJpbmcgbV9oaXhpZTc2
U2VjV2ViU29ja2V0S2V5MjsKKyAgICB1bnNpZ25lZCBjaGFyIG1faGl4aWU3NktleTNbOF07Cisg
ICAgdW5zaWduZWQgY2hhciBtX2hpeGllNzZFeHBlY3RlZENoYWxsZW5nZVJlc3BvbnNlWzE2XTsK
IAotICAgICAgICAvLyBGb3IgaHliaS0xMCBoYW5kc2hha2UuCi0gICAgICAgIFN0cmluZyBtX3Nl
Y1dlYlNvY2tldEtleTsKLSAgICAgICAgU3RyaW5nIG1fZXhwZWN0ZWRBY2NlcHQ7Ci0gICAgfTsK
KyAgICAvLyBGb3IgaHliaS0xMCBoYW5kc2hha2UuCisgICAgU3RyaW5nIG1fc2VjV2ViU29ja2V0
S2V5OworICAgIFN0cmluZyBtX2V4cGVjdGVkQWNjZXB0OworfTsKIAogfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>