<?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>195229</bug_id>
          
          <creation_ts>2019-03-01 14:25:14 -0800</creation_ts>
          <short_desc>Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier</short_desc>
          <delta_ts>2019-03-01 19:16:40 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>cdumez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1511616</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 14:25:14 -0800</bug_when>
    <thetext>Add setters on WKWebsiteDataStore for sourceApplicationBundleIdentifier and sourceApplicationSecondaryIdentifier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511619</commentid>
    <comment_count>1</comment_count>
      <attachid>363374</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 14:28:51 -0800</bug_when>
    <thetext>Created attachment 363374
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511630</commentid>
    <comment_count>2</comment_count>
      <attachid>363379</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 14:56:01 -0800</bug_when>
    <thetext>Created attachment 363379
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511686</commentid>
    <comment_count>3</comment_count>
      <attachid>363389</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 16:39:23 -0800</bug_when>
    <thetext>Created attachment 363389
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511690</commentid>
    <comment_count>4</comment_count>
      <attachid>363389</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-01 16:52:26 -0800</bug_when>
    <thetext>Comment on attachment 363389
Patch

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

r=me but please check EWS.

&gt; Source/WebKit/ChangeLog:12
&gt; +        Functionality verified by manual testing.  See radar.

extra space.

&gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h:203
&gt; +    const String&amp; sourceApplicationBundleIdentifier() { return m_sourceApplicationBundleIdentifier; }

const

&gt; Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h:206
&gt; +    const String&amp; sourceApplicationSecondaryIdentifier() { return m_sourceApplicationSecondaryIdentifier; }

const</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511712</commentid>
    <comment_count>5</comment_count>
      <attachid>363393</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 18:16:06 -0800</bug_when>
    <thetext>Created attachment 363393
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511714</commentid>
    <comment_count>6</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 18:24:01 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #4)
&gt; &gt; Source/WebKit/ChangeLog:12
&gt; &gt; +        Functionality verified by manual testing.  See radar.
&gt; 
&gt; extra space.

I read https://en.wikipedia.org/wiki/Sentence_spacing and decided to stick with double space after the period.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511715</commentid>
    <comment_count>7</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 18:27:33 -0800</bug_when>
    <thetext>http://trac.webkit.org/r242302</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511716</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-03-01 18:28:58 -0800</bug_when>
    <thetext>&lt;rdar://problem/48530825&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511733</commentid>
    <comment_count>9</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-01 19:07:53 -0800</bug_when>
    <thetext>Broke the windows build:
https://build.webkit.org/builders/WinCairo%2064-bit%20WKL%20Release%20%28Build%29/builds/7430/steps/compile-webkit/logs/stdio</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511734</commentid>
    <comment_count>10</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-01 19:13:29 -0800</bug_when>
    <thetext>(In reply to Chris Dumez from comment #9)
&gt; Broke the windows build:
&gt; https://build.webkit.org/builders/WinCairo%2064-
&gt; bit%20WKL%20Release%20%28Build%29/builds/7430/steps/compile-webkit/logs/stdio

Fix attempt: &lt;https://trac.webkit.org/changeset/242305&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511735</commentid>
    <comment_count>11</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2019-03-01 19:14:33 -0800</bug_when>
    <thetext>I did say &quot;Please watch EWS&quot;. GTK / WPE were red. Windows was also broken.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1511736</commentid>
    <comment_count>12</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2019-03-01 19:16:40 -0800</bug_when>
    <thetext>:/
Thanks, Chris</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363374</attachid>
            <date>2019-03-01 14:28:51 -0800</date>
            <delta_ts>2019-03-01 14:56:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195229-20190301142850.patch</filename>
            <type>text/plain</type>
            <size>11492</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDIyODkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMzIEBACisyMDE5LTAzLTAxICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRlcnMg
b24gV0tXZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIgYW5kIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBKdXN0IGxpa2UgX3NldEJvdW5kSW50ZXJmYWNlSWRlbnRpZmllciwgd2Ug
bmVlZCBhIHdheSB0byBzZXQgdGhlc2UgcHJvcGVydGllcyBhZnRlciBpbnN0YW50aWF0aW9uIG9m
IGEgV0tXZWJzaXRlRGF0YVN0b3JlLAorICAgICAgICBidXQgd2UgbmVlZCB0byBtYWtlIHN1cmUg
d2UgZG9uJ3Qgc2V0IGl0IGFmdGVyIHRoZSBwYXJhbWV0ZXJzIGhhdmUgYmVlbiBjb3BpZWQgdG8g
dGhlIE5ldHdvcmtQcm9jZXNzLgorICAgICAgICBWZXJpZmllZCBieSBtYW51YWwgdGVzdGluZy4g
IFNlZSByYWRhci4KKworICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0
YVN0b3JlLm1tOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcl0pOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3Nl
dFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKC1bV0tXZWJz
aXRlRGF0YVN0b3JlIF9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXJdKToKKyAg
ICAgICAgKC1bV0tXZWJzaXRlRGF0YVN0b3JlIF9zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFy
eUlkZW50aWZpZXI6XSk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVE
YXRhU3RvcmVQcml2YXRlLmg6CisgICAgICAgICogVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dl
YlBheW1lbnRDb29yZGluYXRvclByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OnRvUEtQ
YXltZW50UmVxdWVzdCk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dl
YnNpdGVEYXRhU3RvcmVDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9y
ZTo6cGFyYW1ldGVycyk6CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVE
YXRhU3RvcmUuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpXZWJzaXRl
RGF0YVN0b3JlKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNl
QXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0
ZURhdGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAo
V2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIpOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlv
blNlY29uZGFyeUlkZW50aWZpZXIpOgorCiAyMDE5LTAzLTAxICBEb24gT2xtc3RlYWQgIDxkb24u
b2xtc3RlYWRAc29ueS5jb20+CiAKICAgICAgICAgVW5pZnkgV2Vic2l0ZURhdGFTdG9yZTo6ZGVm
YXVsdERhdGFTdG9yZUNvbmZpZ3VyYXRpb24gYWNyb3NzIHBvcnRzCkluZGV4OiBTb3VyY2UvV2Vi
S2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmUu
bW0JKHJldmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2Nv
YS9XS1dlYnNpdGVEYXRhU3RvcmUubW0JKHdvcmtpbmcgY29weSkKQEAgLTM2Myw2ICszNjMsMjgg
QEAgLSAodm9pZClfc2V0UHJveHlDb25maWd1cmF0aW9uOihOU0RpY3RpbwogICAgIF93ZWJzaXRl
RGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2V0UHJveHlDb25maWd1cmF0aW9uKChfX2Jy
aWRnZSBDRkRpY3Rpb25hcnlSZWYpY29uZmlndXJhdGlvbik7CiB9CiAKKy0gKE5TU3RyaW5nICop
X3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcgoreworICAgIHJldHVybiBfd2Vic2l0
ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRl
bnRpZmllcigpOworfQorCistICh2b2lkKV9zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50
aWZpZXI6KE5TU3RyaW5nICopaWRlbnRpZmllcgoreworICAgIGlmICghX3dlYnNpdGVEYXRhU3Rv
cmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIoaWRlbnRpZmllcikpCisgICAgICAgIFtOU0V4Y2VwdGlvbiByYWlzZTpOU0dlbmVyaWNFeGNl
cHRpb24gZm9ybWF0OkAiX3NldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBjYW5u
b3QgYmUgY2FsbGVkIGFmdGVyIG5ldHdvcmtpbmcgaGFzIGJlZ3VuIl07Cit9CisKKy0gKE5TU3Ry
aW5nICopX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgoreworICAgIHJldHVy
biBfd2Vic2l0ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9u
U2Vjb25kYXJ5SWRlbnRpZmllcigpOworfQorCistICh2b2lkKV9zZXRTb3VyY2VBcHBsaWNhdGlv
blNlY29uZGFyeUlkZW50aWZpZXI6KE5TU3RyaW5nICopaWRlbnRpZmllcgoreworICAgIGlmICgh
X3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zZXRTb3VyY2VBcHBsaWNhdGlv
blNlY29uZGFyeUlkZW50aWZpZXIoaWRlbnRpZmllcikpCisgICAgICAgIFtOU0V4Y2VwdGlvbiBy
YWlzZTpOU0dlbmVyaWNFeGNlcHRpb24gZm9ybWF0OkAiX3NldFNvdXJjZUFwcGxpY2F0aW9uU2Vj
b25kYXJ5SWRlbnRpZmllciBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIG5ldHdvcmtpbmcgaGFzIGJl
Z3VuIl07Cit9CisKIC0gKE5TRGljdGlvbmFyeSAqKV9wcm94eUNvbmZpZ3VyYXRpb24KIHsKICAg
ICByZXR1cm4gKF9fYnJpZGdlIE5TRGljdGlvbmFyeSAqKV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJz
aXRlRGF0YVN0b3JlKCkucHJveHlDb25maWd1cmF0aW9uKCk7CkluZGV4OiBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3Rv
cmVQcml2YXRlLmgJKHJldmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAg
LTU3LDYgKzU3LDggQEAgdHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9XS1dlYnNpdAog
QHByb3BlcnR5IChub25hdG9taWMsIHNldHRlcj1fc2V0Qm91bmRJbnRlcmZhY2VJZGVudGlmaWVy
OikgTlNTdHJpbmcgKl9ib3VuZEludGVyZmFjZUlkZW50aWZpZXIgV0tfQVBJX0FWQUlMQUJMRSht
YWNvc3goMTAuMTMuNCksIGlvcygxMS4zKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVy
PV9zZXRBbGxvd3NDZWxsdWxhckFjY2VzczopIEJPT0wgX2FsbG93c0NlbGx1bGFyQWNjZXNzIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3MoMTEuMykpOwogQHByb3BlcnR5IChu
b25hdG9taWMsIHNldHRlcj1fc2V0UHJveHlDb25maWd1cmF0aW9uOikgTlNEaWN0aW9uYXJ5ICpf
cHJveHlDb25maWd1cmF0aW9uIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEy
LjApKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0ZXI9X3NldFNvdXJjZUFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcjopIE5TU3RyaW5nICpfc291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tf
SU9TX1RCQSkpOworQHByb3BlcnR5IChub25hdG9taWMsIGNvcHksIHNldHRlcj1fc2V0U291cmNl
QXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOikgTlNTdHJpbmcgKl9zb3VyY2VBcHBsaWNh
dGlvblNlY29uZGFyeUlkZW50aWZpZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RC
QSksIGlvcyhXS19JT1NfVEJBKSk7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkg
TlNVUkwgKl9pbmRleGVkREJEYXRhYmFzZURpcmVjdG9yeTsKIApJbmRleDogU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvQXBwbGVQYXkvY29jb2EvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHlDb2Nv
YS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BcHBsZVBheS9jb2Nv
YS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eUNvY29hLm1tCShyZXZpc2lvbiAyNDIyMzQpCisr
KyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BcHBsZVBheS9jb2NvYS9XZWJQYXltZW50Q29vcmRp
bmF0b3JQcm94eUNvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC01MDYsMTMgKzUwNiwxMyBAQCBS
ZXRhaW5QdHI8UEtQYXltZW50UmVxdWVzdD4gdG9QS1BheW1lbnRSCiAjZW5kaWYKIAogICAgIC8v
IEZJWE1FOiBJbnN0ZWFkIG9mIHVzaW5nIHJlc3BvbmRzVG9TZWxlY3RvciwgdGhpcyBzaG91bGQg
dXNlIGEgcHJvcGVyICNpZiB2ZXJzaW9uIGNoZWNrLgotICAgIGF1dG8mIGNvbmZpZ3VyYXRpb24g
PSB3ZWJQYWdlUHJveHkud2Vic2l0ZURhdGFTdG9yZSgpLmNvbmZpZ3VyYXRpb24oKTsKKyAgICBh
dXRvJiB3ZWJzaXRlRGF0YVN0b3JlID0gd2ViUGFnZVByb3h5LndlYnNpdGVEYXRhU3RvcmUoKTsK
IAotICAgIGlmICghY29uZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIoKS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNl
dFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjopXSkKLSAgICAgICAgW3Jlc3VsdCBz
ZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6Y29uZmlndXJhdGlvbi5zb3VyY2VB
cHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKV07CisgICAgaWYgKCF3ZWJzaXRlRGF0YVN0b3Jl
LnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpLmlzRW1wdHkoKSAmJiBbcmVzdWx0
IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJ
ZGVudGlmaWVyOildKQorICAgICAgICBbcmVzdWx0IHNldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxl
SWRlbnRpZmllcjp3ZWJzaXRlRGF0YVN0b3JlLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRp
ZmllcigpXTsKIAotICAgIGlmICghY29uZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvblNlY29u
ZGFyeUlkZW50aWZpZXIoKS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6
QHNlbGVjdG9yKHNldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopXSkKLSAg
ICAgICAgW3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6Y29u
ZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKV07CisgICAg
aWYgKCF3ZWJzaXRlRGF0YVN0b3JlLnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmll
cigpLmlzRW1wdHkoKSAmJiBbcmVzdWx0IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0
U291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOildKQorICAgICAgICBbcmVzdWx0
IHNldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjp3ZWJzaXRlRGF0YVN0b3Jl
LnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpXTsKIAogI2lmIFBMQVRGT1JN
KElPU19GQU1JTFkpCiAgICAgaWYgKCF3ZWJQYWdlUHJveHkucHJvY2VzcygpLnByb2Nlc3NQb29s
KCkuY29uZmlndXJhdGlvbigpLmN0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZSgpLmlzRW1wdHko
KSAmJiBbcmVzdWx0IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0Q1REYXRhQ29ubmVj
dGlvblNlcnZpY2VUeXBlOildKQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAJKHJldmlzaW9uIDI0MjIz
NCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3Rv
cmUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC05OCw2ICs5OCw4IEBAIFdlYnNpdGVEYXRhU3RvcmU6
OldlYnNpdGVEYXRhU3RvcmUoUmVmPFcKICAgICAsIG1fc3RvcmFnZU1hbmFnZXIoU3RvcmFnZU1h
bmFnZXI6OmNyZWF0ZShtX2NvbmZpZ3VyYXRpb24tPmxvY2FsU3RvcmFnZURpcmVjdG9yeSgpKSkK
ICAgICAsIG1fZGV2aWNlSWRIYXNoU2FsdFN0b3JhZ2UoRGV2aWNlSWRIYXNoU2FsdFN0b3JhZ2U6
OmNyZWF0ZShpc1BlcnNpc3RlbnQoKSA/IG1fY29uZmlndXJhdGlvbi0+ZGV2aWNlSWRIYXNoU2Fs
dHNTdG9yYWdlRGlyZWN0b3J5KCkgOiBTdHJpbmcoKSkpCiAgICAgLCBtX3F1ZXVlKFdvcmtRdWV1
ZTo6Y3JlYXRlKCJjb20uYXBwbGUuV2ViS2l0LldlYnNpdGVEYXRhU3RvcmUiKSkKKyAgICAsIG1f
c291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKG1fY29uZmlndXJhdGlvbi0+c291cmNl
QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkpCisgICAgLCBtX3NvdXJjZUFwcGxpY2F0aW9u
U2Vjb25kYXJ5SWRlbnRpZmllcihtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0aW9uU2Vj
b25kYXJ5SWRlbnRpZmllcigpKQogI2lmIEVOQUJMRShXRUJfQVVUSE4pCiAgICAgLCBtX2F1dGhl
bnRpY2F0b3JNYW5hZ2VyKG1ha2VVbmlxdWVSZWY8QXV0aGVudGljYXRvck1hbmFnZXI+KCkpCiAj
ZW5kaWYKQEAgLTIwOTEsNCArMjA5MywyMCBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmRpZENy
ZWF0ZU5ldHdvcmtQCiB7CiB9CiAKK2Jvb2wgV2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNlQXBw
bGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKFN0cmluZyYmIGlkZW50aWZpZXIpCit7CisgICAg
aWYgKCFtX2FsbG93ZWRUb1NldEFwcGxpY2F0aW9uSWRlbnRpZmllcnMpCisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllciA9IFdU
Rk1vdmUoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgV2Vic2l0ZURh
dGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKFN0cmluZyYmIGlk
ZW50aWZpZXIpCit7CisgICAgaWYgKCFtX2FsbG93ZWRUb1NldEFwcGxpY2F0aW9uSWRlbnRpZmll
cnMpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxl
SWRlbnRpZmllciA9IFdURk1vdmUoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIHRydWU7Cit9CisK
IH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRh
U3RvcmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0
YS9XZWJzaXRlRGF0YVN0b3JlLmgJKHJldmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAkod29ya2luZyBjb3B5KQpA
QCAtMTk5LDYgKzE5OSwxMiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldEJvdW5kSW50ZXJmYWNl
SWRlbnRpZmllcihTdHJpbmcmJiBpZGVudGlmaWVyKSB7IG1fYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyID0gV1RGTW92ZShpZGVudGlmaWVyKTsgfQogICAgIGNvbnN0IFN0cmluZyYgYm91bmRJbnRl
cmZhY2VJZGVudGlmaWVyKCkgeyByZXR1cm4gbV9ib3VuZEludGVyZmFjZUlkZW50aWZpZXI7IH0K
KworICAgIGNvbnN0IFN0cmluZyYgc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkg
eyByZXR1cm4gbV9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI7IH0KKyAgICBib29s
IHNldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihTdHJpbmcmJik7CisKKyAgICBj
b25zdCBTdHJpbmcmIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpIHsgcmV0
dXJuIG1fc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOyB9CisgICAgYm9vbCBz
ZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoU3RyaW5nJiYpOwogICAgIAog
ICAgIHZvaWQgc2V0QWxsb3dzQ2VsbHVsYXJBY2Nlc3MoQWxsb3dzQ2VsbHVsYXJBY2Nlc3MgYWxs
b3dzKSB7IG1fYWxsb3dzQ2VsbHVsYXJBY2Nlc3MgPSBhbGxvd3M7IH0KICAgICBBbGxvd3NDZWxs
dWxhckFjY2VzcyBhbGxvd3NDZWxsdWxhckFjY2VzcygpIHsgcmV0dXJuIG1fYWxsb3dzQ2VsbHVs
YXJBY2Nlc3M7IH0KQEAgLTMwMyw2ICszMDksOSBAQCBwcml2YXRlOgogCiAgICAgU3RyaW5nIG1f
Ym91bmRJbnRlcmZhY2VJZGVudGlmaWVyOwogICAgIEFsbG93c0NlbGx1bGFyQWNjZXNzIG1fYWxs
b3dzQ2VsbHVsYXJBY2Nlc3MgeyBBbGxvd3NDZWxsdWxhckFjY2Vzczo6WWVzIH07CisgICAgU3Ry
aW5nIG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOworICAgIFN0cmluZyBtX3Nv
dXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjsKKyAgICBib29sIG1fYWxsb3dlZFRv
U2V0QXBwbGljYXRpb25JZGVudGlmaWVycyB7IHRydWUgfTsKIAogI2lmIEhBVkUoU0VDX0tFWV9Q
Uk9YWSkKICAgICBWZWN0b3I8UmVmPFNlY0tleVByb3h5U3RvcmU+PiBtX3NlY0tleVByb3h5U3Rv
cmVzOwpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vi
c2l0ZURhdGFTdG9yZUNvY29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQkocmV2aXNpb24g
MjQyMjM0KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vi
c2l0ZURhdGFTdG9yZUNvY29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NCw4ICs5NCw4IEBAIFdl
YnNpdGVEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKICAgICAgICAgbV9ib3VuZElu
dGVyZmFjZUlkZW50aWZpZXIsCiAgICAgICAgIG1fYWxsb3dzQ2VsbHVsYXJBY2Nlc3MsCiAgICAg
ICAgIG1fcHJveHlDb25maWd1cmF0aW9uLAotICAgICAgICBtX2NvbmZpZ3VyYXRpb24tPnNvdXJj
ZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpLAotICAgICAgICBtX2NvbmZpZ3VyYXRpb24t
PnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpLAorICAgICAgICBtX3NvdXJj
ZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciwKKyAgICAgICAgbV9zb3VyY2VBcHBsaWNhdGlv
blNlY29uZGFyeUlkZW50aWZpZXIsCiAgICAgICAgIHNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9u
LAogICAgICAgICBTZWNvbmRzIHsgW2RlZmF1bHRzIGludGVnZXJGb3JLZXk6V2ViS2l0TmV0d29y
a0xvYWRUaHJvdHRsZUxhdGVuY3lNaWxsaXNlY29uZHNEZWZhdWx0c0tleV0gLyAxMDAwLiB9LAog
ICAgICAgICBXVEZNb3ZlKGh0dHBQcm94eSksCkBAIC0xMDQsNiArMTA0LDcgQEAgV2Vic2l0ZURh
dGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdAogICAgICAgICBXVEZNb3ZlKHJlc291cmNl
TG9hZFN0YXRpc3RpY3NEaXJlY3RvcnlIYW5kbGUpLAogICAgICAgICBmYWxzZQogICAgIH07Cisg
ICAgbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzID0gZmFsc2U7CiAKICAgICBh
dXRvIGNvb2tpZUZpbGUgPSByZXNvbHZlZENvb2tpZVN0b3JhZ2VGaWxlKCk7CiAKQEAgLTExNSw4
ICsxMTYsOCBAQCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0CiAgICAg
fQogCiAgICAgcGFyYW1ldGVycy51aVByb2Nlc3NDb29raWVTdG9yYWdlSWRlbnRpZmllciA9IG1f
dWlQcm9jZXNzQ29va2llU3RvcmFnZUlkZW50aWZpZXI7Ci0gICAgcGFyYW1ldGVycy5uZXR3b3Jr
U2Vzc2lvblBhcmFtZXRlcnMuc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyID0gbV9j
b25maWd1cmF0aW9uLT5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKTsKLSAgICBw
YXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlvblNlY29u
ZGFyeUlkZW50aWZpZXIgPSBtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25k
YXJ5SWRlbnRpZmllcigpOworICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fc291cmNlQXBwbGljYXRpb25C
dW5kbGVJZGVudGlmaWVyOworICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllciA9IG1fc291cmNlQXBwbGljYXRp
b25TZWNvbmRhcnlJZGVudGlmaWVyOwogCiAgICAgcGFyYW1ldGVycy5wZW5kaW5nQ29va2llcyA9
IGNvcHlUb1ZlY3RvcihtX3BlbmRpbmdDb29raWVzKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363379</attachid>
            <date>2019-03-01 14:56:01 -0800</date>
            <delta_ts>2019-03-01 16:39:22 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195229-20190301145600.patch</filename>
            <type>text/plain</type>
            <size>14475</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDIyODkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDE5LTAzLTAxICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRlcnMg
b24gV0tXZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIgYW5kIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBKdXN0IGxpa2UgX3NldEJvdW5kSW50ZXJmYWNlSWRlbnRpZmllciwgd2Ug
bmVlZCBhIHdheSB0byBzZXQgdGhlc2UgcHJvcGVydGllcyBhZnRlciBpbnN0YW50aWF0aW9uIG9m
IGEgV0tXZWJzaXRlRGF0YVN0b3JlLAorICAgICAgICBidXQgd2UgbmVlZCB0byBtYWtlIHN1cmUg
d2UgZG9uJ3Qgc2V0IGl0IGFmdGVyIHRoZSBwYXJhbWV0ZXJzIGhhdmUgYmVlbiBjb3BpZWQgdG8g
dGhlIE5ldHdvcmtQcm9jZXNzLgorCisgICAgICAgIEZ1bmN0aW9uYWxpdHkgdmVyaWZpZWQgYnkg
bWFudWFsIHRlc3RpbmcuICBTZWUgcmFkYXIuCisgICAgICAgIEFkZGVkIGFuIEFQSSB0ZXN0IHRo
YXQgdmVyaWZpZXMgdGhlIHNldHRlciByZXN0cmljdGlvbnMgd29yayBhcyBleHBlY3RlZC4KKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tOgorICAg
ICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRp
Zmllcl0pOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NldFNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKC1bV0tXZWJzaXRlRGF0YVN0b3JlIF9z
b3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXJdKToKKyAgICAgICAgKC1bV0tXZWJz
aXRlRGF0YVN0b3JlIF9zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6XSk6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRl
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGlu
YXRvclByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OnRvUEtQYXltZW50UmVxdWVzdCk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVD
b2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycyk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKToKKyAg
ICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25TZWNv
bmRhcnlJZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0
U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRl
RGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIpOgorICAgICAgICAo
V2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIpOgorCiAyMDE5LTAzLTAxICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5j
b20+CiAKICAgICAgICAgVW5pZnkgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUNv
bmZpZ3VyYXRpb24gYWNyb3NzIHBvcnRzCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmUubW0JKHJldmlzaW9uIDI0
MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRh
U3RvcmUubW0JKHdvcmtpbmcgY29weSkKQEAgLTM2Myw2ICszNjMsMjggQEAgLSAodm9pZClfc2V0
UHJveHlDb25maWd1cmF0aW9uOihOU0RpY3RpbwogICAgIF93ZWJzaXRlRGF0YVN0b3JlLT53ZWJz
aXRlRGF0YVN0b3JlKCkuc2V0UHJveHlDb25maWd1cmF0aW9uKChfX2JyaWRnZSBDRkRpY3Rpb25h
cnlSZWYpY29uZmlndXJhdGlvbik7CiB9CiAKKy0gKE5TU3RyaW5nICopX3NvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcgoreworICAgIHJldHVybiBfd2Vic2l0ZURhdGFTdG9yZS0+d2Vi
c2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpOworfQor
CistICh2b2lkKV9zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6KE5TU3RyaW5n
ICopaWRlbnRpZmllcgoreworICAgIGlmICghX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRh
U3RvcmUoKS5zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoaWRlbnRpZmllcikp
CisgICAgICAgIFtOU0V4Y2VwdGlvbiByYWlzZTpOU0dlbmVyaWNFeGNlcHRpb24gZm9ybWF0OkAi
X3NldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBjYW5ub3QgYmUgY2FsbGVkIGFm
dGVyIG5ldHdvcmtpbmcgaGFzIGJlZ3VuIl07Cit9CisKKy0gKE5TU3RyaW5nICopX3NvdXJjZUFw
cGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgoreworICAgIHJldHVybiBfd2Vic2l0ZURhdGFT
dG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRp
ZmllcigpOworfQorCistICh2b2lkKV9zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXI6KE5TU3RyaW5nICopaWRlbnRpZmllcgoreworICAgIGlmICghX3dlYnNpdGVEYXRhU3Rv
cmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIoaWRlbnRpZmllcikpCisgICAgICAgIFtOU0V4Y2VwdGlvbiByYWlzZTpOU0dlbmVyaWNF
eGNlcHRpb24gZm9ybWF0OkAiX3NldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmll
ciBjYW5ub3QgYmUgY2FsbGVkIGFmdGVyIG5ldHdvcmtpbmcgaGFzIGJlZ3VuIl07Cit9CisKIC0g
KE5TRGljdGlvbmFyeSAqKV9wcm94eUNvbmZpZ3VyYXRpb24KIHsKICAgICByZXR1cm4gKF9fYnJp
ZGdlIE5TRGljdGlvbmFyeSAqKV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCku
cHJveHlDb25maWd1cmF0aW9uKCk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkv
Q29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmgJKHJl
dmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dl
YnNpdGVEYXRhU3RvcmVQcml2YXRlLmgJKHdvcmtpbmcgY29weSkKQEAgLTU3LDYgKzU3LDggQEAg
dHlwZWRlZiBOU19PUFRJT05TKE5TVUludGVnZXIsIF9XS1dlYnNpdAogQHByb3BlcnR5IChub25h
dG9taWMsIHNldHRlcj1fc2V0Qm91bmRJbnRlcmZhY2VJZGVudGlmaWVyOikgTlNTdHJpbmcgKl9i
b3VuZEludGVyZmFjZUlkZW50aWZpZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goMTAuMTMuNCks
IGlvcygxMS4zKSk7CiBAcHJvcGVydHkgKG5vbmF0b21pYywgc2V0dGVyPV9zZXRBbGxvd3NDZWxs
dWxhckFjY2VzczopIEJPT0wgX2FsbG93c0NlbGx1bGFyQWNjZXNzIFdLX0FQSV9BVkFJTEFCTEUo
bWFjb3N4KDEwLjEzLjQpLCBpb3MoMTEuMykpOwogQHByb3BlcnR5IChub25hdG9taWMsIHNldHRl
cj1fc2V0UHJveHlDb25maWd1cmF0aW9uOikgTlNEaWN0aW9uYXJ5ICpfcHJveHlDb25maWd1cmF0
aW9uIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KDEwLjE0KSwgaW9zKDEyLjApKTsKK0Bwcm9wZXJ0
eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0ZXI9X3NldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRl
bnRpZmllcjopIE5TU3RyaW5nICpfc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyIFdL
X0FQSV9BVkFJTEFCTEUobWFjb3N4KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOworQHBy
b3BlcnR5IChub25hdG9taWMsIGNvcHksIHNldHRlcj1fc2V0U291cmNlQXBwbGljYXRpb25TZWNv
bmRhcnlJZGVudGlmaWVyOikgTlNTdHJpbmcgKl9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlk
ZW50aWZpZXIgV0tfQVBJX0FWQUlMQUJMRShtYWNvc3goV0tfTUFDX1RCQSksIGlvcyhXS19JT1Nf
VEJBKSk7CiAKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCByZWFkb25seSkgTlNVUkwgKl9pbmRleGVk
REJEYXRhYmFzZURpcmVjdG9yeTsKIApJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBw
bGVQYXkvY29jb2EvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHlDb2NvYS5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BcHBsZVBheS9jb2NvYS9XZWJQYXltZW50Q29v
cmRpbmF0b3JQcm94eUNvY29hLm1tCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BcHBsZVBheS9jb2NvYS9XZWJQYXltZW50Q29vcmRpbmF0b3JQcm94eUNvY29h
Lm1tCSh3b3JraW5nIGNvcHkpCkBAIC01MDYsMTMgKzUwNiwxMyBAQCBSZXRhaW5QdHI8UEtQYXlt
ZW50UmVxdWVzdD4gdG9QS1BheW1lbnRSCiAjZW5kaWYKIAogICAgIC8vIEZJWE1FOiBJbnN0ZWFk
IG9mIHVzaW5nIHJlc3BvbmRzVG9TZWxlY3RvciwgdGhpcyBzaG91bGQgdXNlIGEgcHJvcGVyICNp
ZiB2ZXJzaW9uIGNoZWNrLgotICAgIGF1dG8mIGNvbmZpZ3VyYXRpb24gPSB3ZWJQYWdlUHJveHku
d2Vic2l0ZURhdGFTdG9yZSgpLmNvbmZpZ3VyYXRpb24oKTsKKyAgICBhdXRvJiB3ZWJzaXRlRGF0
YVN0b3JlID0gd2ViUGFnZVByb3h5LndlYnNpdGVEYXRhU3RvcmUoKTsKIAotICAgIGlmICghY29u
ZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc0VtcHR5KCkg
JiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldFNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcjopXSkKLSAgICAgICAgW3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNh
dGlvbkJ1bmRsZUlkZW50aWZpZXI6Y29uZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRs
ZUlkZW50aWZpZXIoKV07CisgICAgaWYgKCF3ZWJzaXRlRGF0YVN0b3JlLnNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcigpLmlzRW1wdHkoKSAmJiBbcmVzdWx0IHJlc3BvbmRzVG9TZWxl
Y3RvcjpAc2VsZWN0b3Ioc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOildKQor
ICAgICAgICBbcmVzdWx0IHNldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjp3ZWJz
aXRlRGF0YVN0b3JlLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpXTsKIAotICAg
IGlmICghY29uZmlndXJhdGlvbi5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIo
KS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldFNv
dXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopXSkKLSAgICAgICAgW3Jlc3VsdCBz
ZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6Y29uZmlndXJhdGlvbi5zb3Vy
Y2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKV07CisgICAgaWYgKCF3ZWJzaXRlRGF0
YVN0b3JlLnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpLmlzRW1wdHkoKSAm
JiBbcmVzdWx0IHJlc3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0U291cmNlQXBwbGljYXRp
b25TZWNvbmRhcnlJZGVudGlmaWVyOildKQorICAgICAgICBbcmVzdWx0IHNldFNvdXJjZUFwcGxp
Y2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjp3ZWJzaXRlRGF0YVN0b3JlLnNvdXJjZUFwcGxpY2F0
aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpXTsKIAogI2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCiAg
ICAgaWYgKCF3ZWJQYWdlUHJveHkucHJvY2VzcygpLnByb2Nlc3NQb29sKCkuY29uZmlndXJhdGlv
bigpLmN0RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZSgpLmlzRW1wdHkoKSAmJiBbcmVzdWx0IHJl
c3BvbmRzVG9TZWxlY3RvcjpAc2VsZWN0b3Ioc2V0Q1REYXRhQ29ubmVjdGlvblNlcnZpY2VUeXBl
OildKQpJbmRleDogU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvV2Vic2l0ZURh
dGFTdG9yZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0
ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5jcHAJKHJldmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC05OCw2ICs5OCw4IEBAIFdlYnNpdGVEYXRhU3RvcmU6OldlYnNpdGVEYXRhU3Rv
cmUoUmVmPFcKICAgICAsIG1fc3RvcmFnZU1hbmFnZXIoU3RvcmFnZU1hbmFnZXI6OmNyZWF0ZSht
X2NvbmZpZ3VyYXRpb24tPmxvY2FsU3RvcmFnZURpcmVjdG9yeSgpKSkKICAgICAsIG1fZGV2aWNl
SWRIYXNoU2FsdFN0b3JhZ2UoRGV2aWNlSWRIYXNoU2FsdFN0b3JhZ2U6OmNyZWF0ZShpc1BlcnNp
c3RlbnQoKSA/IG1fY29uZmlndXJhdGlvbi0+ZGV2aWNlSWRIYXNoU2FsdHNTdG9yYWdlRGlyZWN0
b3J5KCkgOiBTdHJpbmcoKSkpCiAgICAgLCBtX3F1ZXVlKFdvcmtRdWV1ZTo6Y3JlYXRlKCJjb20u
YXBwbGUuV2ViS2l0LldlYnNpdGVEYXRhU3RvcmUiKSkKKyAgICAsIG1fc291cmNlQXBwbGljYXRp
b25CdW5kbGVJZGVudGlmaWVyKG1fY29uZmlndXJhdGlvbi0+c291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCkpCisgICAgLCBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRp
ZmllcihtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmll
cigpKQogI2lmIEVOQUJMRShXRUJfQVVUSE4pCiAgICAgLCBtX2F1dGhlbnRpY2F0b3JNYW5hZ2Vy
KG1ha2VVbmlxdWVSZWY8QXV0aGVudGljYXRvck1hbmFnZXI+KCkpCiAjZW5kaWYKQEAgLTIwOTEs
NCArMjA5MywyMCBAQCB2b2lkIFdlYnNpdGVEYXRhU3RvcmU6OmRpZENyZWF0ZU5ldHdvcmtQCiB7
CiB9CiAKK2Jvb2wgV2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRh
cnlJZGVudGlmaWVyKFN0cmluZyYmIGlkZW50aWZpZXIpCit7CisgICAgaWYgKCFtX2FsbG93ZWRU
b1NldEFwcGxpY2F0aW9uSWRlbnRpZmllcnMpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBt
X3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllciA9IFdURk1vdmUoaWRlbnRpZmll
cik7CisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wgV2Vic2l0ZURhdGFTdG9yZTo6c2V0U291
cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKFN0cmluZyYmIGlkZW50aWZpZXIpCit7Cisg
ICAgaWYgKCFtX2FsbG93ZWRUb1NldEFwcGxpY2F0aW9uSWRlbnRpZmllcnMpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IFdU
Rk1vdmUoaWRlbnRpZmllcik7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIH0KSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0
b3JlLmgJKHJldmlzaW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNp
dGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuaAkod29ya2luZyBjb3B5KQpAQCAtMTk5LDYgKzE5OSwx
MiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIHNldEJvdW5kSW50ZXJmYWNlSWRlbnRpZmllcihTdHJp
bmcmJiBpZGVudGlmaWVyKSB7IG1fYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyID0gV1RGTW92ZShp
ZGVudGlmaWVyKTsgfQogICAgIGNvbnN0IFN0cmluZyYgYm91bmRJbnRlcmZhY2VJZGVudGlmaWVy
KCkgeyByZXR1cm4gbV9ib3VuZEludGVyZmFjZUlkZW50aWZpZXI7IH0KKworICAgIGNvbnN0IFN0
cmluZyYgc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCkgeyByZXR1cm4gbV9zb3Vy
Y2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI7IH0KKyAgICBib29sIHNldFNvdXJjZUFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcihTdHJpbmcmJik7CisKKyAgICBjb25zdCBTdHJpbmcmIHNv
dXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpIHsgcmV0dXJuIG1fc291cmNlQXBw
bGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOyB9CisgICAgYm9vbCBzZXRTb3VyY2VBcHBsaWNh
dGlvblNlY29uZGFyeUlkZW50aWZpZXIoU3RyaW5nJiYpOwogICAgIAogICAgIHZvaWQgc2V0QWxs
b3dzQ2VsbHVsYXJBY2Nlc3MoQWxsb3dzQ2VsbHVsYXJBY2Nlc3MgYWxsb3dzKSB7IG1fYWxsb3dz
Q2VsbHVsYXJBY2Nlc3MgPSBhbGxvd3M7IH0KICAgICBBbGxvd3NDZWxsdWxhckFjY2VzcyBhbGxv
d3NDZWxsdWxhckFjY2VzcygpIHsgcmV0dXJuIG1fYWxsb3dzQ2VsbHVsYXJBY2Nlc3M7IH0KQEAg
LTMwMyw2ICszMDksOSBAQCBwcml2YXRlOgogCiAgICAgU3RyaW5nIG1fYm91bmRJbnRlcmZhY2VJ
ZGVudGlmaWVyOwogICAgIEFsbG93c0NlbGx1bGFyQWNjZXNzIG1fYWxsb3dzQ2VsbHVsYXJBY2Nl
c3MgeyBBbGxvd3NDZWxsdWxhckFjY2Vzczo6WWVzIH07CisgICAgU3RyaW5nIG1fc291cmNlQXBw
bGljYXRpb25CdW5kbGVJZGVudGlmaWVyOworICAgIFN0cmluZyBtX3NvdXJjZUFwcGxpY2F0aW9u
U2Vjb25kYXJ5SWRlbnRpZmllcjsKKyAgICBib29sIG1fYWxsb3dlZFRvU2V0QXBwbGljYXRpb25J
ZGVudGlmaWVycyB7IHRydWUgfTsKIAogI2lmIEhBVkUoU0VDX0tFWV9QUk9YWSkKICAgICBWZWN0
b3I8UmVmPFNlY0tleVByb3h5U3RvcmU+PiBtX3NlY0tleVByb3h5U3RvcmVzOwpJbmRleDogU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRh
L0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQkocmV2aXNpb24gMjQyMjM0KQorKysgU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vic2l0ZURhdGEvQ29jb2EvV2Vic2l0ZURhdGFTdG9yZUNv
Y29hLm1tCSh3b3JraW5nIGNvcHkpCkBAIC05NCw4ICs5NCw4IEBAIFdlYnNpdGVEYXRhU3RvcmVQ
YXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKICAgICAgICAgbV9ib3VuZEludGVyZmFjZUlkZW50aWZp
ZXIsCiAgICAgICAgIG1fYWxsb3dzQ2VsbHVsYXJBY2Nlc3MsCiAgICAgICAgIG1fcHJveHlDb25m
aWd1cmF0aW9uLAotICAgICAgICBtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0aW9uQnVu
ZGxlSWRlbnRpZmllcigpLAotICAgICAgICBtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0
aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigpLAorICAgICAgICBtX3NvdXJjZUFwcGxpY2F0aW9uQnVu
ZGxlSWRlbnRpZmllciwKKyAgICAgICAgbV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIsCiAgICAgICAgIHNob3VsZExvZ0Nvb2tpZUluZm9ybWF0aW9uLAogICAgICAgICBTZWNv
bmRzIHsgW2RlZmF1bHRzIGludGVnZXJGb3JLZXk6V2ViS2l0TmV0d29ya0xvYWRUaHJvdHRsZUxh
dGVuY3lNaWxsaXNlY29uZHNEZWZhdWx0c0tleV0gLyAxMDAwLiB9LAogICAgICAgICBXVEZNb3Zl
KGh0dHBQcm94eSksCkBAIC0xMDQsNiArMTA0LDcgQEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRl
cnMgV2Vic2l0ZURhdGFTdAogICAgICAgICBXVEZNb3ZlKHJlc291cmNlTG9hZFN0YXRpc3RpY3NE
aXJlY3RvcnlIYW5kbGUpLAogICAgICAgICBmYWxzZQogICAgIH07CisgICAgbV9hbGxvd2VkVG9T
ZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzID0gZmFsc2U7CiAKICAgICBhdXRvIGNvb2tpZUZpbGUg
PSByZXNvbHZlZENvb2tpZVN0b3JhZ2VGaWxlKCk7CiAKQEAgLTExNSw4ICsxMTYsOCBAQCBXZWJz
aXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0CiAgICAgfQogCiAgICAgcGFyYW1l
dGVycy51aVByb2Nlc3NDb29raWVTdG9yYWdlSWRlbnRpZmllciA9IG1fdWlQcm9jZXNzQ29va2ll
U3RvcmFnZUlkZW50aWZpZXI7Ci0gICAgcGFyYW1ldGVycy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRl
cnMuc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyID0gbV9jb25maWd1cmF0aW9uLT5z
b3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKTsKLSAgICBwYXJhbWV0ZXJzLm5ldHdv
cmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIg
PSBtX2NvbmZpZ3VyYXRpb24tPnNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcigp
OworICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVy
OworICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0
aW9uU2Vjb25kYXJ5SWRlbnRpZmllciA9IG1fc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVu
dGlmaWVyOwogCiAgICAgcGFyYW1ldGVycy5wZW5kaW5nQ29va2llcyA9IGNvcHlUb1ZlY3Rvciht
X3BlbmRpbmdDb29raWVzKTsKIApJbmRleDogVG9vbHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjQyMjkwKQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3
b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIwMTktMDMtMDEgIEFsZXggQ2hyaXN0ZW5z
ZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4KKworICAgICAgICBBZGQgc2V0dGVycyBvbiBX
S1dlYnNpdGVEYXRhU3RvcmUgZm9yIHNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBh
bmQgc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTUyMjkKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzQ4NTIwMzYyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0
b3JlQ3VzdG9tUGF0aHMubW06CisgICAgICAgIChURVNUKToKKwogMjAxOS0wMy0wMSAgRG9uIE9s
bXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAgICAgIFtXaW5DYWlyb10gRW5h
YmxlIHNlcnZpY2Ugd29ya2VyCkluZGV4OiBUb29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktp
dENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21QYXRocy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29s
cy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdENvY29hL1dlYnNpdGVEYXRhU3RvcmVDdXN0b21Q
YXRocy5tbQkocmV2aXNpb24gMjQyMjM0KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW0JKHdvcmtpbmcgY29weSkK
QEAgLTI4LDYgKzI4LDcgQEAKICNpbXBvcnQgIlBsYXRmb3JtVXRpbGl0aWVzLmgiCiAjaW1wb3J0
ICJUZXN0LmgiCiAjaW1wb3J0ICJUZXN0TmF2aWdhdGlvbkRlbGVnYXRlLmgiCisjaW1wb3J0ICJU
ZXN0V0tXZWJWaWV3LmgiCiAjaW1wb3J0IDxXZWJLaXQvV0tQcmVmZXJlbmNlc1JlZi5oPgogI2lt
cG9ydCA8V2ViS2l0L1dLUHJvY2Vzc1Bvb2xQcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tV
c2VyQ29udGVudENvbnRyb2xsZXJQcml2YXRlLmg+CkBAIC00NTIsNCArNDUzLDI5IEBAIFRFU1Qo
V2ViS2l0LCBEb0xvYWRXaXRoTm9uRGVmYXVsdERhdGFTdG8KICAgICBbd2ViVmlldyBfdGVzdF93
YWl0Rm9yRGlkRmluaXNoTmF2aWdhdGlvbl07CiB9CiAKK1RFU1QoV2ViS2l0LCBBcHBsaWNhdGlv
bklkZW50aWZpZXJzKQoreworICAgIGF1dG8gd2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24g
PSBhZG9wdE5TKFtbX1dLV2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gYWxsb2NdIGluaXRd
KTsKKyAgICBbd2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gc2V0U291cmNlQXBwbGljYXRp
b25CdW5kbGVJZGVudGlmaWVyOkAidGVzdGlkZW50aWZpZXIiXTsKKworICAgIGF1dG8gd2ViVmll
d0NvbmZpZ3VyYXRpb24gPSBhZG9wdE5TKFtbV0tXZWJWaWV3Q29uZmlndXJhdGlvbiBhbGxvY10g
aW5pdF0pOworICAgIGF1dG8gd2Vic2l0ZURhdGFTdG9yZSA9IFtbW1dLV2Vic2l0ZURhdGFTdG9y
ZSBhbGxvY10gX2luaXRXaXRoQ29uZmlndXJhdGlvbjp3ZWJzaXRlRGF0YVN0b3JlQ29uZmlndXJh
dGlvbi5nZXQoKV0gYXV0b3JlbGVhc2VdOworICAgIEVYUEVDVF9UUlVFKFt3ZWJzaXRlRGF0YVN0
b3JlLl9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIgaXNFcXVhbFRvU3RyaW5nOkAi
dGVzdGlkZW50aWZpZXIiXSk7CisgICAgW3dlYnNpdGVEYXRhU3RvcmUgX3NldFNvdXJjZUFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcjpAIm90aGVyaWRlbnRpZmllciJdOworCisgICAgW3dlYlZp
ZXdDb25maWd1cmF0aW9uIHNldFdlYnNpdGVEYXRhU3RvcmU6d2Vic2l0ZURhdGFTdG9yZV07Cisg
ICAgYXV0byB3ZWJWaWV3ID0gYWRvcHROUyhbW1Rlc3RXS1dlYlZpZXcgYWxsb2NdIGluaXRXaXRo
RnJhbWU6TlNNYWtlUmVjdCgwLCAwLCA4MDAsIDYwMCkgY29uZmlndXJhdGlvbjp3ZWJWaWV3Q29u
ZmlndXJhdGlvbi5nZXQoKV0pOworICAgIFt3ZWJWaWV3IHN5bmNocm9ub3VzbHlMb2FkVGVzdFBh
Z2VOYW1lZDpAInNpbXBsZSJdOworICAgIAorICAgIFJldGFpblB0cjxOU0V4Y2VwdGlvbj4gZXhj
ZXB0aW9uOworICAgIEB0cnkgeworICAgICAgICBbd2Vic2l0ZURhdGFTdG9yZSBfc2V0U291cmNl
QXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOkAic2V0dGluZ1Nob3VsZEZhaWxOb3ciXTsKKyAg
ICB9IEBjYXRjaChOU0V4Y2VwdGlvbiAqY2F1Z2h0KSB7CisgICAgICAgIGV4Y2VwdGlvbiA9IGNh
dWdodDsKKyAgICB9CisgICAgRVhQRUNUX1RSVUUoW1tleGNlcHRpb24gcmVhc29uXSBpc0VxdWFs
VG9TdHJpbmc6QCJfc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyIGNhbm5vdCBi
ZSBjYWxsZWQgYWZ0ZXIgbmV0d29ya2luZyBoYXMgYmVndW4iXSk7CisgICAgRVhQRUNUX1RSVUUo
W3dlYnNpdGVEYXRhU3RvcmUuX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBpc0Vx
dWFsVG9TdHJpbmc6QCJvdGhlcmlkZW50aWZpZXIiXSk7CisgICAgRVhQRUNUX1RSVUUoW1t3ZWJz
aXRlRGF0YVN0b3JlQ29uZmlndXJhdGlvbiBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXJdIGlzRXF1YWxUb1N0cmluZzpAInRlc3RpZGVudGlmaWVyIl0pOworfQorCiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363389</attachid>
            <date>2019-03-01 16:39:23 -0800</date>
            <delta_ts>2019-03-01 18:16:03 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195229-20190301163922.patch</filename>
            <type>text/plain</type>
            <size>15613</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDIyODkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDE5LTAzLTAxICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRlcnMg
b24gV0tXZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIgYW5kIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBKdXN0IGxpa2UgX3NldEJvdW5kSW50ZXJmYWNlSWRlbnRpZmllciwgd2Ug
bmVlZCBhIHdheSB0byBzZXQgdGhlc2UgcHJvcGVydGllcyBhZnRlciBpbnN0YW50aWF0aW9uIG9m
IGEgV0tXZWJzaXRlRGF0YVN0b3JlLAorICAgICAgICBidXQgd2UgbmVlZCB0byBtYWtlIHN1cmUg
d2UgZG9uJ3Qgc2V0IGl0IGFmdGVyIHRoZSBwYXJhbWV0ZXJzIGhhdmUgYmVlbiBjb3BpZWQgdG8g
dGhlIE5ldHdvcmtQcm9jZXNzLgorCisgICAgICAgIEZ1bmN0aW9uYWxpdHkgdmVyaWZpZWQgYnkg
bWFudWFsIHRlc3RpbmcuICBTZWUgcmFkYXIuCisgICAgICAgIEFkZGVkIGFuIEFQSSB0ZXN0IHRo
YXQgdmVyaWZpZXMgdGhlIHNldHRlciByZXN0cmljdGlvbnMgd29yayBhcyBleHBlY3RlZC4KKwor
ICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tOgorICAg
ICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRp
Zmllcl0pOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NldFNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKC1bV0tXZWJzaXRlRGF0YVN0b3JlIF9z
b3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXJdKToKKyAgICAgICAgKC1bV0tXZWJz
aXRlRGF0YVN0b3JlIF9zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6XSk6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRl
Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGlu
YXRvclByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OnRvUEtQYXltZW50UmVxdWVzdCk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVD
b2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycyk6
CisgICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKToKKyAg
ICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25TZWNv
bmRhcnlJZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0
U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRl
RGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIpOgorICAgICAgICAo
V2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIpOgorCiAyMDE5LTAzLTAxICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5j
b20+CiAKICAgICAgICAgVW5pZnkgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUNv
bmZpZ3VyYXRpb24gYWNyb3NzIHBvcnRzCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJQcm9jZXNzUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2ViUHJvY2Vzc1Bvb2wuY3BwCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5MCw2ICs0OTAs
OSBAQCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zCiAgICAgaWYgKG1f
d2Vic2l0ZURhdGFTdG9yZSkgewogICAgICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQ
YXJhbWV0ZXJzLnBlbmRpbmdDb29raWVzID0gY29weVRvVmVjdG9yKG1fd2Vic2l0ZURhdGFTdG9y
ZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnBlbmRpbmdDb29raWVzKCkpOwogICAgICAgICBtX3dlYnNp
dGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5jbGVhclBlbmRpbmdDb29raWVzKCk7Cisg
ICAgICAgIHBhcmFtZXRlcnMuZGVmYXVsdERhdGFTdG9yZVBhcmFtZXRlcnMubmV0d29ya1Nlc3Np
b25QYXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fd2Vic2l0
ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRl
bnRpZmllcigpOworICAgICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0ZXJz
Lm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIgPSBtX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VBcHBs
aWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKTsKKyAgICAgICAgbV93ZWJzaXRlRGF0YVN0b3Jl
LT53ZWJzaXRlRGF0YVN0b3JlKCkuZmluYWxpemVBcHBsaWNhdGlvbklkZW50aWZpZXJzKCk7CiAg
ICAgfQogCiAgICAgcGFyYW1ldGVycy5jYWNoZU1vZGVsID0gY2FjaGVNb2RlbCgpOwpJbmRleDog
U291cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZS5tbQo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRl
RGF0YVN0b3JlLm1tCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNjMs
NiArMzYzLDI4IEBAIC0gKHZvaWQpX3NldFByb3h5Q29uZmlndXJhdGlvbjooTlNEaWN0aW8KICAg
ICBfd2Vic2l0ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNldFByb3h5Q29uZmlndXJh
dGlvbigoX19icmlkZ2UgQ0ZEaWN0aW9uYXJ5UmVmKWNvbmZpZ3VyYXRpb24pOwogfQogCistIChO
U1N0cmluZyAqKV9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIKK3sKKyAgICByZXR1
cm4gX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VBcHBsaWNhdGlv
bkJ1bmRsZUlkZW50aWZpZXIoKTsKK30KKworLSAodm9pZClfc2V0U291cmNlQXBwbGljYXRpb25C
dW5kbGVJZGVudGlmaWVyOihOU1N0cmluZyAqKWlkZW50aWZpZXIKK3sKKyAgICBpZiAoIV93ZWJz
aXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2V0U291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKGlkZW50aWZpZXIpKQorICAgICAgICBbTlNFeGNlcHRpb24gcmFpc2U6TlNH
ZW5lcmljRXhjZXB0aW9uIGZvcm1hdDpAIl9zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50
aWZpZXIgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBuZXR3b3JraW5nIGhhcyBiZWd1biJdOworfQor
CistIChOU1N0cmluZyAqKV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIKK3sK
KyAgICByZXR1cm4gX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VB
cHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKTsKK30KKworLSAodm9pZClfc2V0U291cmNl
QXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOihOU1N0cmluZyAqKWlkZW50aWZpZXIKK3sK
KyAgICBpZiAoIV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2V0U291cmNl
QXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKGlkZW50aWZpZXIpKQorICAgICAgICBbTlNF
eGNlcHRpb24gcmFpc2U6TlNHZW5lcmljRXhjZXB0aW9uIGZvcm1hdDpAIl9zZXRTb3VyY2VBcHBs
aWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBuZXR3b3Jr
aW5nIGhhcyBiZWd1biJdOworfQorCiAtIChOU0RpY3Rpb25hcnkgKilfcHJveHlDb25maWd1cmF0
aW9uCiB7CiAgICAgcmV0dXJuIChfX2JyaWRnZSBOU0RpY3Rpb25hcnkgKilfd2Vic2l0ZURhdGFT
dG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnByb3h5Q29uZmlndXJhdGlvbigpOwpJbmRleDogU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJz
aXRlRGF0YVN0b3JlUHJpdmF0ZS5oCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCSh3b3JraW5n
IGNvcHkpCkBAIC01Nyw2ICs1Nyw4IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBf
V0tXZWJzaXQKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEJvdW5kSW50ZXJmYWNl
SWRlbnRpZmllcjopIE5TU3RyaW5nICpfYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyIFdLX0FQSV9B
VkFJTEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3MoMTEuMykpOwogQHByb3BlcnR5IChub25hdG9t
aWMsIHNldHRlcj1fc2V0QWxsb3dzQ2VsbHVsYXJBY2Nlc3M6KSBCT09MIF9hbGxvd3NDZWxsdWxh
ckFjY2VzcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSwgaW9zKDExLjMpKTsKIEBw
cm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFByb3h5Q29uZmlndXJhdGlvbjopIE5TRGlj
dGlvbmFyeSAqX3Byb3h5Q29uZmlndXJhdGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4x
NCksIGlvcygxMi4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSwgc2V0dGVyPV9zZXRT
b3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6KSBOU1N0cmluZyAqX3NvdXJjZUFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJB
KSwgaW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0ZXI9
X3NldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopIE5TU3RyaW5nICpfc291
cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4
KFdLX01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywg
cmVhZG9ubHkpIE5TVVJMICpfaW5kZXhlZERCRGF0YWJhc2VEaXJlY3Rvcnk7CiAKSW5kZXg6IFNv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGluYXRv
clByb3h5Q29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBw
bGVQYXkvY29jb2EvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHlDb2NvYS5tbQkocmV2aXNpb24g
MjQyMjM0KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBwbGVQYXkvY29jb2EvV2ViUGF5
bWVudENvb3JkaW5hdG9yUHJveHlDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtNTA2LDEzICs1
MDYsMTMgQEAgUmV0YWluUHRyPFBLUGF5bWVudFJlcXVlc3Q+IHRvUEtQYXltZW50UgogI2VuZGlm
CiAKICAgICAvLyBGSVhNRTogSW5zdGVhZCBvZiB1c2luZyByZXNwb25kc1RvU2VsZWN0b3IsIHRo
aXMgc2hvdWxkIHVzZSBhIHByb3BlciAjaWYgdmVyc2lvbiBjaGVjay4KLSAgICBhdXRvJiBjb25m
aWd1cmF0aW9uID0gd2ViUGFnZVByb3h5LndlYnNpdGVEYXRhU3RvcmUoKS5jb25maWd1cmF0aW9u
KCk7CisgICAgYXV0byYgd2Vic2l0ZURhdGFTdG9yZSA9IHdlYlBhZ2VQcm94eS53ZWJzaXRlRGF0
YVN0b3JlKCk7CiAKLSAgICBpZiAoIWNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyKCkuaXNFbXB0eSgpICYmIFtyZXN1bHQgcmVzcG9uZHNUb1NlbGVjdG9yOkBz
ZWxlY3RvcihzZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6KV0pCi0gICAgICAg
IFtyZXN1bHQgc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOmNvbmZpZ3VyYXRp
b24uc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCldOworICAgIGlmICghd2Vic2l0
ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc0VtcHR5KCkg
JiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldFNvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllcjopXSkKKyAgICAgICAgW3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNh
dGlvbkJ1bmRsZUlkZW50aWZpZXI6d2Vic2l0ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXIoKV07CiAKLSAgICBpZiAoIWNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGlj
YXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKCkuaXNFbXB0eSgpICYmIFtyZXN1bHQgcmVzcG9uZHNU
b1NlbGVjdG9yOkBzZWxlY3RvcihzZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZp
ZXI6KV0pCi0gICAgICAgIFtyZXN1bHQgc2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVu
dGlmaWVyOmNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVy
KCldOworICAgIGlmICghd2Vic2l0ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFy
eUlkZW50aWZpZXIoKS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNl
bGVjdG9yKHNldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopXSkKKyAgICAg
ICAgW3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6d2Vic2l0
ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKV07CiAKICNp
ZiBQTEFURk9STShJT1NfRkFNSUxZKQogICAgIGlmICghd2ViUGFnZVByb3h5LnByb2Nlc3MoKS5w
cm9jZXNzUG9vbCgpLmNvbmZpZ3VyYXRpb24oKS5jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUo
KS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldENU
RGF0YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZTopXSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9j
ZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCShyZXZp
c2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTgsNiArOTgsOCBAQCBXZWJzaXRl
RGF0YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKFJlZjxXCiAgICAgLCBtX3N0b3JhZ2VNYW5hZ2Vy
KFN0b3JhZ2VNYW5hZ2VyOjpjcmVhdGUobV9jb25maWd1cmF0aW9uLT5sb2NhbFN0b3JhZ2VEaXJl
Y3RvcnkoKSkpCiAgICAgLCBtX2RldmljZUlkSGFzaFNhbHRTdG9yYWdlKERldmljZUlkSGFzaFNh
bHRTdG9yYWdlOjpjcmVhdGUoaXNQZXJzaXN0ZW50KCkgPyBtX2NvbmZpZ3VyYXRpb24tPmRldmlj
ZUlkSGFzaFNhbHRzU3RvcmFnZURpcmVjdG9yeSgpIDogU3RyaW5nKCkpKQogICAgICwgbV9xdWV1
ZShXb3JrUXVldWU6OmNyZWF0ZSgiY29tLmFwcGxlLldlYktpdC5XZWJzaXRlRGF0YVN0b3JlIikp
CisgICAgLCBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihtX2NvbmZpZ3VyYXRp
b24tPnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKQorICAgICwgbV9zb3VyY2VB
cHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIobV9jb25maWd1cmF0aW9uLT5zb3VyY2VBcHBs
aWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKSkKICNpZiBFTkFCTEUoV0VCX0FVVEhOKQogICAg
ICwgbV9hdXRoZW50aWNhdG9yTWFuYWdlcihtYWtlVW5pcXVlUmVmPEF1dGhlbnRpY2F0b3JNYW5h
Z2VyPigpKQogI2VuZGlmCkBAIC0yMDkxLDQgKzIwOTMsMjAgQEAgdm9pZCBXZWJzaXRlRGF0YVN0
b3JlOjpkaWRDcmVhdGVOZXR3b3JrUAogewogfQogCitib29sIFdlYnNpdGVEYXRhU3RvcmU6OnNl
dFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcihTdHJpbmcmJiBpZGVudGlmaWVy
KQoreworICAgIGlmICghbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisgICAgbV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIgPSBXVEZNb3ZlKGlkZW50aWZpZXIpOworICAgIHJldHVybiB0cnVlOworfQorCitib29s
IFdlYnNpdGVEYXRhU3RvcmU6OnNldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihT
dHJpbmcmJiBpZGVudGlmaWVyKQoreworICAgIGlmICghbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlv
bklkZW50aWZpZXJzKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgbV9zb3VyY2VBcHBsaWNh
dGlvbkJ1bmRsZUlkZW50aWZpZXIgPSBXVEZNb3ZlKGlkZW50aWZpZXIpOworICAgIHJldHVybiB0
cnVlOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9X
ZWJzaXRlRGF0YVN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
V2Vic2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3Vy
Y2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgJKHdvcmtp
bmcgY29weSkKQEAgLTE5OSw2ICsxOTksMTQgQEAgcHVibGljOgogCiAgICAgdm9pZCBzZXRCb3Vu
ZEludGVyZmFjZUlkZW50aWZpZXIoU3RyaW5nJiYgaWRlbnRpZmllcikgeyBtX2JvdW5kSW50ZXJm
YWNlSWRlbnRpZmllciA9IFdURk1vdmUoaWRlbnRpZmllcik7IH0KICAgICBjb25zdCBTdHJpbmcm
IGJvdW5kSW50ZXJmYWNlSWRlbnRpZmllcigpIHsgcmV0dXJuIG1fYm91bmRJbnRlcmZhY2VJZGVu
dGlmaWVyOyB9CisKKyAgICBjb25zdCBTdHJpbmcmIHNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRl
bnRpZmllcigpIHsgcmV0dXJuIG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOyB9
CisgICAgYm9vbCBzZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoU3RyaW5nJiYp
OworCisgICAgY29uc3QgU3RyaW5nJiBzb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZp
ZXIoKSB7IHJldHVybiBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjsgfQor
ICAgIGJvb2wgc2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKFN0cmluZyYm
KTsKKyAgICAKKyAgICB2b2lkIGZpbmFsaXplQXBwbGljYXRpb25JZGVudGlmaWVycygpIHsgbV9h
bGxvd2VkVG9TZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzID0gZmFsc2U7IH0KICAgICAKICAgICB2
b2lkIHNldEFsbG93c0NlbGx1bGFyQWNjZXNzKEFsbG93c0NlbGx1bGFyQWNjZXNzIGFsbG93cykg
eyBtX2FsbG93c0NlbGx1bGFyQWNjZXNzID0gYWxsb3dzOyB9CiAgICAgQWxsb3dzQ2VsbHVsYXJB
Y2Nlc3MgYWxsb3dzQ2VsbHVsYXJBY2Nlc3MoKSB7IHJldHVybiBtX2FsbG93c0NlbGx1bGFyQWNj
ZXNzOyB9CkBAIC0zMDMsNiArMzExLDkgQEAgcHJpdmF0ZToKIAogICAgIFN0cmluZyBtX2JvdW5k
SW50ZXJmYWNlSWRlbnRpZmllcjsKICAgICBBbGxvd3NDZWxsdWxhckFjY2VzcyBtX2FsbG93c0Nl
bGx1bGFyQWNjZXNzIHsgQWxsb3dzQ2VsbHVsYXJBY2Nlc3M6OlllcyB9OworICAgIFN0cmluZyBt
X3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjsKKyAgICBTdHJpbmcgbV9zb3VyY2VB
cHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI7CisgICAgYm9vbCBtX2FsbG93ZWRUb1NldEFw
cGxpY2F0aW9uSWRlbnRpZmllcnMgeyB0cnVlIH07CiAKICNpZiBIQVZFKFNFQ19LRVlfUFJPWFkp
CiAgICAgVmVjdG9yPFJlZjxTZWNLZXlQcm94eVN0b3JlPj4gbV9zZWNLZXlQcm94eVN0b3JlczsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9X
ZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0JKHJldmlzaW9uIDI0MjIz
NCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVE
YXRhU3RvcmVDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtOTQsOCArOTQsOCBAQCBXZWJzaXRl
RGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0CiAgICAgICAgIG1fYm91bmRJbnRlcmZh
Y2VJZGVudGlmaWVyLAogICAgICAgICBtX2FsbG93c0NlbGx1bGFyQWNjZXNzLAogICAgICAgICBt
X3Byb3h5Q29uZmlndXJhdGlvbiwKLSAgICAgICAgbV9jb25maWd1cmF0aW9uLT5zb3VyY2VBcHBs
aWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKSwKLSAgICAgICAgbV9jb25maWd1cmF0aW9uLT5zb3Vy
Y2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKSwKKyAgICAgICAgbV9zb3VyY2VBcHBs
aWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIsCisgICAgICAgIG1fc291cmNlQXBwbGljYXRpb25TZWNv
bmRhcnlJZGVudGlmaWVyLAogICAgICAgICBzaG91bGRMb2dDb29raWVJbmZvcm1hdGlvbiwKICAg
ICAgICAgU2Vjb25kcyB7IFtkZWZhdWx0cyBpbnRlZ2VyRm9yS2V5OldlYktpdE5ldHdvcmtMb2Fk
VGhyb3R0bGVMYXRlbmN5TWlsbGlzZWNvbmRzRGVmYXVsdHNLZXldIC8gMTAwMC4gfSwKICAgICAg
ICAgV1RGTW92ZShodHRwUHJveHkpLApAQCAtMTA0LDYgKzEwNCw3IEBAIFdlYnNpdGVEYXRhU3Rv
cmVQYXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKICAgICAgICAgV1RGTW92ZShyZXNvdXJjZUxvYWRT
dGF0aXN0aWNzRGlyZWN0b3J5SGFuZGxlKSwKICAgICAgICAgZmFsc2UKICAgICB9OworICAgIGZp
bmFsaXplQXBwbGljYXRpb25JZGVudGlmaWVycygpOwogCiAgICAgYXV0byBjb29raWVGaWxlID0g
cmVzb2x2ZWRDb29raWVTdG9yYWdlRmlsZSgpOwogCkBAIC0xMTUsOCArMTE2LDggQEAgV2Vic2l0
ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdAogICAgIH0KIAogICAgIHBhcmFtZXRl
cnMudWlQcm9jZXNzQ29va2llU3RvcmFnZUlkZW50aWZpZXIgPSBtX3VpUHJvY2Vzc0Nvb2tpZVN0
b3JhZ2VJZGVudGlmaWVyOwotICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25QYXJhbWV0ZXJz
LnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fY29uZmlndXJhdGlvbi0+c291
cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7Ci0gICAgcGFyYW1ldGVycy5uZXR3b3Jr
U2Vzc2lvblBhcmFtZXRlcnMuc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyID0g
bV9jb25maWd1cmF0aW9uLT5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKTsK
KyAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlv
bkJ1bmRsZUlkZW50aWZpZXIgPSBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjsK
KyAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlv
blNlY29uZGFyeUlkZW50aWZpZXIgPSBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRp
ZmllcjsKIAogICAgIHBhcmFtZXRlcnMucGVuZGluZ0Nvb2tpZXMgPSBjb3B5VG9WZWN0b3IobV9w
ZW5kaW5nQ29va2llcyk7CiAKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0MjI5MCkKKysrIFRvb2xzL0NoYW5nZUxvZwkod29y
a2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTAxICBBbGV4IENocmlzdGVuc2Vu
ICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRlcnMgb24gV0tX
ZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIgYW5k
IHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV2Vic2l0ZURhdGFTdG9y
ZUN1c3RvbVBhdGhzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMTktMDMtMDEgIERvbiBPbG1z
dGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbV2luQ2Fpcm9dIEVuYWJs
ZSBzZXJ2aWNlIHdvcmtlcgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRD
b2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW0KPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0
aHMubW0JKHJldmlzaW9uIDI0MjIzNCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2Vi
S2l0Q29jb2EvV2Vic2l0ZURhdGFTdG9yZUN1c3RvbVBhdGhzLm1tCSh3b3JraW5nIGNvcHkpCkBA
IC0yOCw2ICsyOCw3IEBACiAjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2ltcG9ydCAi
VGVzdC5oIgogI2ltcG9ydCAiVGVzdE5hdmlnYXRpb25EZWxlZ2F0ZS5oIgorI2ltcG9ydCAiVGVz
dFdLV2ViVmlldy5oIgogI2ltcG9ydCA8V2ViS2l0L1dLUHJlZmVyZW5jZXNSZWYuaD4KICNpbXBv
cnQgPFdlYktpdC9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLVXNl
ckNvbnRlbnRDb250cm9sbGVyUHJpdmF0ZS5oPgpAQCAtNDUyLDQgKzQ1MywyOSBAQCBURVNUKFdl
YktpdCwgRG9Mb2FkV2l0aE5vbkRlZmF1bHREYXRhU3RvCiAgICAgW3dlYlZpZXcgX3Rlc3Rfd2Fp
dEZvckRpZEZpbmlzaE5hdmlnYXRpb25dOwogfQogCitURVNUKFdlYktpdCwgQXBwbGljYXRpb25J
ZGVudGlmaWVycykKK3sKKyAgICBhdXRvIHdlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uID0g
YWRvcHROUyhbW19XS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uIGFsbG9jXSBpbml0XSk7
CisgICAgW3dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uIHNldFNvdXJjZUFwcGxpY2F0aW9u
QnVuZGxlSWRlbnRpZmllcjpAInRlc3RpZGVudGlmaWVyIl07CisKKyAgICBhdXRvIHdlYlZpZXdD
b25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxsb2NdIGlu
aXRdKTsKKyAgICBhdXRvIHdlYnNpdGVEYXRhU3RvcmUgPSBbW1tXS1dlYnNpdGVEYXRhU3RvcmUg
YWxsb2NdIF9pbml0V2l0aENvbmZpZ3VyYXRpb246d2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRp
b24uZ2V0KCldIGF1dG9yZWxlYXNlXTsKKyAgICBFWFBFQ1RfVFJVRShbd2Vic2l0ZURhdGFTdG9y
ZS5fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyIGlzRXF1YWxUb1N0cmluZzpAInRl
c3RpZGVudGlmaWVyIl0pOworICAgIFt3ZWJzaXRlRGF0YVN0b3JlIF9zZXRTb3VyY2VBcHBsaWNh
dGlvbkJ1bmRsZUlkZW50aWZpZXI6QCJvdGhlcmlkZW50aWZpZXIiXTsKKworICAgIFt3ZWJWaWV3
Q29uZmlndXJhdGlvbiBzZXRXZWJzaXRlRGF0YVN0b3JlOndlYnNpdGVEYXRhU3RvcmVdOworICAg
IGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0V2l0aEZy
YW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246d2ViVmlld0NvbmZp
Z3VyYXRpb24uZ2V0KCldKTsKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRlc3RQYWdl
TmFtZWQ6QCJzaW1wbGUiXTsKKyAgICAKKyAgICBSZXRhaW5QdHI8TlNFeGNlcHRpb24+IGV4Y2Vw
dGlvbjsKKyAgICBAdHJ5IHsKKyAgICAgICAgW3dlYnNpdGVEYXRhU3RvcmUgX3NldFNvdXJjZUFw
cGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjpAInNldHRpbmdTaG91bGRGYWlsTm93Il07CisgICAg
fSBAY2F0Y2goTlNFeGNlcHRpb24gKmNhdWdodCkgeworICAgICAgICBleGNlcHRpb24gPSBjYXVn
aHQ7CisgICAgfQorICAgIEVYUEVDVF9UUlVFKFtbZXhjZXB0aW9uIHJlYXNvbl0gaXNFcXVhbFRv
U3RyaW5nOkAiX3NldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBjYW5ub3QgYmUg
Y2FsbGVkIGFmdGVyIG5ldHdvcmtpbmcgaGFzIGJlZ3VuIl0pOworICAgIEVYUEVDVF9UUlVFKFt3
ZWJzaXRlRGF0YVN0b3JlLl9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIgaXNFcXVh
bFRvU3RyaW5nOkAib3RoZXJpZGVudGlmaWVyIl0pOworICAgIEVYUEVDVF9UUlVFKFtbd2Vic2l0
ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVy
XSBpc0VxdWFsVG9TdHJpbmc6QCJ0ZXN0aWRlbnRpZmllciJdKTsKK30KKwogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>363393</attachid>
            <date>2019-03-01 18:16:06 -0800</date>
            <delta_ts>2019-03-01 18:16:48 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-195229-20190301181605.patch</filename>
            <type>text/plain</type>
            <size>15619</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDIyODkpCisrKyBTb3VyY2UvV2ViS2l0L0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBACisyMDE5LTAzLTAxICBBbGV4IENocmlz
dGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRlcnMg
b24gV0tXZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIgYW5kIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBEdW1lei4K
KworICAgICAgICBKdXN0IGxpa2UgX3NldEJvdW5kSW50ZXJmYWNlSWRlbnRpZmllciwgd2UgbmVl
ZCBhIHdheSB0byBzZXQgdGhlc2UgcHJvcGVydGllcyBhZnRlciBpbnN0YW50aWF0aW9uIG9mIGEg
V0tXZWJzaXRlRGF0YVN0b3JlLAorICAgICAgICBidXQgd2UgbmVlZCB0byBtYWtlIHN1cmUgd2Ug
ZG9uJ3Qgc2V0IGl0IGFmdGVyIHRoZSBwYXJhbWV0ZXJzIGhhdmUgYmVlbiBjb3BpZWQgdG8gdGhl
IE5ldHdvcmtQcm9jZXNzLgorCisgICAgICAgIEZ1bmN0aW9uYWxpdHkgdmVyaWZpZWQgYnkgbWFu
dWFsIHRlc3RpbmcuICBTZWUgcmFkYXIuCisgICAgICAgIEFkZGVkIGFuIEFQSSB0ZXN0IHRoYXQg
dmVyaWZpZXMgdGhlIHNldHRlciByZXN0cmljdGlvbnMgd29yayBhcyBleHBlY3RlZC4KKworICAg
ICAgICAqIFVJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tOgorICAgICAg
ICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmll
cl0pOgorICAgICAgICAoLVtXS1dlYnNpdGVEYXRhU3RvcmUgX3NldFNvdXJjZUFwcGxpY2F0aW9u
QnVuZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKC1bV0tXZWJzaXRlRGF0YVN0b3JlIF9zb3Vy
Y2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXJdKToKKyAgICAgICAgKC1bV0tXZWJzaXRl
RGF0YVN0b3JlIF9zZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6XSk6Cisg
ICAgICAgICogVUlQcm9jZXNzL0FQSS9Db2NvYS9XS1dlYnNpdGVEYXRhU3RvcmVQcml2YXRlLmg6
CisgICAgICAgICogVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGluYXRv
clByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OnRvUEtQYXltZW50UmVxdWVzdCk6Cisg
ICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29hL1dlYnNpdGVEYXRhU3RvcmVDb2Nv
YS5tbToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6cGFyYW1ldGVycyk6Cisg
ICAgICAgICogVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKToKKyAgICAg
ICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRh
cnlJZGVudGlmaWVyKToKKyAgICAgICAgKFdlYktpdDo6V2Vic2l0ZURhdGFTdG9yZTo6c2V0U291
cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKToKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oOgorICAgICAgICAoV2ViS2l0OjpXZWJzaXRlRGF0
YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIpOgorICAgICAgICAoV2Vi
S2l0OjpXZWJzaXRlRGF0YVN0b3JlOjpzb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZp
ZXIpOgorCiAyMDE5LTAzLTAxICBEb24gT2xtc3RlYWQgIDxkb24ub2xtc3RlYWRAc29ueS5jb20+
CiAKICAgICAgICAgVW5pZnkgV2Vic2l0ZURhdGFTdG9yZTo6ZGVmYXVsdERhdGFTdG9yZUNvbmZp
Z3VyYXRpb24gYWNyb3NzIHBvcnRzCkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJQ
cm9jZXNzUG9vbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
UHJvY2Vzc1Bvb2wuY3BwCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9XZWJQcm9jZXNzUG9vbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ5MCw2ICs0OTAsOSBA
QCBOZXR3b3JrUHJvY2Vzc1Byb3h5JiBXZWJQcm9jZXNzUG9vbDo6ZW5zCiAgICAgaWYgKG1fd2Vi
c2l0ZURhdGFTdG9yZSkgewogICAgICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJh
bWV0ZXJzLnBlbmRpbmdDb29raWVzID0gY29weVRvVmVjdG9yKG1fd2Vic2l0ZURhdGFTdG9yZS0+
d2Vic2l0ZURhdGFTdG9yZSgpLnBlbmRpbmdDb29raWVzKCkpOwogICAgICAgICBtX3dlYnNpdGVE
YXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5jbGVhclBlbmRpbmdDb29raWVzKCk7CisgICAg
ICAgIHBhcmFtZXRlcnMuZGVmYXVsdERhdGFTdG9yZVBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25Q
YXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fd2Vic2l0ZURh
dGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRp
ZmllcigpOworICAgICAgICBwYXJhbWV0ZXJzLmRlZmF1bHREYXRhU3RvcmVQYXJhbWV0ZXJzLm5l
dHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZp
ZXIgPSBtX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VBcHBsaWNh
dGlvblNlY29uZGFyeUlkZW50aWZpZXIoKTsKKyAgICAgICAgbV93ZWJzaXRlRGF0YVN0b3JlLT53
ZWJzaXRlRGF0YVN0b3JlKCkuZmluYWxpemVBcHBsaWNhdGlvbklkZW50aWZpZXJzKCk7CiAgICAg
fQogCiAgICAgcGFyYW1ldGVycy5jYWNoZU1vZGVsID0gY2FjaGVNb2RlbCgpOwpJbmRleDogU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZS5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0
YVN0b3JlLm1tCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9B
UEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlLm1tCSh3b3JraW5nIGNvcHkpCkBAIC0zNjMsNiAr
MzYzLDI4IEBAIC0gKHZvaWQpX3NldFByb3h5Q29uZmlndXJhdGlvbjooTlNEaWN0aW8KICAgICBf
d2Vic2l0ZURhdGFTdG9yZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnNldFByb3h5Q29uZmlndXJhdGlv
bigoX19icmlkZ2UgQ0ZEaWN0aW9uYXJ5UmVmKWNvbmZpZ3VyYXRpb24pOwogfQogCistIChOU1N0
cmluZyAqKV9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIKK3sKKyAgICByZXR1cm4g
X3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VBcHBsaWNhdGlvbkJ1
bmRsZUlkZW50aWZpZXIoKTsKK30KKworLSAodm9pZClfc2V0U291cmNlQXBwbGljYXRpb25CdW5k
bGVJZGVudGlmaWVyOihOU1N0cmluZyAqKWlkZW50aWZpZXIKK3sKKyAgICBpZiAoIV93ZWJzaXRl
RGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJ
ZGVudGlmaWVyKGlkZW50aWZpZXIpKQorICAgICAgICBbTlNFeGNlcHRpb24gcmFpc2U6TlNHZW5l
cmljRXhjZXB0aW9uIGZvcm1hdDpAIl9zZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZp
ZXIgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBuZXR3b3JraW5nIGhhcyBiZWd1biJdOworfQorCist
IChOU1N0cmluZyAqKV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIKK3sKKyAg
ICByZXR1cm4gX3dlYnNpdGVEYXRhU3RvcmUtPndlYnNpdGVEYXRhU3RvcmUoKS5zb3VyY2VBcHBs
aWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKTsKK30KKworLSAodm9pZClfc2V0U291cmNlQXBw
bGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyOihOU1N0cmluZyAqKWlkZW50aWZpZXIKK3sKKyAg
ICBpZiAoIV93ZWJzaXRlRGF0YVN0b3JlLT53ZWJzaXRlRGF0YVN0b3JlKCkuc2V0U291cmNlQXBw
bGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKGlkZW50aWZpZXIpKQorICAgICAgICBbTlNFeGNl
cHRpb24gcmFpc2U6TlNHZW5lcmljRXhjZXB0aW9uIGZvcm1hdDpAIl9zZXRTb3VyY2VBcHBsaWNh
dGlvblNlY29uZGFyeUlkZW50aWZpZXIgY2Fubm90IGJlIGNhbGxlZCBhZnRlciBuZXR3b3JraW5n
IGhhcyBiZWd1biJdOworfQorCiAtIChOU0RpY3Rpb25hcnkgKilfcHJveHlDb25maWd1cmF0aW9u
CiB7CiAgICAgcmV0dXJuIChfX2JyaWRnZSBOU0RpY3Rpb25hcnkgKilfd2Vic2l0ZURhdGFTdG9y
ZS0+d2Vic2l0ZURhdGFTdG9yZSgpLnByb3h5Q29uZmlndXJhdGlvbigpOwpJbmRleDogU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvQVBJL0NvY29hL1dLV2Vic2l0ZURhdGFTdG9yZVByaXZhdGUuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRl
RGF0YVN0b3JlUHJpdmF0ZS5oCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9BUEkvQ29jb2EvV0tXZWJzaXRlRGF0YVN0b3JlUHJpdmF0ZS5oCSh3b3JraW5nIGNv
cHkpCkBAIC01Nyw2ICs1Nyw4IEBAIHR5cGVkZWYgTlNfT1BUSU9OUyhOU1VJbnRlZ2VyLCBfV0tX
ZWJzaXQKIEBwcm9wZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldEJvdW5kSW50ZXJmYWNlSWRl
bnRpZmllcjopIE5TU3RyaW5nICpfYm91bmRJbnRlcmZhY2VJZGVudGlmaWVyIFdLX0FQSV9BVkFJ
TEFCTEUobWFjb3N4KDEwLjEzLjQpLCBpb3MoMTEuMykpOwogQHByb3BlcnR5IChub25hdG9taWMs
IHNldHRlcj1fc2V0QWxsb3dzQ2VsbHVsYXJBY2Nlc3M6KSBCT09MIF9hbGxvd3NDZWxsdWxhckFj
Y2VzcyBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xMy40KSwgaW9zKDExLjMpKTsKIEBwcm9w
ZXJ0eSAobm9uYXRvbWljLCBzZXR0ZXI9X3NldFByb3h5Q29uZmlndXJhdGlvbjopIE5TRGljdGlv
bmFyeSAqX3Byb3h5Q29uZmlndXJhdGlvbiBXS19BUElfQVZBSUxBQkxFKG1hY29zeCgxMC4xNCks
IGlvcygxMi4wKSk7CitAcHJvcGVydHkgKG5vbmF0b21pYywgY29weSwgc2V0dGVyPV9zZXRTb3Vy
Y2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6KSBOU1N0cmluZyAqX3NvdXJjZUFwcGxpY2F0
aW9uQnVuZGxlSWRlbnRpZmllciBXS19BUElfQVZBSUxBQkxFKG1hY29zeChXS19NQUNfVEJBKSwg
aW9zKFdLX0lPU19UQkEpKTsKK0Bwcm9wZXJ0eSAobm9uYXRvbWljLCBjb3B5LCBzZXR0ZXI9X3Nl
dFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopIE5TU3RyaW5nICpfc291cmNl
QXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyIFdLX0FQSV9BVkFJTEFCTEUobWFjb3N4KFdL
X01BQ19UQkEpLCBpb3MoV0tfSU9TX1RCQSkpOwogCiBAcHJvcGVydHkgKG5vbmF0b21pYywgcmVh
ZG9ubHkpIE5TVVJMICpfaW5kZXhlZERCRGF0YWJhc2VEaXJlY3Rvcnk7CiAKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL0FwcGxlUGF5L2NvY29hL1dlYlBheW1lbnRDb29yZGluYXRvclBy
b3h5Q29jb2EubW0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBwbGVQ
YXkvY29jb2EvV2ViUGF5bWVudENvb3JkaW5hdG9yUHJveHlDb2NvYS5tbQkocmV2aXNpb24gMjQy
MjM0KQorKysgU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQXBwbGVQYXkvY29jb2EvV2ViUGF5bWVu
dENvb3JkaW5hdG9yUHJveHlDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtNTA2LDEzICs1MDYs
MTMgQEAgUmV0YWluUHRyPFBLUGF5bWVudFJlcXVlc3Q+IHRvUEtQYXltZW50UgogI2VuZGlmCiAK
ICAgICAvLyBGSVhNRTogSW5zdGVhZCBvZiB1c2luZyByZXNwb25kc1RvU2VsZWN0b3IsIHRoaXMg
c2hvdWxkIHVzZSBhIHByb3BlciAjaWYgdmVyc2lvbiBjaGVjay4KLSAgICBhdXRvJiBjb25maWd1
cmF0aW9uID0gd2ViUGFnZVByb3h5LndlYnNpdGVEYXRhU3RvcmUoKS5jb25maWd1cmF0aW9uKCk7
CisgICAgYXV0byYgd2Vic2l0ZURhdGFTdG9yZSA9IHdlYlBhZ2VQcm94eS53ZWJzaXRlRGF0YVN0
b3JlKCk7CiAKLSAgICBpZiAoIWNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGljYXRpb25CdW5kbGVJ
ZGVudGlmaWVyKCkuaXNFbXB0eSgpICYmIFtyZXN1bHQgcmVzcG9uZHNUb1NlbGVjdG9yOkBzZWxl
Y3RvcihzZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6KV0pCi0gICAgICAgIFty
ZXN1bHQgc2V0U291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyOmNvbmZpZ3VyYXRpb24u
c291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCldOworICAgIGlmICghd2Vic2l0ZURh
dGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKS5pc0VtcHR5KCkgJiYg
W3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldFNvdXJjZUFwcGxpY2F0aW9u
QnVuZGxlSWRlbnRpZmllcjopXSkKKyAgICAgICAgW3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNhdGlv
bkJ1bmRsZUlkZW50aWZpZXI6d2Vic2l0ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvbkJ1bmRs
ZUlkZW50aWZpZXIoKV07CiAKLSAgICBpZiAoIWNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGljYXRp
b25TZWNvbmRhcnlJZGVudGlmaWVyKCkuaXNFbXB0eSgpICYmIFtyZXN1bHQgcmVzcG9uZHNUb1Nl
bGVjdG9yOkBzZWxlY3RvcihzZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6
KV0pCi0gICAgICAgIFtyZXN1bHQgc2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlm
aWVyOmNvbmZpZ3VyYXRpb24uc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVyKCld
OworICAgIGlmICghd2Vic2l0ZURhdGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlk
ZW50aWZpZXIoKS5pc0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVj
dG9yKHNldFNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcjopXSkKKyAgICAgICAg
W3Jlc3VsdCBzZXRTb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI6d2Vic2l0ZURh
dGFTdG9yZS5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKV07CiAKICNpZiBQ
TEFURk9STShJT1NfRkFNSUxZKQogICAgIGlmICghd2ViUGFnZVByb3h5LnByb2Nlc3MoKS5wcm9j
ZXNzUG9vbCgpLmNvbmZpZ3VyYXRpb24oKS5jdERhdGFDb25uZWN0aW9uU2VydmljZVR5cGUoKS5p
c0VtcHR5KCkgJiYgW3Jlc3VsdCByZXNwb25kc1RvU2VsZWN0b3I6QHNlbGVjdG9yKHNldENURGF0
YUNvbm5lY3Rpb25TZXJ2aWNlVHlwZTopXSkKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL1dlYnNpdGVEYXRhU3RvcmUuY3BwCShyZXZpc2lv
biAyNDIyMzQpCisrKyBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRl
RGF0YVN0b3JlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTgsNiArOTgsOCBAQCBXZWJzaXRlRGF0
YVN0b3JlOjpXZWJzaXRlRGF0YVN0b3JlKFJlZjxXCiAgICAgLCBtX3N0b3JhZ2VNYW5hZ2VyKFN0
b3JhZ2VNYW5hZ2VyOjpjcmVhdGUobV9jb25maWd1cmF0aW9uLT5sb2NhbFN0b3JhZ2VEaXJlY3Rv
cnkoKSkpCiAgICAgLCBtX2RldmljZUlkSGFzaFNhbHRTdG9yYWdlKERldmljZUlkSGFzaFNhbHRT
dG9yYWdlOjpjcmVhdGUoaXNQZXJzaXN0ZW50KCkgPyBtX2NvbmZpZ3VyYXRpb24tPmRldmljZUlk
SGFzaFNhbHRzU3RvcmFnZURpcmVjdG9yeSgpIDogU3RyaW5nKCkpKQogICAgICwgbV9xdWV1ZShX
b3JrUXVldWU6OmNyZWF0ZSgiY29tLmFwcGxlLldlYktpdC5XZWJzaXRlRGF0YVN0b3JlIikpCisg
ICAgLCBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihtX2NvbmZpZ3VyYXRpb24t
PnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcigpKQorICAgICwgbV9zb3VyY2VBcHBs
aWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIobV9jb25maWd1cmF0aW9uLT5zb3VyY2VBcHBsaWNh
dGlvblNlY29uZGFyeUlkZW50aWZpZXIoKSkKICNpZiBFTkFCTEUoV0VCX0FVVEhOKQogICAgICwg
bV9hdXRoZW50aWNhdG9yTWFuYWdlcihtYWtlVW5pcXVlUmVmPEF1dGhlbnRpY2F0b3JNYW5hZ2Vy
PigpKQogI2VuZGlmCkBAIC0yMDkxLDQgKzIwOTMsMjAgQEAgdm9pZCBXZWJzaXRlRGF0YVN0b3Jl
OjpkaWRDcmVhdGVOZXR3b3JrUAogewogfQogCitib29sIFdlYnNpdGVEYXRhU3RvcmU6OnNldFNv
dXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcihTdHJpbmcmJiBpZGVudGlmaWVyKQor
eworICAgIGlmICghbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzKQorICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgbV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZp
ZXIgPSBXVEZNb3ZlKGlkZW50aWZpZXIpOworICAgIHJldHVybiB0cnVlOworfQorCitib29sIFdl
YnNpdGVEYXRhU3RvcmU6OnNldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcihTdHJp
bmcmJiBpZGVudGlmaWVyKQoreworICAgIGlmICghbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlvbklk
ZW50aWZpZXJzKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgbV9zb3VyY2VBcHBsaWNhdGlv
bkJ1bmRsZUlkZW50aWZpZXIgPSBXVEZNb3ZlKGlkZW50aWZpZXIpOworICAgIHJldHVybiB0cnVl
OworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJz
aXRlRGF0YVN0b3JlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdC9VSVByb2Nlc3MvV2Vi
c2l0ZURhdGEvV2Vic2l0ZURhdGFTdG9yZS5oCShyZXZpc2lvbiAyNDIyMzQpCisrKyBTb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9XZWJzaXRlRGF0YS9XZWJzaXRlRGF0YVN0b3JlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTE5OSw2ICsxOTksMTQgQEAgcHVibGljOgogCiAgICAgdm9pZCBzZXRCb3VuZElu
dGVyZmFjZUlkZW50aWZpZXIoU3RyaW5nJiYgaWRlbnRpZmllcikgeyBtX2JvdW5kSW50ZXJmYWNl
SWRlbnRpZmllciA9IFdURk1vdmUoaWRlbnRpZmllcik7IH0KICAgICBjb25zdCBTdHJpbmcmIGJv
dW5kSW50ZXJmYWNlSWRlbnRpZmllcigpIHsgcmV0dXJuIG1fYm91bmRJbnRlcmZhY2VJZGVudGlm
aWVyOyB9CisKKyAgICBjb25zdCBTdHJpbmcmIHNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRp
ZmllcigpIGNvbnN0IHsgcmV0dXJuIG1fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVy
OyB9CisgICAgYm9vbCBzZXRTb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoU3RyaW5n
JiYpOworCisgICAgY29uc3QgU3RyaW5nJiBzb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRp
ZmllcjsgfQorICAgIGJvb2wgc2V0U291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVudGlmaWVy
KFN0cmluZyYmKTsKKyAgICAKKyAgICB2b2lkIGZpbmFsaXplQXBwbGljYXRpb25JZGVudGlmaWVy
cygpIHsgbV9hbGxvd2VkVG9TZXRBcHBsaWNhdGlvbklkZW50aWZpZXJzID0gZmFsc2U7IH0KICAg
ICAKICAgICB2b2lkIHNldEFsbG93c0NlbGx1bGFyQWNjZXNzKEFsbG93c0NlbGx1bGFyQWNjZXNz
IGFsbG93cykgeyBtX2FsbG93c0NlbGx1bGFyQWNjZXNzID0gYWxsb3dzOyB9CiAgICAgQWxsb3dz
Q2VsbHVsYXJBY2Nlc3MgYWxsb3dzQ2VsbHVsYXJBY2Nlc3MoKSB7IHJldHVybiBtX2FsbG93c0Nl
bGx1bGFyQWNjZXNzOyB9CkBAIC0zMDMsNiArMzExLDkgQEAgcHJpdmF0ZToKIAogICAgIFN0cmlu
ZyBtX2JvdW5kSW50ZXJmYWNlSWRlbnRpZmllcjsKICAgICBBbGxvd3NDZWxsdWxhckFjY2VzcyBt
X2FsbG93c0NlbGx1bGFyQWNjZXNzIHsgQWxsb3dzQ2VsbHVsYXJBY2Nlc3M6OlllcyB9OworICAg
IFN0cmluZyBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjsKKyAgICBTdHJpbmcg
bV9zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXI7CisgICAgYm9vbCBtX2FsbG93
ZWRUb1NldEFwcGxpY2F0aW9uSWRlbnRpZmllcnMgeyB0cnVlIH07CiAKICNpZiBIQVZFKFNFQ19L
RVlfUFJPWFkpCiAgICAgVmVjdG9yPFJlZjxTZWNLZXlQcm94eVN0b3JlPj4gbV9zZWNLZXlQcm94
eVN0b3JlczsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29h
L1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L1VJ
UHJvY2Vzcy9XZWJzaXRlRGF0YS9Db2NvYS9XZWJzaXRlRGF0YVN0b3JlQ29jb2EubW0JKHJldmlz
aW9uIDI0MjIzNCkKKysrIFNvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1dlYnNpdGVEYXRhL0NvY29h
L1dlYnNpdGVEYXRhU3RvcmVDb2NvYS5tbQkod29ya2luZyBjb3B5KQpAQCAtOTQsOCArOTQsOCBA
QCBXZWJzaXRlRGF0YVN0b3JlUGFyYW1ldGVycyBXZWJzaXRlRGF0YVN0CiAgICAgICAgIG1fYm91
bmRJbnRlcmZhY2VJZGVudGlmaWVyLAogICAgICAgICBtX2FsbG93c0NlbGx1bGFyQWNjZXNzLAog
ICAgICAgICBtX3Byb3h5Q29uZmlndXJhdGlvbiwKLSAgICAgICAgbV9jb25maWd1cmF0aW9uLT5z
b3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIoKSwKLSAgICAgICAgbV9jb25maWd1cmF0
aW9uLT5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIoKSwKKyAgICAgICAgbV9z
b3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIsCisgICAgICAgIG1fc291cmNlQXBwbGlj
YXRpb25TZWNvbmRhcnlJZGVudGlmaWVyLAogICAgICAgICBzaG91bGRMb2dDb29raWVJbmZvcm1h
dGlvbiwKICAgICAgICAgU2Vjb25kcyB7IFtkZWZhdWx0cyBpbnRlZ2VyRm9yS2V5OldlYktpdE5l
dHdvcmtMb2FkVGhyb3R0bGVMYXRlbmN5TWlsbGlzZWNvbmRzRGVmYXVsdHNLZXldIC8gMTAwMC4g
fSwKICAgICAgICAgV1RGTW92ZShodHRwUHJveHkpLApAQCAtMTA0LDYgKzEwNCw3IEBAIFdlYnNp
dGVEYXRhU3RvcmVQYXJhbWV0ZXJzIFdlYnNpdGVEYXRhU3QKICAgICAgICAgV1RGTW92ZShyZXNv
dXJjZUxvYWRTdGF0aXN0aWNzRGlyZWN0b3J5SGFuZGxlKSwKICAgICAgICAgZmFsc2UKICAgICB9
OworICAgIGZpbmFsaXplQXBwbGljYXRpb25JZGVudGlmaWVycygpOwogCiAgICAgYXV0byBjb29r
aWVGaWxlID0gcmVzb2x2ZWRDb29raWVTdG9yYWdlRmlsZSgpOwogCkBAIC0xMTUsOCArMTE2LDgg
QEAgV2Vic2l0ZURhdGFTdG9yZVBhcmFtZXRlcnMgV2Vic2l0ZURhdGFTdAogICAgIH0KIAogICAg
IHBhcmFtZXRlcnMudWlQcm9jZXNzQ29va2llU3RvcmFnZUlkZW50aWZpZXIgPSBtX3VpUHJvY2Vz
c0Nvb2tpZVN0b3JhZ2VJZGVudGlmaWVyOwotICAgIHBhcmFtZXRlcnMubmV0d29ya1Nlc3Npb25Q
YXJhbWV0ZXJzLnNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciA9IG1fY29uZmlndXJh
dGlvbi0+c291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyKCk7Ci0gICAgcGFyYW1ldGVy
cy5uZXR3b3JrU2Vzc2lvblBhcmFtZXRlcnMuc291cmNlQXBwbGljYXRpb25TZWNvbmRhcnlJZGVu
dGlmaWVyID0gbV9jb25maWd1cmF0aW9uLT5zb3VyY2VBcHBsaWNhdGlvblNlY29uZGFyeUlkZW50
aWZpZXIoKTsKKyAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VB
cHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIgPSBtX3NvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRl
bnRpZmllcjsKKyAgICBwYXJhbWV0ZXJzLm5ldHdvcmtTZXNzaW9uUGFyYW1ldGVycy5zb3VyY2VB
cHBsaWNhdGlvblNlY29uZGFyeUlkZW50aWZpZXIgPSBtX3NvdXJjZUFwcGxpY2F0aW9uU2Vjb25k
YXJ5SWRlbnRpZmllcjsKIAogICAgIHBhcmFtZXRlcnMucGVuZGluZ0Nvb2tpZXMgPSBjb3B5VG9W
ZWN0b3IobV9wZW5kaW5nQ29va2llcyk7CiAKSW5kZXg6IFRvb2xzL0NoYW5nZUxvZwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0MjI5MCkKKysrIFRvb2xzL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE5LTAzLTAxICBBbGV4IENo
cmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgQWRkIHNldHRl
cnMgb24gV0tXZWJzaXRlRGF0YVN0b3JlIGZvciBzb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50
aWZpZXIgYW5kIHNvdXJjZUFwcGxpY2F0aW9uU2Vjb25kYXJ5SWRlbnRpZmllcgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk1MjI5CisgICAgICAgIDxy
ZGFyOi8vcHJvYmxlbS80ODUyMDM2Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBDaHJpcyBEdW1l
ei4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Q29jb2EvV2Vic2l0ZURh
dGFTdG9yZUN1c3RvbVBhdGhzLm1tOgorICAgICAgICAoVEVTVCk6CisKIDIwMTktMDMtMDEgIERv
biBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255LmNvbT4KIAogICAgICAgICBbV2luQ2Fpcm9d
IEVuYWJsZSBzZXJ2aWNlIHdvcmtlcgpJbmRleDogVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9X
ZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3VzdG9tUGF0aHMubW0KPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXRDb2NvYS9XZWJzaXRlRGF0YVN0b3JlQ3Vz
dG9tUGF0aHMubW0JKHJldmlzaW9uIDI0MjIzNCkKKysrIFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Q29jb2EvV2Vic2l0ZURhdGFTdG9yZUN1c3RvbVBhdGhzLm1tCSh3b3JraW5nIGNv
cHkpCkBAIC0yOCw2ICsyOCw3IEBACiAjaW1wb3J0ICJQbGF0Zm9ybVV0aWxpdGllcy5oIgogI2lt
cG9ydCAiVGVzdC5oIgogI2ltcG9ydCAiVGVzdE5hdmlnYXRpb25EZWxlZ2F0ZS5oIgorI2ltcG9y
dCAiVGVzdFdLV2ViVmlldy5oIgogI2ltcG9ydCA8V2ViS2l0L1dLUHJlZmVyZW5jZXNSZWYuaD4K
ICNpbXBvcnQgPFdlYktpdC9XS1Byb2Nlc3NQb29sUHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0
L1dLVXNlckNvbnRlbnRDb250cm9sbGVyUHJpdmF0ZS5oPgpAQCAtNDUyLDQgKzQ1MywyOSBAQCBU
RVNUKFdlYktpdCwgRG9Mb2FkV2l0aE5vbkRlZmF1bHREYXRhU3RvCiAgICAgW3dlYlZpZXcgX3Rl
c3Rfd2FpdEZvckRpZEZpbmlzaE5hdmlnYXRpb25dOwogfQogCitURVNUKFdlYktpdCwgQXBwbGlj
YXRpb25JZGVudGlmaWVycykKK3sKKyAgICBhdXRvIHdlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0
aW9uID0gYWRvcHROUyhbW19XS1dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uIGFsbG9jXSBp
bml0XSk7CisgICAgW3dlYnNpdGVEYXRhU3RvcmVDb25maWd1cmF0aW9uIHNldFNvdXJjZUFwcGxp
Y2F0aW9uQnVuZGxlSWRlbnRpZmllcjpAInRlc3RpZGVudGlmaWVyIl07CisKKyAgICBhdXRvIHdl
YlZpZXdDb25maWd1cmF0aW9uID0gYWRvcHROUyhbW1dLV2ViVmlld0NvbmZpZ3VyYXRpb24gYWxs
b2NdIGluaXRdKTsKKyAgICBhdXRvIHdlYnNpdGVEYXRhU3RvcmUgPSBbW1tXS1dlYnNpdGVEYXRh
U3RvcmUgYWxsb2NdIF9pbml0V2l0aENvbmZpZ3VyYXRpb246d2Vic2l0ZURhdGFTdG9yZUNvbmZp
Z3VyYXRpb24uZ2V0KCldIGF1dG9yZWxlYXNlXTsKKyAgICBFWFBFQ1RfVFJVRShbd2Vic2l0ZURh
dGFTdG9yZS5fc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVudGlmaWVyIGlzRXF1YWxUb1N0cmlu
ZzpAInRlc3RpZGVudGlmaWVyIl0pOworICAgIFt3ZWJzaXRlRGF0YVN0b3JlIF9zZXRTb3VyY2VB
cHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXI6QCJvdGhlcmlkZW50aWZpZXIiXTsKKworICAgIFt3
ZWJWaWV3Q29uZmlndXJhdGlvbiBzZXRXZWJzaXRlRGF0YVN0b3JlOndlYnNpdGVEYXRhU3RvcmVd
OworICAgIGF1dG8gd2ViVmlldyA9IGFkb3B0TlMoW1tUZXN0V0tXZWJWaWV3IGFsbG9jXSBpbml0
V2l0aEZyYW1lOk5TTWFrZVJlY3QoMCwgMCwgODAwLCA2MDApIGNvbmZpZ3VyYXRpb246d2ViVmll
d0NvbmZpZ3VyYXRpb24uZ2V0KCldKTsKKyAgICBbd2ViVmlldyBzeW5jaHJvbm91c2x5TG9hZFRl
c3RQYWdlTmFtZWQ6QCJzaW1wbGUiXTsKKyAgICAKKyAgICBSZXRhaW5QdHI8TlNFeGNlcHRpb24+
IGV4Y2VwdGlvbjsKKyAgICBAdHJ5IHsKKyAgICAgICAgW3dlYnNpdGVEYXRhU3RvcmUgX3NldFNv
dXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllcjpAInNldHRpbmdTaG91bGRGYWlsTm93Il07
CisgICAgfSBAY2F0Y2goTlNFeGNlcHRpb24gKmNhdWdodCkgeworICAgICAgICBleGNlcHRpb24g
PSBjYXVnaHQ7CisgICAgfQorICAgIEVYUEVDVF9UUlVFKFtbZXhjZXB0aW9uIHJlYXNvbl0gaXNF
cXVhbFRvU3RyaW5nOkAiX3NldFNvdXJjZUFwcGxpY2F0aW9uQnVuZGxlSWRlbnRpZmllciBjYW5u
b3QgYmUgY2FsbGVkIGFmdGVyIG5ldHdvcmtpbmcgaGFzIGJlZ3VuIl0pOworICAgIEVYUEVDVF9U
UlVFKFt3ZWJzaXRlRGF0YVN0b3JlLl9zb3VyY2VBcHBsaWNhdGlvbkJ1bmRsZUlkZW50aWZpZXIg
aXNFcXVhbFRvU3RyaW5nOkAib3RoZXJpZGVudGlmaWVyIl0pOworICAgIEVYUEVDVF9UUlVFKFtb
d2Vic2l0ZURhdGFTdG9yZUNvbmZpZ3VyYXRpb24gc291cmNlQXBwbGljYXRpb25CdW5kbGVJZGVu
dGlmaWVyXSBpc0VxdWFsVG9TdHJpbmc6QCJ0ZXN0aWRlbnRpZmllciJdKTsKK30KKwogI2VuZGlm
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>