<?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>148398</bug_id>
          
          <creation_ts>2015-08-24 14:41:34 -0700</creation_ts>
          <short_desc>Rename _WKVisitedLinkProvider to _WKVisitedLinkStore for consistency</short_desc>
          <delta_ts>2015-08-24 15:45:40 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1120396</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-24 14:41:34 -0700</bug_when>
    <thetext>Rename _WKVisitedLinkProvider to _WKVisitedLinkStore for consistency</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120401</commentid>
    <comment_count>1</comment_count>
      <attachid>259778</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-24 14:42:53 -0700</bug_when>
    <thetext>Created attachment 259778
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120406</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-08-24 14:44:34 -0700</bug_when>
    <thetext>Attachment 259778 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm:216:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm:238:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 2 in 11 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120422</commentid>
    <comment_count>3</comment_count>
      <attachid>259783</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-24 15:10:23 -0700</bug_when>
    <thetext>Created attachment 259783
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120423</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-08-24 15:11:53 -0700</bug_when>
    <thetext>Attachment 259783 did not pass style-queue:


ERROR: Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm:216:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm:238:  This { should be at the end of the previous line  [whitespace/braces] [4]
Total errors found: 2 in 12 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1120431</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-08-24 15:45:40 -0700</bug_when>
    <thetext>Committed r188891: &lt;http://trac.webkit.org/changeset/188891&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>259778</attachid>
            <date>2015-08-24 14:42:53 -0700</date>
            <delta_ts>2015-08-24 15:10:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148398-20150824144244.patch</filename>
            <type>text/plain</type>
            <size>31214</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4ODc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZjdlNjlhZTlkZjY3YTVk
MDA0ZDcyMjllMDAwOWY4Njg2MWFmZTUwYS4uOWJiNDJlNDEzODJhMjQ4MGEyODY2YjVmY2UzOWY3
YTk3YWRkZGExYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQwIEBACisyMDE1LTA4LTI0ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuYW1lIF9XS1Zp
c2l0ZWRMaW5rUHJvdmlkZXIgdG8gX1dLVmlzaXRlZExpbmtTdG9yZSBmb3IgY29uc2lzdGVuY3kK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODM5OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlJ2QgbGlr
ZSB0byBjYWxsIHRoZSBhYnN0cmFjdCBjbGFzc2VzIHByb3ZpZGVycyBhbmQgdGhlIGNvbmNyZXRl
IGNsYXNzZXMgc3RvcmVzIGluIFdlYktpdC4gQmVnaW4gYnkgcmVuYW1pbmcKKyAgICAgICAgX1dL
VmlzaXRlZExpbmtQcm92aWRlciB0byBfV0tWaXNpdGVkTGlua1N0b3JlLCBidXQga2VlcCB0aGUg
Zm9ybWVyIGFyb3VuZCBhcyBhIGRlcHJlY2F0ZWQgY2xhc3MuCisKKyAgICAgICAgKiBTaGFyZWQv
QVBJL0NvY29hL1dlYktpdFByaXZhdGUuaDoKKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvQVBJT2Jq
ZWN0Lm1tOgorICAgICAgICAoQVBJOjpPYmplY3Q6Om5ld09iamVjdCk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBpbml0
V2l0aEZyYW1lOmNvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1
cmF0aW9uIGNvcHlXaXRoWm9uZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlv
biBfdmlzaXRlZExpbmtTdG9yZV0pOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1cmF0aW9u
IF9zZXRWaXNpdGVkTGlua1N0b3JlOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1cmF0
aW9uIF92aXNpdGVkTGlua1Byb3ZpZGVyXSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb24gX3NldFZpc2l0ZWRMaW5rUHJvdmlkZXI6XSk6CisgICAgICAgICgtW1dLV2ViVmlld0Nv
bmZpZ3VyYXRpb24gX3ZhbGlkYXRlXSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbToKKyAgICAgICAgKC1bX1dLVmlzaXRlZExp
bmtQcm92aWRlciBpbml0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW19XS1Zpc2l0ZWRMaW5rUHJv
dmlkZXIgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoLVtfV0tWaXNpdGVkTGlua1Byb3Zp
ZGVyIGFkZFZpc2l0ZWRMaW5rV2l0aFVSTDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bX1dLVmlz
aXRlZExpbmtQcm92aWRlciByZW1vdmVBbGxdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bX1dLVmlz
aXRlZExpbmtQcm92aWRlciBfYXBpT2JqZWN0XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaDoKKyAgICAgICAg
KFdlYktpdDo6d3JhcHBlcik6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tWaXNpdGVkTGlua1N0b3JlLmg6IENvcGllZCBmcm9tIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oLgorICAgICAgICAqIFVJUHJv
Y2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtTdG9yZUludGVybmFsLmg6IFJlbmFtZWQgZnJv
bSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlk
ZXJJbnRlcm5hbC5oLgorICAgICAgICAoV2ViS2l0Ojp3cmFwcGVyKToKKyAgICAgICAgKiBXZWJL
aXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisKIDIwMTUtMDgtMjQgIFdlbnNvbiBIc2ll
aCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgVXNlIF9OU1Njcm9sbGluZ1By
ZWRvbWluYW50QXhpc0ZpbHRlciBmb3Igd2hlZWwgZXZlbnQgZmlsdGVyaW5nIG9uIE1hYwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgg
Yi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaAppbmRleCA5
ODgxZmI0ZWI0MGM1NmIzYmMzOWQ2OWMyNDQyZjY1ZmJhOGQ4Mzc0Li5hY2Y4NjI0ZTJmMDZmNTVh
M2Q3OGE1Y2M2M2EzNGMyYjM0NzRmMjM4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFy
ZWQvQVBJL0NvY29hL1dlYktpdFByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
QVBJL0NvY29hL1dlYktpdFByaXZhdGUuaApAQCAtMzUsNCArMzUsNCBAQAogI2ltcG9ydCA8V2Vi
S2l0L19XS0Zvcm1JbnB1dFNlc3Npb24uaD4KICNpbXBvcnQgPFdlYktpdC9fV0tQcm9jZXNzUG9v
bENvbmZpZ3VyYXRpb24uaD4KICNpbXBvcnQgPFdlYktpdC9fV0tUaHVtYm5haWxWaWV3Lmg+Ci0j
aW1wb3J0IDxXZWJLaXQvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oPgorI2ltcG9ydCA8V2ViS2l0
L19XS1Zpc2l0ZWRMaW5rU3RvcmUuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJl
ZC9Db2NvYS9BUElPYmplY3QubW0gYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29jb2EvQVBJT2Jq
ZWN0Lm1tCmluZGV4IDU2OGEzMmVlNTgyZGQ1ZWEzYTc1MGY0MTBjMjRiNDYwYTU2MjkyY2YuLjdi
MjUzOTBjOWJjZDY5Y2VmZjI0MjM1NzUwZTZiZGMwZjNkYmNkZTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9Db2NvYS9BUElPYmplY3QubW0KKysrIGIvU291cmNlL1dlYktpdDIv
U2hhcmVkL0NvY29hL0FQSU9iamVjdC5tbQpAQCAtNjYsNyArNjYsNyBAQAogI2ltcG9ydCAiX1dL
UHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uSW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1VzZXJDb250
ZW50RXh0ZW5zaW9uU3RvcmVJbnRlcm5hbC5oIgogI2ltcG9ydCAiX1dLVXNlckNvbnRlbnRGaWx0
ZXJJbnRlcm5hbC5oIgotI2ltcG9ydCAiX1dLVmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmgi
CisjaW1wb3J0ICJfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCIKICNpbXBvcnQgPG9iamMv
b2JqYy1hdXRvLmg+CiAKIG5hbWVzcGFjZSBBUEkgewpAQCAtMjA3LDcgKzIwNyw3IEBAIHZvaWQq
IE9iamVjdDo6bmV3T2JqZWN0KHNpemVfdCBzaXplLCBUeXBlIHR5cGUpCiAgICAgICAgIGJyZWFr
OwogCiAgICAgY2FzZSBUeXBlOjpWaXNpdGVkTGlua1Byb3ZpZGVyOgotICAgICAgICB3cmFwcGVy
ID0gW19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgYWxsb2NdOworICAgICAgICB3cmFwcGVyID0gW19X
S1Zpc2l0ZWRMaW5rU3RvcmUgYWxsb2NdOwogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgVHlw
ZTo6V2Vic2l0ZURhdGFSZWNvcmQ6CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbSBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tXZWJWaWV3Lm1tCmluZGV4IDBlMDFmODU5NThiZmM0MWI0MTMyOWIxMzRlMjYyMjA0
MmY0OWFiN2QuLjA1MDFiY2EzNmIxMjExMWZhMmY5YjU5NDk2NWYxMjI0OTVkNWM0ZTQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Lm1tCkBAIC03
Niw3ICs3Niw3IEBACiAjaW1wb3J0ICJfV0tGb3JtRGVsZWdhdGUuaCIKICNpbXBvcnQgIl9XS1Jl
bW90ZU9iamVjdFJlZ2lzdHJ5SW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1Nlc3Npb25TdGF0ZUlu
dGVybmFsLmgiCi0jaW1wb3J0ICJfV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaCIKKyNp
bXBvcnQgIl9XS1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oIgogI2ltcG9ydCA8V2ViQ29yZS9J
T1N1cmZhY2UuaD4KICNpbXBvcnQgPHd0Zi9IYXNoTWFwLmg+CiAjaW1wb3J0IDx3dGYvTWF0aEV4
dHJhcy5oPgpAQCAtMzEwLDcgKzMxMCw3IEBAIHN0YXRpYyBib29sIHNob3VsZEFsbG93UGljdHVy
ZUluUGljdHVyZU1lZGlhUGxheWJhY2soKQogICAgICAgICBwYWdlQ29uZmlndXJhdGlvbi0+c2V0
UmVsYXRlZFBhZ2UocmVsYXRlZFdlYlZpZXctPl9wYWdlLmdldCgpKTsKIAogICAgIHBhZ2VDb25m
aWd1cmF0aW9uLT5zZXRVc2VyQ29udGVudENvbnRyb2xsZXIoW19jb25maWd1cmF0aW9uIHVzZXJD
b250ZW50Q29udHJvbGxlcl0tPl91c2VyQ29udGVudENvbnRyb2xsZXJQcm94eS5nZXQoKSk7Ci0g
ICAgcGFnZUNvbmZpZ3VyYXRpb24tPnNldFZpc2l0ZWRMaW5rUHJvdmlkZXIoW19jb25maWd1cmF0
aW9uIF92aXNpdGVkTGlua1Byb3ZpZGVyXS0+X3Zpc2l0ZWRMaW5rUHJvdmlkZXIuZ2V0KCkpOwor
ICAgIHBhZ2VDb25maWd1cmF0aW9uLT5zZXRWaXNpdGVkTGlua1Byb3ZpZGVyKFtfY29uZmlndXJh
dGlvbiBfdmlzaXRlZExpbmtTdG9yZV0tPl92aXNpdGVkTGlua1Byb3ZpZGVyLmdldCgpKTsKICAg
ICBwYWdlQ29uZmlndXJhdGlvbi0+c2V0V2Vic2l0ZURhdGFTdG9yZShbX2NvbmZpZ3VyYXRpb24g
d2Vic2l0ZURhdGFTdG9yZV0tPl93ZWJzaXRlRGF0YVN0b3JlLmdldCgpKTsKICAgICBwYWdlQ29u
ZmlndXJhdGlvbi0+c2V0VHJlYXRzU0hBMVNpZ25lZENlcnRpZmljYXRlc0FzSW5zZWN1cmUoW19j
b25maWd1cmF0aW9uIF90cmVhdHNTSEExU2lnbmVkQ2VydGlmaWNhdGVzQXNJbnNlY3VyZV0pOwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
d0NvbmZpZ3VyYXRpb24ubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dL
V2ViVmlld0NvbmZpZ3VyYXRpb24ubW0KaW5kZXggOGZjNTU5MTA1MGVjOGEwMDE0NTk1ZDg2ZWFj
MDU5ZGM4NWJiOTEyOC4uZDE2MTljOTUzZjI5MDU3ZDJhZjk0NWFjNDM2ZTc4MjliYTM1NTczYiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdD
b25maWd1cmF0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2Ev
V0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQpAQCAtODMsNyArODMsNyBAQCBwcml2YXRlOgogICAg
IExhenlJbml0aWFsaXplZDxSZXRhaW5QdHI8V0tQcm9jZXNzUG9vbD4+IF9wcm9jZXNzUG9vbDsK
ICAgICBMYXp5SW5pdGlhbGl6ZWQ8UmV0YWluUHRyPFdLUHJlZmVyZW5jZXM+PiBfcHJlZmVyZW5j
ZXM7CiAgICAgTGF6eUluaXRpYWxpemVkPFJldGFpblB0cjxXS1VzZXJDb250ZW50Q29udHJvbGxl
cj4+IF91c2VyQ29udGVudENvbnRyb2xsZXI7Ci0gICAgTGF6eUluaXRpYWxpemVkPFJldGFpblB0
cjxfV0tWaXNpdGVkTGlua1Byb3ZpZGVyPj4gX3Zpc2l0ZWRMaW5rUHJvdmlkZXI7CisgICAgTGF6
eUluaXRpYWxpemVkPFJldGFpblB0cjxfV0tWaXNpdGVkTGlua1N0b3JlPj4gX3Zpc2l0ZWRMaW5r
U3RvcmU7CiAgICAgTGF6eUluaXRpYWxpemVkPFJldGFpblB0cjxXS1dlYnNpdGVEYXRhU3RvcmU+
PiBfd2Vic2l0ZURhdGFTdG9yZTsKICAgICBXZWJLaXQ6OldlYWtPYmpDUHRyPFdLV2ViVmlldz4g
X3JlbGF0ZWRXZWJWaWV3OwogICAgIFdlYktpdDo6V2Vha09iakNQdHI8V0tXZWJWaWV3PiBfYWx0
ZXJuYXRlV2ViVmlld0Zvck5hdmlnYXRpb25HZXN0dXJlczsKQEAgLTEyNyw3ICsxMjcsNyBAQCBw
cml2YXRlOgogICAgIGNvbmZpZ3VyYXRpb24ucHJlZmVyZW5jZXMgPSBzZWxmLnByZWZlcmVuY2Vz
OwogICAgIGNvbmZpZ3VyYXRpb24udXNlckNvbnRlbnRDb250cm9sbGVyID0gc2VsZi51c2VyQ29u
dGVudENvbnRyb2xsZXI7CiAgICAgY29uZmlndXJhdGlvbi53ZWJzaXRlRGF0YVN0b3JlID0gc2Vs
Zi53ZWJzaXRlRGF0YVN0b3JlOwotICAgIGNvbmZpZ3VyYXRpb24uX3Zpc2l0ZWRMaW5rUHJvdmlk
ZXIgPSBzZWxmLl92aXNpdGVkTGlua1Byb3ZpZGVyOworICAgIGNvbmZpZ3VyYXRpb24uX3Zpc2l0
ZWRMaW5rU3RvcmUgPSBzZWxmLl92aXNpdGVkTGlua1N0b3JlOwogICAgIGNvbmZpZ3VyYXRpb24u
X3JlbGF0ZWRXZWJWaWV3ID0gX3JlbGF0ZWRXZWJWaWV3LmdldCgpLmdldCgpOwogICAgIGNvbmZp
Z3VyYXRpb24uX2FsdGVybmF0ZVdlYlZpZXdGb3JOYXZpZ2F0aW9uR2VzdHVyZXMgPSBfYWx0ZXJu
YXRlV2ViVmlld0Zvck5hdmlnYXRpb25HZXN0dXJlcy5nZXQoKS5nZXQoKTsKICAgICBjb25maWd1
cmF0aW9uLT5fdHJlYXRzU0hBMVNpZ25lZENlcnRpZmljYXRlc0FzSW5zZWN1cmUgPSBfdHJlYXRz
U0hBMVNpZ25lZENlcnRpZmljYXRlc0FzSW5zZWN1cmU7CkBAIC0yMTEsMTQgKzIxMSwxNCBAQCBz
dGF0aWMgTlNTdHJpbmcgKmRlZmF1bHRBcHBsaWNhdGlvbk5hbWVGb3JVc2VyQWdlbnQoKQogICAg
IF9hcHBsaWNhdGlvbk5hbWVGb3JVc2VyQWdlbnQuc2V0KGFkb3B0TlMoW2FwcGxpY2F0aW9uTmFt
ZUZvclVzZXJBZ2VudCBjb3B5XSkpOwogfQogCi0tIChfV0tWaXNpdGVkTGlua1Byb3ZpZGVyICop
X3Zpc2l0ZWRMaW5rUHJvdmlkZXIKKy0gKF9XS1Zpc2l0ZWRMaW5rU3RvcmUgKilfdmlzaXRlZExp
bmtTdG9yZQogewotICAgIHJldHVybiBfdmlzaXRlZExpbmtQcm92aWRlci5nZXQoW10geyByZXR1
cm4gYWRvcHROUyhbW19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgYWxsb2NdIGluaXRdKTsgfSk7Cisg
ICAgcmV0dXJuIF92aXNpdGVkTGlua1N0b3JlLmdldChbXSB7IHJldHVybiBhZG9wdE5TKFtbX1dL
VmlzaXRlZExpbmtTdG9yZSBhbGxvY10gaW5pdF0pOyB9KTsKIH0KIAotLSAodm9pZClfc2V0Vmlz
aXRlZExpbmtQcm92aWRlcjooX1dLVmlzaXRlZExpbmtQcm92aWRlciAqKXZpc2l0ZWRMaW5rUHJv
dmlkZXIKKy0gKHZvaWQpX3NldFZpc2l0ZWRMaW5rU3RvcmU6KF9XS1Zpc2l0ZWRMaW5rU3RvcmUg
Kil2aXNpdGVkTGlua1N0b3JlCiB7Ci0gICAgX3Zpc2l0ZWRMaW5rUHJvdmlkZXIuc2V0KHZpc2l0
ZWRMaW5rUHJvdmlkZXIpOworICAgIF92aXNpdGVkTGlua1N0b3JlLnNldCh2aXNpdGVkTGlua1N0
b3JlKTsKIH0KIAogI3ByYWdtYSBjbGFuZyBkaWFnbm9zdGljIHB1c2gKQEAgLTIzNCw2ICsyMzQs
MTYgQEAgc3RhdGljIE5TU3RyaW5nICpkZWZhdWx0QXBwbGljYXRpb25OYW1lRm9yVXNlckFnZW50
KCkKICAgICBzZWxmLndlYnNpdGVEYXRhU3RvcmUgPSB3ZWJzaXRlRGF0YVN0b3JlID8gd2Vic2l0
ZURhdGFTdG9yZS0+X2RhdGFTdG9yZS5nZXQoKSA6IG51bGxwdHI7CiB9CiAKKy0oX1dLVmlzaXRl
ZExpbmtQcm92aWRlciAqKV92aXNpdGVkTGlua1Byb3ZpZGVyCit7CisgICAgcmV0dXJuIChfV0tW
aXNpdGVkTGlua1Byb3ZpZGVyICopc2VsZi5fdmlzaXRlZExpbmtTdG9yZTsKK30KKworLSAodm9p
ZClfc2V0VmlzaXRlZExpbmtQcm92aWRlcjooX1dLVmlzaXRlZExpbmtQcm92aWRlciAqKV92aXNp
dGVkTGlua1Byb3ZpZGVyCit7CisgICAgc2VsZi5fdmlzaXRlZExpbmtTdG9yZSA9IF92aXNpdGVk
TGlua1Byb3ZpZGVyOworfQorCiAjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCiAKICNpZiBQ
TEFURk9STShJT1MpCkBAIC0yNjIsOCArMjcyLDggQEAgc3RhdGljIE5TU3RyaW5nICpkZWZhdWx0
QXBwbGljYXRpb25OYW1lRm9yVXNlckFnZW50KCkKICAgICBpZiAoIXNlbGYud2Vic2l0ZURhdGFT
dG9yZSkKICAgICAgICAgW05TRXhjZXB0aW9uIHJhaXNlOk5TSW52YWxpZEFyZ3VtZW50RXhjZXB0
aW9uIGZvcm1hdDpAImNvbmZpZ3VyYXRpb24ud2Vic2l0ZURhdGFTdG9yZSBpcyBuaWwiXTsKIAot
ICAgIGlmICghc2VsZi5fdmlzaXRlZExpbmtQcm92aWRlcikKLSAgICAgICAgW05TRXhjZXB0aW9u
IHJhaXNlOk5TSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGZvcm1hdDpAImNvbmZpZ3VyYXRpb24u
X3Zpc2l0ZWRMaW5rUHJvdmlkZXIgaXMgbmlsIl07CisgICAgaWYgKCFzZWxmLl92aXNpdGVkTGlu
a1N0b3JlKQorICAgICAgICBbTlNFeGNlcHRpb24gcmFpc2U6TlNJbnZhbGlkQXJndW1lbnRFeGNl
cHRpb24gZm9ybWF0OkAiY29uZmlndXJhdGlvbi5fdmlzaXRlZExpbmtTdG9yZSBpcyBuaWwiXTsK
IAogI2lmIFBMQVRGT1JNKElPUykKICAgICBpZiAoIXNlbGYuX2NvbnRlbnRQcm92aWRlclJlZ2lz
dHJ5KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oCmluZGV4IGJmZTJlZmEyMjc5
NDdhMjViN2I1ZDc1NDhhNDhhMTQyMmNiNTc2ZmQuLjdjNDU0M2Y5MGZhMjRjNmVjYTQ0MWZlMDQ3
ZWRiZjFhNmM1OTU1MjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvblByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb25Qcml2YXRlLmgKQEAg
LTI5LDYgKzI5LDcgQEAKIAogQGNsYXNzIFdLV2ViVmlldzsKIEBjbGFzcyBfV0tWaXNpdGVkTGlu
a1Byb3ZpZGVyOworQGNsYXNzIF9XS1Zpc2l0ZWRMaW5rU3RvcmU7CiBAY2xhc3MgX1dLV2Vic2l0
ZURhdGFTdG9yZTsKIAogQGludGVyZmFjZSBXS1dlYlZpZXdDb25maWd1cmF0aW9uIChXS1ByaXZh
dGUpCkBAIC0zNiw5ICszNyw3IEBACiBAcHJvcGVydHkgKG5vbmF0b21pYywgd2Vhaywgc2V0dGVy
PV9zZXRSZWxhdGVkV2ViVmlldzopIFdLV2ViVmlldyAqX3JlbGF0ZWRXZWJWaWV3OwogQHByb3Bl
cnR5IChub25hdG9taWMsIGNvcHksIHNldHRlcj1fc2V0R3JvdXBJZGVudGlmaWVyOikgTlNTdHJp
bmcgKl9ncm91cElkZW50aWZpZXI7CiAKLUBwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcsIHNl
dHRlcj1fc2V0VmlzaXRlZExpbmtQcm92aWRlcjopIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgKl92
aXNpdGVkTGlua1Byb3ZpZGVyOwotCi1AcHJvcGVydHkgKG5vbmF0b21pYywgc3Ryb25nLCBzZXR0
ZXI9X3NldFdlYnNpdGVEYXRhU3RvcmU6KSBfV0tXZWJzaXRlRGF0YVN0b3JlICpfd2Vic2l0ZURh
dGFTdG9yZSBXS19ERVBSRUNBVEVEKDEwXzEwLCBXS19NQUNfVEJBLCA4XzAsIFdLX0lPU19UQkEs
ICJQbGVhc2UgdXNlIHdlYnNpdGVEYXRhU3RvcmUgaW5zdGVhZCIpOworQHByb3BlcnR5IChub25h
dG9taWMsIHN0cm9uZywgc2V0dGVyPV9zZXRWaXNpdGVkTGlua1N0b3JlOikgX1dLVmlzaXRlZExp
bmtTdG9yZSAqX3Zpc2l0ZWRMaW5rU3RvcmU7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCB3ZWFr
LCBzZXR0ZXI9X3NldEFsdGVybmF0ZVdlYlZpZXdGb3JOYXZpZ2F0aW9uR2VzdHVyZXM6KSBXS1dl
YlZpZXcgKl9hbHRlcm5hdGVXZWJWaWV3Rm9yTmF2aWdhdGlvbkdlc3R1cmVzOwogCkBAIC00OCw2
ICs0NywxMCBAQAogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0QWx3YXlzUnVuc0F0
Rm9yZWdyb3VuZFByaW9yaXR5OikgQk9PTCBfYWx3YXlzUnVuc0F0Rm9yZWdyb3VuZFByaW9yaXR5
IFdLX0FWQUlMQUJMRShOQSwgV0tfSU9TX1RCQSk7CiAjZW5kaWYKIAorQHByb3BlcnR5IChub25h
dG9taWMsIHN0cm9uZywgc2V0dGVyPV9zZXRWaXNpdGVkTGlua1Byb3ZpZGVyOikgX1dLVmlzaXRl
ZExpbmtQcm92aWRlciAqX3Zpc2l0ZWRMaW5rUHJvdmlkZXIgV0tfREVQUkVDQVRFRCgxMF8xMCwg
V0tfTUFDX1RCQSwgOF8wLCBXS19JT1NfVEJBLCAiUGxlYXNlIHVzZSB2aXNpdGVkTGlua1N0b3Jl
IGluc3RlYWQiKTsKKworQHByb3BlcnR5IChub25hdG9taWMsIHN0cm9uZywgc2V0dGVyPV9zZXRX
ZWJzaXRlRGF0YVN0b3JlOikgX1dLV2Vic2l0ZURhdGFTdG9yZSAqX3dlYnNpdGVEYXRhU3RvcmUg
V0tfREVQUkVDQVRFRCgxMF8xMCwgV0tfTUFDX1RCQSwgOF8wLCBXS19JT1NfVEJBLCAiUGxlYXNl
IHVzZSB3ZWJzaXRlRGF0YVN0b3JlIGluc3RlYWQiKTsKKwogQGVuZAogCiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQ
cm92aWRlci5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVk
TGlua1Byb3ZpZGVyLmgKaW5kZXggYjVhM2Q0Yjc4YmU5OGQwN2ZlNDM1NTQxNTEwNGM5M2I1MmE5
MjNjYi4uNmRjMTNjNzNmOTZjMmFmYTA2YTk3NDZjNWQ0ZmI4M2Q0MWMyOGJkOSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3Zp
ZGVyLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVk
TGlua1Byb3ZpZGVyLmgKQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE0
IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNSBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKQEAgLTIzLDE3ICsyMywxMiBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFN
QUdFLgogICovCiAKLSNpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgotI2ltcG9ydCA8
V2ViS2l0L1dLRm91bmRhdGlvbi5oPgorI2ltcG9ydCA8V2ViS2l0L19XS1Zpc2l0ZWRMaW5rU3Rv
cmUuaD4KIAogI2lmIFdLX0FQSV9FTkFCTEVECiAKLVdLX0NMQVNTX0FWQUlMQUJMRSgxMF8xMCwg
OF8wKQotQGludGVyZmFjZSBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyIDogTlNPYmplY3QKLQotLSAo
dm9pZClhZGRWaXNpdGVkTGlua1dpdGhVUkw6KE5TVVJMICopVVJMOwotLSAodm9pZClyZW1vdmVB
bGw7Ci0KK1dLX0NMQVNTX0RFUFJFQ0FURUQoMTBfMTAsIFdLX01BQ19UQkEsIDhfMCwgV0tfSU9T
X1RCQSwgIlBsZWFzZSB1c2UgX1dLVmlzaXRlZExpbmtTdG9yZSBpbnN0ZWFkIikKK0BpbnRlcmZh
Y2UgX1dLVmlzaXRlZExpbmtQcm92aWRlciA6IF9XS1Zpc2l0ZWRMaW5rU3RvcmUKIEBlbmQKIAog
I2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19X
S1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0gYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Nv
Y29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0KaW5kZXggZGQ2YTc5MWQ2OGIzZGY1MTc1M2Nk
ODRkYzc1ZTNmMjUwMmRkMmQ0NS4uNWNhZTk1ZWU4NmY4YjEyYWQ1ZWMzZTQ4ZjYyNzQwNzdlZjM3
YWQzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tW
aXNpdGVkTGlua1Byb3ZpZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBD
b3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICogQ29w
eXJpZ2h0IChDKSAyMDE1IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtMjMsNTIgKzIzLDEyIEBACiAgKiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAotI2ltcG9ydCAiY29uZmlnLmgiCi0jaW1wb3J0
ICJfV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaCIKKyNpbmNsdWRlICJjb25maWcuaCIK
KyNpbmNsdWRlICJfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmgiCiAKICNpZiBXS19BUElfRU5BQkxF
RAogCi0jaW1wb3J0ICJWaXNpdGVkTGlua1Byb3ZpZGVyLmgiCi0jaW1wb3J0IDxXZWJDb3JlL0xp
bmtIYXNoLmg+Ci0KIEBpbXBsZW1lbnRhdGlvbiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyCi0KLS0g
KGluc3RhbmNldHlwZSlpbml0Ci17Ci0gICAgaWYgKCEoc2VsZiA9IFtzdXBlciBpbml0XSkpCi0g
ICAgICAgIHJldHVybiBuaWw7Ci0KLSAgICBBUEk6Ok9iamVjdDo6Y29uc3RydWN0SW5XcmFwcGVy
PFdlYktpdDo6VmlzaXRlZExpbmtQcm92aWRlcj4oc2VsZik7Ci0KLSAgICByZXR1cm4gc2VsZjsK
LX0KLQotLSAodm9pZClkZWFsbG9jCi17Ci0gICAgX3Zpc2l0ZWRMaW5rUHJvdmlkZXItPn5WaXNp
dGVkTGlua1Byb3ZpZGVyKCk7Ci0KLSAgICBbc3VwZXIgZGVhbGxvY107Ci19Ci0KLS0gKHZvaWQp
YWRkVmlzaXRlZExpbmtXaXRoVVJMOihOU1VSTCAqKVVSTAotewotICAgIGF1dG8gbGlua0hhc2gg
PSBXZWJDb3JlOjp2aXNpdGVkTGlua0hhc2goVVJMLmFic29sdXRlU3RyaW5nKTsKLQotICAgIF92
aXNpdGVkTGlua1Byb3ZpZGVyLT5hZGRWaXNpdGVkTGlua0hhc2gobGlua0hhc2gpOwotfQotCi0t
ICh2b2lkKXJlbW92ZUFsbAotewotICAgIF92aXNpdGVkTGlua1Byb3ZpZGVyLT5yZW1vdmVBbGwo
KTsKLX0KLQotI3ByYWdtYSBtYXJrIFdLT2JqZWN0IHByb3RvY29sIGltcGxlbWVudGF0aW9uCi0K
LS0gKEFQSTo6T2JqZWN0JilfYXBpT2JqZWN0Ci17Ci0gICAgcmV0dXJuICpfdmlzaXRlZExpbmtQ
cm92aWRlcjsKLX0KLQogQGVuZAogCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmggYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXJJ
bnRlcm5hbC5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2OTM2MTBjNTBmOWE0NjMw
NTY0Yzg4Y2JmNTE1ZmYyZThhYmVkZmE2Li4wMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlz
aXRlZExpbmtQcm92aWRlckludGVybmFsLmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MSArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2ltcG9ydCAiX1dLVmlzaXRlZExpbmtQcm92aWRlci5oIgotCi0jaWYg
V0tfQVBJX0VOQUJMRUQKLQotI2ltcG9ydCAiVmlzaXRlZExpbmtQcm92aWRlci5oIgotI2ltcG9y
dCAiV0tPYmplY3QuaCIKLQotbmFtZXNwYWNlIFdlYktpdCB7Ci0KLWlubGluZSBfV0tWaXNpdGVk
TGlua1Byb3ZpZGVyICp3cmFwcGVyKFZpc2l0ZWRMaW5rUHJvdmlkZXImIHZpc2l0ZWRMaW5rUHJv
dmlkZXIpCi17Ci0gICAgQVNTRVJUKFt2aXNpdGVkTGlua1Byb3ZpZGVyLndyYXBwZXIoKSBpc0tp
bmRPZkNsYXNzOltfV0tWaXNpdGVkTGlua1Byb3ZpZGVyIGNsYXNzXV0pOwotICAgIHJldHVybiAo
X1dLVmlzaXRlZExpbmtQcm92aWRlciAqKXZpc2l0ZWRMaW5rUHJvdmlkZXIud3JhcHBlcigpOwot
fQotCi19Ci0KLUBpbnRlcmZhY2UgX1dLVmlzaXRlZExpbmtQcm92aWRlciAoKSA8V0tPYmplY3Q+
IHsKLUBwYWNrYWdlCi0gICAgQVBJOjpPYmplY3RTdG9yYWdlPFdlYktpdDo6VmlzaXRlZExpbmtQ
cm92aWRlcj4gX3Zpc2l0ZWRMaW5rUHJvdmlkZXI7Ci19Ci0KLUBlbmQKLQotI2VuZGlmCi0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExp
bmtTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVk
TGlua1N0b3JlLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTVhODE3NmEzYTM5ZGFiYjJlNGI5NWIwMjQxODIwNDk0
NDYzM2EzOAotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtTdG9yZS5oCkBAIC0wLDAgKzEsMzkgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJl
ZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Ig
d2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhl
IGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25z
IG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9u
IGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgor
ICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENP
TlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICog
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAq
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLwor
CisjaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KKyNpbXBvcnQgPFdlYktpdC9XS0Zv
dW5kYXRpb24uaD4KKworI2lmIFdLX0FQSV9FTkFCTEVECisKK1dLX0NMQVNTX0FWQUlMQUJMRSgx
MF8xMCwgOF8wKQorQGludGVyZmFjZSBfV0tWaXNpdGVkTGlua1N0b3JlIDogTlNPYmplY3QKKwor
LSAodm9pZClhZGRWaXNpdGVkTGlua1dpdGhVUkw6KE5TVVJMICopVVJMOworLSAodm9pZClyZW1v
dmVBbGw7CisKK0BlbmQKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42NjlhMzI4NzRkMDg2Mzg4MWVlNWI3NWNkZmZhMmZmZTdmZmVhNzUzCi0tLSAv
ZGV2L251bGwKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNp
dGVkTGlua1N0b3JlSW50ZXJuYWwuaApAQCAtMCwwICsxLDUxIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDE0IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklC
VVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRT
IENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBP
UiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lt
cG9ydCAiX1dLVmlzaXRlZExpbmtTdG9yZS5oIgorCisjaWYgV0tfQVBJX0VOQUJMRUQKKworI2lt
cG9ydCAiVmlzaXRlZExpbmtQcm92aWRlci5oIgorI2ltcG9ydCAiV0tPYmplY3QuaCIKKworbmFt
ZXNwYWNlIFdlYktpdCB7CisKK2lubGluZSBfV0tWaXNpdGVkTGlua1N0b3JlICp3cmFwcGVyKFZp
c2l0ZWRMaW5rUHJvdmlkZXImIHZpc2l0ZWRMaW5rUHJvdmlkZXIpCit7CisgICAgQVNTRVJUKFt2
aXNpdGVkTGlua1Byb3ZpZGVyLndyYXBwZXIoKSBpc0tpbmRPZkNsYXNzOltfV0tWaXNpdGVkTGlu
a1N0b3JlIGNsYXNzXV0pOworICAgIHJldHVybiAoX1dLVmlzaXRlZExpbmtTdG9yZSAqKXZpc2l0
ZWRMaW5rUHJvdmlkZXIud3JhcHBlcigpOworfQorCit9CisKK0BpbnRlcmZhY2UgX1dLVmlzaXRl
ZExpbmtTdG9yZSAoKSA8V0tPYmplY3Q+IHsKK0BwYWNrYWdlCisgICAgQVBJOjpPYmplY3RTdG9y
YWdlPFdlYktpdDo6VmlzaXRlZExpbmtQcm92aWRlcj4gX3Zpc2l0ZWRMaW5rUHJvdmlkZXI7Cit9
CisKK0BlbmQKKworI2VuZGlmCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJLaXQyL1dlYktpdDIueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBmOTgyNDIxNTI2YmUyNmE3YWZlMGEyOTYzZmUxMjIx
NjkyNzE1Yzk4Li5jMWM0NGNmZjg2MGVmZmUxMDYyNmFkMDgzZWI4Mzg0ODRhODIwMjdhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBA
IC0xNjcsNiArMTY3LDggQEAKIAkJMUExRUYxOTkxQTFENUI0MjAwMjMyMDBBIC8qIEFQSURhdGFD
b2NvYS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFB
MUVGMTk3MUExRDVCNDIwMDIzMjAwQSAvKiBBUElEYXRhQ29jb2EubW0gKi87IH07CiAJCTFBMUZF
QzFDMTYyN0I0NTcwMDcwMEY2RCAvKiBXZWJDb25uZWN0aW9uTWVzc2FnZVJlY2VpdmVyLmNwcCBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMUZFQzFBMTYy
N0I0NTYwMDcwMEY2RCAvKiBXZWJDb25uZWN0aW9uTWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsK
IAkJMUExRkVDMUQxNjI3QjQ1NzAwNzAwRjZEIC8qIFdlYkNvbm5lY3Rpb25NZXNzYWdlcy5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUExRkVDMUIxNjI3
QjQ1NzAwNzAwRjZEIC8qIFdlYkNvbm5lY3Rpb25NZXNzYWdlcy5oICovOyB9OworCQkxQTIwNjc5
MjFCOEI5MDY2MDBDMTNDMzYgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMjA2NzkwMUI4QjkwNjYwMEMx
M0MzNiAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLm1tICovOyB9OworCQkxQTIwNjc5MzFCOEI5
MDY2MDBDMTNDMzYgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUEyMDY3OTExQjhCOTA2NjAwQzEzQzM2IC8q
IF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQ
cml2YXRlLCApOyB9OyB9OwogCQkxQTIxNjFCMDExRjM3NjY0MDA4QUQwRjUgLyogTlBSdW50aW1l
T2JqZWN0TWFwLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQTIxNjFBRTExRjM3NjY0MDA4QUQwRjUgLyogTlBSdW50aW1lT2JqZWN0TWFwLmggKi87IH07
CiAJCTFBMjE2MUIxMTFGMzc2NjQwMDhBRDBGNSAvKiBOUFJ1bnRpbWVPYmplY3RNYXAuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUEyMTYxQUYxMUYz
NzY2NDAwOEFEMEY1IC8qIE5QUnVudGltZU9iamVjdE1hcC5jcHAgKi87IH07CiAJCTFBMjE2MkIw
MTFGMzg5NzEwMDhBRDBGNSAvKiBOUFJ1bnRpbWVVdGlsaXRpZXMuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUEyMTYyQUUxMUYzODk3MTAwOEFEMEY1
IC8qIE5QUnVudGltZVV0aWxpdGllcy5jcHAgKi87IH07CkBAIC0zMDksOSArMzExLDkgQEAKIAkJ
MUE3RTM3NzUxOEU0QTMzQTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZUhhbmRsZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBN0UzNzc0MThFNEEz
M0EwMDNEMEZGRiAvKiBXS1NjcmlwdE1lc3NhZ2VIYW5kbGVyLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHVibGljLCApOyB9OyB9OwogCQkxQTdFMzc3ODE4RTRBNEZFMDAzRDBGRkYg
LyogV0tTY3JpcHRNZXNzYWdlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUE3RTM3NzYxOEU0QTRGRTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZS5t
bSAqLzsgfTsKIAkJMUE3RTM3NzkxOEU0QTRGRTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE3RTM3Nzcx
OEU0QTRGRTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZS5oICovOyBzZXR0aW5ncyA9IHtBVFRS
SUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKLQkJMUE4MUIzODAxOEJENjZBRDAwMDdGREFDIC8q
IF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAxQTgxQjM3RTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExp
bmtQcm92aWRlci5tbSAqLzsgfTsKLQkJMUE4MUIzODExOEJENjZBRDAwMDdGREFDIC8qIF9XS1Zp
c2l0ZWRMaW5rUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBODFCMzdGMThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3Zp
ZGVyLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJ
MUE4MUIzODUxOEJENjczQTAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5h
bC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4MUIz
ODQxOEJENjczQTAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5hbC5oICov
OyB9OworCQkxQTgxQjM4MDE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZS5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODFCMzdF
MThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlLm1tICovOyB9OworCQkxQTgx
QjM4MTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4MUIzN0YxOEJENjZBRDAwMDdG
REFDIC8qIF9XS1Zpc2l0ZWRMaW5rU3RvcmUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OworCQkxQTgxQjM4NTE4QkQ2NzNBMDAwN0ZEQUMgLyogX1dLVmlz
aXRlZExpbmtTdG9yZUludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAxQTgxQjM4NDE4QkQ2NzNBMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtT
dG9yZUludGVybmFsLmggKi87IH07CiAJCTFBOEM3MjhDMTczODQ3N0MwMDBBNjU1NCAvKiBMb2Nh
bFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE4QzcyOEExNzM4NDc3QzAwMEE2NTU0IC8qIExvY2FsU3RvcmFn
ZURhdGFiYXNlVHJhY2tlci5jcHAgKi87IH07CiAJCTFBOEM3MjhEMTczODQ3N0MwMDBBNjU1NCAv
KiBMb2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEM3MjhCMTczODQ3N0MwMDBBNjU1NCAvKiBMb2NhbFN0
b3JhZ2VEYXRhYmFzZVRyYWNrZXIuaCAqLzsgfTsKIAkJMUE4RTdEM0MxOEMxNTE0OTAwNUE3MDJB
IC8qIFZpc2l0ZWRMaW5rVGFibGVDb250cm9sbGVyTWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3Vy
Y2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBOEU3RDNBMThDMTUxNDkw
MDVBNzAyQSAvKiBWaXNpdGVkTGlua1RhYmxlQ29udHJvbGxlck1lc3NhZ2VSZWNlaXZlci5jcHAg
Ki87IH07CkBAIC0yMjYxLDYgKzIyNjMsOCBAQAogCQkxQTFGRUMxOTE2MjdCM0VGMDA3MDBGNkQg
LyogV2ViQ29ubmVjdGlvbi5tZXNzYWdlcy5pbiAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBXZWJDb25uZWN0aW9uLm1lc3NhZ2Vz
LmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTFGRUMxQTE2MjdCNDU2MDA3MDBG
NkQgLyogV2ViQ29ubmVjdGlvbk1lc3NhZ2VSZWNlaXZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBXZWJDb25uZWN0aW9uTWVzc2FnZVJlY2VpdmVyLmNwcDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUExRkVDMUIxNjI3QjQ1NzAwNzAwRjZEIC8qIFdl
YkNvbm5lY3Rpb25NZXNzYWdlcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
ZWJDb25uZWN0aW9uTWVzc2FnZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUEy
MDY3OTAxQjhCOTA2NjAwQzEzQzM2IC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBfV0tWaXNpdGVkTGlua1Byb3ZpZGVy
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTIwNjc5MTFCOEI5MDY2MDBDMTND
MzYgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTFBMjE2MUFFMTFGMzc2NjQwMDhBRDBGNSAvKiBOUFJ1bnRpbWVPYmplY3RNYXAuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTlBSdW50aW1lT2JqZWN0TWFwLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBMjE2MUFGMTFGMzc2NjQwMDhBRDBGNSAvKiBO
UFJ1bnRpbWVPYmplY3RNYXAuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gTlBSdW50aW1lT2JqZWN0TWFwLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MUEyMTYyQUUxMUYzODk3MTAwOEFEMEY1IC8qIE5QUnVudGltZVV0aWxpdGllcy5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOUFJ1bnRpbWVVdGlsaXRpZXMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjQxNiw5ICsyNDIwLDkgQEAKIAkJMUE3RTM3
NzQxOEU0QTMzQTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVzc2FnZUhhbmRsZXIuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tTY3JpcHRNZXNzYWdlSGFuZGxlci5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkxQTdFMzc3NjE4RTRBNEZFMDAzRDBGRkYgLyogV0tTY3Jp
cHRNZXNzYWdlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gV0tT
Y3JpcHRNZXNzYWdlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTdFMzc3NzE4
RTRBNEZFMDAzRDBGRkYgLyogV0tTY3JpcHRNZXNzYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFdLU2NyaXB0TWVzc2FnZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwotCQkxQTgxQjM3RTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5r
UHJvdmlkZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTFBODFCMzdGMThCRDY2
QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKLQkJMUE4MUIzODQxOEJENjczQTAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5r
UHJvdmlkZXJJbnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tW
aXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMUE4MUIzN0UxOEJENjZBRDAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rU3RvcmUubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBfV0tWaXNpdGVkTGlua1N0b3Jl
Lm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTgxQjM3RjE4QkQ2NkFEMDAwN0ZE
QUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBfV0tWaXNpdGVkTGlua1N0b3JlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTFBODFCMzg0MThCRDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLVmlzaXRlZExpbmtTdG9yZUlu
dGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBOEM3MjhBMTczODQ3N0Mw
MDBBNjU1NCAvKiBMb2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTG9jYWxTdG9yYWdlRGF0YWJhc2VUcmFja2VyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUE4QzcyOEIxNzM4NDc3QzAwMEE2NTU0IC8q
IExvY2FsU3RvcmFnZURhdGFiYXNlVHJhY2tlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBMb2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXIuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMUE4RTdEMzgxOEMxNTBCRjAwNUE3MDJBIC8qIFZpc2l0ZWRMaW5rVGFibGVD
b250cm9sbGVyLm1lc3NhZ2VzLmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFZpc2l0ZWRMaW5r
VGFibGVDb250cm9sbGVyLm1lc3NhZ2VzLmluOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtNDQyOCw2ICs0NDMyLDggQEAKIAkJCQk3Q0Q1RUJCQzE3NDZCMDRDMDAwQzFDNDUgLyogV0tU
eXBlUmVmV3JhcHBlci5tbSAqLywKIAkJCQlCQzg2OTlCMjExNkFBREFBMDAyQTkyNUIgLyogV0tW
aWV3LmggKi8sCiAJCQkJQkZBNjE3OUUxMkYwQjk5RDAwMzNFMENBIC8qIFdLVmlld1ByaXZhdGUu
aCAqLywKKwkJCQkxQTIwNjc5MTFCOEI5MDY2MDBDMTNDMzYgLyogX1dLVmlzaXRlZExpbmtQcm92
aWRlci5oICovLAorCQkJCTFBMjA2NzkwMUI4QjkwNjYwMEMxM0MzNiAvKiBfV0tWaXNpdGVkTGlu
a1Byb3ZpZGVyLm1tICovLAogCQkJKTsKIAkJCW5hbWUgPSBEZXByZWNhdGVkOwogCQkJc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsKQEAgLTUzMjgsOSArNTMzNCw5IEBACiAJCQkJN0M4OUQyQjgxQTZC
MEYyQzAwM0E1RkRFIC8qIF9XS1VzZXJDb250ZW50RmlsdGVyLmggKi8sCiAJCQkJN0M4OUQyQjcx
QTZCMEYyQzAwM0E1RkRFIC8qIF9XS1VzZXJDb250ZW50RmlsdGVyLm1tICovLAogCQkJCTdDODlE
MkJCMUE2QjBGNUIwMDNBNUZERSAvKiBfV0tVc2VyQ29udGVudEZpbHRlckludGVybmFsLmggKi8s
Ci0JCQkJMUE4MUIzN0YxOEJENjZBRDAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIu
aCAqLywKLQkJCQkxQTgxQjM3RTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92
aWRlci5tbSAqLywKLQkJCQkxQTgxQjM4NDE4QkQ2NzNBMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExp
bmtQcm92aWRlckludGVybmFsLmggKi8sCisJCQkJMUE4MUIzN0YxOEJENjZBRDAwMDdGREFDIC8q
IF9XS1Zpc2l0ZWRMaW5rU3RvcmUuaCAqLywKKwkJCQkxQTgxQjM3RTE4QkQ2NkFEMDAwN0ZEQUMg
LyogX1dLVmlzaXRlZExpbmtTdG9yZS5tbSAqLywKKwkJCQkxQTgxQjM4NDE4QkQ2NzNBMDAwN0ZE
QUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZUludGVybmFsLmggKi8sCiAJCQkJRkVEM0MxREExQjQ0
N0FFODAwRTBFQjdGIC8qIEFQSVNlcmlhbGl6ZWRTY3JpcHRWYWx1ZUNvY29hLm1tICovLAogCQkJ
CTdDRUZBOTYwMUFDMDk5OTMwMEI5MTBGRCAvKiBBUElVc2VyQ29udGVudEV4dGVuc2lvblN0b3Jl
Q29jb2EubW0gKi8sCiAJCQkJMUEzNjM1QUIxQTMxNDVFNTAwRUQ2MTk3IC8qIEFQSVdlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbSAqLywKQEAgLTc1NDEsOCArNzU0Nyw4IEBACiAJCQkJN0NBMzc5M0Ux
QUMzNzhCMzAwNzlEQzM3IC8qIF9XS1VzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmVQcml2YXRlLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk3Qzg5RDJCQTFBNkIwRjJDMDAzQTVGREUgLyogX1dLVXNlckNv
bnRlbnRGaWx0ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTdDODlEMkJDMUE2QjBGNUIwMDNBNUZE
RSAvKiBfV0tVc2VyQ29udGVudEZpbHRlckludGVybmFsLmggaW4gSGVhZGVycyAqLywKLQkJCQkx
QTgxQjM4MTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJMUE4MUIzODUxOEJENjczQTAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5r
UHJvdmlkZXJJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4MUIzODExOEJENjZBRDAw
MDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rU3RvcmUuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBODFC
Mzg1MThCRDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTFBRkI0QzZFMUFERjBDNzgwMEIzMzMzOSAvKiBfV0tXZWJzaXRlRGF0
YVJlY29yZC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFGQjRDNzIxQURGMTU1RDAwQjMzMzM5IC8q
IF9XS1dlYnNpdGVEYXRhU3RvcmUuaCBpbiBIZWFkZXJzICovLAogCQkJCTFBNEE5M0I3MUFFQjA4
RUEwMDE1MEU5QyAvKiBfV0tXZWJzaXRlRGF0YVN0b3JlSW50ZXJuYWwuaCBpbiBIZWFkZXJzICov
LApAQCAtODE2Niw2ICs4MTcyLDcgQEAKIAkJCQlCQzAxN0QwOTE2MjYwRkY0MDA3MDU0RjUgLyog
V0tET01FbGVtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzAxN0QwQjE2MjYwRkY0MDA3MDU0
RjUgLyogV0tET01JbnRlcm5hbHMuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDMDE3RDBEMTYyNjBG
RjQwMDcwNTRGNSAvKiBXS0RPTU5vZGUuaCBpbiBIZWFkZXJzICovLAorCQkJCTFBMjA2NzkzMUI4
QjkwNjYwMEMxM0MzNiAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmggaW4gSGVhZGVycyAqLywK
IAkJCQlCQzVEMjRDMjE2Q0Q3MDZEMDA3RDU0NjEgLyogV0tET01Ob2RlUHJpdmF0ZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQkMzOUM0MzYxNjI2MzY2RjAwOEJDNjg5IC8qIFdLRE9NUmFuZ2UuaCBp
biBIZWFkZXJzICovLAogCQkJCUJDNUQyNEM1MTZDRDcwODgwMDdENTQ2MSAvKiBXS0RPTVJhbmdl
UHJpdmF0ZS5oIGluIEhlYWRlcnMgKi8sCkBAIC05MzU2LDcgKzkzNjMsNyBAQAogCQkJCTJENkIz
NzFDMThBOTY3QUQwMDQyQUU4MCAvKiBfV0tUaHVtYm5haWxWaWV3Lm1tIGluIFNvdXJjZXMgKi8s
CiAJCQkJN0MyNDEzMDIxQUFDRkE3NTAwQTU4QzE1IC8qIF9XS1VzZXJDb250ZW50RXh0ZW5zaW9u
U3RvcmUubW0gaW4gU291cmNlcyAqLywKIAkJCQk3Qzg5RDJCOTFBNkIwRjJDMDAzQTVGREUgLyog
X1dLVXNlckNvbnRlbnRGaWx0ZXIubW0gaW4gU291cmNlcyAqLywKLQkJCQkxQTgxQjM4MDE4QkQ2
NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbSBpbiBTb3VyY2VzICovLAor
CQkJCTFBODFCMzgwMThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMUFGQjRDNzExQURGMTU1RDAwQjMzMzM5IC8qIF9XS1dlYnNpdGVE
YXRhU3RvcmUubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMTE1REM3MTE5MUQ4MkQ3MDBEQTgwNzIg
LyogX1dLV2ViVmlld1ByaW50Rm9ybWF0dGVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTdENzky
RDYxNzY3Q0I2RTAwODgxQ0JFIC8qIEFjdGl2aXR5QXNzZXJ0aW9uLmNwcCBpbiBTb3VyY2VzICov
LApAQCAtOTYxOSw2ICs5NjI2LDcgQEAKIAkJCQkxQTJEOTBEMzEyODFDOTY2MDAxRUI5NjIgLyog
UGx1Z2luUHJvY2Vzc0NyZWF0aW9uUGFyYW1ldGVycy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkx
QUE0NzkyMzEyQTU5RkQ5MDA4MjM2QzMgLyogUGx1Z2luUHJvY2Vzc01hYy5tbSBpbiBTb3VyY2Vz
ICovLAogCQkJCUJDODI4MzhDMTZCNDVGMDcwMEEyNzhGRSAvKiBQbHVnaW5Qcm9jZXNzTWFpbi5t
bSBpbiBTb3VyY2VzICovLAorCQkJCTFBMjA2NzkyMUI4QjkwNjYwMEMxM0MzNiAvKiBfV0tWaXNp
dGVkTGlua1Byb3ZpZGVyLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMUEwRUM2MDQxMjRBOUYyQzAw
N0VGNEE1IC8qIFBsdWdpblByb2Nlc3NNYW5hZ2VyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlG
NTRGODk1MTY0OEFFMEYwMDdERjgxQSAvKiBQbHVnaW5Qcm9jZXNzTWFuYWdlck1hYy5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTFBMDQzQ0VCMTI0RkUzOEYwMEZGQkZCNSAvKiBQbHVnaW5Qcm9jZXNz
TWVzc2FnZVJlY2VpdmVyLmNwcCBpbiBTb3VyY2VzICovLAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>259783</attachid>
            <date>2015-08-24 15:10:23 -0700</date>
            <delta_ts>2015-08-24 15:38:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-148398-20150824151015.patch</filename>
            <type>text/plain</type>
            <size>34039</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg4ODc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZjdlNjlhZTlkZjY3YTVk
MDA0ZDcyMjllMDAwOWY4Njg2MWFmZTUwYS4uODdhOGUzMjhiMWEyYTU2YTk3MmIyYjc5ZmNhNzM0
OTBiOTc5MmFkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ0IEBACisyMDE1LTA4LTI0ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmVuYW1lIF9XS1Zp
c2l0ZWRMaW5rUHJvdmlkZXIgdG8gX1dLVmlzaXRlZExpbmtTdG9yZSBmb3IgY29uc2lzdGVuY3kK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0ODM5OAor
CisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdlJ2QgbGlr
ZSB0byBjYWxsIHRoZSBhYnN0cmFjdCBjbGFzc2VzIHByb3ZpZGVycyBhbmQgdGhlIGNvbmNyZXRl
IGNsYXNzZXMgc3RvcmVzIGluIFdlYktpdC4gQmVnaW4gYnkgcmVuYW1pbmcKKyAgICAgICAgX1dL
VmlzaXRlZExpbmtQcm92aWRlciB0byBfV0tWaXNpdGVkTGlua1N0b3JlLCBidXQga2VlcCB0aGUg
Zm9ybWVyIGFyb3VuZCBhcyBhIGRlcHJlY2F0ZWQgY2xhc3MuCisKKyAgICAgICAgKiBTaGFyZWQv
QVBJL0NvY29hL1dlYktpdFByaXZhdGUuaDoKKyAgICAgICAgKiBTaGFyZWQvQ29jb2EvQVBJT2Jq
ZWN0Lm1tOgorICAgICAgICAoQVBJOjpPYmplY3Q6Om5ld09iamVjdCk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06CisgICAgICAgICgtW1dLV2ViVmlldyBpbml0
V2l0aEZyYW1lOmNvbmZpZ3VyYXRpb246XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1
cmF0aW9uIGNvcHlXaXRoWm9uZTpdKToKKyAgICAgICAgKC1bV0tXZWJWaWV3Q29uZmlndXJhdGlv
biBfdmlzaXRlZExpbmtTdG9yZV0pOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1cmF0aW9u
IF9zZXRWaXNpdGVkTGlua1N0b3JlOl0pOgorICAgICAgICAoLVtXS1dlYlZpZXdDb25maWd1cmF0
aW9uIF92aXNpdGVkTGlua1Byb3ZpZGVyXSk6CisgICAgICAgICgtW1dLV2ViVmlld0NvbmZpZ3Vy
YXRpb24gX3NldFZpc2l0ZWRMaW5rUHJvdmlkZXI6XSk6CisgICAgICAgICgtW1dLV2ViVmlld0Nv
bmZpZ3VyYXRpb24gX3ZhbGlkYXRlXSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkv
Q29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbToKKyAgICAgICAgKC1bX1dLVmlzaXRlZExp
bmtQcm92aWRlciBpbml0XSk6IERlbGV0ZWQuCisgICAgICAgICgtW19XS1Zpc2l0ZWRMaW5rUHJv
dmlkZXIgZGVhbGxvY10pOiBEZWxldGVkLgorICAgICAgICAoLVtfV0tWaXNpdGVkTGlua1Byb3Zp
ZGVyIGFkZFZpc2l0ZWRMaW5rV2l0aFVSTDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bX1dLVmlz
aXRlZExpbmtQcm92aWRlciByZW1vdmVBbGxdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bX1dLVmlz
aXRlZExpbmtQcm92aWRlciBfYXBpT2JqZWN0XSk6IERlbGV0ZWQuCisgICAgICAgICogVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1N0b3JlLmg6IENvcGllZCBmcm9tIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oLgorICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtTdG9yZS5tbTogQ29waWVk
IGZyb20gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1By
b3ZpZGVyLm1tLgorICAgICAgICAoLVtfV0tWaXNpdGVkTGlua1N0b3JlIGluaXRdKToKKyAgICAg
ICAgKC1bX1dLVmlzaXRlZExpbmtTdG9yZSBkZWFsbG9jXSk6CisgICAgICAgICgtW19XS1Zpc2l0
ZWRMaW5rU3RvcmUgYWRkVmlzaXRlZExpbmtXaXRoVVJMOl0pOgorICAgICAgICAoLVtfV0tWaXNp
dGVkTGlua1N0b3JlIHJlbW92ZUFsbF0pOgorICAgICAgICAoLVtfV0tWaXNpdGVkTGlua1N0b3Jl
IF9hcGlPYmplY3RdKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRM
aW5rU3RvcmVJbnRlcm5hbC5oOiBSZW5hbWVkIGZyb20gU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaC4KKyAgICAgICAgKFdl
YktpdDo6d3JhcHBlcik6CisgICAgICAgICogV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOgorCiAyMDE1LTA4LTI0ICBXZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29t
PgogCiAgICAgICAgIFVzZSBfTlNTY3JvbGxpbmdQcmVkb21pbmFudEF4aXNGaWx0ZXIgZm9yIHdo
ZWVsIGV2ZW50IGZpbHRlcmluZyBvbiBNYWMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1No
YXJlZC9BUEkvQ29jb2EvV2ViS2l0UHJpdmF0ZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQ
SS9Db2NvYS9XZWJLaXRQcml2YXRlLmgKaW5kZXggOTg4MWZiNGViNDBjNTZiM2JjMzlkNjljMjQ0
MmY2NWZiYThkODM3NC4uYWNmODYyNGUyZjA2ZjU1YTNkNzhhNWNjNjNhMzRjMmIzNDc0ZjIzOCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRl
LmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9Db2NvYS9XZWJLaXRQcml2YXRlLmgK
QEAgLTM1LDQgKzM1LDQgQEAKICNpbXBvcnQgPFdlYktpdC9fV0tGb3JtSW5wdXRTZXNzaW9uLmg+
CiAjaW1wb3J0IDxXZWJLaXQvX1dLUHJvY2Vzc1Bvb2xDb25maWd1cmF0aW9uLmg+CiAjaW1wb3J0
IDxXZWJLaXQvX1dLVGh1bWJuYWlsVmlldy5oPgotI2ltcG9ydCA8V2ViS2l0L19XS1Zpc2l0ZWRM
aW5rUHJvdmlkZXIuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tWaXNpdGVkTGlua1N0b3JlLmg+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tIGIvU291
cmNlL1dlYktpdDIvU2hhcmVkL0NvY29hL0FQSU9iamVjdC5tbQppbmRleCA1NjhhMzJlZTU4MmRk
NWVhM2E3NTBmNDEwYzI0YjQ2MGE1NjI5MmNmLi43YjI1MzkwYzliY2Q2OWNlZmYyNDIzNTc1MGU2
YmRjMGYzZGJjZGU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQ29jb2EvQVBJ
T2JqZWN0Lm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9Db2NvYS9BUElPYmplY3QubW0K
QEAgLTY2LDcgKzY2LDcgQEAKICNpbXBvcnQgIl9XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbklu
dGVybmFsLmgiCiAjaW1wb3J0ICJfV0tVc2VyQ29udGVudEV4dGVuc2lvblN0b3JlSW50ZXJuYWwu
aCIKICNpbXBvcnQgIl9XS1VzZXJDb250ZW50RmlsdGVySW50ZXJuYWwuaCIKLSNpbXBvcnQgIl9X
S1Zpc2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5hbC5oIgorI2ltcG9ydCAiX1dLVmlzaXRlZExpbmtT
dG9yZUludGVybmFsLmgiCiAjaW1wb3J0IDxvYmpjL29iamMtYXV0by5oPgogCiBuYW1lc3BhY2Ug
QVBJIHsKQEAgLTIwNyw3ICsyMDcsNyBAQCB2b2lkKiBPYmplY3Q6Om5ld09iamVjdChzaXplX3Qg
c2l6ZSwgVHlwZSB0eXBlKQogICAgICAgICBicmVhazsKIAogICAgIGNhc2UgVHlwZTo6VmlzaXRl
ZExpbmtQcm92aWRlcjoKLSAgICAgICAgd3JhcHBlciA9IFtfV0tWaXNpdGVkTGlua1Byb3ZpZGVy
IGFsbG9jXTsKKyAgICAgICAgd3JhcHBlciA9IFtfV0tWaXNpdGVkTGlua1N0b3JlIGFsbG9jXTsK
ICAgICAgICAgYnJlYWs7CiAKICAgICBjYXNlIFR5cGU6OldlYnNpdGVEYXRhUmVjb3JkOgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW0g
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQppbmRleCAw
ZTAxZjg1OTU4YmZjNDFiNDEzMjliMTM0ZTI2MjIwNDJmNDlhYjdkLi4wNTAxYmNhMzZiMTIxMTFm
YTJmOWI1OTQ5NjVmMTIyNDk1ZDVjNGU0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0NvY29hL1dLV2ViVmlldy5tbQpAQCAtNzYsNyArNzYsNyBAQAogI2ltcG9ydCAiX1dL
Rm9ybURlbGVnYXRlLmgiCiAjaW1wb3J0ICJfV0tSZW1vdGVPYmplY3RSZWdpc3RyeUludGVybmFs
LmgiCiAjaW1wb3J0ICJfV0tTZXNzaW9uU3RhdGVJbnRlcm5hbC5oIgotI2ltcG9ydCAiX1dLVmlz
aXRlZExpbmtQcm92aWRlckludGVybmFsLmgiCisjaW1wb3J0ICJfV0tWaXNpdGVkTGlua1N0b3Jl
SW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvSU9TdXJmYWNlLmg+CiAjaW1wb3J0IDx3dGYv
SGFzaE1hcC5oPgogI2ltcG9ydCA8d3RmL01hdGhFeHRyYXMuaD4KQEAgLTMxMCw3ICszMTAsNyBA
QCBzdGF0aWMgYm9vbCBzaG91bGRBbGxvd1BpY3R1cmVJblBpY3R1cmVNZWRpYVBsYXliYWNrKCkK
ICAgICAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnNldFJlbGF0ZWRQYWdlKHJlbGF0ZWRXZWJWaWV3
LT5fcGFnZS5nZXQoKSk7CiAKICAgICBwYWdlQ29uZmlndXJhdGlvbi0+c2V0VXNlckNvbnRlbnRD
b250cm9sbGVyKFtfY29uZmlndXJhdGlvbiB1c2VyQ29udGVudENvbnRyb2xsZXJdLT5fdXNlckNv
bnRlbnRDb250cm9sbGVyUHJveHkuZ2V0KCkpOwotICAgIHBhZ2VDb25maWd1cmF0aW9uLT5zZXRW
aXNpdGVkTGlua1Byb3ZpZGVyKFtfY29uZmlndXJhdGlvbiBfdmlzaXRlZExpbmtQcm92aWRlcl0t
Pl92aXNpdGVkTGlua1Byb3ZpZGVyLmdldCgpKTsKKyAgICBwYWdlQ29uZmlndXJhdGlvbi0+c2V0
VmlzaXRlZExpbmtQcm92aWRlcihbX2NvbmZpZ3VyYXRpb24gX3Zpc2l0ZWRMaW5rU3RvcmVdLT5f
dmlzaXRlZExpbmtQcm92aWRlci5nZXQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnNldFdl
YnNpdGVEYXRhU3RvcmUoW19jb25maWd1cmF0aW9uIHdlYnNpdGVEYXRhU3RvcmVdLT5fd2Vic2l0
ZURhdGFTdG9yZS5nZXQoKSk7CiAgICAgcGFnZUNvbmZpZ3VyYXRpb24tPnNldFRyZWF0c1NIQTFT
aWduZWRDZXJ0aWZpY2F0ZXNBc0luc2VjdXJlKFtfY29uZmlndXJhdGlvbiBfdHJlYXRzU0hBMVNp
Z25lZENlcnRpZmljYXRlc0FzSW5zZWN1cmVdKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXdDb25maWd1cmF0aW9uLm1tCmlu
ZGV4IDhmYzU1OTEwNTBlYzhhMDAxNDU5NWQ4NmVhYzA1OWRjODViYjkxMjguLmQxNjE5Yzk1M2Yy
OTA1N2QyYWY5NDVhYzQzNmU3ODI5YmEzNTU3M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvbi5tbQorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRpb24ubW0K
QEAgLTgzLDcgKzgzLDcgQEAgcHJpdmF0ZToKICAgICBMYXp5SW5pdGlhbGl6ZWQ8UmV0YWluUHRy
PFdLUHJvY2Vzc1Bvb2w+PiBfcHJvY2Vzc1Bvb2w7CiAgICAgTGF6eUluaXRpYWxpemVkPFJldGFp
blB0cjxXS1ByZWZlcmVuY2VzPj4gX3ByZWZlcmVuY2VzOwogICAgIExhenlJbml0aWFsaXplZDxS
ZXRhaW5QdHI8V0tVc2VyQ29udGVudENvbnRyb2xsZXI+PiBfdXNlckNvbnRlbnRDb250cm9sbGVy
OwotICAgIExhenlJbml0aWFsaXplZDxSZXRhaW5QdHI8X1dLVmlzaXRlZExpbmtQcm92aWRlcj4+
IF92aXNpdGVkTGlua1Byb3ZpZGVyOworICAgIExhenlJbml0aWFsaXplZDxSZXRhaW5QdHI8X1dL
VmlzaXRlZExpbmtTdG9yZT4+IF92aXNpdGVkTGlua1N0b3JlOwogICAgIExhenlJbml0aWFsaXpl
ZDxSZXRhaW5QdHI8V0tXZWJzaXRlRGF0YVN0b3JlPj4gX3dlYnNpdGVEYXRhU3RvcmU7CiAgICAg
V2ViS2l0OjpXZWFrT2JqQ1B0cjxXS1dlYlZpZXc+IF9yZWxhdGVkV2ViVmlldzsKICAgICBXZWJL
aXQ6OldlYWtPYmpDUHRyPFdLV2ViVmlldz4gX2FsdGVybmF0ZVdlYlZpZXdGb3JOYXZpZ2F0aW9u
R2VzdHVyZXM7CkBAIC0xMjcsNyArMTI3LDcgQEAgcHJpdmF0ZToKICAgICBjb25maWd1cmF0aW9u
LnByZWZlcmVuY2VzID0gc2VsZi5wcmVmZXJlbmNlczsKICAgICBjb25maWd1cmF0aW9uLnVzZXJD
b250ZW50Q29udHJvbGxlciA9IHNlbGYudXNlckNvbnRlbnRDb250cm9sbGVyOwogICAgIGNvbmZp
Z3VyYXRpb24ud2Vic2l0ZURhdGFTdG9yZSA9IHNlbGYud2Vic2l0ZURhdGFTdG9yZTsKLSAgICBj
b25maWd1cmF0aW9uLl92aXNpdGVkTGlua1Byb3ZpZGVyID0gc2VsZi5fdmlzaXRlZExpbmtQcm92
aWRlcjsKKyAgICBjb25maWd1cmF0aW9uLl92aXNpdGVkTGlua1N0b3JlID0gc2VsZi5fdmlzaXRl
ZExpbmtTdG9yZTsKICAgICBjb25maWd1cmF0aW9uLl9yZWxhdGVkV2ViVmlldyA9IF9yZWxhdGVk
V2ViVmlldy5nZXQoKS5nZXQoKTsKICAgICBjb25maWd1cmF0aW9uLl9hbHRlcm5hdGVXZWJWaWV3
Rm9yTmF2aWdhdGlvbkdlc3R1cmVzID0gX2FsdGVybmF0ZVdlYlZpZXdGb3JOYXZpZ2F0aW9uR2Vz
dHVyZXMuZ2V0KCkuZ2V0KCk7CiAgICAgY29uZmlndXJhdGlvbi0+X3RyZWF0c1NIQTFTaWduZWRD
ZXJ0aWZpY2F0ZXNBc0luc2VjdXJlID0gX3RyZWF0c1NIQTFTaWduZWRDZXJ0aWZpY2F0ZXNBc0lu
c2VjdXJlOwpAQCAtMjExLDE0ICsyMTEsMTQgQEAgc3RhdGljIE5TU3RyaW5nICpkZWZhdWx0QXBw
bGljYXRpb25OYW1lRm9yVXNlckFnZW50KCkKICAgICBfYXBwbGljYXRpb25OYW1lRm9yVXNlckFn
ZW50LnNldChhZG9wdE5TKFthcHBsaWNhdGlvbk5hbWVGb3JVc2VyQWdlbnQgY29weV0pKTsKIH0K
IAotLSAoX1dLVmlzaXRlZExpbmtQcm92aWRlciAqKV92aXNpdGVkTGlua1Byb3ZpZGVyCistIChf
V0tWaXNpdGVkTGlua1N0b3JlICopX3Zpc2l0ZWRMaW5rU3RvcmUKIHsKLSAgICByZXR1cm4gX3Zp
c2l0ZWRMaW5rUHJvdmlkZXIuZ2V0KFtdIHsgcmV0dXJuIGFkb3B0TlMoW1tfV0tWaXNpdGVkTGlu
a1Byb3ZpZGVyIGFsbG9jXSBpbml0XSk7IH0pOworICAgIHJldHVybiBfdmlzaXRlZExpbmtTdG9y
ZS5nZXQoW10geyByZXR1cm4gYWRvcHROUyhbW19XS1Zpc2l0ZWRMaW5rU3RvcmUgYWxsb2NdIGlu
aXRdKTsgfSk7CiB9CiAKLS0gKHZvaWQpX3NldFZpc2l0ZWRMaW5rUHJvdmlkZXI6KF9XS1Zpc2l0
ZWRMaW5rUHJvdmlkZXIgKil2aXNpdGVkTGlua1Byb3ZpZGVyCistICh2b2lkKV9zZXRWaXNpdGVk
TGlua1N0b3JlOihfV0tWaXNpdGVkTGlua1N0b3JlICopdmlzaXRlZExpbmtTdG9yZQogewotICAg
IF92aXNpdGVkTGlua1Byb3ZpZGVyLnNldCh2aXNpdGVkTGlua1Byb3ZpZGVyKTsKKyAgICBfdmlz
aXRlZExpbmtTdG9yZS5zZXQodmlzaXRlZExpbmtTdG9yZSk7CiB9CiAKICNwcmFnbWEgY2xhbmcg
ZGlhZ25vc3RpYyBwdXNoCkBAIC0yMzQsNiArMjM0LDE2IEBAIHN0YXRpYyBOU1N0cmluZyAqZGVm
YXVsdEFwcGxpY2F0aW9uTmFtZUZvclVzZXJBZ2VudCgpCiAgICAgc2VsZi53ZWJzaXRlRGF0YVN0
b3JlID0gd2Vic2l0ZURhdGFTdG9yZSA/IHdlYnNpdGVEYXRhU3RvcmUtPl9kYXRhU3RvcmUuZ2V0
KCkgOiBudWxscHRyOwogfQogCistKF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgKilfdmlzaXRlZExp
bmtQcm92aWRlcgoreworICAgIHJldHVybiAoX1dLVmlzaXRlZExpbmtQcm92aWRlciAqKXNlbGYu
X3Zpc2l0ZWRMaW5rU3RvcmU7Cit9CisKKy0gKHZvaWQpX3NldFZpc2l0ZWRMaW5rUHJvdmlkZXI6
KF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgKilfdmlzaXRlZExpbmtQcm92aWRlcgoreworICAgIHNl
bGYuX3Zpc2l0ZWRMaW5rU3RvcmUgPSBfdmlzaXRlZExpbmtQcm92aWRlcjsKK30KKwogI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAogCiAjaWYgUExBVEZPUk0oSU9TKQpAQCAtMjYyLDggKzI3
Miw4IEBAIHN0YXRpYyBOU1N0cmluZyAqZGVmYXVsdEFwcGxpY2F0aW9uTmFtZUZvclVzZXJBZ2Vu
dCgpCiAgICAgaWYgKCFzZWxmLndlYnNpdGVEYXRhU3RvcmUpCiAgICAgICAgIFtOU0V4Y2VwdGlv
biByYWlzZTpOU0ludmFsaWRBcmd1bWVudEV4Y2VwdGlvbiBmb3JtYXQ6QCJjb25maWd1cmF0aW9u
LndlYnNpdGVEYXRhU3RvcmUgaXMgbmlsIl07CiAKLSAgICBpZiAoIXNlbGYuX3Zpc2l0ZWRMaW5r
UHJvdmlkZXIpCi0gICAgICAgIFtOU0V4Y2VwdGlvbiByYWlzZTpOU0ludmFsaWRBcmd1bWVudEV4
Y2VwdGlvbiBmb3JtYXQ6QCJjb25maWd1cmF0aW9uLl92aXNpdGVkTGlua1Byb3ZpZGVyIGlzIG5p
bCJdOworICAgIGlmICghc2VsZi5fdmlzaXRlZExpbmtTdG9yZSkKKyAgICAgICAgW05TRXhjZXB0
aW9uIHJhaXNlOk5TSW52YWxpZEFyZ3VtZW50RXhjZXB0aW9uIGZvcm1hdDpAImNvbmZpZ3VyYXRp
b24uX3Zpc2l0ZWRMaW5rU3RvcmUgaXMgbmlsIl07CiAKICNpZiBQTEFURk9STShJT1MpCiAgICAg
aWYgKCFzZWxmLl9jb250ZW50UHJvdmlkZXJSZWdpc3RyeSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJhdGlvblByaXZhdGUu
aCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJWaWV3Q29uZmlndXJh
dGlvblByaXZhdGUuaAppbmRleCBiZmUyZWZhMjI3OTQ3YTI1YjdiNWQ3NTQ4YTQ4YTE0MjJjYjU3
NmZkLi43YzQ1NDNmOTBmYTI0YzZlY2E0NDFmZTA0N2VkYmYxYTZjNTk1NTI4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld0NvbmZpZ3VyYXRp
b25Qcml2YXRlLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YlZpZXdDb25maWd1cmF0aW9uUHJpdmF0ZS5oCkBAIC0yOSw2ICsyOSw3IEBACiAKIEBjbGFzcyBX
S1dlYlZpZXc7CiBAY2xhc3MgX1dLVmlzaXRlZExpbmtQcm92aWRlcjsKK0BjbGFzcyBfV0tWaXNp
dGVkTGlua1N0b3JlOwogQGNsYXNzIF9XS1dlYnNpdGVEYXRhU3RvcmU7CiAKIEBpbnRlcmZhY2Ug
V0tXZWJWaWV3Q29uZmlndXJhdGlvbiAoV0tQcml2YXRlKQpAQCAtMzYsOSArMzcsNyBAQAogQHBy
b3BlcnR5IChub25hdG9taWMsIHdlYWssIHNldHRlcj1fc2V0UmVsYXRlZFdlYlZpZXc6KSBXS1dl
YlZpZXcgKl9yZWxhdGVkV2ViVmlldzsKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0
ZXI9X3NldEdyb3VwSWRlbnRpZmllcjopIE5TU3RyaW5nICpfZ3JvdXBJZGVudGlmaWVyOwogCi1A
cHJvcGVydHkgKG5vbmF0b21pYywgc3Ryb25nLCBzZXR0ZXI9X3NldFZpc2l0ZWRMaW5rUHJvdmlk
ZXI6KSBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyICpfdmlzaXRlZExpbmtQcm92aWRlcjsKLQotQHBy
b3BlcnR5IChub25hdG9taWMsIHN0cm9uZywgc2V0dGVyPV9zZXRXZWJzaXRlRGF0YVN0b3JlOikg
X1dLV2Vic2l0ZURhdGFTdG9yZSAqX3dlYnNpdGVEYXRhU3RvcmUgV0tfREVQUkVDQVRFRCgxMF8x
MCwgV0tfTUFDX1RCQSwgOF8wLCBXS19JT1NfVEJBLCAiUGxlYXNlIHVzZSB3ZWJzaXRlRGF0YVN0
b3JlIGluc3RlYWQiKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcsIHNldHRlcj1fc2V0
VmlzaXRlZExpbmtTdG9yZTopIF9XS1Zpc2l0ZWRMaW5rU3RvcmUgKl92aXNpdGVkTGlua1N0b3Jl
OwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgd2Vhaywgc2V0dGVyPV9zZXRBbHRlcm5hdGVXZWJW
aWV3Rm9yTmF2aWdhdGlvbkdlc3R1cmVzOikgV0tXZWJWaWV3ICpfYWx0ZXJuYXRlV2ViVmlld0Zv
ck5hdmlnYXRpb25HZXN0dXJlczsKIApAQCAtNDgsNiArNDcsMTAgQEAKIEBwcm9wZXJ0eSAobm9u
YXRvbWljLCBzZXR0ZXI9X3NldEFsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eTopIEJPT0wg
X2Fsd2F5c1J1bnNBdEZvcmVncm91bmRQcmlvcml0eSBXS19BVkFJTEFCTEUoTkEsIFdLX0lPU19U
QkEpOwogI2VuZGlmCiAKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBzdHJvbmcsIHNldHRlcj1fc2V0
VmlzaXRlZExpbmtQcm92aWRlcjopIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgKl92aXNpdGVkTGlu
a1Byb3ZpZGVyIFdLX0RFUFJFQ0FURUQoMTBfMTAsIFdLX01BQ19UQkEsIDhfMCwgV0tfSU9TX1RC
QSwgIlBsZWFzZSB1c2UgdmlzaXRlZExpbmtTdG9yZSBpbnN0ZWFkIik7CisKK0Bwcm9wZXJ0eSAo
bm9uYXRvbWljLCBzdHJvbmcsIHNldHRlcj1fc2V0V2Vic2l0ZURhdGFTdG9yZTopIF9XS1dlYnNp
dGVEYXRhU3RvcmUgKl93ZWJzaXRlRGF0YVN0b3JlIFdLX0RFUFJFQ0FURUQoMTBfMTAsIFdLX01B
Q19UQkEsIDhfMCwgV0tfSU9TX1RCQSwgIlBsZWFzZSB1c2Ugd2Vic2l0ZURhdGFTdG9yZSBpbnN0
ZWFkIik7CisKIEBlbmQKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oCmluZGV4IGI1YTNk
NGI3OGJlOThkMDdmZTQzNTU0MTUxMDRjOTNiNTJhOTIzY2IuLjZkYzEzYzczZjk2YzJhZmEwNmE5
NzQ2YzVkNGZiODNkNDFjMjhiZDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5oCkBAIC0xLDUgKzEs
NSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkg
Zm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHBy
b3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBAIC0yMywxNyArMjMsMTIgQEAK
ICAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KICAqLwogCi0jaW1wb3J0IDxGb3Vu
ZGF0aW9uL0ZvdW5kYXRpb24uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0ZvdW5kYXRpb24uaD4KKyNp
bXBvcnQgPFdlYktpdC9fV0tWaXNpdGVkTGlua1N0b3JlLmg+CiAKICNpZiBXS19BUElfRU5BQkxF
RAogCi1XS19DTEFTU19BVkFJTEFCTEUoMTBfMTAsIDhfMCkKLUBpbnRlcmZhY2UgX1dLVmlzaXRl
ZExpbmtQcm92aWRlciA6IE5TT2JqZWN0Ci0KLS0gKHZvaWQpYWRkVmlzaXRlZExpbmtXaXRoVVJM
OihOU1VSTCAqKVVSTDsKLS0gKHZvaWQpcmVtb3ZlQWxsOwotCitXS19DTEFTU19ERVBSRUNBVEVE
KDEwXzEwLCBXS19NQUNfVEJBLCA4XzAsIFdLX0lPU19UQkEsICJQbGVhc2UgdXNlIF9XS1Zpc2l0
ZWRMaW5rU3RvcmUgaW5zdGVhZCIpCitAaW50ZXJmYWNlIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIg
OiBfV0tWaXNpdGVkTGlua1N0b3JlCiBAZW5kCiAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3ZpZGVyLm1tIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3ZpZGVy
Lm1tCmluZGV4IGRkNmE3OTFkNjhiM2RmNTE3NTNjZDg0ZGM3NWUzZjI1MDJkZDJkNDUuLjVjYWU5
NWVlODZmOGIxMmFkNWVjM2U0OGY2Mjc0MDc3ZWYzN2FkM2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlk
ZXIubW0KQEAgLTEsNSArMSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAoQykgMjAxNSBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CiAgKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKQEAg
LTIzLDUyICsyMywxMiBAQAogICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgogICov
CiAKLSNpbXBvcnQgImNvbmZpZy5oIgotI2ltcG9ydCAiX1dLVmlzaXRlZExpbmtQcm92aWRlcklu
dGVybmFsLmgiCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiX1dLVmlzaXRlZExpbmtQ
cm92aWRlci5oIgogCiAjaWYgV0tfQVBJX0VOQUJMRUQKIAotI2ltcG9ydCAiVmlzaXRlZExpbmtQ
cm92aWRlci5oIgotI2ltcG9ydCA8V2ViQ29yZS9MaW5rSGFzaC5oPgotCiBAaW1wbGVtZW50YXRp
b24gX1dLVmlzaXRlZExpbmtQcm92aWRlcgotCi0tIChpbnN0YW5jZXR5cGUpaW5pdAotewotICAg
IGlmICghKHNlbGYgPSBbc3VwZXIgaW5pdF0pKQotICAgICAgICByZXR1cm4gbmlsOwotCi0gICAg
QVBJOjpPYmplY3Q6OmNvbnN0cnVjdEluV3JhcHBlcjxXZWJLaXQ6OlZpc2l0ZWRMaW5rUHJvdmlk
ZXI+KHNlbGYpOwotCi0gICAgcmV0dXJuIHNlbGY7Ci19Ci0KLS0gKHZvaWQpZGVhbGxvYwotewot
ICAgIF92aXNpdGVkTGlua1Byb3ZpZGVyLT5+VmlzaXRlZExpbmtQcm92aWRlcigpOwotCi0gICAg
W3N1cGVyIGRlYWxsb2NdOwotfQotCi0tICh2b2lkKWFkZFZpc2l0ZWRMaW5rV2l0aFVSTDooTlNV
UkwgKilVUkwKLXsKLSAgICBhdXRvIGxpbmtIYXNoID0gV2ViQ29yZTo6dmlzaXRlZExpbmtIYXNo
KFVSTC5hYnNvbHV0ZVN0cmluZyk7Ci0KLSAgICBfdmlzaXRlZExpbmtQcm92aWRlci0+YWRkVmlz
aXRlZExpbmtIYXNoKGxpbmtIYXNoKTsKLX0KLQotLSAodm9pZClyZW1vdmVBbGwKLXsKLSAgICBf
dmlzaXRlZExpbmtQcm92aWRlci0+cmVtb3ZlQWxsKCk7Ci19Ci0KLSNwcmFnbWEgbWFyayBXS09i
amVjdCBwcm90b2NvbCBpbXBsZW1lbnRhdGlvbgotCi0tIChBUEk6Ok9iamVjdCYpX2FwaU9iamVj
dAotewotICAgIHJldHVybiAqX3Zpc2l0ZWRMaW5rUHJvdmlkZXI7Ci19Ci0KIEBlbmQKIAogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zp
c2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5hbC5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9Db2NvYS9fV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaApkZWxldGVkIGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggNjkzNjEwYzUwZjlhNDYzMDU2NGM4OGNiZjUxNWZmMmU4YWJlZGZhNi4u
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5hbC5o
CisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
NCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbXBvcnQgIl9X
S1Zpc2l0ZWRMaW5rUHJvdmlkZXIuaCIKLQotI2lmIFdLX0FQSV9FTkFCTEVECi0KLSNpbXBvcnQg
IlZpc2l0ZWRMaW5rUHJvdmlkZXIuaCIKLSNpbXBvcnQgIldLT2JqZWN0LmgiCi0KLW5hbWVzcGFj
ZSBXZWJLaXQgewotCi1pbmxpbmUgX1dLVmlzaXRlZExpbmtQcm92aWRlciAqd3JhcHBlcihWaXNp
dGVkTGlua1Byb3ZpZGVyJiB2aXNpdGVkTGlua1Byb3ZpZGVyKQotewotICAgIEFTU0VSVChbdmlz
aXRlZExpbmtQcm92aWRlci53cmFwcGVyKCkgaXNLaW5kT2ZDbGFzczpbX1dLVmlzaXRlZExpbmtQ
cm92aWRlciBjbGFzc11dKTsKLSAgICByZXR1cm4gKF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIgKil2
aXNpdGVkTGlua1Byb3ZpZGVyLndyYXBwZXIoKTsKLX0KLQotfQotCi1AaW50ZXJmYWNlIF9XS1Zp
c2l0ZWRMaW5rUHJvdmlkZXIgKCkgPFdLT2JqZWN0PiB7Ci1AcGFja2FnZQotICAgIEFQSTo6T2Jq
ZWN0U3RvcmFnZTxXZWJLaXQ6OlZpc2l0ZWRMaW5rUHJvdmlkZXI+IF92aXNpdGVkTGlua1Byb3Zp
ZGVyOwotfQotCi1AZW5kCi0KLSNlbmRpZgotCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rU3RvcmUuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRlZExpbmtTdG9yZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmU1
YTgxNzZhM2EzOWRhYmIyZTRiOTViMDI0MTgyMDQ5NDQ2MzNhMzgKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rU3RvcmUu
aApAQCAtMCwwICsxLDM5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE0IEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBB
TkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhF
TVBMQVJZLCBPUgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklD
RVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJS
VVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4KKyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9G
IFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9T
U0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2ltcG9ydCA8Rm91bmRhdGlvbi9Gb3Vu
ZGF0aW9uLmg+CisjaW1wb3J0IDxXZWJLaXQvV0tGb3VuZGF0aW9uLmg+CisKKyNpZiBXS19BUElf
RU5BQkxFRAorCitXS19DTEFTU19BVkFJTEFCTEUoMTBfMTAsIDhfMCkKK0BpbnRlcmZhY2UgX1dL
VmlzaXRlZExpbmtTdG9yZSA6IE5TT2JqZWN0CisKKy0gKHZvaWQpYWRkVmlzaXRlZExpbmtXaXRo
VVJMOihOU1VSTCAqKVVSTDsKKy0gKHZvaWQpcmVtb3ZlQWxsOworCitAZW5kCisKKyNlbmRpZgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNpdGVk
TGlua1N0b3JlLm1tIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tWaXNp
dGVkTGlua1N0b3JlLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmYxZmIzZjE1ZmJiNDU4NWE1MGU5ZjQ1OTE2OTc1
NjM1ZDZmZjE4OGMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rU3RvcmUubW0KQEAgLTAsMCArMSw3NCBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxNCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJ
VFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJworICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQg
V0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElF
RCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNV
TEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9G
CisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1Ig
UFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgor
ICovCisKKyNpbXBvcnQgImNvbmZpZy5oIgorI2ltcG9ydCAiX1dLVmlzaXRlZExpbmtTdG9yZUlu
dGVybmFsLmgiCisKKyNpZiBXS19BUElfRU5BQkxFRAorCisjaW1wb3J0ICJWaXNpdGVkTGlua1By
b3ZpZGVyLmgiCisjaW1wb3J0IDxXZWJDb3JlL0xpbmtIYXNoLmg+CisKK0BpbXBsZW1lbnRhdGlv
biBfV0tWaXNpdGVkTGlua1N0b3JlCisKKy0gKGluc3RhbmNldHlwZSlpbml0Cit7CisgICAgaWYg
KCEoc2VsZiA9IFtzdXBlciBpbml0XSkpCisgICAgICAgIHJldHVybiBuaWw7CisKKyAgICBBUEk6
Ok9iamVjdDo6Y29uc3RydWN0SW5XcmFwcGVyPFdlYktpdDo6VmlzaXRlZExpbmtQcm92aWRlcj4o
c2VsZik7CisKKyAgICByZXR1cm4gc2VsZjsKK30KKworLSAodm9pZClkZWFsbG9jCit7CisgICAg
X3Zpc2l0ZWRMaW5rUHJvdmlkZXItPn5WaXNpdGVkTGlua1Byb3ZpZGVyKCk7CisKKyAgICBbc3Vw
ZXIgZGVhbGxvY107Cit9CisKKy0gKHZvaWQpYWRkVmlzaXRlZExpbmtXaXRoVVJMOihOU1VSTCAq
KVVSTAoreworICAgIGF1dG8gbGlua0hhc2ggPSBXZWJDb3JlOjp2aXNpdGVkTGlua0hhc2goVVJM
LmFic29sdXRlU3RyaW5nKTsKKworICAgIF92aXNpdGVkTGlua1Byb3ZpZGVyLT5hZGRWaXNpdGVk
TGlua0hhc2gobGlua0hhc2gpOworfQorCistICh2b2lkKXJlbW92ZUFsbAoreworICAgIF92aXNp
dGVkTGlua1Byb3ZpZGVyLT5yZW1vdmVBbGwoKTsKK30KKworI3ByYWdtYSBtYXJrIFdLT2JqZWN0
IHByb3RvY29sIGltcGxlbWVudGF0aW9uCisKKy0gKEFQSTo6T2JqZWN0JilfYXBpT2JqZWN0Cit7
CisgICAgcmV0dXJuICpfdmlzaXRlZExpbmtQcm92aWRlcjsKK30KKworQGVuZAorCisjZW5kaWYK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLVmlzaXRl
ZExpbmtTdG9yZUludGVybmFsLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29h
L19XS1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjY2OWEzMjg3NGQwODYz
ODgxZWU1Yjc1Y2RmZmEyZmZlN2ZmZWE3NTMKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL0NvY29hL19XS1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oCkBA
IC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTQgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJfV0tWaXNpdGVkTGlua1N0b3Jl
LmgiCisKKyNpZiBXS19BUElfRU5BQkxFRAorCisjaW1wb3J0ICJWaXNpdGVkTGlua1Byb3ZpZGVy
LmgiCisjaW1wb3J0ICJXS09iamVjdC5oIgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworaW5saW5l
IF9XS1Zpc2l0ZWRMaW5rU3RvcmUgKndyYXBwZXIoVmlzaXRlZExpbmtQcm92aWRlciYgdmlzaXRl
ZExpbmtQcm92aWRlcikKK3sKKyAgICBBU1NFUlQoW3Zpc2l0ZWRMaW5rUHJvdmlkZXIud3JhcHBl
cigpIGlzS2luZE9mQ2xhc3M6W19XS1Zpc2l0ZWRMaW5rU3RvcmUgY2xhc3NdXSk7CisgICAgcmV0
dXJuIChfV0tWaXNpdGVkTGlua1N0b3JlICopdmlzaXRlZExpbmtQcm92aWRlci53cmFwcGVyKCk7
Cit9CisKK30KKworQGludGVyZmFjZSBfV0tWaXNpdGVkTGlua1N0b3JlICgpIDxXS09iamVjdD4g
eworQHBhY2thZ2UKKyAgICBBUEk6Ok9iamVjdFN0b3JhZ2U8V2ViS2l0OjpWaXNpdGVkTGlua1By
b3ZpZGVyPiBfdmlzaXRlZExpbmtQcm92aWRlcjsKK30KKworQGVuZAorCisjZW5kaWYKKwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
IGIvU291cmNlL1dlYktpdDIvV2ViS2l0Mi54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4
IGY5ODI0MjE1MjZiZTI2YTdhZmUwYTI5NjNmZTEyMjE2OTI3MTVjOTguLmMxYzQ0Y2ZmODYwZWZm
ZTEwNjI2YWQwODNlYjgzODQ4NGE4MjAyN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dl
YktpdDIueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJL
aXQyLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE2Nyw2ICsxNjcsOCBAQAogCQkxQTFF
RjE5OTFBMUQ1QjQyMDAyMzIwMEEgLyogQVBJRGF0YUNvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUExRUYxOTcxQTFENUI0MjAwMjMyMDBBIC8q
IEFQSURhdGFDb2NvYS5tbSAqLzsgfTsKIAkJMUExRkVDMUMxNjI3QjQ1NzAwNzAwRjZEIC8qIFdl
YkNvbm5lY3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMUExRkVDMUExNjI3QjQ1NjAwNzAwRjZEIC8qIFdlYkNvbm5l
Y3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwICovOyB9OwogCQkxQTFGRUMxRDE2MjdCNDU3MDA3MDBG
NkQgLyogV2ViQ29ubmVjdGlvbk1lc3NhZ2VzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTFGRUMxQjE2MjdCNDU3MDA3MDBGNkQgLyogV2ViQ29ubmVj
dGlvbk1lc3NhZ2VzLmggKi87IH07CisJCTFBMjA2NzkyMUI4QjkwNjYwMEMxM0MzNiAvKiBfV0tW
aXNpdGVkTGlua1Byb3ZpZGVyLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMUEyMDY3OTAxQjhCOTA2NjAwQzEzQzM2IC8qIF9XS1Zpc2l0ZWRMaW5rUHJv
dmlkZXIubW0gKi87IH07CisJCTFBMjA2NzkzMUI4QjkwNjYwMEMxM0MzNiAvKiBfV0tWaXNpdGVk
TGlua1Byb3ZpZGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQTIwNjc5MTFCOEI5MDY2MDBDMTNDMzYgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFBMjE2
MUIwMTFGMzc2NjQwMDhBRDBGNSAvKiBOUFJ1bnRpbWVPYmplY3RNYXAuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBMjE2MUFFMTFGMzc2NjQwMDhBRDBG
NSAvKiBOUFJ1bnRpbWVPYmplY3RNYXAuaCAqLzsgfTsKIAkJMUEyMTYxQjExMUYzNzY2NDAwOEFE
MEY1IC8qIE5QUnVudGltZU9iamVjdE1hcC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAxQTIxNjFBRjExRjM3NjY0MDA4QUQwRjUgLyogTlBSdW50aW1l
T2JqZWN0TWFwLmNwcCAqLzsgfTsKIAkJMUEyMTYyQjAxMUYzODk3MTAwOEFEMEY1IC8qIE5QUnVu
dGltZVV0aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAxQTIxNjJBRTExRjM4OTcxMDA4QUQwRjUgLyogTlBSdW50aW1lVXRpbGl0aWVzLmNw
cCAqLzsgfTsKQEAgLTMwOSw5ICszMTEsOSBAQAogCQkxQTdFMzc3NTE4RTRBMzNBMDAzRDBGRkYg
LyogV0tTY3JpcHRNZXNzYWdlSGFuZGxlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMUE3RTM3NzQxOEU0QTMzQTAwM0QwRkZGIC8qIFdLU2NyaXB0TWVz
c2FnZUhhbmRsZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQdWJsaWMsICk7IH07
IH07CiAJCTFBN0UzNzc4MThFNEE0RkUwMDNEMEZGRiAvKiBXS1NjcmlwdE1lc3NhZ2UubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTdFMzc3NjE4RTRB
NEZFMDAzRDBGRkYgLyogV0tTY3JpcHRNZXNzYWdlLm1tICovOyB9OwogCQkxQTdFMzc3OTE4RTRB
NEZFMDAzRDBGRkYgLyogV0tTY3JpcHRNZXNzYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTdFMzc3NzE4RTRBNEZFMDAzRDBGRkYgLyogV0tTY3Jp
cHRNZXNzYWdlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHVibGljLCApOyB9OyB9
OwotCQkxQTgxQjM4MDE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5t
bSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODFCMzdF
MThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLm1tICovOyB9OwotCQkx
QTgxQjM4MTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4MUIzN0YxOEJENjZB
RDAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIuaCAqLzsgc2V0dGluZ3MgPSB7QVRU
UklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwotCQkxQTgxQjM4NTE4QkQ2NzNBMDAwN0ZEQUMg
LyogX1dLVmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQTgxQjM4NDE4QkQ2NzNBMDAwN0ZEQUMgLyogX1dL
VmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmggKi87IH07CisJCTFBODFCMzgwMThCRDY2QUQw
MDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4MUIzN0UxOEJENjZBRDAwMDdGREFDIC8qIF9XS1Zp
c2l0ZWRMaW5rU3RvcmUubW0gKi87IH07CisJCTFBODFCMzgxMThCRDY2QUQwMDA3RkRBQyAvKiBf
V0tWaXNpdGVkTGlua1N0b3JlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAxQTgxQjM3RjE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtTdG9y
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTFB
ODFCMzg1MThCRDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBODFCMzg0MThC
RDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCAqLzsgfTsKIAkJ
MUE4QzcyOEMxNzM4NDc3QzAwMEE2NTU0IC8qIExvY2FsU3RvcmFnZURhdGFiYXNlVHJhY2tlci5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQThDNzI4
QTE3Mzg0NzdDMDAwQTY1NTQgLyogTG9jYWxTdG9yYWdlRGF0YWJhc2VUcmFja2VyLmNwcCAqLzsg
fTsKIAkJMUE4QzcyOEQxNzM4NDc3QzAwMEE2NTU0IC8qIExvY2FsU3RvcmFnZURhdGFiYXNlVHJh
Y2tlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUE4
QzcyOEIxNzM4NDc3QzAwMEE2NTU0IC8qIExvY2FsU3RvcmFnZURhdGFiYXNlVHJhY2tlci5oICov
OyB9OwogCQkxQThFN0QzQzE4QzE1MTQ5MDA1QTcwMkEgLyogVmlzaXRlZExpbmtUYWJsZUNvbnRy
b2xsZXJNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMUE4RTdEM0ExOEMxNTE0OTAwNUE3MDJBIC8qIFZpc2l0ZWRMaW5rVGFi
bGVDb250cm9sbGVyTWVzc2FnZVJlY2VpdmVyLmNwcCAqLzsgfTsKQEAgLTIyNjEsNiArMjI2Myw4
IEBACiAJCTFBMUZFQzE5MTYyN0IzRUYwMDcwMEY2RCAvKiBXZWJDb25uZWN0aW9uLm1lc3NhZ2Vz
LmluICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IFdlYkNvbm5lY3Rpb24ubWVzc2FnZXMuaW47IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTFBMUZFQzFBMTYyN0I0NTYwMDcwMEY2RCAvKiBXZWJDb25uZWN0aW9uTWVzc2Fn
ZVJlY2VpdmVyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFdlYkNv
bm5lY3Rpb25NZXNzYWdlUmVjZWl2ZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQkxQTFGRUMxQjE2MjdCNDU3MDA3MDBGNkQgLyogV2ViQ29ubmVjdGlvbk1lc3NhZ2VzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFdlYkNvbm5lY3Rpb25NZXNzYWdlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTIwNjc5MDFCOEI5MDY2MDBDMTNDMzYgLyog
X1dLVmlzaXRlZExpbmtQcm92aWRlci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNw
cDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFBMjA2NzkxMUI4QjkwNjYwMEMxM0MzNiAvKiBfV0tWaXNpdGVkTGlua1Byb3Zp
ZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rUHJv
dmlkZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUEyMTYxQUUxMUYzNzY2NDAw
OEFEMEY1IC8qIE5QUnVudGltZU9iamVjdE1hcC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBOUFJ1bnRpbWVPYmplY3RNYXAuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMUEyMTYxQUYxMUYzNzY2NDAwOEFEMEY1IC8qIE5QUnVudGltZU9iamVjdE1hcC5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOUFJ1bnRpbWVPYmplY3RNYXAuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQTIxNjJBRTExRjM4OTcxMDA4QUQwRjUg
LyogTlBSdW50aW1lVXRpbGl0aWVzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsg
cGF0aCA9IE5QUnVudGltZVV0aWxpdGllcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CkBAIC0yNDE2LDkgKzI0MjAsOSBAQAogCQkxQTdFMzc3NDE4RTRBMzNBMDAzRDBGRkYgLyogV0tT
Y3JpcHRNZXNzYWdlSGFuZGxlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBX
S1NjcmlwdE1lc3NhZ2VIYW5kbGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFB
N0UzNzc2MThFNEE0RkUwMDNEMEZGRiAvKiBXS1NjcmlwdE1lc3NhZ2UubW0gKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBXS1NjcmlwdE1lc3NhZ2UubW07IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBN0UzNzc3MThFNEE0RkUwMDNEMEZGRiAvKiBXS1Njcmlw
dE1lc3NhZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gV0tTY3JpcHRNZXNz
YWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTFBODFCMzdFMThCRDY2QUQwMDA3
RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAub2JqY3BwOyBwYXRoID0gX1dLVmlzaXRlZExpbmtQcm92aWRlci5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKLQkJMUE4MUIzN0YxOEJENjZBRDAwMDdGREFDIC8qIF9XS1Zpc2l0ZWRM
aW5rUHJvdmlkZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLVmlzaXRl
ZExpbmtQcm92aWRlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQTgxQjM4NDE4
QkQ2NzNBMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXJJbnRlcm5h
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkxQTgxQjM3RTE4QkQ2NkFEMDAwN0ZE
QUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9i
amNwcDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rU3RvcmUubW07IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTFBODFCMzdGMThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3Jl
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IF9XS1Zpc2l0ZWRMaW5rU3RvcmUu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMUE4MUIzODQxOEJENjczQTAwMDdGREFD
IC8qIF9XS1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBfV0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMUE4QzcyOEExNzM4NDc3QzAwMEE2NTU0IC8qIExvY2FsU3RvcmFnZURh
dGFiYXNlVHJhY2tlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBM
b2NhbFN0b3JhZ2VEYXRhYmFzZVRyYWNrZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkxQThDNzI4QjE3Mzg0NzdDMDAwQTY1NTQgLyogTG9jYWxTdG9yYWdlRGF0YWJhc2VUcmFj
a2VyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IExvY2FsU3RvcmFnZURhdGFi
YXNlVHJhY2tlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQThFN0QzODE4QzE1
MEJGMDA1QTcwMkEgLyogVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIubWVzc2FnZXMuaW4gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSB0ZXh0OyBwYXRoID0gVmlzaXRlZExpbmtUYWJsZUNvbnRyb2xsZXIubWVzc2FnZXMu
aW47IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC00NDI4LDYgKzQ0MzIsOCBAQAogCQkJ
CTdDRDVFQkJDMTc0NkIwNEMwMDBDMUM0NSAvKiBXS1R5cGVSZWZXcmFwcGVyLm1tICovLAogCQkJ
CUJDODY5OUIyMTE2QUFEQUEwMDJBOTI1QiAvKiBXS1ZpZXcuaCAqLywKIAkJCQlCRkE2MTc5RTEy
RjBCOTlEMDAzM0UwQ0EgLyogV0tWaWV3UHJpdmF0ZS5oICovLAorCQkJCTFBMjA2NzkxMUI4Qjkw
NjYwMEMxM0MzNiAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmggKi8sCisJCQkJMUEyMDY3OTAx
QjhCOTA2NjAwQzEzQzM2IC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0gKi8sCiAJCQkpOwog
CQkJbmFtZSA9IERlcHJlY2F0ZWQ7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtNTMy
OCw5ICs1MzM0LDkgQEAKIAkJCQk3Qzg5RDJCODFBNkIwRjJDMDAzQTVGREUgLyogX1dLVXNlckNv
bnRlbnRGaWx0ZXIuaCAqLywKIAkJCQk3Qzg5RDJCNzFBNkIwRjJDMDAzQTVGREUgLyogX1dLVXNl
ckNvbnRlbnRGaWx0ZXIubW0gKi8sCiAJCQkJN0M4OUQyQkIxQTZCMEY1QjAwM0E1RkRFIC8qIF9X
S1VzZXJDb250ZW50RmlsdGVySW50ZXJuYWwuaCAqLywKLQkJCQkxQTgxQjM3RjE4QkQ2NkFEMDAw
N0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlci5oICovLAotCQkJCTFBODFCMzdFMThCRDY2
QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLm1tICovLAotCQkJCTFBODFCMzg0
MThCRDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVySW50ZXJuYWwuaCAqLywK
KwkJCQkxQTgxQjM3RjE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtTdG9yZS5oICov
LAorCQkJCTFBODFCMzdFMThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3JlLm1t
ICovLAorCQkJCTFBODFCMzg0MThCRDY3M0EwMDA3RkRBQyAvKiBfV0tWaXNpdGVkTGlua1N0b3Jl
SW50ZXJuYWwuaCAqLywKIAkJCQlGRUQzQzFEQTFCNDQ3QUU4MDBFMEVCN0YgLyogQVBJU2VyaWFs
aXplZFNjcmlwdFZhbHVlQ29jb2EubW0gKi8sCiAJCQkJN0NFRkE5NjAxQUMwOTk5MzAwQjkxMEZE
IC8qIEFQSVVzZXJDb250ZW50RXh0ZW5zaW9uU3RvcmVDb2NvYS5tbSAqLywKIAkJCQkxQTM2MzVB
QjFBMzE0NUU1MDBFRDYxOTcgLyogQVBJV2Vic2l0ZURhdGFTdG9yZUNvY29hLm1tICovLApAQCAt
NzU0MSw4ICs3NTQ3LDggQEAKIAkJCQk3Q0EzNzkzRTFBQzM3OEIzMDA3OURDMzcgLyogX1dLVXNl
ckNvbnRlbnRFeHRlbnNpb25TdG9yZVByaXZhdGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTdDODlE
MkJBMUE2QjBGMkMwMDNBNUZERSAvKiBfV0tVc2VyQ29udGVudEZpbHRlci5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJN0M4OUQyQkMxQTZCMEY1QjAwM0E1RkRFIC8qIF9XS1VzZXJDb250ZW50RmlsdGVy
SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAotCQkJCTFBODFCMzgxMThCRDY2QUQwMDA3RkRBQyAv
KiBfV0tWaXNpdGVkTGlua1Byb3ZpZGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQkxQTgxQjM4NTE4
QkQ2NzNBMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtQcm92aWRlckludGVybmFsLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkxQTgxQjM4MTE4QkQ2NkFEMDAwN0ZEQUMgLyogX1dLVmlzaXRlZExpbmtT
dG9yZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMUE4MUIzODUxOEJENjczQTAwMDdGREFDIC8qIF9X
S1Zpc2l0ZWRMaW5rU3RvcmVJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMUFGQjRDNkUx
QURGMEM3ODAwQjMzMzM5IC8qIF9XS1dlYnNpdGVEYXRhUmVjb3JkLmggaW4gSGVhZGVycyAqLywK
IAkJCQkxQUZCNEM3MjFBREYxNTVEMDBCMzMzMzkgLyogX1dLV2Vic2l0ZURhdGFTdG9yZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMUE0QTkzQjcxQUVCMDhFQTAwMTUwRTlDIC8qIF9XS1dlYnNpdGVE
YXRhU3RvcmVJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8sCkBAIC04MTY2LDYgKzgxNzIsNyBAQAog
CQkJCUJDMDE3RDA5MTYyNjBGRjQwMDcwNTRGNSAvKiBXS0RPTUVsZW1lbnQuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUJDMDE3RDBCMTYyNjBGRjQwMDcwNTRGNSAvKiBXS0RPTUludGVybmFscy5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQkMwMTdEMEQxNjI2MEZGNDAwNzA1NEY1IC8qIFdLRE9NTm9kZS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMUEyMDY3OTMxQjhCOTA2NjAwQzEzQzM2IC8qIF9XS1Zpc2l0
ZWRMaW5rUHJvdmlkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDNUQyNEMyMTZDRDcwNkQwMDdE
NTQ2MSAvKiBXS0RPTU5vZGVQcml2YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzM5QzQzNjE2
MjYzNjZGMDA4QkM2ODkgLyogV0tET01SYW5nZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQkM1RDI0
QzUxNkNENzA4ODAwN0Q1NDYxIC8qIFdLRE9NUmFuZ2VQcml2YXRlLmggaW4gSGVhZGVycyAqLywK
QEAgLTkzNTYsNyArOTM2Myw3IEBACiAJCQkJMkQ2QjM3MUMxOEE5NjdBRDAwNDJBRTgwIC8qIF9X
S1RodW1ibmFpbFZpZXcubW0gaW4gU291cmNlcyAqLywKIAkJCQk3QzI0MTMwMjFBQUNGQTc1MDBB
NThDMTUgLyogX1dLVXNlckNvbnRlbnRFeHRlbnNpb25TdG9yZS5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTdDODlEMkI5MUE2QjBGMkMwMDNBNUZERSAvKiBfV0tVc2VyQ29udGVudEZpbHRlci5tbSBp
biBTb3VyY2VzICovLAotCQkJCTFBODFCMzgwMThCRDY2QUQwMDA3RkRBQyAvKiBfV0tWaXNpdGVk
TGlua1Byb3ZpZGVyLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUE4MUIzODAxOEJENjZBRDAwMDdG
REFDIC8qIF9XS1Zpc2l0ZWRMaW5rU3RvcmUubW0gaW4gU291cmNlcyAqLywKIAkJCQkxQUZCNEM3
MTFBREYxNTVEMDBCMzMzMzkgLyogX1dLV2Vic2l0ZURhdGFTdG9yZS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExMTVEQzcxMTkxRDgyRDcwMERBODA3MiAvKiBfV0tXZWJWaWV3UHJpbnRGb3JtYXR0
ZXIubW0gaW4gU291cmNlcyAqLywKIAkJCQlBN0Q3OTJENjE3NjdDQjZFMDA4ODFDQkUgLyogQWN0
aXZpdHlBc3NlcnRpb24uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC05NjE5LDYgKzk2MjYsNyBAQAog
CQkJCTFBMkQ5MEQzMTI4MUM5NjYwMDFFQjk2MiAvKiBQbHVnaW5Qcm9jZXNzQ3JlYXRpb25QYXJh
bWV0ZXJzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTFBQTQ3OTIzMTJBNTlGRDkwMDgyMzZDMyAv
KiBQbHVnaW5Qcm9jZXNzTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQkM4MjgzOEMxNkI0NUYw
NzAwQTI3OEZFIC8qIFBsdWdpblByb2Nlc3NNYWluLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMUEy
MDY3OTIxQjhCOTA2NjAwQzEzQzM2IC8qIF9XS1Zpc2l0ZWRMaW5rUHJvdmlkZXIubW0gaW4gU291
cmNlcyAqLywKIAkJCQkxQTBFQzYwNDEyNEE5RjJDMDA3RUY0QTUgLyogUGx1Z2luUHJvY2Vzc01h
bmFnZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOUY1NEY4OTUxNjQ4QUUwRjAwN0RGODFBIC8q
IFBsdWdpblByb2Nlc3NNYW5hZ2VyTWFjLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMUEwNDNDRUIx
MjRGRTM4RjAwRkZCRkI1IC8qIFBsdWdpblByb2Nlc3NNZXNzYWdlUmVjZWl2ZXIuY3BwIGluIFNv
dXJjZXMgKi8sCg==
</data>
<flag name="review"
          id="284976"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>