<?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>188923</bug_id>
          
          <creation_ts>2018-08-24 11:18:04 -0700</creation_ts>
          <short_desc>Introduce _WKInspector</short_desc>
          <delta_ts>2018-08-24 12:10:32 -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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>bburg</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1453496</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 11:18:04 -0700</bug_when>
    <thetext>Introduce _WKInspector</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453497</commentid>
    <comment_count>1</comment_count>
      <attachid>348025</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 11:19:05 -0700</bug_when>
    <thetext>Created attachment 348025
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453501</commentid>
    <comment_count>2</comment_count>
      <attachid>348026</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 11:24:00 -0700</bug_when>
    <thetext>Created attachment 348026
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453506</commentid>
    <comment_count>3</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 11:33:03 -0700</bug_when>
    <thetext>rdar://problem/34657861</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453509</commentid>
    <comment_count>4</comment_count>
      <attachid>348026</attachid>
    <who name="Blaze Burg">bburg</who>
    <bug_when>2018-08-24 11:37:02 -0700</bug_when>
    <thetext>Comment on attachment 348026
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=348026&amp;action=review

r=me, yay!

&gt; Source/WebKit/UIProcess/API/Cocoa/_WKInspector.mm:135
&gt; +    [[self webView] evaluateJavaScript:[NSString stringWithFormat:@&quot;console.error(\&quot;%@\&quot;);&quot;, error] completionHandler:nil];

Nit: self.webView, maybe</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453512</commentid>
    <comment_count>5</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 11:42:07 -0700</bug_when>
    <thetext>https://trac.webkit.org/changeset/235323/webkit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1453519</commentid>
    <comment_count>6</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2018-08-24 12:10:32 -0700</bug_when>
    <thetext>http://trac.webkit.org/r235324</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348025</attachid>
            <date>2018-08-24 11:19:05 -0700</date>
            <delta_ts>2018-08-24 11:23:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188923-20180824111904.patch</filename>
            <type>text/plain</type>
            <size>20644</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzUyNTkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDE4LTA4LTI0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSW50cm9kdWNlIF9X
S0luc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTg4OTIzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBTaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tOgorICAgICAgICAoQVBJOjpPYmplY3Q6Om5l
d09iamVjdCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06Cisg
ICAgICAgICgtW1dLV2ViVmlldyBfaW5zcGVjdG9yXSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tJbnNwZWN0b3IuaDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tJbnNwZWN0b3IubW06IEFkZGVkLgorICAgICAgICAoLVtfV0tJbnNwZWN0b3Igd2ViVmlld10p
OgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNDb25uZWN0ZWRdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIGlzVmlzaWJsZV0pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNGcm9udF0p
OgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNQcm9maWxpbmdQYWdlXSk6CisgICAgICAgICgt
W19XS0luc3BlY3RvciBpc0VsZW1lbnRTZWxlY3Rpb25BY3RpdmVdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIGNvbm5lY3RdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHNob3ddKToKKyAg
ICAgICAgKC1bX1dLSW5zcGVjdG9yIGhpZGVdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIGNs
b3NlXSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBzaG93Q29uc29sZV0pOgorICAgICAgICAo
LVtfV0tJbnNwZWN0b3Igc2hvd1Jlc291cmNlc10pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3Ig
c2hvd01haW5SZXNvdXJjZUZvckZyYW1lOl0pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgYXR0
YWNoXSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBkZXRhY2hdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIHNob3dUaW1lbGluZXNdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHRvZ2ds
ZVBhZ2VQcm9maWxpbmddKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHRvZ2dsZUVsZW1lbnRT
ZWxlY3Rpb25dKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHByaW50RXJyb3JUb0NvbnNvbGU6
XSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBfYXBpT2JqZWN0XSk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oOiBBZGRlZC4KKyAgICAgICAg
KiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAxOC0wOC0yMyAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBuZXcg
X3dlYlZpZXdSZXF1ZXN0UG9pbnRlckxvY2sgU1BJIHdpdGggYSBjb21wbGV0aW9uSGFuZGxlcgpJ
bmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0FQSU9iamVjdC5tbQkocmV2aXNpb24gMjM1
MTU2KQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tCSh3b3JraW5n
IGNvcHkpCkBAIC03NSw2ICs3NSw3IEBACiAjaW1wb3J0ICJfV0tGcmFtZUhhbmRsZUludGVybmFs
LmgiCiAjaW1wb3J0ICJfV0tHZW9sb2NhdGlvblBvc2l0aW9uSW50ZXJuYWwuaCIKICNpbXBvcnQg
Il9XS0hpdFRlc3RSZXN1bHRJbnRlcm5hbC5oIgorI2ltcG9ydCAiX1dLSW5zcGVjdG9ySW50ZXJu
YWwuaCIKICNpbXBvcnQgIl9XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbkludGVybmFsLmgiCiAj
aW1wb3J0ICJfV0tVc2VyQ29udGVudFdvcmxkSW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1VzZXJJ
bml0aWF0ZWRBY3Rpb25JbnRlcm5hbC5oIgpAQCAtMjMzLDYgKzIzNCwxMCBAQCB2b2lkKiBPYmpl
Y3Q6Om5ld09iamVjdChzaXplX3Qgc2l6ZSwgVHlwCiAgICAgICAgIGJyZWFrOwogI2VuZGlmCiAK
KyAgICBjYXNlIFR5cGU6Okluc3BlY3RvcjoKKyAgICAgICAgd3JhcHBlciA9IFtfV0tJbnNwZWN0
b3IgYWxsb2NdOworICAgICAgICBicmVhazsKKyAgICAgICAgCiAgICAgY2FzZSBUeXBlOjpOYXZp
Z2F0aW9uOgogICAgICAgICB3cmFwcGVyID0gW1dLTmF2aWdhdGlvbiBhbGxvY107CiAgICAgICAg
IGJyZWFrOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
dy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Lm1tCShyZXZpc2lvbiAyMzUxNTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC04OSw2ICs4OSw3IEBACiAj
aW1wb3J0ICJfV0tGdWxsc2NyZWVuRGVsZWdhdGUuaCIKICNpbXBvcnQgIl9XS0hpdFRlc3RSZXN1
bHRJbnRlcm5hbC5oIgogI2ltcG9ydCAiX1dLSW5wdXREZWxlZ2F0ZS5oIgorI2ltcG9ydCAiX1dL
SW5zcGVjdG9ySW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1JlbW90ZU9iamVjdFJlZ2lzdHJ5SW50
ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1Nlc3Npb25TdGF0ZUludGVybmFsLmgiCiAjaW1wb3J0ICJf
V0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCIKQEAgLTY0NDIsNiArNjQ0MywxMyBAQCAtICh2
b2lkKV9zZXREZWZlcnNMb2FkaW5nRm9yVGVzdGluZzooQk9PCiAgICAgX3BhZ2UtPnNldERlZmVy
c0xvYWRpbmdGb3JUZXN0aW5nKGRlZmVyc0xvYWRpbmcpOwogfQogCistIChfV0tJbnNwZWN0b3Ig
KilfaW5zcGVjdG9yCit7CisgICAgaWYgKGF1dG8qIGluc3BlY3RvciA9IF9wYWdlLT5pbnNwZWN0
b3IoKSkKKyAgICAgICAgcmV0dXJuIHdyYXBwZXIoKmluc3BlY3Rvcik7CisgICAgcmV0dXJuIG5p
bDsKK30KKwogLSAodm9pZClfZGVueU5leHRVc2VyTWVkaWFSZXF1ZXN0CiB7CiAjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXdQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAkocmV2aXNpb24gMjM1MTU2KQorKysgU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMTAxLDYgKzEwMSw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBf
V0tSZWN0RWQKIEBjbGFzcyBfV0tGcmFtZUhhbmRsZTsKIEBjbGFzcyBfV0tIaXRUZXN0UmVzdWx0
OwogQGNsYXNzIF9XS0ljb25Mb2FkaW5nRGVsZWdhdGU7CitAY2xhc3MgX1dLSW5zcGVjdG9yOwog
QGNsYXNzIF9XS1JlbW90ZU9iamVjdFJlZ2lzdHJ5OwogQGNsYXNzIF9XS1Nlc3Npb25TdGF0ZTsK
IEBjbGFzcyBfV0tUaHVtYm5haWxWaWV3OwpAQCAtNDY4LDYgKzQ2OSw4IEBAIHR5cGVkZWYgTlNf
T1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tSZWN0RWQKIC0gKEJPT0wpX2NvbXBsZXRlQmFja1N3aXBl
Rm9yVGVzdGluZzsKIC0gKHZvaWQpX3NldERlZmVyc0xvYWRpbmdGb3JUZXN0aW5nOihCT09MKWRl
ZmVyc0xvYWRpbmc7CiAKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgX1dLSW5zcGVj
dG9yICpfaW5zcGVjdG9yIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOworCiBAZW5kCiAKICNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3IuaAkobm9uZXhpc3RlbnQpCisrKyBT
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPEZvdW5kYXRpb24v
Rm91bmRhdGlvbi5oPgorI2ltcG9ydCA8V2ViS2l0L1dLRm91bmRhdGlvbi5oPgorCisjaWYgV0tf
QVBJX0VOQUJMRUQKKworQGNsYXNzIFdLV2ViVmlldzsKK0BjbGFzcyBfV0tGcmFtZUhhbmRsZTsK
KworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKworV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKQorQGludGVyZmFjZSBfV0tJbnNwZWN0b3IgOiBO
U09iamVjdAorCistIChpbnN0YW5jZXR5cGUpaW5pdCBOU19VTkFWQUlMQUJMRTsKKworQHByb3Bl
cnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBXS1dlYlZpZXcgKndlYlZpZXc7CitAcHJvcGVydHkg
KG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgaXNDb25uZWN0ZWQ7CitAcHJvcGVydHkgKG5vbmF0
b21pYywgcmVhZG9ubHkpIEJPT0wgaXNWaXNpYmxlOworQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5KSBCT09MIGlzRnJvbnQ7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJP
T0wgaXNQcm9maWxpbmdQYWdlOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09M
IGlzRWxlbWVudFNlbGVjdGlvbkFjdGl2ZTsKKworLSAodm9pZCljb25uZWN0OworLSAodm9pZClz
aG93OworLSAodm9pZCloaWRlOworLSAodm9pZCljbG9zZTsKKy0gKHZvaWQpc2hvd0NvbnNvbGU7
CistICh2b2lkKXNob3dSZXNvdXJjZXM7CistICh2b2lkKXNob3dNYWluUmVzb3VyY2VGb3JGcmFt
ZTooX1dLRnJhbWVIYW5kbGUgKilmcmFtZTsKKy0gKHZvaWQpYXR0YWNoOworLSAodm9pZClkZXRh
Y2g7CistICh2b2lkKXNob3dUaW1lbGluZXM7CistICh2b2lkKXRvZ2dsZVBhZ2VQcm9maWxpbmc7
CistICh2b2lkKXRvZ2dsZUVsZW1lbnRTZWxlY3Rpb247CistICh2b2lkKXByaW50RXJyb3JUb0Nv
bnNvbGU6KE5TU3RyaW5nICopZXJyb3I7CisKK0BlbmQKKworTlNfQVNTVU1FX05PTk5VTExfRU5E
CisKKyNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3Rvci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29j
b2EvX1dLSW5zcGVjdG9yLm1tCShub25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3IubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwx
NDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIl9XS0luc3Bl
Y3Rvci5oIgorCisjaWYgV0tfQVBJX0VOQUJMRUQKKworI2ltcG9ydCAiV0tXZWJWaWV3SW50ZXJu
YWwuaCIKKyNpbXBvcnQgIldlYlByb2Nlc3NQcm94eS5oIgorI2ltcG9ydCAiX1dLRnJhbWVIYW5k
bGVJbnRlcm5hbC5oIgorI2ltcG9ydCAiX1dLSW5zcGVjdG9ySW50ZXJuYWwuaCIKKyNpbXBvcnQg
PHd0Zi9SZXRhaW5QdHIuaD4KKworQGltcGxlbWVudGF0aW9uIF9XS0luc3BlY3RvcgorCistIChX
S1dlYlZpZXcgKil3ZWJWaWV3Cit7CisgICAgaWYgKGF1dG8qIHBhZ2UgPSBfaW5zcGVjdG9yLT5p
bnNwZWN0ZWRQYWdlKCkpCisgICAgICAgIHJldHVybiBmcm9tV2ViUGFnZVByb3h5KCpwYWdlKTsK
KyAgICByZXR1cm4gbmlsOworfQorCistIChCT09MKWlzQ29ubmVjdGVkCit7CisgICAgcmV0dXJu
IF9pbnNwZWN0b3ItPmlzQ29ubmVjdGVkKCk7Cit9CisKKy0gKEJPT0wpaXNWaXNpYmxlCit7Cisg
ICAgcmV0dXJuIF9pbnNwZWN0b3ItPmlzVmlzaWJsZSgpOworfQorCistIChCT09MKWlzRnJvbnQK
K3sKKyAgICByZXR1cm4gX2luc3BlY3Rvci0+aXNGcm9udCgpOworfQorCistIChCT09MKWlzUHJv
ZmlsaW5nUGFnZQoreworICAgIHJldHVybiBfaW5zcGVjdG9yLT5pc1Byb2ZpbGluZ1BhZ2UoKTsK
K30KKworLSAoQk9PTClpc0VsZW1lbnRTZWxlY3Rpb25BY3RpdmUKK3sKKyAgICByZXR1cm4gX2lu
c3BlY3Rvci0+aXNFbGVtZW50U2VsZWN0aW9uQWN0aXZlKCk7Cit9CisKKy0gKHZvaWQpY29ubmVj
dAoreworICAgIF9pbnNwZWN0b3ItPmNvbm5lY3QoKTsKK30KKworLSAodm9pZClzaG93Cit7Cisg
ICAgX2luc3BlY3Rvci0+c2hvdygpOworfQorCistICh2b2lkKWhpZGUKK3sKKyAgICBfaW5zcGVj
dG9yLT5oaWRlKCk7Cit9CisKKy0gKHZvaWQpY2xvc2UKK3sKKyAgICBfaW5zcGVjdG9yLT5jbG9z
ZSgpOworfQorCistICh2b2lkKXNob3dDb25zb2xlCit7CisgICAgX2luc3BlY3Rvci0+c2hvd0Nv
bnNvbGUoKTsKK30KKworLSAodm9pZClzaG93UmVzb3VyY2VzCit7CisgICAgX2luc3BlY3Rvci0+
c2hvd1Jlc291cmNlcygpOworfQorCistICh2b2lkKXNob3dNYWluUmVzb3VyY2VGb3JGcmFtZToo
X1dLRnJhbWVIYW5kbGUgKilmcmFtZQoreworICAgIGlmIChhdXRvKiBwYWdlID0gX2luc3BlY3Rv
ci0+aW5zcGVjdGVkUGFnZSgpKQorICAgICAgICBfaW5zcGVjdG9yLT5zaG93TWFpblJlc291cmNl
Rm9yRnJhbWUocGFnZS0+cHJvY2VzcygpLndlYkZyYW1lKGZyYW1lLl9mcmFtZUlEKSk7Cit9CisK
Ky0gKHZvaWQpYXR0YWNoCit7CisgICAgX2luc3BlY3Rvci0+YXR0YWNoKCk7Cit9CisKKy0gKHZv
aWQpZGV0YWNoCit7CisgICAgX2luc3BlY3Rvci0+ZGV0YWNoKCk7Cit9CisKKy0gKHZvaWQpc2hv
d1RpbWVsaW5lcworeworICAgIF9pbnNwZWN0b3ItPnNob3dUaW1lbGluZXMoKTsKK30KKworLSAo
dm9pZCl0b2dnbGVQYWdlUHJvZmlsaW5nCit7CisgICAgX2luc3BlY3Rvci0+dG9nZ2xlUGFnZVBy
b2ZpbGluZygpOworfQorCistICh2b2lkKXRvZ2dsZUVsZW1lbnRTZWxlY3Rpb24KK3sKKyAgICBf
aW5zcGVjdG9yLT50b2dnbGVFbGVtZW50U2VsZWN0aW9uKCk7Cit9CisKKy0gKHZvaWQpcHJpbnRF
cnJvclRvQ29uc29sZTooTlNTdHJpbmcgKillcnJvcgoreworICAgIC8vIEZJWE1FOiBUaGlzIHNo
b3VsZCB1c2UgYSBuZXcgbWVzc2FnZSBzb3VyY2UgcmRhcjovL3Byb2JsZW0vMzQ2NTgzNzgKKyAg
ICBbW3NlbGYgd2ViVmlld10gZXZhbHVhdGVKYXZhU2NyaXB0OltOU1N0cmluZyBzdHJpbmdXaXRo
Rm9ybWF0OkAiY29uc29sZS5lcnJvcihcIiVAXCIpOyIsIGVycm9yXSBjb21wbGV0aW9uSGFuZGxl
cjpuaWxdOworfQorCistIChBUEk6Ok9iamVjdCYpX2FwaU9iamVjdAoreworICAgIHJldHVybiAq
X2luc3BlY3RvcjsKK30KKworQGVuZAorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oCShu
b25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNw
ZWN0b3JJbnRlcm5hbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW1wb3J0ICJfV0tJbnNwZWN0b3IuaCIKKworI2lmIFdLX0FQSV9FTkFCTEVECisKKyNp
bXBvcnQgIldLT2JqZWN0LmgiCisjaW1wb3J0ICJXZWJJbnNwZWN0b3JQcm94eS5oIgorCituYW1l
c3BhY2UgV2ViS2l0IHsKKwordGVtcGxhdGU8PiBzdHJ1Y3QgV3JhcHBlclRyYWl0czxXZWJJbnNw
ZWN0b3JQcm94eT4geworICAgIHVzaW5nIFdyYXBwZXJDbGFzcyA9IF9XS0luc3BlY3RvcjsKK307
CisKK30KKworQGludGVyZmFjZSBfV0tJbnNwZWN0b3IgKCkgPFdLT2JqZWN0PiB7CitAcGFja2Fn
ZQorICAgIEFQSTo6T2JqZWN0U3RvcmFnZTxXZWJLaXQ6OldlYkluc3BlY3RvclByb3h5PiBfaW5z
cGVjdG9yOworfQorQGVuZAorCisjZW5kaWYgLy8gV0tfQVBJX0VOQUJMRUQKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24g
MjM1MTU2KQorKysgU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agkod29ya2luZyBjb3B5KQpAQCAtMTMzOCw2ICsxMzM4LDkgQEAKIAkJNUM5RTU2ODMxREY3RjFC
MzAwQzlFRTMzIC8qIFdLV2Vic2l0ZVBvbGljaWVzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1QzlFNTY4MTFERjdGMDU1MDBDOUVFMzMgLyogV0tXZWJz
aXRlUG9saWNpZXMuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwogCQk1Q0E5ODU0QTIxMEJFQjY0MDA1N0VCNkIgLyogU2FmZUJyb3dzaW5nUmVzdWx0Lmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0E5ODU0OTIx
MEJFQjVBMDA1N0VCNkIgLyogU2FmZUJyb3dzaW5nUmVzdWx0LmggKi87IH07CiAJCTVDQTk4NTRD
MjEwQkVCN0QwMDU3RUI2QiAvKiBTYWZlQnJvd3NpbmdSZXN1bHRDb2NvYS5tbSBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQTk4NTRCMjEwQkVCNzMwMDU3
RUI2QiAvKiBTYWZlQnJvd3NpbmdSZXN1bHRDb2NvYS5tbSAqLzsgfTsKKwkJNUNBRkRFM0YyMTJG
ODRGNTAwQjFGN0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0FGREUzRTIxMkY4M0I3MDBCMUY3RTEgLyog
X1dLSW5zcGVjdG9ySW50ZXJuYWwuaCAqLzsgfTsKKwkJNUNBRkRFNDAyMTJGODUyMjAwQjFGN0Ux
IC8qIF9XS0luc3BlY3Rvci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNUNBRkRFM0MyMTJGODM1OTAwQjFGN0UxIC8qIF9XS0luc3BlY3Rvci5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFB1YmxpYywgKTsgfTsgfTsKKwkJNUNBRkRFNDEyMTJG
ODU1QjAwQjFGN0UxIC8qIF9XS0luc3BlY3Rvci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQUZERTNEMjEyRjgzNTkwMEIxRjdFMSAvKiBfV0tJbnNw
ZWN0b3IubW0gKi87IH07CiAJCTVDQjIzNzhCMURGMERFNTMwMDExN0FBMyAvKiBfV0tXZWJzaXRl
UG9saWNpZXMubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSA1Q0IyMzc4QTFERjBERDQzMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLm1tICovOyB9
OwogCQk1Q0IyMzc4QzFERjBERTZFMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IyMzc4OTFERjBE
RDQzMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJ
QlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNUNCMjM3OEUxREYwRTBEMzAwMTE3QUEzIC8q
IF9XS1dlYnNpdGVQb2xpY2llc0ludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IyMzc4RDFERjBFMEMyMDAxMTdBQTMgLyogX1dLV2Vic2l0
ZVBvbGljaWVzSW50ZXJuYWwuaCAqLzsgfTsKQEAgLTM5NTYsNiArMzk1OSw5IEBACiAJCTVDOUU1
NjgxMURGN0YwNTUwMEM5RUUzMyAvKiBXS1dlYnNpdGVQb2xpY2llcy5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBXS1dlYnNpdGVQb2xpY2llcy5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQk1Q0E5ODU0OTIxMEJFQjVBMDA1N0VCNkIgLyogU2FmZUJyb3dzaW5nUmVz
dWx0LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNhZmVCcm93c2luZ1Jlc3Vs
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0E5ODU0QjIxMEJFQjczMDA1N0VC
NkIgLyogU2FmZUJyb3dzaW5nUmVzdWx0Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5vYmpjcHA7IHBhdGggPSBTYWZlQnJvd3NpbmdSZXN1bHRDb2NvYS5tbTsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNUNBRkRFM0MyMTJGODM1OTAwQjFGN0UxIC8qIF9XS0luc3BlY3Rv
ci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tJbnNwZWN0b3IuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNBRkRFM0QyMTJGODM1OTAwQjFGN0UxIC8qIF9X
S0luc3BlY3Rvci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9X
S0luc3BlY3Rvci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNBRkRFM0UyMTJG
ODNCNzAwQjFGN0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IF9XS0luc3BlY3RvckludGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTVDQjIzNzg5MURGMERENDMwMDExN0FBMyAvKiBfV0tXZWJzaXRlUG9saWNp
ZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLV2Vic2l0ZVBvbGljaWVz
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDQjIzNzhBMURGMERENDMwMDExN0FB
MyAvKiBfV0tXZWJzaXRlUG9saWNpZXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpj
cHA7IHBhdGggPSBfV0tXZWJzaXRlUG9saWNpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTVDQjIzNzhEMURGMEUwQzIwMDExN0FBMyAvKiBfV0tXZWJzaXRlUG9saWNpZXNJbnRl
cm5hbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tXZWJzaXRlUG9saWNp
ZXNJbnRlcm5hbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjQyMSw2ICs2NDI3
LDkgQEAKIAkJCQk2M0MzMkMyNzFFOTgxMTkwMDA2OTlCRDAgLyogX1dLR2VvbG9jYXRpb25Qb3Np
dGlvbkludGVybmFsLmggKi8sCiAJCQkJNTE0M0IyNUUxRERDREZEMTAwMTRGQUM2IC8qIF9XS0lj
b25Mb2FkaW5nRGVsZWdhdGUuaCAqLywKIAkJCQkzN0E2NEU1NDE4RjM4RTNDMDBFQjMwRjEgLyog
X1dLSW5wdXREZWxlZ2F0ZS5oICovLAorCQkJCTVDQUZERTNDMjEyRjgzNTkwMEIxRjdFMSAvKiBf
V0tJbnNwZWN0b3IuaCAqLywKKwkJCQk1Q0FGREUzRDIxMkY4MzU5MDBCMUY3RTEgLyogX1dLSW5z
cGVjdG9yLm1tICovLAorCQkJCTVDQUZERTNFMjEyRjgzQjcwMEIxRjdFMSAvKiBfV0tJbnNwZWN0
b3JJbnRlcm5hbC5oICovLAogCQkJCTJENzkwQTlDMUFENzA1MEQwMEFCOTBCMyAvKiBfV0tMYXlv
dXRNb2RlLmggKi8sCiAJCQkJNTFDMEM5NzkxRERENzg1NDAwMzJDQUQzIC8qIF9XS0xpbmtJY29u
UGFyYW1ldGVycy5oICovLAogCQkJCTUxQzBDOTdBMURERDc4NTQwMDMyQ0FEMyAvKiBfV0tMaW5r
SWNvblBhcmFtZXRlcnMubW0gKi8sCkBAIC05MjA0LDYgKzkyMTMsOCBAQAogCQkJCTkzQTg4QjNC
MUJDNzEwRDkwMEFCQTVDMiAvKiBfV0tIaXRUZXN0UmVzdWx0SW50ZXJuYWwuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTUxMEY1OTEwMURERTI5NjkwMDQxMkZGNSAvKiBfV0tJY29uTG9hZGluZ0RlbGVn
YXRlLmggaW4gSGVhZGVycyAqLywKIAkJCQkzN0E2NEU1NTE4RjM4RTNDMDBFQjMwRjEgLyogX1dL
SW5wdXREZWxlZ2F0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUNBRkRFNDAyMTJGODUyMjAwQjFG
N0UxIC8qIF9XS0luc3BlY3Rvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUNBRkRFM0YyMTJGODRG
NTAwQjFGN0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQky
RDc5MEE5RDFBRDcwNTBEMDBBQjkwQjMgLyogX1dLTGF5b3V0TW9kZS5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTEwRjU5MTExRERFMjk3MDAwNDEyRkY1IC8qIF9XS0xpbmtJY29uUGFyYW1ldGVycy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJQTExOEE5RjMxOTA4QjhFQTAwRjdDOTJCIC8qIF9XS05TRmls
ZU1hbmFnZXJFeHRyYXMuaCBpbiBIZWFkZXJzICovLApAQCAtMTExMTQsNiArMTExMjUsNyBAQAog
CQkJCTM3M0QxMjIyMThBNDczMDEwMDY2RDlDQyAvKiBfV0tGcmFtZUhhbmRsZS5tbSBpbiBTb3Vy
Y2VzICovLAogCQkJCTYzQzMyQzI1MUU5ODEwRDkwMDY5OUJEMCAvKiBfV0tHZW9sb2NhdGlvblBv
c2l0aW9uLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJOTNBODhCMzkxQkM3MEYzRjAwQUJBNUMyIC8q
IF9XS0hpdFRlc3RSZXN1bHQubW0gaW4gU291cmNlcyAqLywKKwkJCQk1Q0FGREU0MTIxMkY4NTVC
MDBCMUY3RTEgLyogX1dLSW5zcGVjdG9yLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTEwRjU5MTIx
RERFMjk3NzAwNDEyRkY1IC8qIF9XS0xpbmtJY29uUGFyYW1ldGVycy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExMThBOUYyMTkwOEI4RUEwMEY3QzkyQiAvKiBfV0tOU0ZpbGVNYW5hZ2VyRXh0cmFz
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTVDMEYwQTgyMDAwNjU1MTAwNTM2NTM2IC8qIF9XS05T
V2luZG93RXh0cmFzLm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzUzMjEpCisrKyBUb29scy9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wOC0yNCAgQWxl
eCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEludHJv
ZHVjZSBfV0tJbnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTE4ODkyMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogTWluaUJyb3dzZXIvbWFjL1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyLm06
CisgICAgICAgICgtW1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyIHZhbGlkYXRlTWVudUl0ZW06
XSk6CisgICAgICAgICgtW1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyIHNob3dIaWRlV2ViSW5z
cGVjdG9yOl0pOgorCiAyMDE4LTA4LTI0ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxl
LmNvbT4KIAogICAgICAgICBGaXggaGFuZGxpbmcgb2YgaU9TIG1pbm9yIHZlcnNpb25zIGluIGRl
ZmF1bHRfYmFzZWxpbmVfc2VhcmNoX3BhdGgKSW5kZXg6IFRvb2xzL01pbmlCcm93c2VyL21hYy9X
SzJCcm93c2VyV2luZG93Q29udHJvbGxlci5tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL01pbmlCcm93
c2VyL21hYy9XSzJCcm93c2VyV2luZG93Q29udHJvbGxlci5tCShyZXZpc2lvbiAyMzUxNTYpCisr
KyBUb29scy9NaW5pQnJvd3Nlci9tYWMvV0syQnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubQkod29y
a2luZyBjb3B5KQpAQCAtMzEsNyArMzEsNiBAQAogI2ltcG9ydCAiQXBwS2l0Q29tcGF0aWJpbGl0
eURlY2xhcmF0aW9ucy5oIgogI2ltcG9ydCAiU2V0dGluZ3NDb250cm9sbGVyLmgiCiAjaW1wb3J0
IDxXZWJLaXQvV0tGcmFtZUluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0luc3BlY3Rvci5oPgog
I2ltcG9ydCA8V2ViS2l0L1dLTmF2aWdhdGlvbkFjdGlvblByaXZhdGUuaD4KICNpbXBvcnQgPFdl
YktpdC9XS05hdmlnYXRpb25EZWxlZ2F0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLUGFnZS5oPgpA
QCAtNDMsNiArNDIsNyBAQAogI2ltcG9ydCA8V2ViS2l0L1dLV2Vic2l0ZURhdGFTdG9yZVByaXZh
dGUuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJOU1VSTEV4dHJhcy5oPgogI2ltcG9ydCA8V2ViS2l0
L19XS0ljb25Mb2FkaW5nRGVsZWdhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3Iu
aD4KICNpbXBvcnQgPFdlYktpdC9fV0tMaW5rSWNvblBhcmFtZXRlcnMuaD4KICNpbXBvcnQgPFdl
YktpdC9fV0tVc2VySW5pdGlhdGVkQWN0aW9uLmg+CiAKQEAgLTIwOSw3ICsyMDksNyBAQCAtIChC
T09MKXZhbGlkYXRlTWVudUl0ZW06KE5TTWVudUl0ZW0gKiltCiAgICAgZWxzZSBpZiAoYWN0aW9u
ID09IEBzZWxlY3Rvcih0b2dnbGVFZGl0YWJsZTopKQogICAgICAgICBbbWVudUl0ZW0gc2V0U3Rh
dGU6c2VsZi5pc0VkaXRhYmxlID8gTlNDb250cm9sU3RhdGVWYWx1ZU9uIDogTlNDb250cm9sU3Rh
dGVWYWx1ZU9mZl07CiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxlY3RvcihzaG93SGlkZVdl
Ykluc3BlY3RvcjopKQotICAgICAgICBbbWVudUl0ZW0gc2V0VGl0bGU6V0tJbnNwZWN0b3JJc1Zp
c2libGUoV0tQYWdlR2V0SW5zcGVjdG9yKF93ZWJWaWV3Ll9wYWdlUmVmRm9yVHJhbnNpdGlvblRv
V0tXZWJWaWV3KSkgPyBAIkNsb3NlIFdlYiBJbnNwZWN0b3IiIDogQCJTaG93IFdlYiBJbnNwZWN0
b3IiXTsKKyAgICAgICAgW21lbnVJdGVtIHNldFRpdGxlOl93ZWJWaWV3Ll9pbnNwZWN0b3IuaXNW
aXNpYmxlID8gQCJDbG9zZSBXZWIgSW5zcGVjdG9yIiA6IEAiU2hvdyBXZWIgSW5zcGVjdG9yIl07
CiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxlY3Rvcih0b2dnbGVBbHdheXNTaG93c0hvcml6
b250YWxTY3JvbGxlcjopKQogICAgICAgICBtZW51SXRlbS5zdGF0ZSA9IF93ZWJWaWV3Ll9hbHdh
eXNTaG93c0hvcml6b250YWxTY3JvbGxlciA/IE5TQ29udHJvbFN0YXRlVmFsdWVPbiA6IE5TQ29u
dHJvbFN0YXRlVmFsdWVPZmY7CiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxlY3Rvcih0b2dn
bGVBbHdheXNTaG93c1ZlcnRpY2FsU2Nyb2xsZXI6KSkKQEAgLTI4OSwxMSArMjg5LDExIEBAIC0g
KElCQWN0aW9uKWR1bXBTb3VyY2VUb0NvbnNvbGU6KGlkKXNlbmQKIAogLSAoSUJBY3Rpb24pc2hv
d0hpZGVXZWJJbnNwZWN0b3I6KGlkKXNlbmRlcgogewotICAgIFdLSW5zcGVjdG9yUmVmIGluc3Bl
Y3RvclJlZiA9IFdLUGFnZUdldEluc3BlY3Rvcihfd2ViVmlldy5fcGFnZVJlZkZvclRyYW5zaXRp
b25Ub1dLV2ViVmlldyk7Ci0gICAgaWYgKFdLSW5zcGVjdG9ySXNWaXNpYmxlKGluc3BlY3RvclJl
ZikpCi0gICAgICAgIFdLSW5zcGVjdG9ySGlkZShpbnNwZWN0b3JSZWYpOworICAgIF9XS0luc3Bl
Y3RvciAqaW5zcGVjdG9yID0gX3dlYlZpZXcuX2luc3BlY3RvcjsKKyAgICBpZiAoaW5zcGVjdG9y
LmlzVmlzaWJsZSkKKyAgICAgICAgW2luc3BlY3RvciBoaWRlXTsKICAgICBlbHNlCi0gICAgICAg
IFdLSW5zcGVjdG9yU2hvdyhpbnNwZWN0b3JSZWYpOworICAgICAgICBbaW5zcGVjdG9yIHNob3dd
OwogfQogCiAtIChJQkFjdGlvbil0b2dnbGVBbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcjoo
aWQpc2VuZGVyCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>348026</attachid>
            <date>2018-08-24 11:24:00 -0700</date>
            <delta_ts>2018-08-24 11:46:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-188923-20180824112359.patch</filename>
            <type>text/plain</type>
            <size>20635</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzUyNTkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQwIEBACisyMDE4LTA4LTI0ICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgSW50cm9kdWNlIF9X
S0luc3BlY3RvcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTg4OTIzCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBTaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tOgorICAgICAgICAoQVBJOjpPYmplY3Q6Om5l
d09iamVjdCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYlZpZXcubW06Cisg
ICAgICAgICgtW1dLV2ViVmlldyBfaW5zcGVjdG9yXSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQ
SS9Db2NvYS9XS1dlYlZpZXdQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2Nv
YS9fV0tJbnNwZWN0b3IuaDogQWRkZWQuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9f
V0tJbnNwZWN0b3IubW06IEFkZGVkLgorICAgICAgICAoLVtfV0tJbnNwZWN0b3Igd2ViVmlld10p
OgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNDb25uZWN0ZWRdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIGlzVmlzaWJsZV0pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNGcm9udF0p
OgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgaXNQcm9maWxpbmdQYWdlXSk6CisgICAgICAgICgt
W19XS0luc3BlY3RvciBpc0VsZW1lbnRTZWxlY3Rpb25BY3RpdmVdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIGNvbm5lY3RdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHNob3ddKToKKyAg
ICAgICAgKC1bX1dLSW5zcGVjdG9yIGhpZGVdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIGNs
b3NlXSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBzaG93Q29uc29sZV0pOgorICAgICAgICAo
LVtfV0tJbnNwZWN0b3Igc2hvd1Jlc291cmNlc10pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3Ig
c2hvd01haW5SZXNvdXJjZUZvckZyYW1lOl0pOgorICAgICAgICAoLVtfV0tJbnNwZWN0b3IgYXR0
YWNoXSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBkZXRhY2hdKToKKyAgICAgICAgKC1bX1dL
SW5zcGVjdG9yIHNob3dUaW1lbGluZXNdKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHRvZ2ds
ZVBhZ2VQcm9maWxpbmddKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHRvZ2dsZUVsZW1lbnRT
ZWxlY3Rpb25dKToKKyAgICAgICAgKC1bX1dLSW5zcGVjdG9yIHByaW50RXJyb3JUb0NvbnNvbGU6
XSk6CisgICAgICAgICgtW19XS0luc3BlY3RvciBfYXBpT2JqZWN0XSk6CisgICAgICAgICogVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oOiBBZGRlZC4KKyAgICAgICAg
KiBXZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKwogMjAxOC0wOC0yMyAgQWxleCBD
aHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBuZXcg
X3dlYlZpZXdSZXF1ZXN0UG9pbnRlckxvY2sgU1BJIHdpdGggYSBjb21wbGV0aW9uSGFuZGxlcgpJ
bmRleDogU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvU2hhcmVkL0NvY29hL0FQSU9iamVjdC5tbQkocmV2aXNpb24gMjM1
MTU2KQorKysgU291cmNlL1dlYktpdC9TaGFyZWQvQ29jb2EvQVBJT2JqZWN0Lm1tCSh3b3JraW5n
IGNvcHkpCkBAIC03NSw2ICs3NSw3IEBACiAjaW1wb3J0ICJfV0tGcmFtZUhhbmRsZUludGVybmFs
LmgiCiAjaW1wb3J0ICJfV0tHZW9sb2NhdGlvblBvc2l0aW9uSW50ZXJuYWwuaCIKICNpbXBvcnQg
Il9XS0hpdFRlc3RSZXN1bHRJbnRlcm5hbC5oIgorI2ltcG9ydCAiX1dLSW5zcGVjdG9ySW50ZXJu
YWwuaCIKICNpbXBvcnQgIl9XS1Byb2Nlc3NQb29sQ29uZmlndXJhdGlvbkludGVybmFsLmgiCiAj
aW1wb3J0ICJfV0tVc2VyQ29udGVudFdvcmxkSW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1VzZXJJ
bml0aWF0ZWRBY3Rpb25JbnRlcm5hbC5oIgpAQCAtMjMzLDYgKzIzNCwxMCBAQCB2b2lkKiBPYmpl
Y3Q6Om5ld09iamVjdChzaXplX3Qgc2l6ZSwgVHlwCiAgICAgICAgIGJyZWFrOwogI2VuZGlmCiAK
KyAgICBjYXNlIFR5cGU6Okluc3BlY3RvcjoKKyAgICAgICAgd3JhcHBlciA9IFtfV0tJbnNwZWN0
b3IgYWxsb2NdOworICAgICAgICBicmVhazsKKyAgICAgICAgCiAgICAgY2FzZSBUeXBlOjpOYXZp
Z2F0aW9uOgogICAgICAgICB3cmFwcGVyID0gW1dLTmF2aWdhdGlvbiBhbGxvY107CiAgICAgICAg
IGJyZWFrOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmll
dy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tX
ZWJWaWV3Lm1tCShyZXZpc2lvbiAyMzUxNTYpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJWaWV3Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC04OSw2ICs4OSw3IEBACiAj
aW1wb3J0ICJfV0tGdWxsc2NyZWVuRGVsZWdhdGUuaCIKICNpbXBvcnQgIl9XS0hpdFRlc3RSZXN1
bHRJbnRlcm5hbC5oIgogI2ltcG9ydCAiX1dLSW5wdXREZWxlZ2F0ZS5oIgorI2ltcG9ydCAiX1dL
SW5zcGVjdG9ySW50ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1JlbW90ZU9iamVjdFJlZ2lzdHJ5SW50
ZXJuYWwuaCIKICNpbXBvcnQgIl9XS1Nlc3Npb25TdGF0ZUludGVybmFsLmgiCiAjaW1wb3J0ICJf
V0tWaXNpdGVkTGlua1N0b3JlSW50ZXJuYWwuaCIKQEAgLTY0NDIsNiArNjQ0MywxMyBAQCAtICh2
b2lkKV9zZXREZWZlcnNMb2FkaW5nRm9yVGVzdGluZzooQk9PCiAgICAgX3BhZ2UtPnNldERlZmVy
c0xvYWRpbmdGb3JUZXN0aW5nKGRlZmVyc0xvYWRpbmcpOwogfQogCistIChfV0tJbnNwZWN0b3Ig
KilfaW5zcGVjdG9yCit7CisgICAgaWYgKGF1dG8qIGluc3BlY3RvciA9IF9wYWdlLT5pbnNwZWN0
b3IoKSkKKyAgICAgICAgcmV0dXJuIHdyYXBwZXIoKmluc3BlY3Rvcik7CisgICAgcmV0dXJuIG5p
bDsKK30KKwogLSAodm9pZClfZGVueU5leHRVc2VyTWVkaWFSZXF1ZXN0CiB7CiAjaWYgRU5BQkxF
KE1FRElBX1NUUkVBTSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9X
S1dlYlZpZXdQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
QVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAkocmV2aXNpb24gMjM1MTU2KQorKysgU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2ViVmlld1ByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMTAxLDYgKzEwMSw3IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBf
V0tSZWN0RWQKIEBjbGFzcyBfV0tGcmFtZUhhbmRsZTsKIEBjbGFzcyBfV0tIaXRUZXN0UmVzdWx0
OwogQGNsYXNzIF9XS0ljb25Mb2FkaW5nRGVsZWdhdGU7CitAY2xhc3MgX1dLSW5zcGVjdG9yOwog
QGNsYXNzIF9XS1JlbW90ZU9iamVjdFJlZ2lzdHJ5OwogQGNsYXNzIF9XS1Nlc3Npb25TdGF0ZTsK
IEBjbGFzcyBfV0tUaHVtYm5haWxWaWV3OwpAQCAtNDY4LDYgKzQ2OSw4IEBAIHR5cGVkZWYgTlNf
T1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tSZWN0RWQKIC0gKEJPT0wpX2NvbXBsZXRlQmFja1N3aXBl
Rm9yVGVzdGluZzsKIC0gKHZvaWQpX3NldERlZmVyc0xvYWRpbmdGb3JUZXN0aW5nOihCT09MKWRl
ZmVyc0xvYWRpbmc7CiAKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgX1dLSW5zcGVj
dG9yICpfaW5zcGVjdG9yIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3Mo
V0tfSU9TX1RCQSkpOworCiBAZW5kCiAKICNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvQVBJL0NvY29hL19XS0luc3BlY3Rvci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3IuaAkobm9uZXhpc3RlbnQpCisrKyBT
b3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvX1dLSW5zcGVjdG9yLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSw2NiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwor
ICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJ
TElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJ
TUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKKyAq
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
IEVYRU1QTEFSWSwgT1IKKyAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCisgKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKKyAqIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZ
LCBXSEVUSEVSIElOCisgKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5D
TFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQorICogQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgorICogVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbXBvcnQgPEZvdW5kYXRpb24v
Rm91bmRhdGlvbi5oPgorI2ltcG9ydCA8V2ViS2l0L1dLRm91bmRhdGlvbi5oPgorCisjaWYgV0tf
QVBJX0VOQUJMRUQKKworQGNsYXNzIFdLV2ViVmlldzsKK0BjbGFzcyBfV0tGcmFtZUhhbmRsZTsK
KworTlNfQVNTVU1FX05PTk5VTExfQkVHSU4KKworV0tfQ0xBU1NfQVZBSUxBQkxFKG1hY29zeChX
S19NQUNfVEJBKSwgaW9zKFdLX0lPU19UQkEpKQorQGludGVyZmFjZSBfV0tJbnNwZWN0b3IgOiBO
U09iamVjdAorCistIChpbnN0YW5jZXR5cGUpaW5pdCBOU19VTkFWQUlMQUJMRTsKKworQHByb3Bl
cnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBXS1dlYlZpZXcgKndlYlZpZXc7CitAcHJvcGVydHkg
KG5vbmF0b21pYywgcmVhZG9ubHkpIEJPT0wgaXNDb25uZWN0ZWQ7CitAcHJvcGVydHkgKG5vbmF0
b21pYywgcmVhZG9ubHkpIEJPT0wgaXNWaXNpYmxlOworQHByb3BlcnR5IChub25hdG9taWMsIHJl
YWRvbmx5KSBCT09MIGlzRnJvbnQ7CitAcHJvcGVydHkgKG5vbmF0b21pYywgcmVhZG9ubHkpIEJP
T0wgaXNQcm9maWxpbmdQYWdlOworQHByb3BlcnR5IChub25hdG9taWMsIHJlYWRvbmx5KSBCT09M
IGlzRWxlbWVudFNlbGVjdGlvbkFjdGl2ZTsKKworLSAodm9pZCljb25uZWN0OworLSAodm9pZClz
aG93OworLSAodm9pZCloaWRlOworLSAodm9pZCljbG9zZTsKKy0gKHZvaWQpc2hvd0NvbnNvbGU7
CistICh2b2lkKXNob3dSZXNvdXJjZXM7CistICh2b2lkKXNob3dNYWluUmVzb3VyY2VGb3JGcmFt
ZTooX1dLRnJhbWVIYW5kbGUgKilmcmFtZTsKKy0gKHZvaWQpYXR0YWNoOworLSAodm9pZClkZXRh
Y2g7CistICh2b2lkKXNob3dUaW1lbGluZXM7CistICh2b2lkKXRvZ2dsZVBhZ2VQcm9maWxpbmc7
CistICh2b2lkKXRvZ2dsZUVsZW1lbnRTZWxlY3Rpb247CistICh2b2lkKXByaW50RXJyb3JUb0Nv
bnNvbGU6KE5TU3RyaW5nICopZXJyb3I7CisKK0BlbmQKKworTlNfQVNTVU1FX05PTk5VTExfRU5E
CisKKyNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL19XS0lu
c3BlY3Rvci5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29j
b2EvX1dLSW5zcGVjdG9yLm1tCShub25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3IubW0JKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwx
NDUgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAor
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisg
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KKyAqLworCisjaW1wb3J0ICJjb25maWcuaCIKKyNpbXBvcnQgIl9XS0luc3Bl
Y3Rvci5oIgorCisjaWYgV0tfQVBJX0VOQUJMRUQKKworI2ltcG9ydCAiV0tXZWJWaWV3SW50ZXJu
YWwuaCIKKyNpbXBvcnQgIldlYlByb2Nlc3NQcm94eS5oIgorI2ltcG9ydCAiX1dLRnJhbWVIYW5k
bGVJbnRlcm5hbC5oIgorI2ltcG9ydCAiX1dLSW5zcGVjdG9ySW50ZXJuYWwuaCIKKyNpbXBvcnQg
PHd0Zi9SZXRhaW5QdHIuaD4KKworQGltcGxlbWVudGF0aW9uIF9XS0luc3BlY3RvcgorCistIChX
S1dlYlZpZXcgKil3ZWJWaWV3Cit7CisgICAgaWYgKGF1dG8qIHBhZ2UgPSBfaW5zcGVjdG9yLT5p
bnNwZWN0ZWRQYWdlKCkpCisgICAgICAgIHJldHVybiBmcm9tV2ViUGFnZVByb3h5KCpwYWdlKTsK
KyAgICByZXR1cm4gbmlsOworfQorCistIChCT09MKWlzQ29ubmVjdGVkCit7CisgICAgcmV0dXJu
IF9pbnNwZWN0b3ItPmlzQ29ubmVjdGVkKCk7Cit9CisKKy0gKEJPT0wpaXNWaXNpYmxlCit7Cisg
ICAgcmV0dXJuIF9pbnNwZWN0b3ItPmlzVmlzaWJsZSgpOworfQorCistIChCT09MKWlzRnJvbnQK
K3sKKyAgICByZXR1cm4gX2luc3BlY3Rvci0+aXNGcm9udCgpOworfQorCistIChCT09MKWlzUHJv
ZmlsaW5nUGFnZQoreworICAgIHJldHVybiBfaW5zcGVjdG9yLT5pc1Byb2ZpbGluZ1BhZ2UoKTsK
K30KKworLSAoQk9PTClpc0VsZW1lbnRTZWxlY3Rpb25BY3RpdmUKK3sKKyAgICByZXR1cm4gX2lu
c3BlY3Rvci0+aXNFbGVtZW50U2VsZWN0aW9uQWN0aXZlKCk7Cit9CisKKy0gKHZvaWQpY29ubmVj
dAoreworICAgIF9pbnNwZWN0b3ItPmNvbm5lY3QoKTsKK30KKworLSAodm9pZClzaG93Cit7Cisg
ICAgX2luc3BlY3Rvci0+c2hvdygpOworfQorCistICh2b2lkKWhpZGUKK3sKKyAgICBfaW5zcGVj
dG9yLT5oaWRlKCk7Cit9CisKKy0gKHZvaWQpY2xvc2UKK3sKKyAgICBfaW5zcGVjdG9yLT5jbG9z
ZSgpOworfQorCistICh2b2lkKXNob3dDb25zb2xlCit7CisgICAgX2luc3BlY3Rvci0+c2hvd0Nv
bnNvbGUoKTsKK30KKworLSAodm9pZClzaG93UmVzb3VyY2VzCit7CisgICAgX2luc3BlY3Rvci0+
c2hvd1Jlc291cmNlcygpOworfQorCistICh2b2lkKXNob3dNYWluUmVzb3VyY2VGb3JGcmFtZToo
X1dLRnJhbWVIYW5kbGUgKilmcmFtZQoreworICAgIGlmIChhdXRvKiBwYWdlID0gX2luc3BlY3Rv
ci0+aW5zcGVjdGVkUGFnZSgpKQorICAgICAgICBfaW5zcGVjdG9yLT5zaG93TWFpblJlc291cmNl
Rm9yRnJhbWUocGFnZS0+cHJvY2VzcygpLndlYkZyYW1lKGZyYW1lLl9mcmFtZUlEKSk7Cit9CisK
Ky0gKHZvaWQpYXR0YWNoCit7CisgICAgX2luc3BlY3Rvci0+YXR0YWNoKCk7Cit9CisKKy0gKHZv
aWQpZGV0YWNoCit7CisgICAgX2luc3BlY3Rvci0+ZGV0YWNoKCk7Cit9CisKKy0gKHZvaWQpc2hv
d1RpbWVsaW5lcworeworICAgIF9pbnNwZWN0b3ItPnNob3dUaW1lbGluZXMoKTsKK30KKworLSAo
dm9pZCl0b2dnbGVQYWdlUHJvZmlsaW5nCit7CisgICAgX2luc3BlY3Rvci0+dG9nZ2xlUGFnZVBy
b2ZpbGluZygpOworfQorCistICh2b2lkKXRvZ2dsZUVsZW1lbnRTZWxlY3Rpb24KK3sKKyAgICBf
aW5zcGVjdG9yLT50b2dnbGVFbGVtZW50U2VsZWN0aW9uKCk7Cit9CisKKy0gKHZvaWQpcHJpbnRF
cnJvclRvQ29uc29sZTooTlNTdHJpbmcgKillcnJvcgoreworICAgIC8vIEZJWE1FOiBUaGlzIHNo
b3VsZCB1c2UgYSBuZXcgbWVzc2FnZSBzb3VyY2UgcmRhcjovL3Byb2JsZW0vMzQ2NTgzNzgKKyAg
ICBbW3NlbGYgd2ViVmlld10gZXZhbHVhdGVKYXZhU2NyaXB0OltOU1N0cmluZyBzdHJpbmdXaXRo
Rm9ybWF0OkAiY29uc29sZS5lcnJvcihcIiVAXCIpOyIsIGVycm9yXSBjb21wbGV0aW9uSGFuZGxl
cjpuaWxdOworfQorCistIChBUEk6Ok9iamVjdCYpX2FwaU9iamVjdAoreworICAgIHJldHVybiAq
X2luc3BlY3RvcjsKK30KKworQGVuZAorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNwZWN0b3JJbnRlcm5hbC5oCShu
b25leGlzdGVudCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9fV0tJbnNw
ZWN0b3JJbnRlcm5hbC5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRT
IENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5D
LiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCisgKiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgor
ICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBS
T0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgorICogQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkK
KyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaW1wb3J0ICJfV0tJbnNwZWN0b3IuaCIKKworI2lmIFdLX0FQSV9FTkFCTEVECisKKyNp
bXBvcnQgIldLT2JqZWN0LmgiCisjaW1wb3J0ICJXZWJJbnNwZWN0b3JQcm94eS5oIgorCituYW1l
c3BhY2UgV2ViS2l0IHsKKwordGVtcGxhdGU8PiBzdHJ1Y3QgV3JhcHBlclRyYWl0czxXZWJJbnNw
ZWN0b3JQcm94eT4geworICAgIHVzaW5nIFdyYXBwZXJDbGFzcyA9IF9XS0luc3BlY3RvcjsKK307
CisKK30KKworQGludGVyZmFjZSBfV0tJbnNwZWN0b3IgKCkgPFdLT2JqZWN0PiB7CitAcGFja2Fn
ZQorICAgIEFQSTo6T2JqZWN0U3RvcmFnZTxXZWJLaXQ6OldlYkluc3BlY3RvclByb3h5PiBfaW5z
cGVjdG9yOworfQorQGVuZAorCisjZW5kaWYgLy8gV0tfQVBJX0VOQUJMRUQKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24g
MjM1MzIxKQorKysgU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agkod29ya2luZyBjb3B5KQpAQCAtMTE2NSw2ICsxMTY1LDkgQEAKIAkJNUM5RTU2ODIxREY3RjFB
QjAwQzlFRTMzIC8qIFdLV2Vic2l0ZVBvbGljaWVzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDOUU1NjgwMURGN0YwNTUwMEM5RUUzMyAvKiBXS1dl
YnNpdGVQb2xpY2llcy5jcHAgKi87IH07CiAJCTVDOUU1NjgzMURGN0YxQjMwMEM5RUUzMyAvKiBX
S1dlYnNpdGVQb2xpY2llcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gNUM5RTU2ODExREY3RjA1NTAwQzlFRTMzIC8qIFdLV2Vic2l0ZVBvbGljaWVzLmgg
Ki87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJNUNBOTg1
NEEyMTBCRUI2NDAwNTdFQjZCIC8qIFNhZmVCcm93c2luZ1Jlc3VsdC5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNUNBOTg1NDkyMTBCRUI1QTAwNTdFQjZC
IC8qIFNhZmVCcm93c2luZ1Jlc3VsdC5oICovOyB9OworCQk1Q0FGREU0NTIxMzA4NDYzMDBCMUY3
RTEgLyogX1dLSW5zcGVjdG9yLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1Q0FGREU0MjIxMzA4NDM1MDBCMUY3RTEgLyogX1dLSW5zcGVjdG9yLmggKi87
IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKKwkJNUNBRkRFNDYy
MTMwODQ2ODAwQjFGN0UxIC8qIF9XS0luc3BlY3Rvci5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDVDQUZERTQzMjEzMDg0MzYwMEIxRjdFMSAvKiBfV0tJ
bnNwZWN0b3IubW0gKi87IH07CisJCTVDQUZERTQ3MjEzMDg0NkEwMEIxRjdFMSAvKiBfV0tJbnNw
ZWN0b3JJbnRlcm5hbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNUNBRkRFNDQyMTMwODQzNjAwQjFGN0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmgg
Ki87IH07CiAJCTVDQjIzNzhCMURGMERFNTMwMDExN0FBMyAvKiBfV0tXZWJzaXRlUG9saWNpZXMu
bW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IyMzc4
QTFERjBERDQzMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLm1tICovOyB9OwogCQk1Q0Iy
Mzc4QzFERjBERTZFMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA1Q0IyMzc4OTFERjBERDQzMDAxMTdB
QTMgLyogX1dLV2Vic2l0ZVBvbGljaWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJNUNCMjM3OEUxREYwRTBEMzAwMTE3QUEzIC8qIF9XS1dlYnNp
dGVQb2xpY2llc0ludGVybmFsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA1Q0IyMzc4RDFERjBFMEMyMDAxMTdBQTMgLyogX1dLV2Vic2l0ZVBvbGljaWVz
SW50ZXJuYWwuaCAqLzsgfTsKQEAgLTM2NTEsNiArMzY1NCw5IEBACiAJCTVDOUU1NjgxMURGN0Yw
NTUwMEM5RUUzMyAvKiBXS1dlYnNpdGVQb2xpY2llcy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IHBhdGggPSBXS1dlYnNpdGVQb2xpY2llcy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQk1Q0E5ODU0OTIxMEJFQjVBMDA1N0VCNkIgLyogU2FmZUJyb3dzaW5nUmVzdWx0LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNhZmVCcm93c2luZ1Jlc3VsdC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk1Q0E5ODU0QjIxMEJFQjczMDA1N0VCNkIgLyogU2Fm
ZUJyb3dzaW5nUmVzdWx0Q29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7
IHBhdGggPSBTYWZlQnJvd3NpbmdSZXN1bHRDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJNUNBRkRFNDIyMTMwODQzNTAwQjFGN0UxIC8qIF9XS0luc3BlY3Rvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tJbnNwZWN0b3IuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJNUNBRkRFNDMyMTMwODQzNjAwQjFGN0UxIC8qIF9XS0luc3BlY3Rv
ci5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9XS0luc3BlY3Rv
ci5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNUNBRkRFNDQyMTMwODQzNjAwQjFG
N0UxIC8qIF9XS0luc3BlY3RvckludGVybmFsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IF9XS0luc3BlY3RvckludGVybmFsLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTVDQjIzNzg5MURGMERENDMwMDExN0FBMyAvKiBfV0tXZWJzaXRlUG9saWNpZXMuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gX1dLV2Vic2l0ZVBvbGljaWVzLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVDQjIzNzhBMURGMERENDMwMDExN0FBMyAvKiBfV0tX
ZWJzaXRlUG9saWNpZXMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBfV0tXZWJzaXRlUG9saWNpZXMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTVD
QjIzNzhEMURGMEUwQzIwMDExN0FBMyAvKiBfV0tXZWJzaXRlUG9saWNpZXNJbnRlcm5hbC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBfV0tXZWJzaXRlUG9saWNpZXNJbnRlcm5h
bC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjE1Niw2ICs2MTYyLDkgQEAKIAkJ
CQk2M0MzMkMyNzFFOTgxMTkwMDA2OTlCRDAgLyogX1dLR2VvbG9jYXRpb25Qb3NpdGlvbkludGVy
bmFsLmggKi8sCiAJCQkJNTE0M0IyNUUxRERDREZEMTAwMTRGQUM2IC8qIF9XS0ljb25Mb2FkaW5n
RGVsZWdhdGUuaCAqLywKIAkJCQkzN0E2NEU1NDE4RjM4RTNDMDBFQjMwRjEgLyogX1dLSW5wdXRE
ZWxlZ2F0ZS5oICovLAorCQkJCTVDQUZERTQyMjEzMDg0MzUwMEIxRjdFMSAvKiBfV0tJbnNwZWN0
b3IuaCAqLywKKwkJCQk1Q0FGREU0MzIxMzA4NDM2MDBCMUY3RTEgLyogX1dLSW5zcGVjdG9yLm1t
ICovLAorCQkJCTVDQUZERTQ0MjEzMDg0MzYwMEIxRjdFMSAvKiBfV0tJbnNwZWN0b3JJbnRlcm5h
bC5oICovLAogCQkJCTJENzkwQTlDMUFENzA1MEQwMEFCOTBCMyAvKiBfV0tMYXlvdXRNb2RlLmgg
Ki8sCiAJCQkJNTFDMEM5NzkxRERENzg1NDAwMzJDQUQzIC8qIF9XS0xpbmtJY29uUGFyYW1ldGVy
cy5oICovLAogCQkJCTUxQzBDOTdBMURERDc4NTQwMDMyQ0FEMyAvKiBfV0tMaW5rSWNvblBhcmFt
ZXRlcnMubW0gKi8sCkBAIC04OTM5LDYgKzg5NDgsOCBAQAogCQkJCTkzQTg4QjNCMUJDNzEwRDkw
MEFCQTVDMiAvKiBfV0tIaXRUZXN0UmVzdWx0SW50ZXJuYWwuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTUxMEY1OTEwMURERTI5NjkwMDQxMkZGNSAvKiBfV0tJY29uTG9hZGluZ0RlbGVnYXRlLmggaW4g
SGVhZGVycyAqLywKIAkJCQkzN0E2NEU1NTE4RjM4RTNDMDBFQjMwRjEgLyogX1dLSW5wdXREZWxl
Z2F0ZS5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUNBRkRFNDUyMTMwODQ2MzAwQjFGN0UxIC8qIF9X
S0luc3BlY3Rvci5oIGluIEhlYWRlcnMgKi8sCisJCQkJNUNBRkRFNDcyMTMwODQ2QTAwQjFGN0Ux
IC8qIF9XS0luc3BlY3RvckludGVybmFsLmggaW4gSGVhZGVycyAqLywKIAkJCQkyRDc5MEE5RDFB
RDcwNTBEMDBBQjkwQjMgLyogX1dLTGF5b3V0TW9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTEw
RjU5MTExRERFMjk3MDAwNDEyRkY1IC8qIF9XS0xpbmtJY29uUGFyYW1ldGVycy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJQTExOEE5RjMxOTA4QjhFQTAwRjdDOTJCIC8qIF9XS05TRmlsZU1hbmFnZXJF
eHRyYXMuaCBpbiBIZWFkZXJzICovLApAQCAtMTA4NDcsNiArMTA4NTgsNyBAQAogCQkJCTM3M0Qx
MjIyMThBNDczMDEwMDY2RDlDQyAvKiBfV0tGcmFtZUhhbmRsZS5tbSBpbiBTb3VyY2VzICovLAog
CQkJCTYzQzMyQzI1MUU5ODEwRDkwMDY5OUJEMCAvKiBfV0tHZW9sb2NhdGlvblBvc2l0aW9uLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJOTNBODhCMzkxQkM3MEYzRjAwQUJBNUMyIC8qIF9XS0hpdFRl
c3RSZXN1bHQubW0gaW4gU291cmNlcyAqLywKKwkJCQk1Q0FGREU0NjIxMzA4NDY4MDBCMUY3RTEg
LyogX1dLSW5zcGVjdG9yLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNTEwRjU5MTIxRERFMjk3NzAw
NDEyRkY1IC8qIF9XS0xpbmtJY29uUGFyYW1ldGVycy5tbSBpbiBTb3VyY2VzICovLAogCQkJCUEx
MThBOUYyMTkwOEI4RUEwMEY3QzkyQiAvKiBfV0tOU0ZpbGVNYW5hZ2VyRXh0cmFzLm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkJQTVDMEYwQTgyMDAwNjU1MTAwNTM2NTM2IC8qIF9XS05TV2luZG93RXh0
cmFzLm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBUb29scy9DaGFuZ2VMb2cKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gVG9vbHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyMzUzMjEpCisrKyBUb29scy9DaGFuZ2VMb2cJ
KHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxOC0wOC0yNCAgQWxleCBDaHJpc3Rl
bnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgorCisgICAgICAgIEludHJvZHVjZSBfV0tJ
bnNwZWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTE4ODkyMworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogTWluaUJyb3dzZXIvbWFjL1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyLm06CisgICAgICAg
ICgtW1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyIHZhbGlkYXRlTWVudUl0ZW06XSk6CisgICAg
ICAgICgtW1dLMkJyb3dzZXJXaW5kb3dDb250cm9sbGVyIHNob3dIaWRlV2ViSW5zcGVjdG9yOl0p
OgorCiAyMDE4LTA4LTI0ICBKb25hdGhhbiBCZWRhcmQgIDxqYmVkYXJkQGFwcGxlLmNvbT4KIAog
ICAgICAgICBGaXggaGFuZGxpbmcgb2YgaU9TIG1pbm9yIHZlcnNpb25zIGluIGRlZmF1bHRfYmFz
ZWxpbmVfc2VhcmNoX3BhdGgKSW5kZXg6IFRvb2xzL01pbmlCcm93c2VyL21hYy9XSzJCcm93c2Vy
V2luZG93Q29udHJvbGxlci5tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL01pbmlCcm93c2VyL21hYy9X
SzJCcm93c2VyV2luZG93Q29udHJvbGxlci5tCShyZXZpc2lvbiAyMzUxNTYpCisrKyBUb29scy9N
aW5pQnJvd3Nlci9tYWMvV0syQnJvd3NlcldpbmRvd0NvbnRyb2xsZXIubQkod29ya2luZyBjb3B5
KQpAQCAtMzEsNyArMzEsNiBAQAogI2ltcG9ydCAiQXBwS2l0Q29tcGF0aWJpbGl0eURlY2xhcmF0
aW9ucy5oIgogI2ltcG9ydCAiU2V0dGluZ3NDb250cm9sbGVyLmgiCiAjaW1wb3J0IDxXZWJLaXQv
V0tGcmFtZUluZm8uaD4KLSNpbXBvcnQgPFdlYktpdC9XS0luc3BlY3Rvci5oPgogI2ltcG9ydCA8
V2ViS2l0L1dLTmF2aWdhdGlvbkFjdGlvblByaXZhdGUuaD4KICNpbXBvcnQgPFdlYktpdC9XS05h
dmlnYXRpb25EZWxlZ2F0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLUGFnZS5oPgpAQCAtNDMsNiAr
NDIsNyBAQAogI2ltcG9ydCA8V2ViS2l0L1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUuaD4KICNp
bXBvcnQgPFdlYktpdC9XZWJOU1VSTEV4dHJhcy5oPgogI2ltcG9ydCA8V2ViS2l0L19XS0ljb25M
b2FkaW5nRGVsZWdhdGUuaD4KKyNpbXBvcnQgPFdlYktpdC9fV0tJbnNwZWN0b3IuaD4KICNpbXBv
cnQgPFdlYktpdC9fV0tMaW5rSWNvblBhcmFtZXRlcnMuaD4KICNpbXBvcnQgPFdlYktpdC9fV0tV
c2VySW5pdGlhdGVkQWN0aW9uLmg+CiAKQEAgLTIwOSw3ICsyMDksNyBAQCAtIChCT09MKXZhbGlk
YXRlTWVudUl0ZW06KE5TTWVudUl0ZW0gKiltCiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxl
Y3Rvcih0b2dnbGVFZGl0YWJsZTopKQogICAgICAgICBbbWVudUl0ZW0gc2V0U3RhdGU6c2VsZi5p
c0VkaXRhYmxlID8gTlNDb250cm9sU3RhdGVWYWx1ZU9uIDogTlNDb250cm9sU3RhdGVWYWx1ZU9m
Zl07CiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxlY3RvcihzaG93SGlkZVdlYkluc3BlY3Rv
cjopKQotICAgICAgICBbbWVudUl0ZW0gc2V0VGl0bGU6V0tJbnNwZWN0b3JJc1Zpc2libGUoV0tQ
YWdlR2V0SW5zcGVjdG9yKF93ZWJWaWV3Ll9wYWdlUmVmRm9yVHJhbnNpdGlvblRvV0tXZWJWaWV3
KSkgPyBAIkNsb3NlIFdlYiBJbnNwZWN0b3IiIDogQCJTaG93IFdlYiBJbnNwZWN0b3IiXTsKKyAg
ICAgICAgW21lbnVJdGVtIHNldFRpdGxlOl93ZWJWaWV3Ll9pbnNwZWN0b3IuaXNWaXNpYmxlID8g
QCJDbG9zZSBXZWIgSW5zcGVjdG9yIiA6IEAiU2hvdyBXZWIgSW5zcGVjdG9yIl07CiAgICAgZWxz
ZSBpZiAoYWN0aW9uID09IEBzZWxlY3Rvcih0b2dnbGVBbHdheXNTaG93c0hvcml6b250YWxTY3Jv
bGxlcjopKQogICAgICAgICBtZW51SXRlbS5zdGF0ZSA9IF93ZWJWaWV3Ll9hbHdheXNTaG93c0hv
cml6b250YWxTY3JvbGxlciA/IE5TQ29udHJvbFN0YXRlVmFsdWVPbiA6IE5TQ29udHJvbFN0YXRl
VmFsdWVPZmY7CiAgICAgZWxzZSBpZiAoYWN0aW9uID09IEBzZWxlY3Rvcih0b2dnbGVBbHdheXNT
aG93c1ZlcnRpY2FsU2Nyb2xsZXI6KSkKQEAgLTI4OSwxMSArMjg5LDExIEBAIC0gKElCQWN0aW9u
KWR1bXBTb3VyY2VUb0NvbnNvbGU6KGlkKXNlbmQKIAogLSAoSUJBY3Rpb24pc2hvd0hpZGVXZWJJ
bnNwZWN0b3I6KGlkKXNlbmRlcgogewotICAgIFdLSW5zcGVjdG9yUmVmIGluc3BlY3RvclJlZiA9
IFdLUGFnZUdldEluc3BlY3Rvcihfd2ViVmlldy5fcGFnZVJlZkZvclRyYW5zaXRpb25Ub1dLV2Vi
Vmlldyk7Ci0gICAgaWYgKFdLSW5zcGVjdG9ySXNWaXNpYmxlKGluc3BlY3RvclJlZikpCi0gICAg
ICAgIFdLSW5zcGVjdG9ySGlkZShpbnNwZWN0b3JSZWYpOworICAgIF9XS0luc3BlY3RvciAqaW5z
cGVjdG9yID0gX3dlYlZpZXcuX2luc3BlY3RvcjsKKyAgICBpZiAoaW5zcGVjdG9yLmlzVmlzaWJs
ZSkKKyAgICAgICAgW2luc3BlY3RvciBoaWRlXTsKICAgICBlbHNlCi0gICAgICAgIFdLSW5zcGVj
dG9yU2hvdyhpbnNwZWN0b3JSZWYpOworICAgICAgICBbaW5zcGVjdG9yIHNob3ddOwogfQogCiAt
IChJQkFjdGlvbil0b2dnbGVBbHdheXNTaG93c0hvcml6b250YWxTY3JvbGxlcjooaWQpc2VuZGVy
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>