<?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>40504</bug_id>
          
          <creation_ts>2010-06-11 16:04:09 -0700</creation_ts>
          <short_desc>Rename Tokenizer to DocumentParser to match what it actually does</short_desc>
          <delta_ts>2010-06-12 01:10:42 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</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>40491</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Seidel (no email)">eric</reporter>
          <assigned_to name="Eric Seidel (no email)">eric</assigned_to>
          <cc>abarth</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>237102</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-11 16:04:09 -0700</bug_when>
    <thetext>Rename Tokenizer to DocumentParser to match what it actually does</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237106</commentid>
    <comment_count>1</comment_count>
      <attachid>58522</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-11 16:07:59 -0700</bug_when>
    <thetext>Created attachment 58522
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237107</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-11 16:08:44 -0700</bug_when>
    <thetext>HTMLParser is about to be renamed HTMLTreeBuilder which will alleviate some possible confusion as a result of this change.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237109</commentid>
    <comment_count>3</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-06-11 16:09:20 -0700</bug_when>
    <thetext>I chose not to fix style issues in this patch to keep the diff small.  DocumentParser.h is improperly indented, and various header includes need sorts.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237258</commentid>
    <comment_count>4</comment_count>
      <attachid>58522</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-12 01:10:35 -0700</bug_when>
    <thetext>Comment on attachment 58522
Patch

Clearing flags on attachment: 58522

Committed r61057: &lt;http://trac.webkit.org/changeset/61057&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>237260</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-06-12 01:10:42 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>58522</attachid>
            <date>2010-06-11 16:07:59 -0700</date>
            <delta_ts>2010-06-12 01:10:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-40504-20100611160757.patch</filename>
            <type>text/plain</type>
            <size>35631</size>
            <attacher name="Eric Seidel (no email)">eric</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NGM5MTJjMjU4NGMxZDVkNTMxMDAwODRhOGYyZGVjZWVmYjNlNDdjYi4uOTNjMTAwY2U2YWQxZDA4
YTAwYmEyZTdlMjE3OTM5ZTJiYmQ5YmFkNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSw5NyBAQAorMjAxMC0wNi0xMSAgRXJp
YyBTZWlkZWwgIDxlcmljQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgUmVuYW1lIFRva2VuaXplciB0byBEb2N1bWVudFBhcnNlciB0
byBtYXRjaCB3aGF0IGl0IGFjdHVhbGx5IGRvZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTQwNTA0CisKKyAgICAgICAgVGhlIHJlbmFtZSB3YXMgZW50
aXJlbHkgZG9uZSBieSBkby13ZWJjb3JlLXJlbmFtZS4KKyAgICAgICAgVGhlIG9ubHkgbWFudWFs
IGNoYW5nZXMgd2VyZSByZW1vdmluZyBvdXQtZGF0ZWQgY29tbWVudHMKKyAgICAgICAgYW5kIGZp
eGluZyBUb2tlbml6ZXJfaCB0byBEb2N1bWVudFBhcnNlcl9oIGluIHRoZSBoZWFkZXIgZ3VhcmRz
LgorCisgICAgICAgIEknbGwgZG8gYWxsIHRoZSByZXN0IG9mIHRoZSByZW5hbWVzIChsaWtlIHRo
ZSB0b2tlbml6ZXIgc3ViY2xhc3NlcworICAgICAgICBhbmQgdGhlIHRva2VuaXplcigpIGNyZWF0
ZVRva2VuaXplcigpIG1ldGhvZHMpIGluIHNlcGFyYXRlIGNoYW5nZXMuCisKKyAgICAgICAgTm8g
ZnVuY3Rpb25hbCBjaGFuZ2UsIHRodXMgbm8gdGVzdHMuCisKKyAgICAgICAgKiBHTlVtYWtlZmls
ZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTSFRNTERvY3VtZW50Q3VzdG9tLmNwcDoKKyAg
ICAgICAgKiBiaW5kaW5ncy92OC9TY3JpcHRFdmVudExpc3RlbmVyLmNwcDoKKyAgICAgICAgKiBk
b20vRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnQ6OmNyZWF0ZVRva2Vu
aXplcik6CisgICAgICAgICogZG9tL0RvY3VtZW50Lmg6CisgICAgICAgIChXZWJDb3JlOjpEb2N1
bWVudDo6dG9rZW5pemVyKToKKyAgICAgICAgKiBkb20vRG9jdW1lbnRQYXJzZXIuaDogQWRkZWQu
CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFBhcnNlcjo6fkRvY3VtZW50UGFyc2VyKToKKyAg
ICAgICAgKFdlYkNvcmU6OkRvY3VtZW50UGFyc2VyOjpzdG9wUGFyc2luZyk6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFBhcnNlcjo6cHJvY2Vzc2luZ0RhdGEpOgorICAgICAgICAoV2ViQ29y
ZTo6RG9jdW1lbnRQYXJzZXI6OmV4ZWN1dGluZ1NjcmlwdCk6CisgICAgICAgIChXZWJDb3JlOjpE
b2N1bWVudFBhcnNlcjo6d2FudHNSYXdEYXRhKToKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50
UGFyc2VyOjp3cml0ZVJhd0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6
OmluVmlld1NvdXJjZU1vZGUpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6OnNl
dEluVmlld1NvdXJjZU1vZGUpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6Ondl
bGxGb3JtZWQpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6OmxpbmVOdW1iZXIp
OgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6OmNvbHVtbk51bWJlcik6CisgICAg
ICAgIChXZWJDb3JlOjpEb2N1bWVudFBhcnNlcjo6ZXhlY3V0ZVNjcmlwdHNXYWl0aW5nRm9yU3R5
bGVzaGVldHMpOgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6Omh0bWxQYXJzZXIp
OgorICAgICAgICAoV2ViQ29yZTo6RG9jdW1lbnRQYXJzZXI6OmFzSFRNTFRva2VuaXplcik6Cisg
ICAgICAgIChXZWJDb3JlOjpEb2N1bWVudFBhcnNlcjo6eHNzQXVkaXRvcik6CisgICAgICAgIChX
ZWJDb3JlOjpEb2N1bWVudFBhcnNlcjo6c2V0WFNTQXVkaXRvcik6CisgICAgICAgIChXZWJDb3Jl
OjpEb2N1bWVudFBhcnNlcjo6RG9jdW1lbnRQYXJzZXIpOgorICAgICAgICAqIGRvbS9Ub2tlbml6
ZXIuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBkb20vVmlld3BvcnRBcmd1bWVudHMuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6cmVwb3J0Vmlld3BvcnRXYXJuaW5nKToKKyAgICAgICAgKiBkb20vWE1M
VG9rZW5pemVyLmg6CisgICAgICAgICogZG9tL1hNTFRva2VuaXplckxpYnhtbDIuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6WE1MVG9rZW5pemVyOjpzdG9wUGFyc2luZyk6CisgICAgICAgICogZG9t
L1hNTFRva2VuaXplclF0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlhNTFRva2VuaXplcjo6c3Rv
cFBhcnNpbmcpOgorICAgICAgICAqIGh0bWwvSFRNTDVUb2tlbml6ZXIuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTDVUb2tlbml6ZXI6OkhUTUw1VG9rZW5pemVyKToKKyAgICAgICAgKiBodG1s
L0hUTUw1VG9rZW5pemVyLmg6CisgICAgICAgICogaHRtbC9IVE1MRG9jdW1lbnQuY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTERvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIpOgorICAgICAgICAq
IGh0bWwvSFRNTERvY3VtZW50Lmg6CisgICAgICAgICogaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVt
ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtQ29udHJvbEVsZW1lbnQ6OnJlbW92
ZWRGcm9tVHJlZSk6CisgICAgICAgICogaHRtbC9IVE1MVG9rZW5pemVyLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxUb2tlbml6ZXI6OkhUTUxUb2tlbml6ZXIpOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFRva2VuaXplcjo6c3RvcFBhcnNpbmcpOgorICAgICAgICAqIGh0bWwvSFRNTFRva2Vu
aXplci5oOgorICAgICAgICAqIGh0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpIVE1MVmlld1NvdXJjZURvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIpOgor
ICAgICAgICAqIGh0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oOgorICAgICAgICAqIGxvYWRl
ci9Eb2N1bWVudExvYWRlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpEb2N1bWVudExvYWRlcjo6
aXNMb2FkaW5nSW5BUElTZW5zZSk6CisgICAgICAgICogbG9hZGVyL0RvY3VtZW50V3JpdGVyLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkRvY3VtZW50V3JpdGVyOjphZGREYXRhKToKKyAgICAgICAg
KiBsb2FkZXIvRlRQRGlyZWN0b3J5RG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RlRQ
RGlyZWN0b3J5RG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcik6CisgICAgICAgICogbG9hZGVyL0ZU
UERpcmVjdG9yeURvY3VtZW50Lmg6CisgICAgICAgICogbG9hZGVyL0ltYWdlRG9jdW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SW1hZ2VEb2N1bWVudDo6Y3JlYXRlVG9rZW5pemVyKToKKyAg
ICAgICAgKiBsb2FkZXIvSW1hZ2VEb2N1bWVudC5oOgorICAgICAgICAqIGxvYWRlci9NZWRpYURv
Y3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhRG9jdW1lbnQ6OmNyZWF0ZVRva2Vu
aXplcik6CisgICAgICAgICogbG9hZGVyL01lZGlhRG9jdW1lbnQuaDoKKyAgICAgICAgKiBsb2Fk
ZXIvUGx1Z2luRG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2luRG9jdW1lbnQ6
OmNyZWF0ZVRva2VuaXplcik6CisgICAgICAgICogbG9hZGVyL1BsdWdpbkRvY3VtZW50Lmg6Cisg
ICAgICAgICogbG9hZGVyL1NpbmtEb2N1bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTaW5r
RG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcik6CisgICAgICAgICogbG9hZGVyL1NpbmtEb2N1bWVu
dC5oOgorICAgICAgICAqIGxvYWRlci9UZXh0RG9jdW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6VGV4dFRva2VuaXplcjo6VGV4dFRva2VuaXplcik6CisgICAgICAgIChXZWJDb3JlOjpUZXh0
RG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcik6CisgICAgICAgIChXZWJDb3JlOjpjcmVhdGVUZXh0
VG9rZW5pemVyKToKKyAgICAgICAgKiBsb2FkZXIvVGV4dERvY3VtZW50Lmg6CisgICAgICAgICog
d21sL1dNTERvY3VtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldNTERvY3VtZW50OjpmaW5p
c2hlZFBhcnNpbmcpOgorCiAyMDEwLTA2LTExICBKYW1lcyBSb2JpbnNvbiAgPGphbWVzckBjaHJv
bWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGltaXRyaSBHbGF6a292LgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5k
ZXggNmRmMGExZTI3YTVhMTkxMmViM2ZmNTE2Y2ExNGNmOGYyNTJiOThhOS4uNjE1ZjM0OTE5ZWUw
MWY3YTgwYjQ2ODM4MzgwODFhZDFhZTQzZGM0MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtl
ZmlsZS5hbQorKysgYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCkBAIC05MDMsNyArOTAzLDcgQEAg
d2ViY29yZV9zb3VyY2VzICs9IFwKIAlXZWJDb3JlL2RvbS9UZXh0LmggXAogCVdlYkNvcmUvZG9t
L1RleHRFdmVudC5jcHAgXAogCVdlYkNvcmUvZG9tL1RleHRFdmVudC5oIFwKLQlXZWJDb3JlL2Rv
bS9Ub2tlbml6ZXIuaCBcCisJV2ViQ29yZS9kb20vRG9jdW1lbnRQYXJzZXIuaCBcCiAJV2ViQ29y
ZS9kb20vVHJhdmVyc2FsLmNwcCBcCiAJV2ViQ29yZS9kb20vVHJhdmVyc2FsLmggXAogCVdlYkNv
cmUvZG9tL1RyZWVEZXB0aExpbWl0LmggXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5
cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCA3NzdjYzY4MDk5NWNlZjIxY2YyNGQ1YTk0
YWI1ODdiMWZhZDliZTlmLi5hY2M1YzA0NTE4NzQ5MTcyY2RlOWJlZWM3N2JkYzY4MzI4NzM5ZTMx
IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUu
Z3lwaQpAQCAtMTIzOSw3ICsxMjM5LDcgQEAKICAgICAgICAgICAgICdkb20vVG91Y2hFdmVudC5j
cHAnLAogICAgICAgICAgICAgJ2RvbS9Ub3VjaExpc3QuY3BwJywKICAgICAgICAgICAgICdkb20v
VG91Y2hMaXN0LmgnLAotICAgICAgICAgICAgJ2RvbS9Ub2tlbml6ZXIuaCcsCisgICAgICAgICAg
ICAnZG9tL0RvY3VtZW50UGFyc2VyLmgnLAogICAgICAgICAgICAgJ2RvbS9UcmFuc2Zvcm1Tb3Vy
Y2VMaWJ4c2x0LmNwcCcsCiAgICAgICAgICAgICAnZG9tL1RyYW5zZm9ybVNvdXJjZS5oJywKICAg
ICAgICAgICAgICdkb20vVHJhdmVyc2FsLmNwcCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNv
cmUudmNwcm9qL1dlYkNvcmUudmNwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJDb3Jl
LnZjcHJvagppbmRleCAwY2Y1MjQwNTZhZDdhZDc3MmE1YWIyNDBjNDFlYTEzOWZiOGFlNzhkLi4x
OTMzN2Q0ZDQ0MjcwNzQ5YjhjNGU2ZDBmYjU0ZTU2NDg5YmY0ZWVkIDEwMDY0NAotLS0gYS9XZWJD
b3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCisrKyBiL1dlYkNvcmUvV2ViQ29yZS52
Y3Byb2ovV2ViQ29yZS52Y3Byb2oKQEAgLTMwMTY5LDcgKzMwMTY5LDcgQEAKIAkJCQk+DQogCQkJ
PC9GaWxlPg0KIAkJCTxGaWxlDQotCQkJCVJlbGF0aXZlUGF0aD0iLi5cZG9tXFRva2VuaXplci5o
Ig0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGRvbVxEb2N1bWVudFBhcnNlci5oIg0KIAkJCQk+DQog
CQkJPC9GaWxlPg0KIAkJCTxGaWxlDQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCBkNzBkOTZhMzhiMGQ5NDM4MGNiZDI3MDRkY2IzMzRiODMxYzY1MTZmLi5j
MTVjMTFiOTJlOWQ2ODdlYjI4ZDhkNmEzM2YxMmY5ODcxMmFjZDQyIDEwMDY0NAotLS0gYS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtNDY3Myw3ICs0NjczLDcgQEAKIAkJQkND
RDc0REMwQTRDOEQzNTAwNUZEQTZEIC8qIEhUTUxWaWV3U291cmNlRG9jdW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQ0Q3NERCMEE0QzhEMzUw
MDVGREE2RCAvKiBIVE1MVmlld1NvdXJjZURvY3VtZW50LmggKi87IH07CiAJCUJDQ0Q3NEU1MEE0
QzhEREYwMDVGREE2RCAvKiBIVE1MVmlld1NvdXJjZURvY3VtZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDQ0Q3NEU0MEE0QzhEREYwMDVGREE2
RCAvKiBIVE1MVmlld1NvdXJjZURvY3VtZW50LmNwcCAqLzsgfTsKIAkJQkNDRTU4QUMxMDYxRThD
RjAwOEZCMzVBIC8qIEpTRGF0YWJhc2VDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNDRTU4QUIxMDYxRThDRjAwOEZCMzVBIC8qIEpTRGF0
YWJhc2VDdXN0b20uY3BwICovOyB9OwotCQlCQ0NGQkFFODBCNTE1MkVEMDAwMUYxRDcgLyogVG9r
ZW5pemVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBC
Q0NGQkFFNzBCNTE1MkVEMDAwMUYxRDcgLyogVG9rZW5pemVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJQkNDRkJBRTgwQjUxNTJFRDAwMDFGMUQ3
IC8qIERvY3VtZW50UGFyc2VyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSBCQ0NGQkFFNzBCNTE1MkVEMDAwMUYxRDcgLyogRG9jdW1lbnRQYXJzZXIuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQ0QwRTBG
QTBFOTcyQzM1MDAyNjVERUEgLyogU2VjdXJpdHlPcmlnaW4uY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkNEMEUwRjcwRTk3MkMzNTAwMjY1REVBIC8q
IFNlY3VyaXR5T3JpZ2luLmNwcCAqLzsgfTsKIAkJQkNEMEUwRkIwRTk3MkMzNTAwMjY1REVBIC8q
IFNlY3VyaXR5T3JpZ2luLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBCQ0QwRTBGODBFOTcyQzM1MDAyNjVERUEgLyogU2VjdXJpdHlPcmlnaW4uaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQ0QwRTBGQzBF
OTcyQzM1MDAyNjVERUEgLyogU2VjdXJpdHlPcmlnaW5IYXNoLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQ0QwRTBGOTBFOTcyQzM1MDAyNjVERUEgLyog
U2VjdXJpdHlPcmlnaW5IYXNoLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0
ZSwgKTsgfTsgfTsKQEAgLTEwMjEwLDcgKzEwMjEwLDcgQEAKIAkJQkNDRDc0REIwQTRDOEQzNTAw
NUZEQTZEIC8qIEhUTUxWaWV3U291cmNlRG9jdW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEhUTUxWaWV3U291cmNlRG9jdW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJQkNDRDc0RTQwQTRDOERERjAwNUZEQTZEIC8qIEhUTUxWaWV3U291cmNlRG9j
dW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhUTUxWaWV3
U291cmNlRG9jdW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQ0NFNThB
QjEwNjFFOENGMDA4RkIzNUEgLyogSlNEYXRhYmFzZUN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0RhdGFiYXNlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJQkNDRkJBRTcwQjUxNTJFRDAwMDFGMUQ3IC8qIFRva2VuaXplci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVG9rZW5pemVyLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUJDQ0ZCQUU3MEI1MTUyRUQwMDAxRjFENyAvKiBEb2N1bWVu
dFBhcnNlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMw
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRG9jdW1lbnRQYXJz
ZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkNEMEUwRjcwRTk3MkMzNTAwMjY1
REVBIC8qIFNlY3VyaXR5T3JpZ2luLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IFNlY3VyaXR5T3JpZ2luLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
QkNEMEUwRjgwRTk3MkMzNTAwMjY1REVBIC8qIFNlY3VyaXR5T3JpZ2luLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNlY3VyaXR5T3JpZ2luLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUJDRDBFMEY5MEU5NzJDMzUwMDI2NURFQSAvKiBTZWN1cml0eU9yaWdpbkhh
c2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2VjdXJpdHlPcmlnaW5IYXNo
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjgwMyw3ICsxNjgwMyw3IEBACiAJ
CQkJOTMzQTE0MkIwQjdEMTg4NjAwQTUzRkZEIC8qIFRleHRFdmVudC5jcHAgKi8sCiAJCQkJOTMz
QTE0MkQwQjdEMTg4NjAwQTUzRkZEIC8qIFRleHRFdmVudC5oICovLAogCQkJCTkzM0ExNDJDMEI3
RDE4ODYwMEE1M0ZGRCAvKiBUZXh0RXZlbnQuaWRsICovLAotCQkJCUJDQ0ZCQUU3MEI1MTUyRUQw
MDAxRjFENyAvKiBUb2tlbml6ZXIuaCAqLywKKwkJCQlCQ0NGQkFFNzBCNTE1MkVEMDAwMUYxRDcg
LyogRG9jdW1lbnRQYXJzZXIuaCAqLywKIAkJCQk1REIxQkM2ODEwNzE1QTY0MDBFRkFBNDkgLyog
VHJhbnNmb3JtU291cmNlLmggKi8sCiAJCQkJNURCMUJDNjkxMDcxNUE2NDAwRUZBQTQ5IC8qIFRy
YW5zZm9ybVNvdXJjZUxpYnhzbHQuY3BwICovLAogCQkJCTg1NEZFNzJDMEEyMjk3QkUwMDU4RDdB
RCAvKiBUcmF2ZXJzYWwuY3BwICovLApAQCAtMTkzMDgsNyArMTkzMDgsNyBAQAogCQkJCTkzMDVC
MjREMDk4RjFCNkIwMEMyODg1NSAvKiBUaW1lci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ0NjEz
QjAwQ0Q2MzMxMDAwRkFEQTc1IC8qIFRpbWVSYW5nZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5
RTkxMkFFMEVGQUM5MDYwMDlEMENBRiAvKiBUaW1pbmdGdW5jdGlvbi5oIGluIEhlYWRlcnMgKi8s
Ci0JCQkJQkNDRkJBRTgwQjUxNTJFRDAwMDFGMUQ3IC8qIFRva2VuaXplci5oIGluIEhlYWRlcnMg
Ki8sCisJCQkJQkNDRkJBRTgwQjUxNTJFRDAwMDFGMUQ3IC8qIERvY3VtZW50UGFyc2VyLmggaW4g
SGVhZGVycyAqLywKIAkJCQk0OUU5MTFDNDBFRjg2RDQ3MDA5RDBDQUYgLyogVHJhbnNmb3JtYXRp
b25NYXRyaXguaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5RTkxMUNFMEVGODZENDcwMDlEMENBRiAv
KiBUcmFuc2Zvcm1PcGVyYXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTQ5RTkxMUQwMEVGODZE
NDcwMDlEMENBRiAvKiBUcmFuc2Zvcm1PcGVyYXRpb25zLmggaW4gSGVhZGVycyAqLywKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvanMvSlNIVE1MRG9jdW1lbnRDdXN0b20uY3BwIGIvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU0hUTUxEb2N1bWVudEN1c3RvbS5jcHAKaW5kZXggNGU0MTZmYWM2
NjY2MThmMGQ2ZTU4ZDZkYzY4ZGU1NGMwZjliMGU1Ny4uYTBlMTg5ZTJiYzk1NTVmODU0Y2Q0YTQy
MGFjNzQwNzVhOThkYmIxNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxE
b2N1bWVudEN1c3RvbS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0hUTUxEb2N1bWVu
dEN1c3RvbS5jcHAKQEAgLTQwLDcgKzQwLDcgQEAKICNpbmNsdWRlICJKU0RPTVdpbmRvd1NoZWxs
LmgiCiAjaW5jbHVkZSAiSlNIVE1MQ29sbGVjdGlvbi5oIgogI2luY2x1ZGUgIlNlZ21lbnRlZFN0
cmluZy5oIgotI2luY2x1ZGUgIlRva2VuaXplci5oIgorI2luY2x1ZGUgIkRvY3VtZW50UGFyc2Vy
LmgiCiAjaW5jbHVkZSA8cnVudGltZS9FcnJvci5oPgogI2luY2x1ZGUgPHJ1bnRpbWUvSlNDZWxs
Lmg+CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvU2NyaXB0RXZlbnRMaXN0ZW5l
ci5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1NjcmlwdEV2ZW50TGlzdGVuZXIuY3BwCmluZGV4
IGNhZDdhMWM2NWI4OWVjNzVmYjlhNzRjMWM1ODQyNTQ1NjM2ZTc1MzYuLmNmMjEwNDUwYzk3OWRk
Mzk0ZjIzZTVmMTA3N2E0YzljNzIwYzk1ZmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mv
djgvU2NyaXB0RXZlbnRMaXN0ZW5lci5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9TY3Jp
cHRFdmVudExpc3RlbmVyLmNwcApAQCAtMzYsNyArMzYsNyBAQAogI2luY2x1ZGUgIkV2ZW50TGlz
dGVuZXIuaCIKICNpbmNsdWRlICJGcmFtZS5oIgogI2luY2x1ZGUgIlNjcmlwdFNjb3BlLmgiCi0j
aW5jbHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNs
dWRlICJWOEFic3RyYWN0RXZlbnRMaXN0ZW5lci5oIgogI2luY2x1ZGUgIlY4QmluZGluZy5oIgog
I2luY2x1ZGUgIlhTU0F1ZGl0b3IuaCIKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL0RvY3VtZW50
LmNwcCBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmNwcAppbmRleCAxZjlhM2Y3ZWYyYmJlYjc3ZWUx
MGZkYWRmNDhjNDBhMjJiZmI4YjZhLi5iNWQ2MzM4ODhjNTU3YmU1YjM4ZWI3MzQ2ZTA0N2RlZGQ3
N2JjNDQxIDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Eb2N1bWVudC5jcHAKKysrIGIvV2ViQ29y
ZS9kb20vRG9jdW1lbnQuY3BwCkBAIC0xNjYxLDcgKzE2NjEsNyBAQCB2b2lkIERvY3VtZW50Ojpz
ZXRWaXN1YWxseU9yZGVyZWQoKQogICAgICAgICByZW5kZXJlcigpLT5zdHlsZSgpLT5zZXRWaXN1
YWxseU9yZGVyZWQodHJ1ZSk7CiB9CiAKLVRva2VuaXplciogRG9jdW1lbnQ6OmNyZWF0ZVRva2Vu
aXplcigpCitEb2N1bWVudFBhcnNlciogRG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcigpCiB7CiAg
ICAgLy8gRklYTUU6IHRoaXMgc2hvdWxkIHByb2JhYmx5IHBhc3MgdGhlIGZyYW1lIGluc3RlYWQK
ICAgICByZXR1cm4gbmV3IFhNTFRva2VuaXplcih0aGlzLCB2aWV3KCkpOwpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9kb20vRG9jdW1lbnQuaCBiL1dlYkNvcmUvZG9tL0RvY3VtZW50LmgKaW5kZXggNTA5
MzEwMGVhN2JhZGI1YjA4NWJiYjJlYWY2NzFlNjAyMTU3YzQ0NC4uMTMzNTY2OTM2Mzc5ZjI3YzU0
MjVjZGY2NjQ2N2U2ZmYwNmQzMWE3NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vRG9jdW1lbnQu
aAorKysgYi9XZWJDb3JlL2RvbS9Eb2N1bWVudC5oCkBAIC0xMDgsNyArMTA4LDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFN0eWxlU2hlZXRMaXN0OwogICAgIGNsYXNzIFRleHQ7
CiAgICAgY2xhc3MgVGV4dFJlc291cmNlRGVjb2RlcjsKLSAgICBjbGFzcyBUb2tlbml6ZXI7Cisg
ICAgY2xhc3MgRG9jdW1lbnRQYXJzZXI7CiAgICAgY2xhc3MgVHJlZVdhbGtlcjsKICAgICBjbGFz
cyBYTUxIdHRwUmVxdWVzdDsKIApAQCAtNTM1LDggKzUzNSw4IEBAIHB1YmxpYzoKICAgICBDU1NT
dHlsZVNoZWV0KiBlbGVtZW50U2hlZXQoKTsKICAgICBDU1NTdHlsZVNoZWV0KiBtYXBwZWRFbGVt
ZW50U2hlZXQoKTsKICAgICAKLSAgICB2aXJ0dWFsIFRva2VuaXplciogY3JlYXRlVG9rZW5pemVy
KCk7Ci0gICAgVG9rZW5pemVyKiB0b2tlbml6ZXIoKSB7IHJldHVybiBtX3Rva2VuaXplci5nZXQo
KTsgfQorICAgIHZpcnR1YWwgRG9jdW1lbnRQYXJzZXIqIGNyZWF0ZVRva2VuaXplcigpOworICAg
IERvY3VtZW50UGFyc2VyKiB0b2tlbml6ZXIoKSB7IHJldHVybiBtX3Rva2VuaXplci5nZXQoKTsg
fQogICAgIAogICAgIGJvb2wgcHJpbnRpbmcoKSBjb25zdCB7IHJldHVybiBtX3ByaW50aW5nOyB9
CiAgICAgdm9pZCBzZXRQcmludGluZyhib29sIHApIHsgbV9wcmludGluZyA9IHA7IH0KQEAgLTEw
MzAsNyArMTAzMCw3IEBAIHByaXZhdGU6CiAKICAgICBGcmFtZSogbV9mcmFtZTsKICAgICBPd25Q
dHI8RG9jTG9hZGVyPiBtX2RvY0xvYWRlcjsKLSAgICBPd25QdHI8VG9rZW5pemVyPiBtX3Rva2Vu
aXplcjsKKyAgICBPd25QdHI8RG9jdW1lbnRQYXJzZXI+IG1fdG9rZW5pemVyOwogICAgIGJvb2wg
bV93ZWxsRm9ybWVkOwogCiAgICAgLy8gRG9jdW1lbnQgVVJMcy4KZGlmZiAtLWdpdCBhL1dlYkNv
cmUvZG9tL1Rva2VuaXplci5oIGIvV2ViQ29yZS9kb20vRG9jdW1lbnRQYXJzZXIuaApzaW1pbGFy
aXR5IGluZGV4IDg1JQpyZW5hbWUgZnJvbSBXZWJDb3JlL2RvbS9Ub2tlbml6ZXIuaApyZW5hbWUg
dG8gV2ViQ29yZS9kb20vRG9jdW1lbnRQYXJzZXIuaAppbmRleCBjZWFlN2RlYzlmNzgxZjY5M2Ey
OTgzNGNiYmY5NGM1ZGVkY2QxYzMxLi5lNmRjYTFmYzdiNzM0NmQxNDE5MGNjZjcyYjZhN2FjM2Rk
NDhhZGZhIDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9Ub2tlbml6ZXIuaAorKysgYi9XZWJDb3Jl
L2RvbS9Eb2N1bWVudFBhcnNlci5oCkBAIC0yMCw4ICsyMCw4IEBACiAgKgogICovCiAKLSNpZm5k
ZWYgVG9rZW5pemVyX2gKLSNkZWZpbmUgVG9rZW5pemVyX2gKKyNpZm5kZWYgRG9jdW1lbnRQYXJz
ZXJfaAorI2RlZmluZSBEb2N1bWVudFBhcnNlcl9oCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApA
QCAtMzAsMTIgKzMwLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIGNsYXNzIFNlZ21lbnRl
ZFN0cmluZzsKICAgICBjbGFzcyBYU1NBdWRpdG9yOwogCi0gICAgLy8gRklYTUU6IFRoaXMgY2xh
c3Mgc2hvdWxkIHJlbmFtZWQgRG9jdW1lbnRQYXJzZXIgb3Igc2ltaWxhciB0byBleHByZXNzCi0g
ICAgLy8gdGhhdCBpdCBkb2VzIG1vcmUgdGhhbiB0b2tlbml6aW5nLiAgSXQgbWFuYWdlcyB0aGUg
bGlmZXRpbWUgb2Ygb2YgdGhlCi0gICAgLy8gcGFyc2VyIGFzIHdlbGwgYXMgaGFuZGxlcyB2YXJp
b3VzIHRhZy1oYW5kbGluZyBoYWNrcyBmb3IgSFRNTC9YTUwuCi0gICAgY2xhc3MgVG9rZW5pemVy
IDogcHVibGljIE5vbmNvcHlhYmxlIHsKKyAgICBjbGFzcyBEb2N1bWVudFBhcnNlciA6IHB1Ymxp
YyBOb25jb3B5YWJsZSB7CiAgICAgcHVibGljOgotICAgICAgICB2aXJ0dWFsIH5Ub2tlbml6ZXIo
KSB7IH0KKyAgICAgICAgdmlydHVhbCB+RG9jdW1lbnRQYXJzZXIoKSB7IH0KIAogICAgICAgICAv
LyBTY3JpcHQgb3V0cHV0IG11c3QgYmUgcHJlcGVuZGVkLCB3aGlsZSBuZXcgZGF0YQogICAgICAg
ICAvLyByZWNlaXZlZCBkdXJpbmcgZXhlY3V0aW5nIGEgc2NyaXB0IG11c3QgYmUgYXBwZW5kZWQs
IGhlbmNlIHRoZQpAQCAtNTgsMTcgKzU1LDE3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAg
ICAgICB2aXJ0dWFsIGludCBsaW5lTnVtYmVyKCkgY29uc3QgeyByZXR1cm4gLTE7IH0KICAgICAg
ICAgdmlydHVhbCBpbnQgY29sdW1uTnVtYmVyKCkgY29uc3QgeyByZXR1cm4gLTE7IH0KLSAgICAg
ICAgCisKICAgICAgICAgdmlydHVhbCB2b2lkIGV4ZWN1dGVTY3JpcHRzV2FpdGluZ0ZvclN0eWxl
c2hlZXRzKCkge30KIAogICAgICAgICB2aXJ0dWFsIEhUTUxQYXJzZXIqIGh0bWxQYXJzZXIoKSBj
b25zdCB7IHJldHVybiAwOyB9CiAgICAgICAgIHZpcnR1YWwgSFRNTFRva2VuaXplciogYXNIVE1M
VG9rZW5pemVyKCkgeyByZXR1cm4gMDsgfQotICAgICAgICAKKwogICAgICAgICBYU1NBdWRpdG9y
KiB4c3NBdWRpdG9yKCkgY29uc3QgeyByZXR1cm4gbV9YU1NBdWRpdG9yOyB9CiAgICAgICAgIHZv
aWQgc2V0WFNTQXVkaXRvcihYU1NBdWRpdG9yKiBhdWRpdG9yKSB7IG1fWFNTQXVkaXRvciA9IGF1
ZGl0b3I7IH0KIAogICAgIHByb3RlY3RlZDoKLSAgICAgICAgVG9rZW5pemVyKGJvb2wgdmlld1Nv
dXJjZU1vZGUgPSBmYWxzZSkgCisgICAgICAgIERvY3VtZW50UGFyc2VyKGJvb2wgdmlld1NvdXJj
ZU1vZGUgPSBmYWxzZSkKICAgICAgICAgICAgIDogbV9wYXJzZXJTdG9wcGVkKGZhbHNlKQogICAg
ICAgICAgICAgLCBtX2luVmlld1NvdXJjZU1vZGUodmlld1NvdXJjZU1vZGUpCiAgICAgICAgICAg
ICAsIG1fWFNTQXVkaXRvcigwKQpAQCAtODAsMTEgKzc3LDExIEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKICAgICAgICAgLy8gZXZlbiB3aGVuIGl0IGhhcyBidWZmZXJlZCBkYXRhLgogICAgICAgICBi
b29sIG1fcGFyc2VyU3RvcHBlZDsKICAgICAgICAgYm9vbCBtX2luVmlld1NvdXJjZU1vZGU7Ci0g
ICAgICAgIAotICAgICAgICAvLyBUaGUgWFNTQXVkaXRvciBhc3NvY2lhdGVkIHdpdGggdGhpcyB0
b2tlbml6ZXIuCisKKyAgICAgICAgLy8gVGhlIFhTU0F1ZGl0b3IgYXNzb2NpYXRlZCB3aXRoIHRo
aXMgZG9jdW1lbnQgcGFyc2VyLgogICAgICAgICBYU1NBdWRpdG9yKiBtX1hTU0F1ZGl0b3I7CiAg
ICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQogCi0jZW5kaWYgLy8gVG9rZW5pemVyX2gK
KyNlbmRpZiAvLyBEb2N1bWVudFBhcnNlcl9oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9WaWV3
cG9ydEFyZ3VtZW50cy5jcHAgYi9XZWJDb3JlL2RvbS9WaWV3cG9ydEFyZ3VtZW50cy5jcHAKaW5k
ZXggZDU4NTg5NmE3MzM1NmU1NzQyMDRiN2QzNzU4MWQ0ZDBlYzdiYTA2NS4uMzM2NDY5NzUzYjFk
Mzc0N2IxNjY0YWY4OTc3NGFkMzM0NmNkYWIwYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vVmll
d3BvcnRBcmd1bWVudHMuY3BwCisrKyBiL1dlYkNvcmUvZG9tL1ZpZXdwb3J0QXJndW1lbnRzLmNw
cApAQCAtMzMsNyArMzMsNyBAQAogI2luY2x1ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiUGFnZS5o
IgogI2luY2x1ZGUgIlBsYXRmb3JtU3RyaW5nLmgiCi0jaW5jbHVkZSAiVG9rZW5pemVyLmgiCisj
aW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0x
MDUsNyArMTA1LDcgQEAgc3RhdGljIE1lc3NhZ2VMZXZlbCB2aWV3cG9ydEVycm9yTWVzc2FnZUxl
dmVsKFZpZXdwb3J0RXJyb3JDb2RlIGVycm9yQ29kZSkKIAogdm9pZCByZXBvcnRWaWV3cG9ydFdh
cm5pbmcoRG9jdW1lbnQqIGRvY3VtZW50LCBWaWV3cG9ydEVycm9yQ29kZSBlcnJvckNvZGUsIGNv
bnN0IFN0cmluZyYgcmVwbGFjZW1lbnQpCiB7Ci0gICAgVG9rZW5pemVyKiB0b2tlbml6ZXIgPSBk
b2N1bWVudC0+dG9rZW5pemVyKCk7CisgICAgRG9jdW1lbnRQYXJzZXIqIHRva2VuaXplciA9IGRv
Y3VtZW50LT50b2tlbml6ZXIoKTsKIAogICAgIEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50LT5mcmFt
ZSgpOwogICAgIGlmICghZnJhbWUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9YTUxUb2tlbml6
ZXIuaCBiL1dlYkNvcmUvZG9tL1hNTFRva2VuaXplci5oCmluZGV4IGRkZjdlNmY1NzQ0MWVmY2I2
ZjljZmRlZDViMTM4ZDVmYjE2NDg4MWMuLjk0ODg1YzEzMDdjZWRlYTBjYjY5YmY1OGIzMGVlMTMx
YzQ4ODcwMDEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL1hNTFRva2VuaXplci5oCisrKyBiL1dl
YkNvcmUvZG9tL1hNTFRva2VuaXplci5oCkBAIC0zMCw3ICszMCw3IEBACiAjaW5jbHVkZSAiTWFw
cGVkQXR0cmlidXRlRW50cnkuaCIKICNpbmNsdWRlICJTZWdtZW50ZWRTdHJpbmcuaCIKICNpbmNs
dWRlICJTdHJpbmdIYXNoLmgiCi0jaW5jbHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9j
dW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlIDx3dGYvSGFzaE1hcC5oPgogI2luY2x1ZGUgPHd0Zi9P
d25QdHIuaD4KIApAQCAtNzAsNyArNzAsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgfTsK
ICNlbmRpZgogCi0gICAgY2xhc3MgWE1MVG9rZW5pemVyIDogcHVibGljIFRva2VuaXplciwgcHVi
bGljIENhY2hlZFJlc291cmNlQ2xpZW50IHsKKyAgICBjbGFzcyBYTUxUb2tlbml6ZXIgOiBwdWJs
aWMgRG9jdW1lbnRQYXJzZXIsIHB1YmxpYyBDYWNoZWRSZXNvdXJjZUNsaWVudCB7CiAgICAgcHVi
bGljOgogICAgICAgICBYTUxUb2tlbml6ZXIoRG9jdW1lbnQqLCBGcmFtZVZpZXcqID0gMCk7CiAg
ICAgICAgIFhNTFRva2VuaXplcihEb2N1bWVudEZyYWdtZW50KiwgRWxlbWVudCosIEZyYWdtZW50
U2NyaXB0aW5nUGVybWlzc2lvbik7CkBAIC03OCw3ICs3OCw3IEBAIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAogICAgICAgICBlbnVtIEVycm9yVHlwZSB7IHdhcm5pbmcsIG5vbkZhdGFsLCBmYXRhbCB9
OwogCi0gICAgICAgIC8vIGZyb20gVG9rZW5pemVyCisgICAgICAgIC8vIGZyb20gRG9jdW1lbnRQ
YXJzZXIKICAgICAgICAgdmlydHVhbCB2b2lkIHdyaXRlKGNvbnN0IFNlZ21lbnRlZFN0cmluZyYs
IGJvb2wgYXBwZW5kRGF0YSk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBmaW5pc2goKTsKICAgICAg
ICAgdmlydHVhbCBib29sIGlzV2FpdGluZ0ZvclNjcmlwdHMoKSBjb25zdDsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvZG9tL1hNTFRva2VuaXplckxpYnhtbDIuY3BwIGIvV2ViQ29yZS9kb20vWE1MVG9r
ZW5pemVyTGlieG1sMi5jcHAKaW5kZXggNjkzNjkwZjlhMjI2OGZhNzNhMWNlZmJiMGZmNTg1M2Y1
ZWRiZDY3OC4uMTdlYjQ2YzZmZjlkODRlM2JmN2EyYTczMDNkMzUwN2QwZDIzZDhjOSAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHAKKysrIGIvV2ViQ29yZS9k
b20vWE1MVG9rZW5pemVyTGlieG1sMi5jcHAKQEAgLTEzNTIsNyArMTM1Miw3IEBAIGludCBYTUxU
b2tlbml6ZXI6OmNvbHVtbk51bWJlcigpIGNvbnN0CiAKIHZvaWQgWE1MVG9rZW5pemVyOjpzdG9w
UGFyc2luZygpCiB7Ci0gICAgVG9rZW5pemVyOjpzdG9wUGFyc2luZygpOworICAgIERvY3VtZW50
UGFyc2VyOjpzdG9wUGFyc2luZygpOwogICAgIGlmIChjb250ZXh0KCkpCiAgICAgICAgIHhtbFN0
b3BQYXJzZXIoY29udGV4dCgpKTsKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL1hNTFRva2Vu
aXplclF0LmNwcCBiL1dlYkNvcmUvZG9tL1hNTFRva2VuaXplclF0LmNwcAppbmRleCAyZjc2YjI4
MjUyZGM1YTU5NDRlNWQ1NTdjNTU1NTZmYTY0MjQwYTdlLi41OGM0YjQ0NWU2NzE4MWYxZjNkMzgz
NTkzN2VlOGNkZWU1ODZhMzQ1IDEwMDY0NAotLS0gYS9XZWJDb3JlL2RvbS9YTUxUb2tlbml6ZXJR
dC5jcHAKKysrIGIvV2ViQ29yZS9kb20vWE1MVG9rZW5pemVyUXQuY3BwCkBAIC0yMzIsNyArMjMy
LDcgQEAgaW50IFhNTFRva2VuaXplcjo6Y29sdW1uTnVtYmVyKCkgY29uc3QKIAogdm9pZCBYTUxU
b2tlbml6ZXI6OnN0b3BQYXJzaW5nKCkKIHsKLSAgICBUb2tlbml6ZXI6OnN0b3BQYXJzaW5nKCk7
CisgICAgRG9jdW1lbnRQYXJzZXI6OnN0b3BQYXJzaW5nKCk7CiB9CiAKIHZvaWQgWE1MVG9rZW5p
emVyOjpyZXN1bWVQYXJzaW5nKCkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MNVRva2Vu
aXplci5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTDVUb2tlbml6ZXIuY3BwCmluZGV4IGUzOWFhMjYw
Y2VkNzhlZjgyZWY3MDhiNTE1NDg2ZmU5ZWVhMjZiNTQuLmFiZWYxODU1ODM1MzdhYWYwMzRmZDYx
OWI1YzNkZTQwYjI4MTdiZjMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MNVRva2VuaXpl
ci5jcHAKKysrIGIvV2ViQ29yZS9odG1sL0hUTUw1VG9rZW5pemVyLmNwcApAQCAtNjAsNyArNjAs
NyBAQCBwcml2YXRlOgogfSAvLyBuYW1lc3BhY2UKIAogSFRNTDVUb2tlbml6ZXI6OkhUTUw1VG9r
ZW5pemVyKEhUTUxEb2N1bWVudCogZG9jdW1lbnQsIGJvb2wgcmVwb3J0RXJyb3JzKQotICAgIDog
VG9rZW5pemVyKCkKKyAgICA6IERvY3VtZW50UGFyc2VyKCkKICAgICAsIG1fZG9jdW1lbnQoZG9j
dW1lbnQpCiAgICAgLCBtX2xleGVyKG5ldyBIVE1MNUxleGVyKQogICAgICwgbV9zY3JpcHRSdW5u
ZXIobmV3IEhUTUw1U2NyaXB0UnVubmVyKGRvY3VtZW50LCB0aGlzKSkKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvaHRtbC9IVE1MNVRva2VuaXplci5oIGIvV2ViQ29yZS9odG1sL0hUTUw1VG9rZW5pemVy
LmgKaW5kZXggZDE5MjQ3MjliNTRhMDVlYzRiMDIyZDYzZTJiNjM1ZGE4OWY4Yjk2Yy4uMmNjOTQ5
MzQ2YmQ0NjNmNGUyMmI5ZDdmZDg4NWQxN2NkYjRhNDQ2MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9o
dG1sL0hUTUw1VG9rZW5pemVyLmgKKysrIGIvV2ViQ29yZS9odG1sL0hUTUw1VG9rZW5pemVyLmgK
QEAgLTMwLDcgKzMwLDcgQEAKICNpbmNsdWRlICJIVE1MNVNjcmlwdFJ1bm5lckhvc3QuaCIKICNp
bmNsdWRlICJIVE1MNVRva2VuLmgiCiAjaW5jbHVkZSAiU2VnbWVudGVkU3RyaW5nLmgiCi0jaW5j
bHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIKICNpbmNsdWRl
IDx3dGYvT3duUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKQEAgLTQzLDE1ICs0MywxMiBA
QCBjbGFzcyBIVE1MNVRyZWVCdWlsZGVyOwogY2xhc3MgU2NyaXB0Q29udHJvbGxlcjsKIGNsYXNz
IFNjcmlwdFNvdXJjZUNvZGU7CiAKLS8vIEZJWE1FOiBUaGUgd2hvbGUgVG9rZW5pemVyIGNsYXNz
IHN5c3RlbSBzaG91bGQgYmUgcmVuYW1lZCAiUGFyc2VyIgotLy8gb3IgIlBhcnNlckNvbnRyb2xs
ZXIiIGFzIHRoZSBqb2Igb2YgdGhpcyBjbGFzcyBpcyB0byBkcml2ZSBwYXJzaW5nIHByb2Nlc3MK
LS8vIGJ1dCBpdCBkb2VzIG5vdCBpdHNlbGYgVG9rZW5pemUuCi1jbGFzcyBIVE1MNVRva2VuaXpl
ciA6ICBwdWJsaWMgVG9rZW5pemVyLCBIVE1MNVNjcmlwdFJ1bm5lckhvc3QsIENhY2hlZFJlc291
cmNlQ2xpZW50IHsKK2NsYXNzIEhUTUw1VG9rZW5pemVyIDogIHB1YmxpYyBEb2N1bWVudFBhcnNl
ciwgSFRNTDVTY3JpcHRSdW5uZXJIb3N0LCBDYWNoZWRSZXNvdXJjZUNsaWVudCB7CiBwdWJsaWM6
CiAgICAgSFRNTDVUb2tlbml6ZXIoSFRNTERvY3VtZW50KiwgYm9vbCByZXBvcnRFcnJvcnMpOwog
ICAgIHZpcnR1YWwgfkhUTUw1VG9rZW5pemVyKCk7CiAKLSAgICAvLyBUb2tlbml6ZXIKKyAgICAv
LyBEb2N1bWVudFBhcnNlcgogICAgIHZpcnR1YWwgdm9pZCBiZWdpbigpOwogICAgIHZpcnR1YWwg
dm9pZCB3cml0ZShjb25zdCBTZWdtZW50ZWRTdHJpbmcmLCBib29sIGFwcGVuZERhdGEpOwogICAg
IHZpcnR1YWwgdm9pZCBlbmQoKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MRG9jdW1l
bnQuY3BwIGIvV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5jcHAKaW5kZXggMmYyMzJmYTc3NmE1
ODRjZDllZTZjNWJhODdkY2E1MjBjNzY4NzI1NC4uMDQzMWE4MzhiZGU2Y2Q1N2NhN2M4MTdkZjAz
ZGNiYzFjMTJkMWU4ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5jcHAK
KysrIGIvV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5jcHAKQEAgLTI4Myw3ICsyODMsNyBAQCB2
b2lkIEhUTUxEb2N1bWVudDo6cmVsZWFzZUV2ZW50cygpCiB7CiB9CiAKLVRva2VuaXplciogSFRN
TERvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIoKQorRG9jdW1lbnRQYXJzZXIqIEhUTUxEb2N1bWVu
dDo6Y3JlYXRlVG9rZW5pemVyKCkKIHsKICAgICBib29sIHJlcG9ydEVycm9ycyA9IGZhbHNlOwog
I2lmIEVOQUJMRShJTlNQRUNUT1IpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTERvY3Vt
ZW50LmggYi9XZWJDb3JlL2h0bWwvSFRNTERvY3VtZW50LmgKaW5kZXggN2ZmYTQwMjZjYTgxZGQ3
MmVhNzQ3ZjFjM2Y4ZmNlZjdmMDJkOWI0NS4uMGUyNzRlNTZiYjIwYWQ0ZmNhNTBiMmJkMjQyNTgw
M2JhMTMzMWQ5MCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxEb2N1bWVudC5oCisrKyBi
L1dlYkNvcmUvaHRtbC9IVE1MRG9jdW1lbnQuaApAQCAtODgsNyArODgsNyBAQCBwcml2YXRlOgog
ICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxFbGVtZW50PiBjcmVhdGVFbGVtZW50KGNvbnN0IEF0b21p
Y1N0cmluZyYgdGFnTmFtZSwgRXhjZXB0aW9uQ29kZSYpOwogCiAgICAgdmlydHVhbCBib29sIGlz
RnJhbWVTZXQoKSBjb25zdDsKLSAgICB2aXJ0dWFsIFRva2VuaXplciogY3JlYXRlVG9rZW5pemVy
KCk7CisgICAgdmlydHVhbCBEb2N1bWVudFBhcnNlciogY3JlYXRlVG9rZW5pemVyKCk7CiAgICAg
dmlydHVhbCB2b2lkIGRldGVybWluZVBhcnNlTW9kZSgpOwogCiAgICAgdm9pZCBhZGRJdGVtVG9N
YXAoSGFzaENvdW50ZWRTZXQ8QXRvbWljU3RyaW5nSW1wbCo+JiwgY29uc3QgQXRvbWljU3RyaW5n
Jik7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAg
Yi9XZWJDb3JlL2h0bWwvSFRNTEZvcm1Db250cm9sRWxlbWVudC5jcHAKaW5kZXggMGY0MmVjMDY0
NzE3OTM4MjMzMGI0OTFkZTc1ZWQ4ZjFiOTVkNmIxOC4uMTlmM2UwYTNkNzhmOTNjNzhkNjJmYzI3
ODEwNDIyNTI3N2RjNTk2OSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxGb3JtQ29udHJv
bEVsZW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MRm9ybUNvbnRyb2xFbGVtZW50LmNw
cApAQCAtMTc5LDcgKzE3OSw3IEBAIHZvaWQgSFRNTEZvcm1Db250cm9sRWxlbWVudDo6cmVtb3Zl
ZEZyb21UcmVlKGJvb2wgZGVlcCkKICAgICAvLyBJZiB0aGUgZm9ybSBhbmQgZWxlbWVudCBhcmUg
Ym90aCBpbiB0aGUgc2FtZSB0cmVlLCBwcmVzZXJ2ZSB0aGUgY29ubmVjdGlvbiB0byB0aGUgZm9y
bS4KICAgICAvLyBPdGhlcndpc2UsIG51bGwgb3V0IG91ciBmb3JtIGFuZCByZW1vdmUgb3Vyc2Vs
dmVzIGZyb20gdGhlIGZvcm0ncyBsaXN0IG9mIGVsZW1lbnRzLgogICAgIEhUTUxQYXJzZXIqIHBh
cnNlciA9IDA7Ci0gICAgaWYgKFRva2VuaXplciogdG9rZW5pemVyID0gZG9jdW1lbnQoKS0+dG9r
ZW5pemVyKCkpCisgICAgaWYgKERvY3VtZW50UGFyc2VyKiB0b2tlbml6ZXIgPSBkb2N1bWVudCgp
LT50b2tlbml6ZXIoKSkKICAgICAgICAgcGFyc2VyID0gdG9rZW5pemVyLT5odG1sUGFyc2VyKCk7
CiAKICAgICBpZiAobV9mb3JtICYmICEocGFyc2VyICYmIHBhcnNlci0+aXNIYW5kbGluZ1Jlc2lk
dWFsU3R5bGVBY3Jvc3NCbG9ja3MoKSkgJiYgZmluZFJvb3QodGhpcykgIT0gZmluZFJvb3QobV9m
b3JtKSkgewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxUb2tlbml6ZXIuY3BwIGIvV2Vi
Q29yZS9odG1sL0hUTUxUb2tlbml6ZXIuY3BwCmluZGV4IGI2YjM4YThjNTZiMmZjMjY4MzMyYjdl
ZDI3ODU4NzIyYjJkYmQwYWIuLjRjNTFkMzU4ZmU1ZGZjODMwMThmOTEzYWZmYzRkNWI0NGY2MTU2
MGQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmNwcAorKysgYi9XZWJD
b3JlL2h0bWwvSFRNTFRva2VuaXplci5jcHAKQEAgLTE0OCw3ICsxNDgsNyBAQCBpbmxpbmUgdm9p
ZCBUb2tlbjo6YWRkQXR0cmlidXRlKEF0b21pY1N0cmluZyYgYXR0ck5hbWUsIGNvbnN0IEF0b21p
Y1N0cmluZyYgYXR0cgogLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogCiBIVE1MVG9rZW5pemVyOjpI
VE1MVG9rZW5pemVyKEhUTUxEb2N1bWVudCogZG9jLCBib29sIHJlcG9ydEVycm9ycykKLSAgICA6
IFRva2VuaXplcigpCisgICAgOiBEb2N1bWVudFBhcnNlcigpCiAgICAgLCBtX2J1ZmZlcigwKQog
ICAgICwgbV9zY3JpcHRDb2RlKDApCiAgICAgLCBtX3NjcmlwdENvZGVTaXplKDApCkBAIC0xNjks
NyArMTY5LDcgQEAgSFRNTFRva2VuaXplcjo6SFRNTFRva2VuaXplcihIVE1MRG9jdW1lbnQqIGRv
YywgYm9vbCByZXBvcnRFcnJvcnMpCiB9CiAKIEhUTUxUb2tlbml6ZXI6OkhUTUxUb2tlbml6ZXIo
SFRNTFZpZXdTb3VyY2VEb2N1bWVudCogZG9jKQotICAgIDogVG9rZW5pemVyKHRydWUpCisgICAg
OiBEb2N1bWVudFBhcnNlcih0cnVlKQogICAgICwgbV9idWZmZXIoMCkKICAgICAsIG1fc2NyaXB0
Q29kZSgwKQogICAgICwgbV9zY3JpcHRDb2RlU2l6ZSgwKQpAQCAtMTc5NywxMCArMTc5NywxMCBA
QCB2b2lkIEhUTUxUb2tlbml6ZXI6OndyaXRlKGNvbnN0IFNlZ21lbnRlZFN0cmluZyYgc3RyLCBi
b29sIGFwcGVuZERhdGEpCiAKIHZvaWQgSFRNTFRva2VuaXplcjo6c3RvcFBhcnNpbmcoKQogewot
ICAgIFRva2VuaXplcjo6c3RvcFBhcnNpbmcoKTsKKyAgICBEb2N1bWVudFBhcnNlcjo6c3RvcFBh
cnNpbmcoKTsKICAgICBtX3RpbWVyLnN0b3AoKTsKIAotICAgIC8vIEZJWE1FOiBXaHkgaXMgSFRN
TFRva2VuaXplciB0aGUgb25seSBUb2tlbml6ZXIgd2hpY2ggY2FsbHMgY2hlY2tDb21wbGV0ZWQ/
CisgICAgLy8gRklYTUU6IFdoeSBpcyBIVE1MVG9rZW5pemVyIHRoZSBvbmx5IERvY3VtZW50UGFy
c2VyIHdoaWNoIGNhbGxzIGNoZWNrQ29tcGxldGVkPwogICAgIC8vIFRoZSBGcmFtZUxvYWRlciBu
ZWVkcyB0byBrbm93IHRoYXQgdGhlIHRva2VuaXplciBoYXMgZmluaXNoZWQgd2l0aCBpdHMgZGF0
YSwKICAgICAvLyByZWdhcmRsZXNzIG9mIHdoZXRoZXIgaXQgaGFwcGVuZWQgbmF0dXJhbGx5IG9y
IGR1ZSB0byBtYW51YWwgaW50ZXJ2ZW50aW9uLgogICAgIGlmICghbV9mcmFnbWVudCAmJiBtX2Rv
Yy0+ZnJhbWUoKSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmggYi9X
ZWJDb3JlL2h0bWwvSFRNTFRva2VuaXplci5oCmluZGV4IGU4ZGU0OTIwMjA2NTY4OWYwMGFkYzg1
MzdmMmQ2NzkyNDY0MjI2ZmYuLjhlZTc4YjY4ZTQ4OGI2ODJmYmI2NmVmNzBjYTE1OWU5MzY3MTMy
ZTQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MVG9rZW5pemVyLmgKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxUb2tlbml6ZXIuaApAQCAtMzAsNyArMzAsNyBAQAogI2luY2x1ZGUgIk5hbWVk
Tm9kZU1hcC5oIgogI2luY2x1ZGUgIlNlZ21lbnRlZFN0cmluZy5oIgogI2luY2x1ZGUgIlRpbWVy
LmgiCi0jaW5jbHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIK
ICNpbmNsdWRlIDx3dGYvRGVxdWUuaD4KICNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL1ZlY3Rvci5oPgpAQCAtMTQwLDcgKzE0MCw3IEBAIHB1YmxpYzoKIC8vIChsaWtlIGRl
YWxpbmcgd2l0aCA8c2NyaXB0PiB0YWdzKS4gIFRoZSBIVE1MIGxleGVyIGJpdHMgc2hvdWxkIGJl
IHB1c2hlZAogLy8gZG93biBpbnRvIGEgc2VwYXJhdGUgSFRNTCBsZXhlciBjbGFzcy4KIAotY2xh
c3MgSFRNTFRva2VuaXplciA6IHB1YmxpYyBUb2tlbml6ZXIsIHB1YmxpYyBDYWNoZWRSZXNvdXJj
ZUNsaWVudCB7CitjbGFzcyBIVE1MVG9rZW5pemVyIDogcHVibGljIERvY3VtZW50UGFyc2VyLCBw
dWJsaWMgQ2FjaGVkUmVzb3VyY2VDbGllbnQgewogcHVibGljOgogICAgIEhUTUxUb2tlbml6ZXIo
SFRNTERvY3VtZW50KiwgYm9vbCByZXBvcnRFcnJvcnMpOwogICAgIEhUTUxUb2tlbml6ZXIoSFRN
TFZpZXdTb3VyY2VEb2N1bWVudCopOwpAQCAtMjM1LDcgKzIzNSw3IEBAIHByaXZhdGU6CiAgICAg
Ly8gdGhlIGF0dHJpYnV0ZSBuYW1lIGFuZCB0aGUgZmlyc3QgY2hhcmFjdGVyIG9mIHRoZSBhdHRy
aWJ1dGUgdmFsdWUuCiAgICAgVmVjdG9yPFVDaGFyLCAzMj4gbV9yYXdBdHRyaWJ1dGVCZWZvcmVW
YWx1ZTsKIAotICAgIC8vIFRva2VuaXplciBmbGFncworICAgIC8vIERvY3VtZW50UGFyc2VyIGZs
YWdzCiAgICAgLy8vLy8vLy8vLy8vLy8vLy8vCiAgICAgLy8gYXJlIHdlIGluIHF1b3RlcyB3aXRo
aW4gYSBodG1sIHRhZwogICAgIGVudW0geyBOb1F1b3RlLCBTaW5nbGVRdW90ZSwgRG91YmxlUXVv
dGUgfSB0cXVvdGU7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VEb2N1
bWVudC5jcHAgYi9XZWJDb3JlL2h0bWwvSFRNTFZpZXdTb3VyY2VEb2N1bWVudC5jcHAKaW5kZXgg
MTk2YzY3ZWYxY2M0ZmJiMTcyNmI1ZTBhZDE2YjNiOWYyMmIxYTVkNC4uZmZiOGVlYTgxZGQ4M2Uw
OWUyNDQ3OGY5Y2Q0NTU4OTBiNjFlNDEwZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxW
aWV3U291cmNlRG9jdW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MVmlld1NvdXJjZURv
Y3VtZW50LmNwcApAQCAtNTEsNyArNTEsNyBAQCBIVE1MVmlld1NvdXJjZURvY3VtZW50OjpIVE1M
Vmlld1NvdXJjZURvY3VtZW50KEZyYW1lKiBmcmFtZSwgY29uc3QgU3RyaW5nJiBtaW1lVAogICAg
IHNldFVzZXNCZWZvcmVBZnRlclJ1bGVzKHRydWUpOwogfQogCi1Ub2tlbml6ZXIqIEhUTUxWaWV3
U291cmNlRG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcigpCitEb2N1bWVudFBhcnNlciogSFRNTFZp
ZXdTb3VyY2VEb2N1bWVudDo6Y3JlYXRlVG9rZW5pemVyKCkKIHsKICAgICAvLyBVc2UgSFRNTFRv
a2VuaXplciBpZiBhcHBsaWNhYmxlLCBvdGhlcndpc2UgdXNlIFRleHRUb2tlbml6ZXIuCiAgICAg
aWYgKG1fdHlwZSA9PSAidGV4dC9odG1sIiB8fCBtX3R5cGUgPT0gImFwcGxpY2F0aW9uL3hodG1s
K3htbCIgfHwgbV90eXBlID09ICJpbWFnZS9zdmcreG1sIiB8fCBET01JbXBsZW1lbnRhdGlvbjo6
aXNYTUxNSU1FVHlwZShtX3R5cGUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTFZpZXdT
b3VyY2VEb2N1bWVudC5oIGIvV2ViQ29yZS9odG1sL0hUTUxWaWV3U291cmNlRG9jdW1lbnQuaApp
bmRleCBlNGVhZGIwNmYzMzhjOTIzYWE1MzVlMGYyMDQ0Y2QwNzI5ZjFmNGQ1Li5mYzVjNDcxOWUy
MmQ2YzNlZDJlYjQyMDA1NjVlZDE4Y2U4YjU0ZjMwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2h0bWwv
SFRNTFZpZXdTb3VyY2VEb2N1bWVudC5oCisrKyBiL1dlYkNvcmUvaHRtbC9IVE1MVmlld1NvdXJj
ZURvY3VtZW50LmgKQEAgLTUwLDcgKzUwLDcgQEAgcHJpdmF0ZToKICAgICBIVE1MVmlld1NvdXJj
ZURvY3VtZW50KEZyYW1lKiwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CiAKICAgICAvLyBSZXR1
cm5zIEhUTUxUb2tlbml6ZXIgb3IgVGV4dFRva2VuaXplciBiYXNlZCBvbiBtX3R5cGUuCi0gICAg
dmlydHVhbCBUb2tlbml6ZXIqIGNyZWF0ZVRva2VuaXplcigpOworICAgIHZpcnR1YWwgRG9jdW1l
bnRQYXJzZXIqIGNyZWF0ZVRva2VuaXplcigpOwogCiAgICAgdm9pZCBjcmVhdGVDb250YWluaW5n
VGFibGUoKTsKICAgICBQYXNzUmVmUHRyPEVsZW1lbnQ+IGFkZFNwYW5XaXRoQ2xhc3NOYW1lKGNv
bnN0IFN0cmluZyYpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIu
Y3BwIGIvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRMb2FkZXIuY3BwCmluZGV4IGEyNGZhNDVjOTdj
NTZjNmViNGJjZjdiY2MzZjY3NDgwYjI4NGIyYzIuLmZmNzUzODIxNDc3YmZhOTZlY2IyMGRhZTI2
YmU2MGUxZTY1ODE0YmYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50TG9hZGVy
LmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudExvYWRlci5jcHAKQEAgLTM5Myw3ICsz
OTMsNyBAQCBib29sIERvY3VtZW50TG9hZGVyOjppc0xvYWRpbmdJbkFQSVNlbnNlKCkgY29uc3QK
ICAgICAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJhbWUtPmRvY3VtZW50KCk7CiAgICAgICAgIGlm
IChkb2MtPmRvY0xvYWRlcigpLT5yZXF1ZXN0Q291bnQoKSkKICAgICAgICAgICAgIHJldHVybiB0
cnVlOwotICAgICAgICBpZiAoVG9rZW5pemVyKiB0b2sgPSBkb2MtPnRva2VuaXplcigpKQorICAg
ICAgICBpZiAoRG9jdW1lbnRQYXJzZXIqIHRvayA9IGRvYy0+dG9rZW5pemVyKCkpCiAgICAgICAg
ICAgICBpZiAodG9rLT5wcm9jZXNzaW5nRGF0YSgpKQogICAgICAgICAgICAgICAgIHJldHVybiB0
cnVlOwogICAgIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50V3JpdGVyLmNw
cCBiL1dlYkNvcmUvbG9hZGVyL0RvY3VtZW50V3JpdGVyLmNwcAppbmRleCAwYmVkMTU5ZGVlYWQx
YWJhNTg5ZjdmMzIxNzA5MjVkOGQ0N2I5NTZlLi40OWY1NzIxM2M2ODVmNTNmY2U0YjRiN2MwMTA2
NTQwMDg0NzZkM2FkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9Eb2N1bWVudFdyaXRlci5j
cHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvRG9jdW1lbnRXcml0ZXIuY3BwCkBAIC00Miw3ICs0Miw3
IEBACiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKICNpbmNsdWRlICJTaW5rRG9jdW1lbnQuaCIKICNp
bmNsdWRlICJUZXh0UmVzb3VyY2VEZWNvZGVyLmgiCi0jaW5jbHVkZSAiVG9rZW5pemVyLmgiCisj
aW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0x
MzYsNyArMTM2LDcgQEAgdm9pZCBEb2N1bWVudFdyaXRlcjo6YWRkRGF0YShjb25zdCBjaGFyKiBz
dHIsIGludCBsZW4sIGJvb2wgZmx1c2gpCiAgICAgaWYgKGxlbiA9PSAtMSkKICAgICAgICAgbGVu
ID0gc3RybGVuKHN0cik7CiAKLSAgICBUb2tlbml6ZXIqIHRva2VuaXplciA9IG1fZnJhbWUtPmRv
Y3VtZW50KCktPnRva2VuaXplcigpOworICAgIERvY3VtZW50UGFyc2VyKiB0b2tlbml6ZXIgPSBt
X2ZyYW1lLT5kb2N1bWVudCgpLT50b2tlbml6ZXIoKTsKICAgICBpZiAodG9rZW5pemVyICYmIHRv
a2VuaXplci0+d2FudHNSYXdEYXRhKCkpIHsKICAgICAgICAgaWYgKGxlbiA+IDApCiAgICAgICAg
ICAgICB0b2tlbml6ZXItPndyaXRlUmF3RGF0YShzdHIsIGxlbik7CkBAIC0yMDIsNyArMjAyLDcg
QEAgdm9pZCBEb2N1bWVudFdyaXRlcjo6YWRkRGF0YShjb25zdCBTdHJpbmcmIHN0cikKICAgICAg
ICAgbV9mcmFtZS0+ZG9jdW1lbnQoKS0+c2V0UGFyc2VNb2RlKERvY3VtZW50OjpTdHJpY3QpOwog
ICAgIH0KIAotICAgIGlmIChUb2tlbml6ZXIqIHRva2VuaXplciA9IG1fZnJhbWUtPmRvY3VtZW50
KCktPnRva2VuaXplcigpKQorICAgIGlmIChEb2N1bWVudFBhcnNlciogdG9rZW5pemVyID0gbV9m
cmFtZS0+ZG9jdW1lbnQoKS0+dG9rZW5pemVyKCkpCiAgICAgICAgIHRva2VuaXplci0+d3JpdGUo
c3RyLCB0cnVlKTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRlRQRGlyZWN0b3J5
RG9jdW1lbnQuY3BwIGIvV2ViQ29yZS9sb2FkZXIvRlRQRGlyZWN0b3J5RG9jdW1lbnQuY3BwCmlu
ZGV4IDY2MTM2YjU3MTNlZTA1NjQ4ZDQ2OWMwZTc1YzM0Njg3ZGQyZmQwZGUuLjNlMzRlOWQwZmQ2
OWNhZDAyNTkxZmYyMzdkMTJiY2Y3NzI3MTEyNTUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVy
L0ZUUERpcmVjdG9yeURvY3VtZW50LmNwcAorKysgYi9XZWJDb3JlL2xvYWRlci9GVFBEaXJlY3Rv
cnlEb2N1bWVudC5jcHAKQEAgLTQ0Miw3ICs0NDIsNyBAQCBGVFBEaXJlY3RvcnlEb2N1bWVudDo6
RlRQRGlyZWN0b3J5RG9jdW1lbnQoRnJhbWUqIGZyYW1lKQogI2VuZGlmCiB9CiAKLVRva2VuaXpl
ciogRlRQRGlyZWN0b3J5RG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcigpCitEb2N1bWVudFBhcnNl
ciogRlRQRGlyZWN0b3J5RG9jdW1lbnQ6OmNyZWF0ZVRva2VuaXplcigpCiB7CiAgICAgcmV0dXJu
IG5ldyBGVFBEaXJlY3RvcnlUb2tlbml6ZXIodGhpcyk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L2xvYWRlci9GVFBEaXJlY3RvcnlEb2N1bWVudC5oIGIvV2ViQ29yZS9sb2FkZXIvRlRQRGlyZWN0
b3J5RG9jdW1lbnQuaAppbmRleCBiMjA4YzRlZDBjOGY5Njk5NzE3MjBkN2JhMWVmNjU2MWRhZjM1
M2U2Li45NjQzNTZlZTQ3OThkMTBmNzgwYWZkMWUwYmEwYjFmNjFlMThiYTBhIDEwMDY0NAotLS0g
YS9XZWJDb3JlL2xvYWRlci9GVFBEaXJlY3RvcnlEb2N1bWVudC5oCisrKyBiL1dlYkNvcmUvbG9h
ZGVyL0ZUUERpcmVjdG9yeURvY3VtZW50LmgKQEAgLTQwLDcgKzQwLDcgQEAgcHVibGljOgogCiBw
cml2YXRlOgogICAgIEZUUERpcmVjdG9yeURvY3VtZW50KEZyYW1lKik7Ci0gICAgdmlydHVhbCBU
b2tlbml6ZXIqIGNyZWF0ZVRva2VuaXplcigpOworICAgIHZpcnR1YWwgRG9jdW1lbnRQYXJzZXIq
IGNyZWF0ZVRva2VuaXplcigpOwogfTsKICAgICAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL0ltYWdlRG9jdW1lbnQuY3BwIGIvV2ViQ29yZS9sb2Fk
ZXIvSW1hZ2VEb2N1bWVudC5jcHAKaW5kZXggNjlhYWVkMWY1MGMxMzYxODhiYTc3YTIwMjkzMjc3
ZjNkNWUwOGNjZS4uMDJiODhhMDhkZWY2ZDI2MzcxYjkzN2M5NzA1YzQ0MjhkOTE4N2NlZSAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvSW1hZ2VEb2N1bWVudC5jcHAKKysrIGIvV2ViQ29yZS9s
b2FkZXIvSW1hZ2VEb2N1bWVudC5jcHAKQEAgLTc2LDcgKzc2LDcgQEAgcHJpdmF0ZToKICAgICBJ
bWFnZURvY3VtZW50KiBtX2RvYzsKIH07CiAgICAgCi1jbGFzcyBJbWFnZVRva2VuaXplciA6IHB1
YmxpYyBUb2tlbml6ZXIgeworY2xhc3MgSW1hZ2VUb2tlbml6ZXIgOiBwdWJsaWMgRG9jdW1lbnRQ
YXJzZXIgewogcHVibGljOgogICAgIEltYWdlVG9rZW5pemVyKEltYWdlRG9jdW1lbnQqIGRvYykg
OiBtX2RvYyhkb2MpIHt9CiAKQEAgLTE5Miw3ICsxOTIsNyBAQCBJbWFnZURvY3VtZW50OjpJbWFn
ZURvY3VtZW50KEZyYW1lKiBmcmFtZSkKICAgICBzZXRQYXJzZU1vZGUoQ29tcGF0KTsKIH0KICAg
ICAKLVRva2VuaXplciogSW1hZ2VEb2N1bWVudDo6Y3JlYXRlVG9rZW5pemVyKCkKK0RvY3VtZW50
UGFyc2VyKiBJbWFnZURvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIoKQogewogICAgIHJldHVybiBu
ZXcgSW1hZ2VUb2tlbml6ZXIodGhpcyk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9J
bWFnZURvY3VtZW50LmggYi9XZWJDb3JlL2xvYWRlci9JbWFnZURvY3VtZW50LmgKaW5kZXggMDgw
YjI1MGRjMzMyZmQ4NzFiMDg0MzNkNjgzZjM0MzkxY2IyZjE3Ny4uY2M2NWFiZjIzNjA1YTA0YTQ4
NzE3ZGU0YzEwMzVmN2ZlNmU5NTFkYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvSW1hZ2VE
b2N1bWVudC5oCisrKyBiL1dlYkNvcmUvbG9hZGVyL0ltYWdlRG9jdW1lbnQuaApAQCAtNDksNyAr
NDksNyBAQCBwdWJsaWM6CiBwcml2YXRlOgogICAgIEltYWdlRG9jdW1lbnQoRnJhbWUqKTsKIAot
ICAgIHZpcnR1YWwgVG9rZW5pemVyKiBjcmVhdGVUb2tlbml6ZXIoKTsKKyAgICB2aXJ0dWFsIERv
Y3VtZW50UGFyc2VyKiBjcmVhdGVUb2tlbml6ZXIoKTsKICAgICB2aXJ0dWFsIGJvb2wgaXNJbWFn
ZURvY3VtZW50KCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogICAgIAogICAgIHZvaWQgY3JlYXRl
RG9jdW1lbnRTdHJ1Y3R1cmUoKTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL01lZGlhRG9j
dW1lbnQuY3BwIGIvV2ViQ29yZS9sb2FkZXIvTWVkaWFEb2N1bWVudC5jcHAKaW5kZXggZTk0N2Jj
NGY3NDA2YjZkZWI3NTNkMDk4YjVhYTNmNTgwOTU3NmQ4ZC4uZDYyNDA1OTA3MDQyMDQ2MTA1NTU3
MGUwNmU5MWUxYjkwM2Y0NjE4MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIvTWVkaWFEb2N1
bWVudC5jcHAKKysrIGIvV2ViQ29yZS9sb2FkZXIvTWVkaWFEb2N1bWVudC5jcHAKQEAgLTUxLDcg
KzUxLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVz
OwogCi1jbGFzcyBNZWRpYVRva2VuaXplciA6IHB1YmxpYyBUb2tlbml6ZXIgeworY2xhc3MgTWVk
aWFUb2tlbml6ZXIgOiBwdWJsaWMgRG9jdW1lbnRQYXJzZXIgewogcHVibGljOgogICAgIE1lZGlh
VG9rZW5pemVyKERvY3VtZW50KiBkb2MpIDogbV9kb2MoZG9jKSwgbV9tZWRpYUVsZW1lbnQoMCkg
e30KICAgICAgICAgCkBAIC0xMzksNyArMTM5LDcgQEAgTWVkaWFEb2N1bWVudDo6fk1lZGlhRG9j
dW1lbnQoKQogICAgIEFTU0VSVCghbV9yZXBsYWNlTWVkaWFFbGVtZW50VGltZXIuaXNBY3RpdmUo
KSk7CiB9CiAKLVRva2VuaXplciogTWVkaWFEb2N1bWVudDo6Y3JlYXRlVG9rZW5pemVyKCkKK0Rv
Y3VtZW50UGFyc2VyKiBNZWRpYURvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIoKQogewogICAgIHJl
dHVybiBuZXcgTWVkaWFUb2tlbml6ZXIodGhpcyk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xv
YWRlci9NZWRpYURvY3VtZW50LmggYi9XZWJDb3JlL2xvYWRlci9NZWRpYURvY3VtZW50LmgKaW5k
ZXggYWE3NTFhYjAwOTQyYTI2NjczM2YxNDQ2NTdkZGI3NTEzMGQ0ZGU0Yi4uMzQxNDllNWY5ZWZk
ZjIzYmJkOTUwMDg4ZWE3MThhZTBlZjY4NzczYSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIv
TWVkaWFEb2N1bWVudC5oCisrKyBiL1dlYkNvcmUvbG9hZGVyL01lZGlhRG9jdW1lbnQuaApAQCAt
NDYsNyArNDYsNyBAQCBwcml2YXRlOgogICAgIE1lZGlhRG9jdW1lbnQoRnJhbWUqKTsKIAogICAg
IHZpcnR1YWwgYm9vbCBpc01lZGlhRG9jdW1lbnQoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9ICAg
ICAgICAKLSAgICB2aXJ0dWFsIFRva2VuaXplciogY3JlYXRlVG9rZW5pemVyKCk7CisgICAgdmly
dHVhbCBEb2N1bWVudFBhcnNlciogY3JlYXRlVG9rZW5pemVyKCk7CiAKICAgICB2aXJ0dWFsIHZv
aWQgZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCopOwogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2xv
YWRlci9QbHVnaW5Eb2N1bWVudC5jcHAgYi9XZWJDb3JlL2xvYWRlci9QbHVnaW5Eb2N1bWVudC5j
cHAKaW5kZXggYjgyNmU4ODRhZTI5MGVhMWQ1MWYwOGRhMzY1MTc0ZDRjZGY3YWY4NS4uYzJlNzVk
ZjBmY2EyNWEzN2NiYTVjNzg3MWM5YTAzMzU4YjVmYzljYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9s
b2FkZXIvUGx1Z2luRG9jdW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvbG9hZGVyL1BsdWdpbkRvY3Vt
ZW50LmNwcApAQCAtNDUsNyArNDUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgCiB1c2lu
ZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogICAgIAotY2xhc3MgUGx1Z2luVG9rZW5pemVyIDogcHVi
bGljIFRva2VuaXplciB7CitjbGFzcyBQbHVnaW5Ub2tlbml6ZXIgOiBwdWJsaWMgRG9jdW1lbnRQ
YXJzZXIgewogcHVibGljOgogICAgIFBsdWdpblRva2VuaXplcihEb2N1bWVudCogZG9jKSA6IG1f
ZG9jKGRvYyksIG1fZW1iZWRFbGVtZW50KDApIHt9CiAgICAgc3RhdGljIFdpZGdldCogcGx1Z2lu
V2lkZ2V0RnJvbURvY3VtZW50KERvY3VtZW50KiBkb2MpOwpAQCAtMTUyLDcgKzE1Miw3IEBAIFBs
dWdpbkRvY3VtZW50OjpQbHVnaW5Eb2N1bWVudChGcmFtZSogZnJhbWUpCiAgICAgc2V0UGFyc2VN
b2RlKENvbXBhdCk7CiB9CiAgICAgCi1Ub2tlbml6ZXIqIFBsdWdpbkRvY3VtZW50OjpjcmVhdGVU
b2tlbml6ZXIoKQorRG9jdW1lbnRQYXJzZXIqIFBsdWdpbkRvY3VtZW50OjpjcmVhdGVUb2tlbml6
ZXIoKQogewogICAgIHJldHVybiBuZXcgUGx1Z2luVG9rZW5pemVyKHRoaXMpOwogfQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9sb2FkZXIvUGx1Z2luRG9jdW1lbnQuaCBiL1dlYkNvcmUvbG9hZGVyL1Bs
dWdpbkRvY3VtZW50LmgKaW5kZXggN2ZmMDI4YTgxZDI1Nzc1M2RmNjQ5MTUzMDA3MmI3YTBiZTIw
ZWFiYy4uOWZmZGI4OGZiMzkzZGZmMzY5NDU5ZGIxMTE0ZGNlYTkzNmJkOGU3YSAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9sb2FkZXIvUGx1Z2luRG9jdW1lbnQuaAorKysgYi9XZWJDb3JlL2xvYWRlci9Q
bHVnaW5Eb2N1bWVudC5oCkBAIC00Niw3ICs0Niw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAg
UGx1Z2luRG9jdW1lbnQoRnJhbWUqKTsKIAotICAgIHZpcnR1YWwgVG9rZW5pemVyKiBjcmVhdGVU
b2tlbml6ZXIoKTsKKyAgICB2aXJ0dWFsIERvY3VtZW50UGFyc2VyKiBjcmVhdGVUb2tlbml6ZXIo
KTsKIH07CiAgICAgCiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9TaW5rRG9jdW1lbnQu
Y3BwIGIvV2ViQ29yZS9sb2FkZXIvU2lua0RvY3VtZW50LmNwcAppbmRleCBlOGIzODdhNmJlOTZi
ZWJiZGJkNjliOWY3YTEzOTA0YTYwNzI4ZTM5Li5kZTExZjYwNWI3NGRkMjE5MzBjNWUxNjRlNWYw
NDJjNjFiMjM2MzM3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9TaW5rRG9jdW1lbnQuY3Bw
CisrKyBiL1dlYkNvcmUvbG9hZGVyL1NpbmtEb2N1bWVudC5jcHAKQEAgLTI2LDExICsyNiwxMSBA
QAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlNpbmtEb2N1bWVudC5oIgogCi0jaW5j
bHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9jdW1lbnRQYXJzZXIuaCIKIAogbmFtZXNw
YWNlIFdlYkNvcmUgewogCi1jbGFzcyBTaW5rVG9rZW5pemVyIDogcHVibGljIFRva2VuaXplciB7
CitjbGFzcyBTaW5rVG9rZW5pemVyIDogcHVibGljIERvY3VtZW50UGFyc2VyIHsKIHB1YmxpYzoK
ICAgICBTaW5rVG9rZW5pemVyKERvY3VtZW50KiBkb2N1bWVudCkgOiBtX2RvY3VtZW50KGRvY3Vt
ZW50KSB7IH0KICAgICAgICAgCkBAIC01Nyw3ICs1Nyw3IEBAIFNpbmtEb2N1bWVudDo6U2lua0Rv
Y3VtZW50KEZyYW1lKiBmcmFtZSkKICAgICBzZXRQYXJzZU1vZGUoQ29tcGF0KTsKIH0KICAgICAK
LVRva2VuaXplciogU2lua0RvY3VtZW50OjpjcmVhdGVUb2tlbml6ZXIoKQorRG9jdW1lbnRQYXJz
ZXIqIFNpbmtEb2N1bWVudDo6Y3JlYXRlVG9rZW5pemVyKCkKIHsKICAgICByZXR1cm4gbmV3IFNp
bmtUb2tlbml6ZXIodGhpcyk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9TaW5rRG9j
dW1lbnQuaCBiL1dlYkNvcmUvbG9hZGVyL1NpbmtEb2N1bWVudC5oCmluZGV4IGM3OWZmYzM3ZDk5
OTc2NzkzOWRhOWFhMDZiMmY4NWZiZWQyY2I3MmUuLmQyMjNjOTVjMzA1OGVhY2VlMzg5MjhlMGE2
ZTY2YzA1OTFkYzYyM2IgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL1NpbmtEb2N1bWVudC5o
CisrKyBiL1dlYkNvcmUvbG9hZGVyL1NpbmtEb2N1bWVudC5oCkBAIC00MCw3ICs0MCw3IEBAIHB1
YmxpYzoKIHByaXZhdGU6CiAgICAgU2lua0RvY3VtZW50KEZyYW1lKik7CiAgICAgCi0gICAgdmly
dHVhbCBUb2tlbml6ZXIqIGNyZWF0ZVRva2VuaXplcigpOworICAgIHZpcnR1YWwgRG9jdW1lbnRQ
YXJzZXIqIGNyZWF0ZVRva2VuaXplcigpOwogfTsKIAogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2xv
YWRlci9UZXh0RG9jdW1lbnQuY3BwIGIvV2ViQ29yZS9sb2FkZXIvVGV4dERvY3VtZW50LmNwcApp
bmRleCBhM2Q3MDYxNzZhMTdjN2MzZDU2ODNhMDYwMmEzNjU4MmJhMzY5Nzc2Li42MDZjMTFkMzE3
NzNhYTZjNzJjMzQxMTkwZjRlYTZlNzBlNTIzNGE3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRl
ci9UZXh0RG9jdW1lbnQuY3BwCisrKyBiL1dlYkNvcmUvbG9hZGVyL1RleHREb2N1bWVudC5jcHAK
QEAgLTM4LDcgKzM4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2Ug
SFRNTE5hbWVzOwogCi1jbGFzcyBUZXh0VG9rZW5pemVyIDogcHVibGljIFRva2VuaXplciB7Citj
bGFzcyBUZXh0VG9rZW5pemVyIDogcHVibGljIERvY3VtZW50UGFyc2VyIHsKIHB1YmxpYzoKICAg
ICBUZXh0VG9rZW5pemVyKERvY3VtZW50Kik7CiAgICAgdmlydHVhbCB+VGV4dFRva2VuaXplcigp
OwpAQCAtODMsNyArODMsNyBAQCBUZXh0VG9rZW5pemVyOjpUZXh0VG9rZW5pemVyKERvY3VtZW50
KiBkb2MpCiB9ICAgIAogCiBUZXh0VG9rZW5pemVyOjpUZXh0VG9rZW5pemVyKEhUTUxWaWV3U291
cmNlRG9jdW1lbnQqIGRvYykKLSAgICA6IFRva2VuaXplcih0cnVlKQorICAgIDogRG9jdW1lbnRQ
YXJzZXIodHJ1ZSkKICAgICAsIG1fZG9jKGRvYykKICAgICAsIG1fcHJlRWxlbWVudCgwKQogICAg
ICwgbV9za2lwTEYoZmFsc2UpCkBAIC0xODMsMTIgKzE4MywxMiBAQCBUZXh0RG9jdW1lbnQ6OlRl
eHREb2N1bWVudChGcmFtZSogZnJhbWUpCiB7CiB9CiAKLVRva2VuaXplciogVGV4dERvY3VtZW50
OjpjcmVhdGVUb2tlbml6ZXIoKQorRG9jdW1lbnRQYXJzZXIqIFRleHREb2N1bWVudDo6Y3JlYXRl
VG9rZW5pemVyKCkKIHsKICAgICByZXR1cm4gbmV3IFRleHRUb2tlbml6ZXIodGhpcyk7CiB9CiAK
LVRva2VuaXplciogY3JlYXRlVGV4dFRva2VuaXplcihIVE1MVmlld1NvdXJjZURvY3VtZW50KiBk
b2N1bWVudCkKK0RvY3VtZW50UGFyc2VyKiBjcmVhdGVUZXh0VG9rZW5pemVyKEhUTUxWaWV3U291
cmNlRG9jdW1lbnQqIGRvY3VtZW50KQogewogICAgIHJldHVybiBuZXcgVGV4dFRva2VuaXplcihk
b2N1bWVudCk7CiB9CmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9UZXh0RG9jdW1lbnQuaCBi
L1dlYkNvcmUvbG9hZGVyL1RleHREb2N1bWVudC5oCmluZGV4IDUzZTMwNzRmN2U3MzdmNzU2YWRh
MTg1MjEzODEwMjhiNGM5OGFiYjIuLmQ4M2VkOTQxMTMxN2ExY2MwZjM0NmJjNWFjY2YzZmIxN2Vj
MDM4MWEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL1RleHREb2N1bWVudC5oCisrKyBiL1dl
YkNvcmUvbG9hZGVyL1RleHREb2N1bWVudC5oCkBAIC00MSwxMCArNDEsMTAgQEAgcHVibGljOgog
cHJpdmF0ZToKICAgICBUZXh0RG9jdW1lbnQoRnJhbWUqKTsKICAgICAKLSAgICB2aXJ0dWFsIFRv
a2VuaXplciogY3JlYXRlVG9rZW5pemVyKCk7CisgICAgdmlydHVhbCBEb2N1bWVudFBhcnNlciog
Y3JlYXRlVG9rZW5pemVyKCk7CiB9OwogCi1Ub2tlbml6ZXIqIGNyZWF0ZVRleHRUb2tlbml6ZXIo
SFRNTFZpZXdTb3VyY2VEb2N1bWVudCopOworRG9jdW1lbnRQYXJzZXIqIGNyZWF0ZVRleHRUb2tl
bml6ZXIoSFRNTFZpZXdTb3VyY2VEb2N1bWVudCopOwogCiB9CiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvd21sL1dNTERvY3VtZW50LmNwcCBiL1dlYkNvcmUvd21sL1dNTERvY3VtZW50LmNwcAppbmRl
eCA0NGY0ZTJiNDk0OWUwMDhkM2QxMzE2MTg3MjgyNmY5NzQ1OGNjODVjLi40Yjg5Yzk5ZjVhNzc2
OTE2YjBlMjU2NTNkMmNhZDQ2ZjUxOTMwZGQzIDEwMDY0NAotLS0gYS9XZWJDb3JlL3dtbC9XTUxE
b2N1bWVudC5jcHAKKysrIGIvV2ViQ29yZS93bWwvV01MRG9jdW1lbnQuY3BwCkBAIC0yNiw3ICsy
Niw3IEBACiAjaW5jbHVkZSAiQmFja0ZvcndhcmRMaXN0LmgiCiAjaW5jbHVkZSAiRnJhbWUuaCIK
ICNpbmNsdWRlICJQYWdlLmgiCi0jaW5jbHVkZSAiVG9rZW5pemVyLmgiCisjaW5jbHVkZSAiRG9j
dW1lbnRQYXJzZXIuaCIKICNpbmNsdWRlICJXTUxDYXJkRWxlbWVudC5oIgogI2luY2x1ZGUgIldN
TEVycm9ySGFuZGxpbmcuaCIKICNpbmNsdWRlICJXTUxQYWdlU3RhdGUuaCIKQEAgLTQ3LDcgKzQ3
LDcgQEAgV01MRG9jdW1lbnQ6On5XTUxEb2N1bWVudCgpCiAKIHZvaWQgV01MRG9jdW1lbnQ6OmZp
bmlzaGVkUGFyc2luZygpCiB7Ci0gICAgaWYgKFRva2VuaXplciogdG9rZW5pemVyID0gdGhpcy0+
dG9rZW5pemVyKCkpIHsKKyAgICBpZiAoRG9jdW1lbnRQYXJzZXIqIHRva2VuaXplciA9IHRoaXMt
PnRva2VuaXplcigpKSB7CiAgICAgICAgIGlmICghdG9rZW5pemVyLT53ZWxsRm9ybWVkKCkpIHsK
ICAgICAgICAgICAgIERvY3VtZW50OjpmaW5pc2hlZFBhcnNpbmcoKTsKICAgICAgICAgICAgIHJl
dHVybjsK
</data>

          </attachment>
      

    </bug>

</bugzilla>