<?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>138351</bug_id>
          
          <creation_ts>2014-11-03 22:23:47 -0800</creation_ts>
          <short_desc>Add button and enable optimized fullscreen.</short_desc>
          <delta_ts>2014-12-03 11:40:20 -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>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>iPhone / iPad</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Jones">jeremyj-wk</reporter>
          <assigned_to name="Jeremy Jones">jeremyj-wk</assigned_to>
          <cc>buildbot</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>jer.noble</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1045997</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-03 22:23:47 -0800</bug_when>
    <thetext>Add button and enable optimized fullscreen.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1045998</commentid>
    <comment_count>1</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-03 22:24:48 -0800</bug_when>
    <thetext>rdar://problem/18518262</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046004</commentid>
    <comment_count>2</comment_count>
      <attachid>240914</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-03 23:04:26 -0800</bug_when>
    <thetext>Created attachment 240914
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046074</commentid>
    <comment_count>3</comment_count>
      <attachid>240914</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2014-11-04 08:11:19 -0800</bug_when>
    <thetext>Comment on attachment 240914
Patch

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

You might want to put the WKSI parts, along with an updated library, into a separate patch.

&gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:330
&gt; +        if (event.scale &gt; 1.2 || event.scale &lt; 0.8)

Nit: these should be constants

&gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:343
&gt; +        if (velocity &lt; 2 || event.scale &lt; 1.25)

Ditto.

&gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:366
&gt; +                    if (now - this.lastDoubleTouchTime &lt; 300) {

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046127</commentid>
    <comment_count>4</comment_count>
      <attachid>240936</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-04 11:44:51 -0800</bug_when>
    <thetext>Created attachment 240936
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046153</commentid>
    <comment_count>5</comment_count>
      <attachid>240943</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-04 13:07:08 -0800</bug_when>
    <thetext>Created attachment 240943
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046230</commentid>
    <comment_count>6</comment_count>
      <attachid>240967</attachid>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-04 15:41:22 -0800</bug_when>
    <thetext>Created attachment 240967
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046284</commentid>
    <comment_count>7</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-04 16:45:54 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 240914 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=240914&amp;action=review
&gt; 
&gt; You might want to put the WKSI parts, along with an updated library, into a
&gt; separate patch.

WKSI checked in.

&gt; 
&gt; &gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:330
&gt; &gt; +        if (event.scale &gt; 1.2 || event.scale &lt; 0.8)
&gt; 
&gt; Nit: these should be constants

Done

&gt; 
&gt; &gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:343
&gt; &gt; +        if (velocity &lt; 2 || event.scale &lt; 1.25)
&gt; 
&gt; Ditto.

Done.

&gt; 
&gt; &gt; Source/WebCore/Modules/mediacontrols/mediaControlsiOS.js:366
&gt; &gt; +                    if (now - this.lastDoubleTouchTime &lt; 300) {
&gt; 
&gt; Ditto.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1046318</commentid>
    <comment_count>8</comment_count>
    <who name="Jeremy Jones">jeremyj-wk</who>
    <bug_when>2014-11-04 17:37:02 -0800</bug_when>
    <thetext>Committed r175596</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1052233</commentid>
    <comment_count>9</comment_count>
      <attachid>240967</attachid>
    <who name="Jon Lee">jonlee</who>
    <bug_when>2014-12-03 11:40:20 -0800</bug_when>
    <thetext>Comment on attachment 240967
Patch

Removing r? to remove from the review queue</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240914</attachid>
            <date>2014-11-03 23:04:26 -0800</date>
            <delta_ts>2014-11-04 11:44:49 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138351-20141103230435.patch</filename>
            <type>text/plain</type>
            <size>25534</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQ4MmRjNDE5MjBiM2Vi
YWZjYzg1NzFhYjA0NWI1ZmJjY2ZkYzA5My4uMTlmNDUzMGRkZDhmMjg3ZDc4ODEyZmNmNmJmNTZj
OWUzY2I4OTcxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE0LTExLTAzICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBl
bmFibGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uIHRvIGpz
IG1lZGlhIGVsZW1lbnQgY29udHJvbHMuIFJlbW92ZSAjaWYgY29uZGl0aW9uYWwgCisgICAgICAg
IGFuZCB1c2Ugb3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUgZmVhdHVyZSBh
dCBydW50aW1lCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sc0hvc3Q6OmVudGVyRnVs
bHNjcmVlbk9wdGltaXplZCk6IGVuYWJsZQorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
c0hvc3Q6Om9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOiBhZGRlZAorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oOiBhZGQgb3B0aW1pemVkRnVs
bHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5pZGw6IGRpdHRvCisgICAgICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21l
ZGlhQ29udHJvbHNBcHBsZS5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAqIE1vZHVs
ZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanM6CisgICAgICAgIChDb250cm9s
bGVyLnByb3RvdHlwZS5jcmVhdGVDb250cm9scyk6IGFkZCBidXR0b24KKyAgICAgICAgKENvbnRy
b2xsZXIucHJvdG90eXBlLmhhbmRsZVJlYWR5U3RhdGVDaGFuZ2UpOiB1cGRhdGUgYnV0dG9uCisg
ICAgICAgIChDb250cm9sbGVyLnByb3RvdHlwZS51cGRhdGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uKTogYWRkZWQKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9s
c2lPUy5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6
ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uKTogYWRkZWQKKyAgICAgICAg
KHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRv
bjphY3RpdmUpOiBhZGRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmpzOgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuY3JlYXRlQ29u
dHJvbHMpOiBsaXN0ZW4gZm9yIGV2ZW50cyBmcm9tIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24K
KyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmNvbmZpZ3VyZUlubGluZUNvbnRyb2xz
KTogYWRkIGJ1dHRvbiBmb3Igbm9uLWF1ZGlvIHdoZW4gc3VwcG9ydGVkLgorICAgICAgICAoQ29u
dHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2UpOiAyLWZpbmdlciBk
b3VibGUtdGFwIGdlc3R1cmUgZm9yIG9wdGltaXplZCBmdWxsc2NyZWVuCisgICAgICAgIChDb250
cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVXcmFwcGVyVG91Y2hTdGFydCk6IGRpdHRvCisgICAg
ICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uQ2xpY2tlZCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5k
bGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hTdGFydCk6IGFkZGVkIAorICAgICAgICAoQ29udHJv
bGxlcklPUy5wcm90b3R5cGUuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kKTogYWRk
ZWQKKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmhhbmRsZU9wdGltaXplZEZ1bGxz
Y3JlZW5Ub3VjaENhbmNlbCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlw
ZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hTdGFydCk6IGZpeCB0eXBvCisgICAgICAg
IChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hF
bmQpOiBmaXggdHlwbworICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlU3Rh
cnRQbGF5YmFja0J1dHRvblRvdWNoQ2FuY2VsKTogZml4IHR5cG8KKyAgICAgICAgKiBXZWJDb3Jl
LmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlP
Uy5oOiBhZGRlZCB3a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBs
YXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tOiBhZGRlZCB3a0lzT3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4pOiBlbmFibGUgZmVhdHVyZQorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmV4aXRGdWxsc2NyZWVuKTogZW5h
YmxlIGZlYXR1cmUKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpj
bGVhbnVwRnVsbHNjcmVlbik6IG9ubHkgcmVxdWVzdCBleGl0IHdoZW4gZW50ZXJlZCBhbmQgbm90
IHJlcXVlc3RlZCBleGl0CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbik6IGRpdHRvCisKIDIwMTQtMTEtMDMgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTm9uLWZhc3Qg
c2Nyb2xsYWJsZSByZWdpb24gb3ZlcmxheSBvZmZzZXRzIHRoZSBvdmVybGF5IGJ5IHRvcENvbnRl
bnRJbnNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGU2MWQxMWRiOWE0NDg0MzlmNDlkZjNhZTIzOTkz
OTVkYTMzZGUxZmIuLjlhMjM0ZjhmMDNhNGQwNjQ1NjExMDY3ZmQxOTkyZGRiNGM3MjNjM2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0xMS0wMyAgSmVyZW15IEpvbmVz
ICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGJ1dHRvbiBhbmQgZW5hYmxlIG9w
dGltaXplZCBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM4MzUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIElzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUg
dGhlIGZlYXR1cmUgb25seSB3aGVyZSBhcHByb3ByaWF0ZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKTogYWRkZWQKKwogMjAxNC0xMS0wMyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1
ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3NTQw
NiwgcjE3NTQxMywgYW5kIHIxNzU0MjMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDZkYzFkZjA0ZTNhYTEyMjYx
OWE0NTE5ZjZlMWRiOWI0ZDRlNzM4Yi4uOTMzMDcwZTU2MmU5ZjVlOTdlNDM4YzQ0MGFhODFjZDhi
MjljY2I0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTExLTAzICBKZXJlbXkg
Sm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBlbmFi
bGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkIHRvIGVu
YWJsZSB0aGUgZmVhdHVyZSBvbmx5IHdoZXJlIGFwcHJvcHJpYXRlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tOgorICAgICAg
ICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOiBhZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVu
U3VwcG9ydGVkCisKIDIwMTQtMTEtMDMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CiAKICAgICAgICAgRXhwb3NlIHZpc2libGVEZWJ1Z092ZXJsYXlSZWdpb25zIHByZWYg
dmlhIHRoZSBXSzIgQyBTUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCmluZGV4IGViMzAyZjQwZWQ2OTk2
NDFmNDU1ZTYxMTk1YmY4YTc3ZTJiMTI2MzcuLjg5NThiMjA1NGVmNzA2ZDI0YTQwZjg0ZmVjMmQ2
ZmFhMmIzNGZjZGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250
cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcApAQCAtMTkwLDkgKzE5MCwxMiBAQCB2
b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpleGl0ZWRGdWxsc2NyZWVuKCkKICAgICAKIHZvaWQgTWVk
aWFDb250cm9sc0hvc3Q6OmVudGVyRnVsbHNjcmVlbk9wdGltaXplZCgpCiB7Ci0jaWYgRU5BQkxF
KE9QVElNSVpFRF9GVUxMU0NSRUVOKQogICAgIG1fbWVkaWFFbGVtZW50LT5lbnRlckZ1bGxzY3Jl
ZW5PcHRpbWl6ZWQoKTsKLSNlbmRpZgorfQorICAgIAorYm9vbCBNZWRpYUNvbnRyb2xzSG9zdDo6
b3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCgpCit7CisgICAgcmV0dXJuIHdrSXNPcHRpbWl6
ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKCk7CiB9CiAKIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OnVw
ZGF0ZUNhcHRpb25EaXNwbGF5U2l6ZXMoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmggYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaAppbmRleCAxYmVhMzFlOWM0
ZTY4YzgxNTFiM2MxYzYyMTdjM2JiZDE3YTcwNDA5Li4zMDUwZTI3OGVkNzI4ODM3YTM0ZmM0ZDAz
YzBkZGQ0MzM2MmEwNjc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaApAQCAtNzEsNiArNzEsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBlbnRlcmVkRnVsbHNjcmVlbigpOwogICAgIHZvaWQgZXhpdGVkRnVsbHNj
cmVlbigpOwogICAgIHZvaWQgZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7CisgICAgYm9vbCBv
cHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKCk7CiAKICAgICBTdHJpbmcgZXh0ZXJuYWxEZXZp
Y2VEaXNwbGF5TmFtZSgpIGNvbnN0OwogICAgIFN0cmluZyBleHRlcm5hbERldmljZVR5cGUoKSBj
b25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9N
ZWRpYUNvbnRyb2xzSG9zdC5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJv
bHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCmluZGV4IDhkZjVlODhiODhlMmZkNjA0OWJhMjQ4ODA2
Mzg3Y2E2OGFjY2EwZGEuLmI4ZTliZjgyZWE4MTY2YjlhMGE5NmEzMTk1OWJkOTRiYjljODcwYmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xz
L01lZGlhQ29udHJvbHNIb3N0LmlkbApAQCAtNTYsNCArNTYsNSBAQCBlbnVtIERldmljZVR5cGUg
ewogICAgIHZvaWQgZW50ZXJlZEZ1bGxzY3JlZW4oKTsKICAgICB2b2lkIGV4aXRlZEZ1bGxzY3Jl
ZW4oKTsKICAgICB2b2lkIGVudGVyRnVsbHNjcmVlbk9wdGltaXplZCgpOworICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBib29sZWFuIG9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQ7CiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJv
bHNBcHBsZS5jc3MgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFD
b250cm9sc0FwcGxlLmNzcwppbmRleCBiMzExNTI0MTQ4Y2NlNDFmZTM5MTAyYzE5MTkzM2VjMWQ2
MjdiMDA5Li45NzI4MjEyODc0NTBlMjU3ZThiMGUyZTZhYTk0NTJiYTkxNjI3ZjQ5IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0Fw
cGxlLmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFD
b250cm9sc0FwcGxlLmNzcwpAQCAtMzg5LDYgKzM4OSwxMSBAQCB2aWRlbzo6LXdlYmtpdC1tZWRp
YS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbi5leGl0LAogYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24uZXhpdCB7CiAgICAgYmFja2dyb3VuZC1pbWFnZTog
dXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAw
MC9zdmciIHZpZXdCb3g9IjAgMCAxNSAxNSIgdHJhbnNmb3JtPSJyb3RhdGUoOTAsMCwwKSI+PGxp
bmVhckdyYWRpZW50IGlkPSJncmFkaWVudCIgeDI9IjAiIHkyPSIxMDAlIiBncmFkaWVudFVuaXRz
PSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSJyZ2IoMjE2LCAy
MTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9IjAuNDM3NSIgc3RvcC1jb2xvcj0icmdiKDIxNiwgMjE2
LCAyMTYpIi8+PHN0b3Agb2Zmc2V0PSIwLjQzNzUiIHN0b3AtY29sb3I9InJnYigyMDgsIDIwOCwg
MjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAyMDgsIDIwOCki
Lz48c3RvcCBvZmZzZXQ9IjAuNSIgc3RvcC1jb2xvcj0icmdiKDIwMCwgMjAwLCAyMDApIi8+PHN0
b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAyMDgsIDIwOCkiLz48L2xpbmVhckdy
YWRpZW50PjxwYXRoIGQ9Ik0gNyw4IG0gMCw2IC0yLC0yIC0yLDIgYyAwLDAgLTEsMSAtMiwwIC0x
LC0xIDAsLTIgMCwtMiBsIDIsLTIgLTIsLTIgNiwwIHoiIHN0eWxlPSJmaWxsOnVybCgjZ3JhZGll
bnQpICIvPjxwYXRoIGQ9Ik0gOCw3IG0gMCwtNiAyLDIgMiwtMiBjIDAsMCAxLC0xIDIsMCAxLDEg
MCwyIDAsMiBsIC0yLDIgMiwyIC02LDAgeiIgc3R5bGU9ImZpbGw6dXJsKCNncmFkaWVudCkgIi8+
PC9zdmc+Jyk7CiB9Cit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6ZWQtZnVs
bHNjcmVlbi1idXR0b24sCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6ZWQt
ZnVsbHNjcmVlbi1idXR0b24geworICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFn
ZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94
PSIwIDAgMTUgMTUiIHRyYW5zZm9ybT0icm90YXRlKDkwLDAsMCkiPjxsaW5lYXJHcmFkaWVudCBp
ZD0iZ3JhZGllbnQiIHgyPSIwIiB5Mj0iMTAwJSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25V
c2UiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0icmdiKDIxNiwgMjE2LCAyMTYpIi8+PHN0
b3Agb2Zmc2V0PSIwLjQzNzUiIHN0b3AtY29sb3I9InJnYigyMTYsIDIxNiwgMjE2KSIvPjxzdG9w
IG9mZnNldD0iMC40Mzc1IiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAyMDgsIDIwOCkiLz48c3RvcCBv
ZmZzZXQ9IjAuNSIgc3RvcC1jb2xvcj0icmdiKDIwOCwgMjA4LCAyMDgpIi8+PHN0b3Agb2Zmc2V0
PSIwLjUiIHN0b3AtY29sb3I9InJnYigyMDAsIDIwMCwgMjAwKSIvPjxzdG9wIG9mZnNldD0iMSIg
c3RvcC1jb2xvcj0icmdiKDIwOCwgMjA4LCAyMDgpIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBk
PSJNIDcsOCBtIDAsNiAtMiwtMiAtMiwyIGMgMCwwIC0xLDEgLTIsMCAtMSwtMSAwLC0yIDAsLTIg
bCAyLC0yIC0yLC0yIDYsMCB6IiBzdHlsZT0iZmlsbDp1cmwoI2dyYWRpZW50KSAiLz48cGF0aCBk
PSJNIDgsNyBtIDAsLTYgMiwyIDIsLTIgYyAwLDAgMSwtMSAyLDAgMSwxIDAsMiAwLDIgbCAtMiwy
IDIsMiAtNiwwIHoiIHN0eWxlPSJmaWxsOnVybCgjZ3JhZGllbnQpICIvPjwvc3ZnPicpOworICAg
IG1hcmdpbjogMCA3cHg7Cit9CiB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1zdGF0dXMt
ZGlzcGxheSwKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXN0YXR1cy1kaXNwbGF5IHsK
ICAgICBjdXJzb3I6IGRlZmF1bHQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmpzIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcwppbmRleCA2N2Q5MmExNTYy
NDU5OWJiNWQ0MGY3ODU1YTQxNGFiNTgzZjlkZGVlLi44YTE4YWFlMzVjODg2OTA0MTY1NDJkOTQw
MzhmYTMwNWY1MzU0MDJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanMKQEAgLTM5NSw2ICszOTUsMTEg
QEAgQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uc2V0
QXR0cmlidXRlKCdwc2V1ZG8nLCAnLXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1
dHRvbicpOwogICAgICAgICBmdWxsc2NyZWVuQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1sYWJl
bCcsIHRoaXMuVUlTdHJpbmcoJ0Rpc3BsYXkgRnVsbCBTY3JlZW4nKSk7CiAgICAgICAgIHRoaXMu
bGlzdGVuRm9yKGZ1bGxzY3JlZW5CdXR0b24sICdjbGljaycsIHRoaXMuaGFuZGxlRnVsbHNjcmVl
bkJ1dHRvbkNsaWNrZWQpOworCisgICAgICAgIHZhciBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9u
ID0gdGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uID0gZG9jdW1lbnQuY3Jl
YXRlRWxlbWVudCgnYnV0dG9uJyk7CisgICAgICAgIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24u
c2V0QXR0cmlidXRlKCdwc2V1ZG8nLCAnLXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6ZWQt
ZnVsbHNjcmVlbi1idXR0b24nKTsKKyAgICAgICAgb3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5z
ZXRBdHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCB0aGlzLlVJU3RyaW5nKCdEaXNwbGF5IE9wdGltaXpl
ZCBGdWxsIFNjcmVlbicpKTsKKyAgICAgICAgdGhpcy5saXN0ZW5Gb3Iob3B0aW1pemVkRnVsbHNj
cmVlbkJ1dHRvbiwgJ2NsaWNrJywgdGhpcy5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9u
Q2xpY2tlZCk7CiAgICAgfSwKIAogICAgIHNldENvbnRyb2xzVHlwZTogZnVuY3Rpb24odHlwZSkK
QEAgLTU1NCw2ICs1NTksNyBAQCBDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhp
cy51cGRhdGVDYXB0aW9uQnV0dG9uKCk7CiAgICAgICAgIHRoaXMudXBkYXRlQ2FwdGlvbkNvbnRh
aW5lcigpOwogICAgICAgICB0aGlzLnVwZGF0ZUZ1bGxzY3JlZW5CdXR0b24oKTsKKyAgICAgICAg
dGhpcy51cGRhdGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uKCk7CiAgICAgICAgIHRoaXMudXBk
YXRlUHJvZ3Jlc3MoKTsKICAgICB9LAogCkBAIC04NTksNiArODY1LDExIEBAIENvbnRyb2xsZXIu
cHJvdG90eXBlID0gewogICAgICAgICB0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24uY2xh
c3NMaXN0LnRvZ2dsZSh0aGlzLkNsYXNzTmFtZXMuaGlkZGVuLCAhdGhpcy52aWRlby53ZWJraXRT
dXBwb3J0c0Z1bGxzY3JlZW4pOwogICAgIH0sCiAKKyAgICB1cGRhdGVPcHRpbWl6ZWRGdWxsc2Ny
ZWVuQnV0dG9uOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0aGlzLmNvbnRyb2xzLm9wdGlt
aXplZEZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LnRvZ2dsZSh0aGlzLkNsYXNzTmFtZXMuaGlk
ZGVuLCAhdGhpcy52aWRlby53ZWJraXRTdXBwb3J0c0Z1bGxzY3JlZW4pOworICAgIH0sCisgICAg
CiAgICAgaGFuZGxlRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KQogICAg
IHsKICAgICAgICAgaWYgKHRoaXMuaXNGdWxsU2NyZWVuKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5jc3MgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5jc3MKaW5k
ZXggMTg4NTAwYTE2Y2NjOTAxZGUxYjQ3MTMwMzliN2RiYWQxNjk4OGQ1MC4uMGZkMDg2NjY5NDM1
ZWZjNzIyZGZjMDZiYzMzNTFhM2EwNjQ4Yzk5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNpT1MuY3NzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzaU9TLmNzcwpAQCAtMjA5
LDcgKzIwOSw5IEBAIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXN0YXJ0LXBsYXliYWNr
LWJ1dHRvbi5mYWlsZWQgewogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0
b24sCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiwKIHZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uLAotYXVkaW86Oi13ZWJraXQt
bWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24geworYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24sCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24sCithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24gewogICAgIC13ZWJraXQtYXBwZWFyYW5j
ZTogbm9uZTsKICAgICBkaXNwbGF5OiBibG9jazsKICAgICBwYWRkaW5nOiAwOwpAQCAtMjQxLDYg
KzI0MywxNCBAQCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRv
biB7CiAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNSA0NCI+PGcg
c3Ryb2tlPSJyZ2JhKDAsIDAsIDAsIDAuNCkiIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Ik0gMTAuNSwy
MC41IHYgLTUgaCA1IE0gMTAuNSwxNS41IGwgNSw1Ii8+PHBhdGggZD0iTSAyNC41LDI0LjUgdiA1
IGggLTUgTSAyNC41LDI5LjUgbCAtNSwtNSIvPjwvZz48L3N2Zz4nKTsKIH0KIAordmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uIHsKKyAgICB3
aWR0aDogMzVweDsKKyAgICBoZWlnaHQ6IDQ0cHg7CisgICAgYmFja2dyb3VuZC1zaXplOiAzNXB4
IDQ0cHg7CisgICAgb3BhY2l0eTogMC45OworICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0
YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2
aWV3Qm94PSIwIDAgMzUgNDQiPjxnIHN0cm9rZT0icmdiYSgwLCAwLCAwLCAwLjQpIiBmaWxsPSJu
b25lIj48cGF0aCBkPSJNIDEwLDE1IGggMTQgdiAxNCBoIC0xNCB2IC0xNCIvPjwvZz48L3N2Zz4n
KTsKK30KKwogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxheS1idXR0b24gewogICAg
IHdpZHRoOiA0MXB4OwogICAgIGhlaWdodDogNDRweDsKQEAgLTI2MSw2ICsyNzEsMTAgQEAgdmlk
ZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b246YWN0aXZlIHsKICAg
ICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM1IDQ0Ij48ZyBzdHJva2U9
IndoaXRlIiBmaWxsPSJub25lIj48cGF0aCBkPSJNIDEwLDIwIHYgLTUgaCA1IE0gMTAsMTUgbCA1
LDUiLz48cGF0aCBkPSJNIDI0LDI0IHYgNSBoIC01IE0gMjQsMjkgbCAtNSwtNSIvPjwvZz48L3N2
Zz4nKTsKIH0KIAordmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxz
Y3JlZW4tYnV0dG9uOmFjdGl2ZSB7CisgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmlt
YWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdC
b3g9IjAgMCAzNSA0NCI+PGcgc3Ryb2tlPSJ3aGl0ZSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTSAx
MCwxNSBoIDE0IHYgMTQgaCAtMTQgdiAtMTQiLz48L2c+PC9zdmc+Jyk7Cit9CisKIHZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lLAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtdGltZWxpbmUgewogICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzaU9T
LmpzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNp
T1MuanMKaW5kZXggZWQ1OGI0M2ZmZTY1ZTgzMjAyYmViZTFlYTY0MzZhYWQwZGZiOGE3NS4uNWJi
YWQ4OWI1YzliNGM0ODA5NDAwMDkzN2Y5OTg4NzdlZmMwOTUyMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNpT1MuanMKKysrIGIv
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNpT1MuanMK
QEAgLTE2Nyw2ICsxNjcsOSBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKICAgICAgICAg
dGhpcy5saXN0ZW5Gb3IodGhpcy5jb250cm9scy5mdWxsc2NyZWVuQnV0dG9uLCAndG91Y2hzdGFy
dCcsIHRoaXMuaGFuZGxlRnVsbHNjcmVlblRvdWNoU3RhcnQpOwogICAgICAgICB0aGlzLmxpc3Rl
bkZvcih0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24sICd0b3VjaGVuZCcsIHRoaXMuaGFu
ZGxlRnVsbHNjcmVlblRvdWNoRW5kKTsKICAgICAgICAgdGhpcy5saXN0ZW5Gb3IodGhpcy5jb250
cm9scy5mdWxsc2NyZWVuQnV0dG9uLCAndG91Y2hjYW5jZWwnLCB0aGlzLmhhbmRsZUZ1bGxzY3Jl
ZW5Ub3VjaENhbmNlbCk7CisgICAgICAgIHRoaXMubGlzdGVuRm9yKHRoaXMuY29udHJvbHMub3B0
aW1pemVkRnVsbHNjcmVlbkJ1dHRvbiwgJ3RvdWNoc3RhcnQnLCB0aGlzLmhhbmRsZU9wdGltaXpl
ZEZ1bGxzY3JlZW5Ub3VjaFN0YXJ0KTsKKyAgICAgICAgdGhpcy5saXN0ZW5Gb3IodGhpcy5jb250
cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLCAndG91Y2hlbmQnLCB0aGlzLmhhbmRsZU9w
dGltaXplZEZ1bGxzY3JlZW5Ub3VjaEVuZCk7CisgICAgICAgIHRoaXMubGlzdGVuRm9yKHRoaXMu
Y29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbiwgJ3RvdWNoY2FuY2VsJywgdGhpcy5o
YW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hDYW5jZWwpOwogICAgICAgICB0aGlzLnN0b3BM
aXN0ZW5pbmdGb3IodGhpcy5jb250cm9scy5wbGF5QnV0dG9uLCAnY2xpY2snLCB0aGlzLmhhbmRs
ZVBsYXlCdXR0b25DbGlja2VkKTsKICAgICB9LAogCkBAIC0yMDQsOCArMjA3LDExIEBAIENvbnRy
b2xsZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICAgICAgdGhpcy5jb250cm9scy50aW1lbGlu
ZUJveC5hcHBlbmRDaGlsZCh0aGlzLmNvbnRyb2xzLnRpbWVsaW5lKTsKICAgICAgICAgICAgIHRo
aXMuY29udHJvbHMudGltZWxpbmVCb3guYXBwZW5kQ2hpbGQodGhpcy5jb250cm9scy5yZW1haW5p
bmdUaW1lKTsKICAgICAgICAgfQotICAgICAgICBpZiAoIXRoaXMuaXNBdWRpbygpKQorICAgICAg
ICBpZiAoIXRoaXMuaXNBdWRpbygpKSB7CiAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLnBhbmVs
LmFwcGVuZENoaWxkKHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbik7CisgICAgICAgICAg
ICBpZiAodGhpcy5ob3N0Lm9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpCisgICAgICAgICAg
ICAgICAgdGhpcy5jb250cm9scy5wYW5lbC5hcHBlbmRDaGlsZCh0aGlzLmNvbnRyb2xzLm9wdGlt
aXplZEZ1bGxzY3JlZW5CdXR0b24pOworICAgICAgICB9CiAgICAgfSwKIAogICAgIGNvbmZpZ3Vy
ZUZ1bGxTY3JlZW5Db250cm9sczogZnVuY3Rpb24oKSB7CkBAIC0zMjAsNiArMzI2LDkgQEAgQ29u
dHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2U6IGZ1
bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgIGlmICghdGhpcy52aWRlby5jb250cm9scyB8fCB0aGlz
LmlzQXVkaW8oKSB8fCB0aGlzLmlzRnVsbFNjcmVlbigpIHx8IHRoaXMuZ2VzdHVyZVN0YXJ0VGlt
ZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuY29udHJvbHNUeXBlID09IENvbnRyb2xsZXJJT1MuU3Rh
cnRQbGF5YmFja0NvbnRyb2xzKQogICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAKKyAgICAg
ICAgaWYgKGV2ZW50LnNjYWxlID4gMS4yIHx8IGV2ZW50LnNjYWxlIDwgMC44KQorICAgICAgICAg
ICAgZGVsZXRlIHRoaXMubGFzdERvdWJsZVRvdWNoVGltZTsKIAogICAgICAgICBpZiAodGhpcy5t
b3N0UmVjZW50TnVtYmVyT2ZUYXJnZXR0ZWRUb3VjaGVzID09IDIgJiYgZXZlbnQuc2NhbGUgPj0g
MS4wKQogICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTsKQEAgLTMzMSwxNiArMzQw
LDExIEBAIENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogCiAgICAgICAgIHZhciB2ZWxvY2l0
eSA9IE1hdGguYWJzKGV2ZW50LnNjYWxlIC0gMSkgLyBkdXJhdGlvbjsKICAgICAgICAgCi0gICAg
ICAgIGlmICh2ZWxvY2l0eSA8IDIpCisgICAgICAgIGlmICh2ZWxvY2l0eSA8IDIgfHwgZXZlbnQu
c2NhbGUgPCAxLjI1KQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIGlmIChldmVudC5z
Y2FsZSA+PSAxLjI1KSB7Ci0gICAgICAgICAgICBkZWxldGUgdGhpcy5nZXN0dXJlU3RhcnRUaW1l
OwotICAgICAgICAgICAgdGhpcy52aWRlby53ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTsKLSAgICAg
ICAgfSBlbHNlIGlmIChldmVudC5zY2FsZSA8PSAwLjc1KSB7Ci0gICAgICAgICAgICBkZWxldGUg
dGhpcy5nZXN0dXJlU3RhcnRUaW1lOwotICAgICAgICAgICAgdGhpcy5ob3N0LmVudGVyRnVsbHNj
cmVlbk9wdGltaXplZCgpOwotICAgICAgICB9CisgICAgICAgIGRlbGV0ZSB0aGlzLmdlc3R1cmVT
dGFydFRpbWU7CisgICAgICAgIHRoaXMudmlkZW8ud2Via2l0RW50ZXJGdWxsc2NyZWVuKCk7CiAg
ICAgfSwKIAogICAgIGhhbmRsZUJhc2VHZXN0dXJlRW5kOiBmdW5jdGlvbihldmVudCkgewpAQCAt
MzUyLDcgKzM1NiwyMyBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAg
IHJldHVybjsKIAogICAgICAgICB0aGlzLm1vc3RSZWNlbnROdW1iZXJPZlRhcmdldHRlZFRvdWNo
ZXMgPSBldmVudC50YXJnZXRUb3VjaGVzLmxlbmd0aDsKLQorICAgICAgICAKKyAgICAgICAgaWYg
KHRoaXMuaG9zdC5vcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKSB7CisgICAgICAgICAgICBp
ZiAodGhpcy5tb3N0UmVjZW50TnVtYmVyT2ZUYXJnZXR0ZWRUb3VjaGVzID09IDIpIHsKKyAgICAg
ICAgICAgICAgICB2YXIgbm93ID0gbmV3IERhdGUoKTsKKyAgICAgICAgICAgICAgICBpZiAodGhp
cy5sYXN0RG91YmxlVG91Y2hUaW1lID09PSB1bmRlZmluZWQpIHsKKyAgICAgICAgICAgICAgICAg
ICAgdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lID0gbm93CisgICAgICAgICAgICAgICAgfSBlbHNl
IHsKKyAgICAgICAgICAgICAgICAgICAgaWYgKG5vdyAtIHRoaXMubGFzdERvdWJsZVRvdWNoVGlt
ZSA8IDMwMCkgeworICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHRoaXMubGFzdERvdWJs
ZVRvdWNoVGltZQorICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQo
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdC5lbnRlckZ1bGxzY3JlZW5PcHRp
bWl6ZWQoKTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAg
ICAgICB0aGlzLmxhc3REb3VibGVUb3VjaFRpbWUgPSBub3cKKyAgICAgICAgICAgICAgICB9Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KKyAgICAgICAgCiAgICAgICAgIGlmICh0aGlzLmNvbnRy
b2xzQXJlSGlkZGVuKCkpIHsKICAgICAgICAgICAgIHRoaXMuc2hvd0NvbnRyb2xzKCk7CiAgICAg
ICAgICAgICBpZiAodGhpcy5oaWRlVGltZXIpCkBAIC00MDcsMTIgKzQyNywzNiBAQCBDb250cm9s
bGVySU9TLnByb3RvdHlwZSA9IHsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwKIAorICAg
IGhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b25DbGlja2VkOiBmdW5jdGlvbihldmVudCkg
eworICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3JlZW4oKSkKKyAgICAgICAgICAgIHRoaXMudmlk
ZW8ud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhp
cy5ob3N0LmVudGVyRnVsbHNjcmVlbk9wdGltaXplZCgpOworICAgIH0sCisgICAgICAgIAorICAg
IGhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5Ub3VjaFN0YXJ0OiBmdW5jdGlvbigpIHsKKyAgICAg
ICAgdGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC5hZGQo
J2FjdGl2ZScpOworICAgIH0sCisgICAgICAgIAorICAgIGhhbmRsZU9wdGltaXplZEZ1bGxzY3Jl
ZW5Ub3VjaEVuZDogZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGhpcy5jb250cm9scy5vcHRp
bWl6ZWRGdWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOworICAgICAg
ICAKKyAgICAgICAgdGhpcy5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZCgp
OworICAgICAgICAKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfSwKKyAgICAgICAgCisgICAg
aGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoQ2FuY2VsOiBmdW5jdGlvbihldmVudCkgewor
ICAgICAgICB0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0
LnJlbW92ZSgnYWN0aXZlJyk7CisgICAgICAgIHJldHVybiB0cnVlOworICAgIH0sCisKICAgICBo
YW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hTdGFydDogZnVuY3Rpb24oZXZlbnQpIHsKLSAg
ICAgICAgdGhpcy5jb250cm9scy5mdWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC5hZGQoJ2FjdGl2
ZScpOworICAgICAgICB0aGlzLmNvbnRyb2xzLnN0YXJ0UGxheWJhY2tCdXR0b24uY2xhc3NMaXN0
LmFkZCgnYWN0aXZlJyk7CiAgICAgfSwKIAogICAgIGhhbmRsZVN0YXJ0UGxheWJhY2tCdXR0b25U
b3VjaEVuZDogZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgdGhpcy5jb250cm9scy5mdWxsc2Ny
ZWVuQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOworICAgICAgICB0aGlzLmNvbnRy
b2xzLnN0YXJ0UGxheWJhY2tCdXR0b24uY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJyk7CiAgICAg
ICAgIGlmICh0aGlzLnZpZGVvLmVycm9yKQogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKQEAg
LTQyMiw3ICs0NjYsNyBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKICAgICB9LAogCiAg
ICAgaGFuZGxlU3RhcnRQbGF5YmFja0J1dHRvblRvdWNoQ2FuY2VsOiBmdW5jdGlvbihldmVudCkg
ewotICAgICAgICB0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LnJlbW92
ZSgnYWN0aXZlJyk7CisgICAgICAgIHRoaXMuY29udHJvbHMuc3RhcnRQbGF5YmFja0J1dHRvbi5j
bGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgfSwK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgppbmRleCA5MmYzMDAwMDgxZjlhZDY2NzQ0OTA1YzBiNGI4NGFj
YzRkMmQ0MWEzLi43NGZhMjhlN2E3YTU4ZGRhMTYzYTY2MjljMjM0OGY1N2IxZWU3YmM4IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgpAQCAtMjg1OSw2ICsyODU5LDcgQEAgX3drR2V0VXNlckFnZW50CiBf
d2tHZXRWZW5kb3JOYW1lRm9yTmF2aWdhdG9yCiBfd2tHZXRWZXJ0aWNhbEdseXBoc0ZvckNoYXJh
Y3RlcnMKIF93a0lzR0IxODAzMENvbXBsaWFuY2VSZXF1aXJlZAorX3drSXNPcHRpbWl6ZWRGdWxs
c2NyZWVuU3VwcG9ydGVkCiBfd2tTZXRMYXllckNvbnRlbnRzU2NhbGUKICNlbmRpZgogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFj
ZUlPUy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZh
Y2VJT1MuaAppbmRleCAwMTQyZDIxMmViOGEyMjVhZjZkYjFmNGFiOTlkYmRhZjU0MTQ1YTI2Li45
OGI3Yzg4ZWRiMGRjYjMwMWU3ZjZkNGFmMzJiZWI5OWRiYzM1NDhmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLmgK
QEAgLTczLDQgKzczLDYgQEAgZXh0ZXJuIENGU3RyaW5nUmVmICgqd2tHZXRPU05hbWVGb3JVc2Vy
QWdlbnQpKHZvaWQpOwogZXh0ZXJuIENGU3RyaW5nUmVmICgqd2tHZXRQbGF0Zm9ybU5hbWVGb3JO
YXZpZ2F0b3IpKHZvaWQpOwogZXh0ZXJuIENGU3RyaW5nUmVmICgqd2tHZXRWZW5kb3JOYW1lRm9y
TmF2aWdhdG9yKSh2b2lkKTsKIAorZXh0ZXJuIGJvb2wgKCp3a0lzT3B0aW1pemVkRnVsbHNjcmVl
blN1cHBvcnRlZCkodm9pZCk7CisKICNlbmRpZiAvLyBXZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9T
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVt
SW50ZXJmYWNlSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0
ZW1JbnRlcmZhY2VJT1MubW0KaW5kZXggNDliYzJjZWIxOGJmNzlhNWVmYjA1N2Q3MTBiMGIyNDJm
OTc5YTU0My4uNDI3MzRjOTA4YjMzZjZkMzFkMmY1Yzk4ZDdlOWNkMzJmNTVjZmY5MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJ
T1MubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRl
cmZhY2VJT1MubW0KQEAgLTEzMCw2ICsxMzAsOCBAQCBXRUJDT1JFX0VYUE9SVCBDRlN0cmluZ1Jl
ZiAoKndrR2V0T1NOYW1lRm9yVXNlckFnZW50KSh2b2lkKTsKIFdFQkNPUkVfRVhQT1JUIENGU3Ry
aW5nUmVmICgqd2tHZXRQbGF0Zm9ybU5hbWVGb3JOYXZpZ2F0b3IpKHZvaWQpOwogV0VCQ09SRV9F
WFBPUlQgQ0ZTdHJpbmdSZWYgKCp3a0dldFZlbmRvck5hbWVGb3JOYXZpZ2F0b3IpKHZvaWQpOwog
CitXRUJDT1JFX0VYUE9SVCBCT09MICgqd2tJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQp
KHZvaWQpOworCiBXRUJDT1JFX0VYUE9SVCBpbnQgKCp3a0V4ZXJuYWxEZXZpY2VUeXBlRm9yUGxh
eWVyKShBVlBsYXllciAqKTsKIFdFQkNPUkVfRVhQT1JUIE5TU3RyaW5nICooKndrRXhlcm5hbERl
dmljZURpc3BsYXlOYW1lRm9yUGxheWVyKShBVlBsYXllciAqKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
LmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQuaAppbmRleCAzMDVmYWM3NTA5ZjMwMDVlYmRjZjBiMTljMWViMzZmYjFhNDRhMTEw
Li5kYzhiNDFjODYxYjAyZTc5YWRmYjQzYzg3ZTcyZWQ4YmVlNWEwYTViIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVu
SW50ZXJmYWNlQVZLaXQuaApAQCAtMTA0LDYgKzEwNCw3IEBAIHByb3RlY3RlZDoKICAgICBIVE1M
TWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlIG1fbW9kZTsKICAgICBib29sIG1fZXhp
dFJlcXVlc3RlZDsKICAgICBib29sIG1fZXhpdENvbXBsZXRlZDsKKyAgICBib29sIG1fZW50ZXJS
ZXF1ZXN0ZWQ7CiAKICAgICBXZWJBVlBsYXllckNvbnRyb2xsZXIgKnBsYXllckNvbnRyb2xsZXIo
KTsKICAgICAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQppbmRleCBiMWRiZjgzOGQ5NzM3
NTM2YjY4OWRjMTJhYWNkNTRkOTM4ZTkyNDE1Li4zZDM2YTRhNmE4YzY0Zjg5NjI4ZWQyYjVmYjkw
MTk1ZTAwYjc3ZTFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2Vi
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tCkBAIC04NjAsMTAg
Kzg2MCwxMCBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjplbnRlckZ1
bGxzY3JlZW4oKQogICAgIAogICAgIG1fZXhpdENvbXBsZXRlZCA9IGZhbHNlOwogICAgIG1fZXhp
dFJlcXVlc3RlZCA9IGZhbHNlOworICAgIG1fZW50ZXJSZXF1ZXN0ZWQgPSB0cnVlOwogICAgIAog
ICAgIGRpc3BhdGNoX2FzeW5jKGRpc3BhdGNoX2dldF9tYWluX3F1ZXVlKCksIF57CiAgICAgICAg
IFttX3ZpZGVvTGF5ZXJDb250YWluZXIgc2V0QmFja2dyb3VuZENvbG9yOltbZ2V0VUlDb2xvckNs
YXNzKCkgYmxhY2tDb2xvcl0gQ0dDb2xvcl1dOwotI2lmIEVOQUJMRShPUFRJTUlaRURfRlVMTFND
UkVFTikKICAgICAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxz
Y3JlZW5Nb2RlT3B0aW1pemVkKSB7CiAgICAgICAgICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxl
ciBzdGFydE9wdGltaXplZEZ1bGxzY3JlZW5XaXRoU3RhcnRDb21wbGV0aW9uSGFuZGxlcjpeKEJP
T0wgc3VjY2VzcywgTlNFcnJvciAqKSB7CiAgICAgICAgICAgICAgICAgCkBAIC04OTYsNyArODk2
LDYgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6ZW50ZXJGdWxsc2Ny
ZWVuKCkKICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICB9XTsKICAgICAgICAgfSBlbHNl
Ci0jZW5kaWYKICAgICAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1
bGxzY3JlZW5Nb2RlU3RhbmRhcmQpIHsKICAgICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9s
bGVyIGVudGVyRnVsbFNjcmVlbldpdGhDb21wbGV0aW9uSGFuZGxlcjpeKEJPT0wsIE5TRXJyb3Iq
KQogICAgICAgICAgICAgewpAQCAtOTQwLDEyICs5MzksMTAgQEAgdm9pZCBXZWJWaWRlb0Z1bGxz
Y3JlZW5JbnRlcmZhY2VBVktpdDo6ZXhpdEZ1bGxzY3JlZW4oV2ViQ29yZTo6SW50UmVjdCBmaW5h
bFJlY3QKICAgICAgICAgICAgIFttX3ZpZGVvTGF5ZXJDb250YWluZXIgc2V0VmlkZW9MYXllckdy
YXZpdHk6QVZWaWRlb0xheWVyR3Jhdml0eVJlc2l6ZUFzcGVjdF07CiAgICAgICAgIFtbbV9wbGF5
ZXJWaWV3Q29udHJvbGxlciB2aWV3XSBsYXlvdXRJZk5lZWRlZF07CiAgICAgICAgIAotI2lmIEVO
QUJMRShPUFRJTUlaRURfRlVMTFNDUkVFTikKICAgICAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVk
aWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkKSB7CiAgICAgICAgICAgICBb
bV93aW5kb3cgc2V0SGlkZGVuOk5PXTsKICAgICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9s
bGVyIHN0b3BPcHRpbWl6ZWRGdWxsc2NyZWVuXTsKICAgICAgICAgfSBlbHNlCi0jZW5kaWYKICAg
ICAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2Rl
U3RhbmRhcmQpIHsKICAgICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIGV4aXRGdWxs
U2NyZWVuV2l0aENvbXBsZXRpb25IYW5kbGVyOl4oQk9PTCwgTlNFcnJvciopIHsKICAgICAgICAg
ICAgICAgICBtX2V4aXRDb21wbGV0ZWQgPSB0cnVlOwpAQCAtMTAwMCw2ICs5OTcsNyBAQCB2b2lk
IFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpjbGVhbnVwRnVsbHNjcmVlbigpCiAg
ICAgICAgIFdlYlRocmVhZFJ1biheewogICAgICAgICAgICAgaWYgKG1fZnVsbHNjcmVlbkNoYW5n
ZU9ic2VydmVyKQogICAgICAgICAgICAgICAgIG1fZnVsbHNjcmVlbkNoYW5nZU9ic2VydmVyLT5k
aWRDbGVhbnVwRnVsbHNjcmVlbigpOworICAgICAgICAgICAgbV9lbnRlclJlcXVlc3RlZCA9IGZh
bHNlOwogICAgICAgICAgICAgcHJvdGVjdCA9IG51bGxwdHI7CiAgICAgICAgIH0pOwogICAgIH0p
OwpAQCAtMTAzMCw2ICsxMDI4LDkgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VB
VktpdDo6aW52YWxpZGF0ZSgpCiAKIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQ6OnJlcXVlc3RIaWRlQW5kRXhpdEZ1bGxzY3JlZW4oKQogeworICAgIGlmICghbV9lbnRlclJl
cXVlc3RlZCkKKyAgICAgICAgcmV0dXJuOworICAgIAogICAgIGlmIChtX21vZGUgPT0gSFRNTE1l
ZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZU9wdGltaXplZCkKICAgICAgICAgcmV0dXJu
OwogICAgIApAQCAtMTA0Myw3ICsxMDQ0LDcgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5JbnRl
cmZhY2VBVktpdDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbigpCiAgICAgICAgIH1dOwog
ICAgIH0pOwogCi0gICAgaWYgKG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwpCisgICAgaWYgKG1fdmlk
ZW9GdWxsc2NyZWVuTW9kZWwgJiYgIW1fZXhpdFJlcXVlc3RlZCkKICAgICAgICAgbV92aWRlb0Z1
bGxzY3JlZW5Nb2RlbC0+cmVxdWVzdEV4aXRGdWxsc2NyZWVuKCk7CiB9CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbSBi
L1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQpp
bmRleCA4MWMzZjA5ZmY1OWVhMTA0ZGQwMzQ4NGYxYTAyZjAzODJlZmUwMGFkLi5mMjI5ZWVmMTY4
NzQ4Mjc0ZTk5N2Y0YTJiMjBiODY3ZGVjNTQ2NjI3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KKysrIGIvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCkBAIC0xMzEsNiAr
MTMxLDcgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3RlbUludGVyZmFjZSh2b2lkKQogICAgIElOSVQo
R2V0QXZhaWxhYmxlU2NyZWVuU2l6ZSk7CiAgICAgSU5JVChHZXRTY3JlZW5TY2FsZUZhY3Rvcik7
CiAgICAgSU5JVChJc0dCMTgwMzBDb21wbGlhbmNlUmVxdWlyZWQpOworICAgIElOSVQoSXNPcHRp
bWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKTsKICNlbmRpZgogCiAgICAgSU5JVChDcmVhdGVDVExp
bmVXaXRoVW5pQ2hhclByb3ZpZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbSBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5t
bQppbmRleCBmYTAyMTc5ZDMxODZlYjA4NTY5Y2JmNWI1ODRlZDA0Y2JjYzcwYTZmLi42YzJjOGEw
ZjY1ZjU1NDllZWI2NDgwYTM2MWZjM2NiZTRmZTIyMzdiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0K
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lz
dGVtSW50ZXJmYWNlLm1tCkBAIC0yMDcsNiArMjA3LDcgQEAgdm9pZCBJbml0V2ViQ29yZVN5c3Rl
bUludGVyZmFjZSh2b2lkKQogICAgICAgICBJTklUKEdldEF2YWlsYWJsZVNjcmVlblNpemUpOwog
ICAgICAgICBJTklUKEdldFNjcmVlblNjYWxlRmFjdG9yKTsKICAgICAgICAgSU5JVChJc0dCMTgw
MzBDb21wbGlhbmNlUmVxdWlyZWQpOworICAgICAgICBJTklUKElzT3B0aW1pemVkRnVsbHNjcmVl
blN1cHBvcnRlZCk7CiAjZW5kaWYKIAogI2lmIEVOQUJMRShQVUJMSUNfU1VGRklYX0xJU1QpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240936</attachid>
            <date>2014-11-04 11:44:51 -0800</date>
            <delta_ts>2014-11-04 13:07:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138351-20141104114502.patch</filename>
            <type>text/plain</type>
            <size>25899</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQ4MmRjNDE5MjBiM2Vi
YWZjYzg1NzFhYjA0NWI1ZmJjY2ZkYzA5My4uMTlmNDUzMGRkZDhmMjg3ZDc4ODEyZmNmNmJmNTZj
OWUzY2I4OTcxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE0LTExLTAzICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBl
bmFibGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uIHRvIGpz
IG1lZGlhIGVsZW1lbnQgY29udHJvbHMuIFJlbW92ZSAjaWYgY29uZGl0aW9uYWwgCisgICAgICAg
IGFuZCB1c2Ugb3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUgZmVhdHVyZSBh
dCBydW50aW1lCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sc0hvc3Q6OmVudGVyRnVs
bHNjcmVlbk9wdGltaXplZCk6IGVuYWJsZQorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
c0hvc3Q6Om9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOiBhZGRlZAorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oOiBhZGQgb3B0aW1pemVkRnVs
bHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5pZGw6IGRpdHRvCisgICAgICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21l
ZGlhQ29udHJvbHNBcHBsZS5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAqIE1vZHVs
ZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanM6CisgICAgICAgIChDb250cm9s
bGVyLnByb3RvdHlwZS5jcmVhdGVDb250cm9scyk6IGFkZCBidXR0b24KKyAgICAgICAgKENvbnRy
b2xsZXIucHJvdG90eXBlLmhhbmRsZVJlYWR5U3RhdGVDaGFuZ2UpOiB1cGRhdGUgYnV0dG9uCisg
ICAgICAgIChDb250cm9sbGVyLnByb3RvdHlwZS51cGRhdGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uKTogYWRkZWQKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9s
c2lPUy5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6
ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uKTogYWRkZWQKKyAgICAgICAg
KHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRv
bjphY3RpdmUpOiBhZGRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmpzOgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuY3JlYXRlQ29u
dHJvbHMpOiBsaXN0ZW4gZm9yIGV2ZW50cyBmcm9tIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24K
KyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmNvbmZpZ3VyZUlubGluZUNvbnRyb2xz
KTogYWRkIGJ1dHRvbiBmb3Igbm9uLWF1ZGlvIHdoZW4gc3VwcG9ydGVkLgorICAgICAgICAoQ29u
dHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2UpOiAyLWZpbmdlciBk
b3VibGUtdGFwIGdlc3R1cmUgZm9yIG9wdGltaXplZCBmdWxsc2NyZWVuCisgICAgICAgIChDb250
cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVXcmFwcGVyVG91Y2hTdGFydCk6IGRpdHRvCisgICAg
ICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uQ2xpY2tlZCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5k
bGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hTdGFydCk6IGFkZGVkIAorICAgICAgICAoQ29udHJv
bGxlcklPUy5wcm90b3R5cGUuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kKTogYWRk
ZWQKKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmhhbmRsZU9wdGltaXplZEZ1bGxz
Y3JlZW5Ub3VjaENhbmNlbCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlw
ZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hTdGFydCk6IGZpeCB0eXBvCisgICAgICAg
IChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hF
bmQpOiBmaXggdHlwbworICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlU3Rh
cnRQbGF5YmFja0J1dHRvblRvdWNoQ2FuY2VsKTogZml4IHR5cG8KKyAgICAgICAgKiBXZWJDb3Jl
LmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlP
Uy5oOiBhZGRlZCB3a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBs
YXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tOiBhZGRlZCB3a0lzT3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4pOiBlbmFibGUgZmVhdHVyZQorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmV4aXRGdWxsc2NyZWVuKTogZW5h
YmxlIGZlYXR1cmUKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpj
bGVhbnVwRnVsbHNjcmVlbik6IG9ubHkgcmVxdWVzdCBleGl0IHdoZW4gZW50ZXJlZCBhbmQgbm90
IHJlcXVlc3RlZCBleGl0CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbik6IGRpdHRvCisKIDIwMTQtMTEtMDMgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTm9uLWZhc3Qg
c2Nyb2xsYWJsZSByZWdpb24gb3ZlcmxheSBvZmZzZXRzIHRoZSBvdmVybGF5IGJ5IHRvcENvbnRl
bnRJbnNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGU2MWQxMWRiOWE0NDg0MzlmNDlkZjNhZTIzOTkz
OTVkYTMzZGUxZmIuLjlhMjM0ZjhmMDNhNGQwNjQ1NjExMDY3ZmQxOTkyZGRiNGM3MjNjM2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0xMS0wMyAgSmVyZW15IEpvbmVz
ICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGJ1dHRvbiBhbmQgZW5hYmxlIG9w
dGltaXplZCBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM4MzUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIElzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUg
dGhlIGZlYXR1cmUgb25seSB3aGVyZSBhcHByb3ByaWF0ZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKTogYWRkZWQKKwogMjAxNC0xMS0wMyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1
ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3NTQw
NiwgcjE3NTQxMywgYW5kIHIxNzU0MjMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDZkYzFkZjA0ZTNhYTEyMjYx
OWE0NTE5ZjZlMWRiOWI0ZDRlNzM4Yi4uOTMzMDcwZTU2MmU5ZjVlOTdlNDM4YzQ0MGFhODFjZDhi
MjljY2I0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTExLTAzICBKZXJlbXkg
Sm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBlbmFi
bGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkIHRvIGVu
YWJsZSB0aGUgZmVhdHVyZSBvbmx5IHdoZXJlIGFwcHJvcHJpYXRlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tOgorICAgICAg
ICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOiBhZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVu
U3VwcG9ydGVkCisKIDIwMTQtMTEtMDMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CiAKICAgICAgICAgRXhwb3NlIHZpc2libGVEZWJ1Z092ZXJsYXlSZWdpb25zIHByZWYg
dmlhIHRoZSBXSzIgQyBTUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCmluZGV4IGViMzAyZjQwZWQ2OTk2
NDFmNDU1ZTYxMTk1YmY4YTc3ZTJiMTI2MzcuLmMzMmJhNjg1NGIwMmY3ZGYxNDhlNzZjNWZkOWZl
NzU2MWExNGY3MWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250
cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcApAQCAtMTkwLDggKzE5MCwxNyBAQCB2
b2lkIE1lZGlhQ29udHJvbHNIb3N0OjpleGl0ZWRGdWxsc2NyZWVuKCkKICAgICAKIHZvaWQgTWVk
aWFDb250cm9sc0hvc3Q6OmVudGVyRnVsbHNjcmVlbk9wdGltaXplZCgpCiB7Ci0jaWYgRU5BQkxF
KE9QVElNSVpFRF9GVUxMU0NSRUVOKQorI2lmIFBMQVRGT1JNKElPUykKICAgICBtX21lZGlhRWxl
bWVudC0+ZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7CisjZW5kCit9CisgICAgCitib29sIE1l
ZGlhQ29udHJvbHNIb3N0OjpvcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKCkKK3sKKyNpZiBQ
TEFURk9STShJT1MpCisgICAgcmV0dXJuIHdrSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVk
KCk7CisjZWxzZQorICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgogfQogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5o
CmluZGV4IDFiZWEzMWU5YzRlNjhjODE1MWIzYzFjNjIxN2MzYmJkMTdhNzA0MDkuLjMwNTBlMjc4
ZWQ3Mjg4MzdhMzRmYzRkMDNjMGRkZDQzMzYyYTA2NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oCkBAIC03
MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGVudGVyZWRGdWxsc2NyZWVuKCk7CiAgICAg
dm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAgICAgdm9pZCBlbnRlckZ1bGxzY3JlZW5PcHRpbWl6
ZWQoKTsKKyAgICBib29sIG9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQoKTsKIAogICAgIFN0
cmluZyBleHRlcm5hbERldmljZURpc3BsYXlOYW1lKCkgY29uc3Q7CiAgICAgU3RyaW5nIGV4dGVy
bmFsRGV2aWNlVHlwZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGwKaW5kZXggOGRmNWU4OGI4
OGUyZmQ2MDQ5YmEyNDg4MDYzODdjYTY4YWNjYTBkYS4uYjhlOWJmODJlYTgxNjZiOWEwYTk2YTMx
OTU5YmQ5NGJiOWM4NzBiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRp
YWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCkBAIC01Niw0ICs1Niw1IEBA
IGVudW0gRGV2aWNlVHlwZSB7CiAgICAgdm9pZCBlbnRlcmVkRnVsbHNjcmVlbigpOwogICAgIHZv
aWQgZXhpdGVkRnVsbHNjcmVlbigpOwogICAgIHZvaWQgZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVk
KCk7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gb3B0aW1pemVkRnVsbHNjcmVlblN1
cHBvcnRlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29u
dHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmNzcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCmluZGV4IGIzMTE1MjQxNDhjY2U0MWZl
MzkxMDJjMTkxOTMzZWMxZDYyN2IwMDkuLjk3MjgyMTI4NzQ1MGUyNTdlOGIwZTJlNmFhOTQ1MmJh
OTE2MjdmNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9s
cy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCkBAIC0zODksNiArMzg5LDExIEBAIHZp
ZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uLmV4aXQsCiBhdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbi5leGl0IHsKICAgICBi
YWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1IiB0cmFuc2Zvcm09InJv
dGF0ZSg5MCwwLDApIj48bGluZWFyR3JhZGllbnQgaWQ9ImdyYWRpZW50IiB4Mj0iMCIgeTI9IjEw
MCUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3At
Y29sb3I9InJnYigyMTYsIDIxNiwgMjE2KSIvPjxzdG9wIG9mZnNldD0iMC40Mzc1IiBzdG9wLWNv
bG9yPSJyZ2IoMjE2LCAyMTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9IjAuNDM3NSIgc3RvcC1jb2xv
cj0icmdiKDIwOCwgMjA4LCAyMDgpIi8+PHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9InJn
YigyMDgsIDIwOCwgMjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSJyZ2IoMjAw
LCAyMDAsIDIwMCkiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9InJnYigyMDgsIDIwOCwg
MjA4KSIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggZD0iTSA3LDggbSAwLDYgLTIsLTIgLTIsMiBj
IDAsMCAtMSwxIC0yLDAgLTEsLTEgMCwtMiAwLC0yIGwgMiwtMiAtMiwtMiA2LDAgeiIgc3R5bGU9
ImZpbGw6dXJsKCNncmFkaWVudCkgIi8+PHBhdGggZD0iTSA4LDcgbSAwLC02IDIsMiAyLC0yIGMg
MCwwIDEsLTEgMiwwIDEsMSAwLDIgMCwyIGwgLTIsMiAyLDIgLTYsMCB6IiBzdHlsZT0iZmlsbDp1
cmwoI2dyYWRpZW50KSAiLz48L3N2Zz4nKTsKIH0KK3ZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiwKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNv
bnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiB7CisgICAgYmFja2dyb3VuZC1pbWFn
ZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv
MjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNSAxNSIgdHJhbnNmb3JtPSJyb3RhdGUoOTAsMCwwKSI+
PGxpbmVhckdyYWRpZW50IGlkPSJncmFkaWVudCIgeDI9IjAiIHkyPSIxMDAlIiBncmFkaWVudFVu
aXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSJyZ2IoMjE2
LCAyMTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9IjAuNDM3NSIgc3RvcC1jb2xvcj0icmdiKDIxNiwg
MjE2LCAyMTYpIi8+PHN0b3Agb2Zmc2V0PSIwLjQzNzUiIHN0b3AtY29sb3I9InJnYigyMDgsIDIw
OCwgMjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAyMDgsIDIw
OCkiLz48c3RvcCBvZmZzZXQ9IjAuNSIgc3RvcC1jb2xvcj0icmdiKDIwMCwgMjAwLCAyMDApIi8+
PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAyMDgsIDIwOCkiLz48L2xpbmVh
ckdyYWRpZW50PjxwYXRoIGQ9Ik0gNyw4IG0gMCw2IC0yLC0yIC0yLDIgYyAwLDAgLTEsMSAtMiww
IC0xLC0xIDAsLTIgMCwtMiBsIDIsLTIgLTIsLTIgNiwwIHoiIHN0eWxlPSJmaWxsOnVybCgjZ3Jh
ZGllbnQpICIvPjxwYXRoIGQ9Ik0gOCw3IG0gMCwtNiAyLDIgMiwtMiBjIDAsMCAxLC0xIDIsMCAx
LDEgMCwyIDAsMiBsIC0yLDIgMiwyIC02LDAgeiIgc3R5bGU9ImZpbGw6dXJsKCNncmFkaWVudCkg
Ii8+PC9zdmc+Jyk7CisgICAgbWFyZ2luOiAwIDdweDsKK30KIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLXN0YXR1cy1kaXNwbGF5LAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
c3RhdHVzLWRpc3BsYXkgewogICAgIGN1cnNvcjogZGVmYXVsdDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanMgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmpz
CmluZGV4IDY3ZDkyYTE1NjI0NTk5YmI1ZDQwZjc4NTVhNDE0YWI1ODNmOWRkZWUuLjhhMThhYWUz
NWM4ODY5MDQxNjU0MmQ5NDAzOGZhMzA1ZjUzNTQwMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanMKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcwpA
QCAtMzk1LDYgKzM5NSwxMSBAQCBDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgZnVs
bHNjcmVlbkJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ3BzZXVkbycsICctd2Via2l0LW1lZGlhLWNvbnRy
b2xzLWZ1bGxzY3JlZW4tYnV0dG9uJyk7CiAgICAgICAgIGZ1bGxzY3JlZW5CdXR0b24uc2V0QXR0
cmlidXRlKCdhcmlhLWxhYmVsJywgdGhpcy5VSVN0cmluZygnRGlzcGxheSBGdWxsIFNjcmVlbicp
KTsKICAgICAgICAgdGhpcy5saXN0ZW5Gb3IoZnVsbHNjcmVlbkJ1dHRvbiwgJ2NsaWNrJywgdGhp
cy5oYW5kbGVGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZCk7CisKKyAgICAgICAgdmFyIG9wdGltaXpl
ZEZ1bGxzY3JlZW5CdXR0b24gPSB0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0
b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKTsKKyAgICAgICAgb3B0aW1pemVk
RnVsbHNjcmVlbkJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ3BzZXVkbycsICctd2Via2l0LW1lZGlhLWNv
bnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbicpOworICAgICAgICBvcHRpbWl6ZWRG
dWxsc2NyZWVuQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1sYWJlbCcsIHRoaXMuVUlTdHJpbmco
J0Rpc3BsYXkgT3B0aW1pemVkIEZ1bGwgU2NyZWVuJykpOworICAgICAgICB0aGlzLmxpc3RlbkZv
cihvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLCAnY2xpY2snLCB0aGlzLmhhbmRsZU9wdGltaXpl
ZEZ1bGxzY3JlZW5CdXR0b25DbGlja2VkKTsKICAgICB9LAogCiAgICAgc2V0Q29udHJvbHNUeXBl
OiBmdW5jdGlvbih0eXBlKQpAQCAtNTU0LDYgKzU1OSw3IEBAIENvbnRyb2xsZXIucHJvdG90eXBl
ID0gewogICAgICAgICB0aGlzLnVwZGF0ZUNhcHRpb25CdXR0b24oKTsKICAgICAgICAgdGhpcy51
cGRhdGVDYXB0aW9uQ29udGFpbmVyKCk7CiAgICAgICAgIHRoaXMudXBkYXRlRnVsbHNjcmVlbkJ1
dHRvbigpOworICAgICAgICB0aGlzLnVwZGF0ZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24oKTsK
ICAgICAgICAgdGhpcy51cGRhdGVQcm9ncmVzcygpOwogICAgIH0sCiAKQEAgLTg1OSw2ICs4NjUs
MTEgQEAgQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgICAgIHRoaXMuY29udHJvbHMuZnVs
bHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QudG9nZ2xlKHRoaXMuQ2xhc3NOYW1lcy5oaWRkZW4sICF0
aGlzLnZpZGVvLndlYmtpdFN1cHBvcnRzRnVsbHNjcmVlbik7CiAgICAgfSwKIAorICAgIHVwZGF0
ZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b246IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHRo
aXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QudG9nZ2xlKHRo
aXMuQ2xhc3NOYW1lcy5oaWRkZW4sICF0aGlzLnZpZGVvLndlYmtpdFN1cHBvcnRzRnVsbHNjcmVl
bik7CisgICAgfSwKKyAgICAKICAgICBoYW5kbGVGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZDogZnVu
Y3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3JlZW4oKSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRy
b2xzaU9TLmNzcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmNzcwppbmRleCAxODg1MDBhMTZjY2M5MDFkZTFiNDcxMzAzOWI3ZGJhZDE2OTg4
ZDUwLi4wZmQwODY2Njk0MzVlZmM3MjJkZmMwNmJjMzM1MWEzYTA2NDhjOTk4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5j
c3MKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJv
bHNpT1MuY3NzCkBAIC0yMDksNyArMjA5LDkgQEAgYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtc3RhcnQtcGxheWJhY2stYnV0dG9uLmZhaWxlZCB7CiB2aWRlbzo6LXdlYmtpdC1tZWRpYS1j
b250cm9scy1wbGF5LWJ1dHRvbiwKIGF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXBsYXkt
YnV0dG9uLAogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24s
Ci1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbiB7CithdWRp
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRvbiwKK3ZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiwKK2F1ZGlvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiB7CiAgICAg
LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgIGRpc3BsYXk6IGJsb2NrOwogICAgIHBhZGRp
bmc6IDA7CkBAIC0yNDEsNiArMjQzLDE0IEBAIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LWZ1bGxzY3JlZW4tYnV0dG9uIHsKICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1h
Z2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0Jv
eD0iMCAwIDM1IDQ0Ij48ZyBzdHJva2U9InJnYmEoMCwgMCwgMCwgMC40KSIgZmlsbD0ibm9uZSI+
PHBhdGggZD0iTSAxMC41LDIwLjUgdiAtNSBoIDUgTSAxMC41LDE1LjUgbCA1LDUiLz48cGF0aCBk
PSJNIDI0LjUsMjQuNSB2IDUgaCAtNSBNIDI0LjUsMjkuNSBsIC01LC01Ii8+PC9nPjwvc3ZnPicp
OwogfQogCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVl
bi1idXR0b24geworICAgIHdpZHRoOiAzNXB4OworICAgIGhlaWdodDogNDRweDsKKyAgICBiYWNr
Z3JvdW5kLXNpemU6IDM1cHggNDRweDsKKyAgICBvcGFjaXR5OiAwLjk7CisgICAgYmFja2dyb3Vu
ZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53
My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNSA0NCI+PGcgc3Ryb2tlPSJyZ2JhKDAsIDAs
IDAsIDAuNCkiIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Ik0gMTAsMTUgaCAxNCB2IDE0IGggLTE0IHYg
LTE0Ii8+PC9nPjwvc3ZnPicpOworfQorCiB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1w
bGF5LWJ1dHRvbiB7CiAgICAgd2lkdGg6IDQxcHg7CiAgICAgaGVpZ2h0OiA0NHB4OwpAQCAtMjYx
LDYgKzI3MSwxMCBAQCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1
dHRvbjphY3RpdmUgewogICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcr
eG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAg
MzUgNDQiPjxnIHN0cm9rZT0id2hpdGUiIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Ik0gMTAsMjAgdiAt
NSBoIDUgTSAxMCwxNSBsIDUsNSIvPjxwYXRoIGQ9Ik0gMjQsMjQgdiA1IGggLTUgTSAyNCwyOSBs
IC01LC01Ii8+PC9nPjwvc3ZnPicpOwogfQogCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b246YWN0aXZlIHsKKyAgICBiYWNrZ3JvdW5kLWlt
YWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM1IDQ0Ij48ZyBzdHJva2U9IndoaXRlIiBmaWxsPSJu
b25lIj48cGF0aCBkPSJNIDEwLDE1IGggMTQgdiAxNCBoIC0xNCB2IC0xNCIvPjwvZz48L3N2Zz4n
KTsKK30KKwogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtdGltZWxpbmUsCiBhdWRpbzo6
LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNl
OiBub25lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xz
L21lZGlhQ29udHJvbHNpT1MuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJv
bHMvbWVkaWFDb250cm9sc2lPUy5qcwppbmRleCBlZDU4YjQzZmZlNjVlODMyMDJiZWJlMWVhNjQz
NmFhZDBkZmI4YTc1Li45ZWVhMWRmNjllMTQ4MGIxYTgyYzFlNjlmYTQ5YzA1MWExN2M4OTMyIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250
cm9sc2lPUy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVk
aWFDb250cm9sc2lPUy5qcwpAQCAtMTY3LDYgKzE2Nyw5IEBAIENvbnRyb2xsZXJJT1MucHJvdG90
eXBlID0gewogICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5C
dXR0b24sICd0b3VjaHN0YXJ0JywgdGhpcy5oYW5kbGVGdWxsc2NyZWVuVG91Y2hTdGFydCk7CiAg
ICAgICAgIHRoaXMubGlzdGVuRm9yKHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbiwgJ3Rv
dWNoZW5kJywgdGhpcy5oYW5kbGVGdWxsc2NyZWVuVG91Y2hFbmQpOwogICAgICAgICB0aGlzLmxp
c3RlbkZvcih0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24sICd0b3VjaGNhbmNlbCcsIHRo
aXMuaGFuZGxlRnVsbHNjcmVlblRvdWNoQ2FuY2VsKTsKKyAgICAgICAgdGhpcy5saXN0ZW5Gb3Io
dGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLCAndG91Y2hzdGFydCcsIHRo
aXMuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoU3RhcnQpOworICAgICAgICB0aGlzLmxp
c3RlbkZvcih0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24sICd0b3VjaGVu
ZCcsIHRoaXMuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kKTsKKyAgICAgICAgdGhp
cy5saXN0ZW5Gb3IodGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLCAndG91
Y2hjYW5jZWwnLCB0aGlzLmhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5Ub3VjaENhbmNlbCk7CiAg
ICAgICAgIHRoaXMuc3RvcExpc3RlbmluZ0Zvcih0aGlzLmNvbnRyb2xzLnBsYXlCdXR0b24sICdj
bGljaycsIHRoaXMuaGFuZGxlUGxheUJ1dHRvbkNsaWNrZWQpOwogICAgIH0sCiAKQEAgLTIwNCw4
ICsyMDcsMTEgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICB0aGlz
LmNvbnRyb2xzLnRpbWVsaW5lQm94LmFwcGVuZENoaWxkKHRoaXMuY29udHJvbHMudGltZWxpbmUp
OwogICAgICAgICAgICAgdGhpcy5jb250cm9scy50aW1lbGluZUJveC5hcHBlbmRDaGlsZCh0aGlz
LmNvbnRyb2xzLnJlbWFpbmluZ1RpbWUpOwogICAgICAgICB9Ci0gICAgICAgIGlmICghdGhpcy5p
c0F1ZGlvKCkpCisgICAgICAgIGlmICghdGhpcy5pc0F1ZGlvKCkpIHsKICAgICAgICAgICAgIHRo
aXMuY29udHJvbHMucGFuZWwuYXBwZW5kQ2hpbGQodGhpcy5jb250cm9scy5mdWxsc2NyZWVuQnV0
dG9uKTsKKyAgICAgICAgICAgIGlmICh0aGlzLmhvc3Qub3B0aW1pemVkRnVsbHNjcmVlblN1cHBv
cnRlZCkKKyAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLnBhbmVsLmFwcGVuZENoaWxkKHRo
aXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbik7CisgICAgICAgIH0KICAgICB9
LAogCiAgICAgY29uZmlndXJlRnVsbFNjcmVlbkNvbnRyb2xzOiBmdW5jdGlvbigpIHsKQEAgLTMy
MCw2ICszMjYsMTAgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgaGFuZGxlQmFz
ZUdlc3R1cmVDaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAgICAgIGlmICghdGhpcy52aWRl
by5jb250cm9scyB8fCB0aGlzLmlzQXVkaW8oKSB8fCB0aGlzLmlzRnVsbFNjcmVlbigpIHx8IHRo
aXMuZ2VzdHVyZVN0YXJ0VGltZSA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuY29udHJvbHNUeXBlID09
IENvbnRyb2xsZXJJT1MuU3RhcnRQbGF5YmFja0NvbnRyb2xzKQogICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICAKKyAgICAgICAgdmFyIHNjYWxlRGV0ZWN0aW9uVGhyZXNob2xkID0gMC4yOwor
ICAgICAgICBpZiAoZXZlbnQuc2NhbGUgPiAxICsgc2NhbGVEZXRlY3Rpb25UaHJlc2hvbGQgfHwg
ZXZlbnQuc2NhbGUgPCAxIC0gc2NhbGVEZXRlY3Rpb25UaHJlc2hvbGQpCisgICAgICAgICAgICBk
ZWxldGUgdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lOwogCiAgICAgICAgIGlmICh0aGlzLm1vc3RS
ZWNlbnROdW1iZXJPZlRhcmdldHRlZFRvdWNoZXMgPT0gMiAmJiBldmVudC5zY2FsZSA+PSAxLjAp
CiAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwpAQCAtMzMxLDE2ICszNDEsMTMg
QEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAKICAgICAgICAgdmFyIHZlbG9jaXR5ID0g
TWF0aC5hYnMoZXZlbnQuc2NhbGUgLSAxKSAvIGR1cmF0aW9uOwogICAgICAgICAKLSAgICAgICAg
aWYgKHZlbG9jaXR5IDwgMikKKyAgICAgICAgdmFyIHBpbmNoT3V0VmVsb2NpdHlUaHJlc2hvbGQg
PSAyOworICAgICAgICB2YXIgcGluY2hPdXRHZXN0dXJlU2NhbGVUaHJlc2hvbGQgPSAxLjI1Owor
ICAgICAgICBpZiAodmVsb2NpdHkgPCBwaW5jaE91dFZlbG9jaXR5VGhyZXNob2xkIHx8IGV2ZW50
LnNjYWxlIDwgcGluY2hPdXRHZXN0dXJlU2NhbGVUaHJlc2hvbGQpCiAgICAgICAgICAgICByZXR1
cm47CiAKLSAgICAgICAgaWYgKGV2ZW50LnNjYWxlID49IDEuMjUpIHsKLSAgICAgICAgICAgIGRl
bGV0ZSB0aGlzLmdlc3R1cmVTdGFydFRpbWU7Ci0gICAgICAgICAgICB0aGlzLnZpZGVvLndlYmtp
dEVudGVyRnVsbHNjcmVlbigpOwotICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LnNjYWxlIDw9IDAu
NzUpIHsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmdlc3R1cmVTdGFydFRpbWU7Ci0gICAgICAg
ICAgICB0aGlzLmhvc3QuZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7Ci0gICAgICAgIH0KKyAg
ICAgICAgZGVsZXRlIHRoaXMuZ2VzdHVyZVN0YXJ0VGltZTsKKyAgICAgICAgdGhpcy52aWRlby53
ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTsKICAgICB9LAogCiAgICAgaGFuZGxlQmFzZUdlc3R1cmVF
bmQ6IGZ1bmN0aW9uKGV2ZW50KSB7CkBAIC0zNTIsNyArMzU5LDI0IEBAIENvbnRyb2xsZXJJT1Mu
cHJvdG90eXBlID0gewogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHRoaXMubW9zdFJl
Y2VudE51bWJlck9mVGFyZ2V0dGVkVG91Y2hlcyA9IGV2ZW50LnRhcmdldFRvdWNoZXMubGVuZ3Ro
OwotCisgICAgICAgIAorICAgICAgICBpZiAodGhpcy5ob3N0Lm9wdGltaXplZEZ1bGxzY3JlZW5T
dXBwb3J0ZWQpIHsKKyAgICAgICAgICAgIGlmICh0aGlzLm1vc3RSZWNlbnROdW1iZXJPZlRhcmdl
dHRlZFRvdWNoZXMgPT0gMikgeworICAgICAgICAgICAgICAgIHZhciBub3cgPSBuZXcgRGF0ZSgp
OworICAgICAgICAgICAgICAgIGlmICh0aGlzLmxhc3REb3VibGVUb3VjaFRpbWUgPT09IHVuZGVm
aW5lZCkgeworICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3REb3VibGVUb3VjaFRpbWUgPSBu
b3c7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIGRv
dWJsZVRvdWNoSW50ZXJ2YWxUaHJlc2hvbGRtcyA9IDMwMAorICAgICAgICAgICAgICAgICAgICBp
ZiAobm93IC0gdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lIDwgZG91YmxlVG91Y2hTcGVlZFRocmVz
aG9sZCkgeworICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHRoaXMubGFzdERvdWJsZVRv
dWNoVGltZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7
CisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3QuZW50ZXJGdWxsc2NyZWVuT3B0aW1p
emVkKCk7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZQorICAgICAgICAgICAgICAgICAgICAg
ICAgdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lID0gbm93OworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICAKICAgICAgICAgaWYgKHRoaXMuY29udHJv
bHNBcmVIaWRkZW4oKSkgewogICAgICAgICAgICAgdGhpcy5zaG93Q29udHJvbHMoKTsKICAgICAg
ICAgICAgIGlmICh0aGlzLmhpZGVUaW1lcikKQEAgLTQwNywxMiArNDMxLDM2IEBAIENvbnRyb2xs
ZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCisgICAg
aGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQ6IGZ1bmN0aW9uKGV2ZW50KSB7
CisgICAgICAgIGlmICh0aGlzLmlzRnVsbGVudGVyRnVsbHNjcmVlbk9wdGltaXplZFNjcmVlbigp
KQorICAgICAgICAgICAgdGhpcy52aWRlby53ZWJraXRFeGl0RnVsbHNjcmVlbigpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICB0aGlzLmhvc3QuZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7
CisgICAgfSwKKyAgICAgICAgCisgICAgaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoU3Rh
cnQ6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3Jl
ZW5CdXR0b24uY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CisgICAgfSwKKyAgICAgICAgCisgICAg
aGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kOiBmdW5jdGlvbihldmVudCkgeworICAg
ICAgICB0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LnJl
bW92ZSgnYWN0aXZlJyk7CisgICAgICAgIAorICAgICAgICB0aGlzLmhhbmRsZU9wdGltaXplZEZ1
bGxzY3JlZW5CdXR0b25DbGlja2VkKCk7CisgICAgICAgIAorICAgICAgICByZXR1cm4gdHJ1ZTsK
KyAgICB9LAorICAgICAgICAKKyAgICBoYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hDYW5j
ZWw6IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVs
bHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKKyAgICAgICAgcmV0dXJu
IHRydWU7CisgICAgfSwKKwogICAgIGhhbmRsZVN0YXJ0UGxheWJhY2tCdXR0b25Ub3VjaFN0YXJ0
OiBmdW5jdGlvbihldmVudCkgewotICAgICAgICB0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0
b24uY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CisgICAgICAgIHRoaXMuY29udHJvbHMuc3RhcnRQ
bGF5YmFja0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKICAgICB9LAogCiAgICAgaGFu
ZGxlU3RhcnRQbGF5YmFja0J1dHRvblRvdWNoRW5kOiBmdW5jdGlvbihldmVudCkgewotICAgICAg
ICB0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZl
Jyk7CisgICAgICAgIHRoaXMuY29udHJvbHMuc3RhcnRQbGF5YmFja0J1dHRvbi5jbGFzc0xpc3Qu
cmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgaWYgKHRoaXMudmlkZW8uZXJyb3IpCiAgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKIApAQCAtNDIyLDcgKzQ3MCw3IEBAIENvbnRyb2xsZXJJT1MucHJv
dG90eXBlID0gewogICAgIH0sCiAKICAgICBoYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hD
YW5jZWw6IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgIHRoaXMuY29udHJvbHMuZnVsbHNjcmVl
bkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKKyAgICAgICAgdGhpcy5jb250cm9s
cy5zdGFydFBsYXliYWNrQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOwogICAgICAg
ICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCmluZGV4IDkyZjMwMDAw
ODFmOWFkNjY3NDQ5MDVjMGI0Yjg0YWNjNGQyZDQxYTMuLjc0ZmEyOGU3YTdhNThkZGExNjNhNjYy
OWMyMzQ4ZjU3YjFlZTdiYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhw
LmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmluCkBAIC0yODU5LDYgKzI4NTks
NyBAQCBfd2tHZXRVc2VyQWdlbnQKIF93a0dldFZlbmRvck5hbWVGb3JOYXZpZ2F0b3IKIF93a0dl
dFZlcnRpY2FsR2x5cGhzRm9yQ2hhcmFjdGVycwogX3drSXNHQjE4MDMwQ29tcGxpYW5jZVJlcXVp
cmVkCitfd2tJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQKIF93a1NldExheWVyQ29udGVu
dHNTY2FsZQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9p
b3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5oCmluZGV4IDAxNDJkMjEyZWI4YTIyNWFmNmRi
MWY0YWI5OWRiZGFmNTQxNDVhMjYuLjk4YjdjODhlZGIwZGNiMzAxZTdmNmQ0YWYzMmJlYjk5ZGJj
MzU0OGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJDb3JlU3lz
dGVtSW50ZXJmYWNlSU9TLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNv
cmVTeXN0ZW1JbnRlcmZhY2VJT1MuaApAQCAtNzMsNCArNzMsNiBAQCBleHRlcm4gQ0ZTdHJpbmdS
ZWYgKCp3a0dldE9TTmFtZUZvclVzZXJBZ2VudCkodm9pZCk7CiBleHRlcm4gQ0ZTdHJpbmdSZWYg
KCp3a0dldFBsYXRmb3JtTmFtZUZvck5hdmlnYXRvcikodm9pZCk7CiBleHRlcm4gQ0ZTdHJpbmdS
ZWYgKCp3a0dldFZlbmRvck5hbWVGb3JOYXZpZ2F0b3IpKHZvaWQpOwogCitleHRlcm4gYm9vbCAo
KndrSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKSh2b2lkKTsKKwogI2VuZGlmIC8vIFdl
YkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1NfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbQppbmRleCA0OWJjMmNlYjE4
YmY3OWE1ZWZiMDU3ZDcxMGIwYjI0MmY5NzlhNTQzLi40MjczNGM5MDhiMzNmNmQzMWQyZjVjOThk
N2U5Y2QzMmY1NWNmZjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3Mv
V2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbQpAQCAtMTMwLDYgKzEzMCw4IEBAIFdF
QkNPUkVfRVhQT1JUIENGU3RyaW5nUmVmICgqd2tHZXRPU05hbWVGb3JVc2VyQWdlbnQpKHZvaWQp
OwogV0VCQ09SRV9FWFBPUlQgQ0ZTdHJpbmdSZWYgKCp3a0dldFBsYXRmb3JtTmFtZUZvck5hdmln
YXRvcikodm9pZCk7CiBXRUJDT1JFX0VYUE9SVCBDRlN0cmluZ1JlZiAoKndrR2V0VmVuZG9yTmFt
ZUZvck5hdmlnYXRvcikodm9pZCk7CiAKK1dFQkNPUkVfRVhQT1JUIEJPT0wgKCp3a0lzT3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZCkodm9pZCk7CisKIFdFQkNPUkVfRVhQT1JUIGludCAoKndr
RXhlcm5hbERldmljZVR5cGVGb3JQbGF5ZXIpKEFWUGxheWVyICopOwogV0VCQ09SRV9FWFBPUlQg
TlNTdHJpbmcgKigqd2tFeGVybmFsRGV2aWNlRGlzcGxheU5hbWVGb3JQbGF5ZXIpKEFWUGxheWVy
ICopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9G
dWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9X
ZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4IDMwNWZhYzc1MDlmMzAwNWVi
ZGNmMGIxOWMxZWIzNmZiMWE0NGExMTAuLmRjOGI0MWM4NjFiMDJlNzlhZGZiNDNjODdlNzJlZDhi
ZWU1YTBhNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCkBAIC0xMDQsNiArMTA0LDcg
QEAgcHJvdGVjdGVkOgogICAgIEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGUg
bV9tb2RlOwogICAgIGJvb2wgbV9leGl0UmVxdWVzdGVkOwogICAgIGJvb2wgbV9leGl0Q29tcGxl
dGVkOworICAgIGJvb2wgbV9lbnRlclJlcXVlc3RlZDsKIAogICAgIFdlYkFWUGxheWVyQ29udHJv
bGxlciAqcGxheWVyQ29udHJvbGxlcigpOwogICAgIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1tIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0
Lm1tCmluZGV4IGIxZGJmODM4ZDk3Mzc1MzZiNjg5ZGMxMmFhY2Q1NGQ5MzhlOTI0MTUuLjNkMzZh
NGE2YThjNjRmODk2MjhlZDJiNWZiOTAxOTVlMDBiNzdlMWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJm
YWNlQVZLaXQubW0KQEAgLTg2MCwxMCArODYwLDEwIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVu
SW50ZXJmYWNlQVZLaXQ6OmVudGVyRnVsbHNjcmVlbigpCiAgICAgCiAgICAgbV9leGl0Q29tcGxl
dGVkID0gZmFsc2U7CiAgICAgbV9leGl0UmVxdWVzdGVkID0gZmFsc2U7CisgICAgbV9lbnRlclJl
cXVlc3RlZCA9IHRydWU7CiAgICAgCiAgICAgZGlzcGF0Y2hfYXN5bmMoZGlzcGF0Y2hfZ2V0X21h
aW5fcXVldWUoKSwgXnsKICAgICAgICAgW21fdmlkZW9MYXllckNvbnRhaW5lciBzZXRCYWNrZ3Jv
dW5kQ29sb3I6W1tnZXRVSUNvbG9yQ2xhc3MoKSBibGFja0NvbG9yXSBDR0NvbG9yXV07Ci0jaWYg
RU5BQkxFKE9QVElNSVpFRF9GVUxMU0NSRUVOKQogICAgICAgICBpZiAobV9tb2RlID09IEhUTUxN
ZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVPcHRpbWl6ZWQpIHsKICAgICAgICAgICAg
IFttX3BsYXllclZpZXdDb250cm9sbGVyIHN0YXJ0T3B0aW1pemVkRnVsbHNjcmVlbldpdGhTdGFy
dENvbXBsZXRpb25IYW5kbGVyOl4oQk9PTCBzdWNjZXNzLCBOU0Vycm9yICopIHsKICAgICAgICAg
ICAgICAgICAKQEAgLTg5Niw3ICs4OTYsNiBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVy
ZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4oKQogICAgICAgICAgICAgICAgIH0KICAgICAgICAg
ICAgIH1dOwogICAgICAgICB9IGVsc2UKLSNlbmRpZgogICAgICAgICBpZiAobV9tb2RlID09IEhU
TUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVTdGFuZGFyZCkgewogICAgICAgICAg
ICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgZW50ZXJGdWxsU2NyZWVuV2l0aENvbXBsZXRpb25I
YW5kbGVyOl4oQk9PTCwgTlNFcnJvciopCiAgICAgICAgICAgICB7CkBAIC05NDAsMTIgKzkzOSwx
MCBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpleGl0RnVsbHNjcmVl
bihXZWJDb3JlOjpJbnRSZWN0IGZpbmFsUmVjdAogICAgICAgICAgICAgW21fdmlkZW9MYXllckNv
bnRhaW5lciBzZXRWaWRlb0xheWVyR3Jhdml0eTpBVlZpZGVvTGF5ZXJHcmF2aXR5UmVzaXplQXNw
ZWN0XTsKICAgICAgICAgW1ttX3BsYXllclZpZXdDb250cm9sbGVyIHZpZXddIGxheW91dElmTmVl
ZGVkXTsKICAgICAgICAgCi0jaWYgRU5BQkxFKE9QVElNSVpFRF9GVUxMU0NSRUVOKQogICAgICAg
ICBpZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVPcHRp
bWl6ZWQpIHsKICAgICAgICAgICAgIFttX3dpbmRvdyBzZXRIaWRkZW46Tk9dOwogICAgICAgICAg
ICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc3RvcE9wdGltaXplZEZ1bGxzY3JlZW5dOwogICAg
ICAgICB9IGVsc2UKLSNlbmRpZgogICAgICAgICBpZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1l
bnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVTdGFuZGFyZCkgewogICAgICAgICAgICAgW21fcGxheWVy
Vmlld0NvbnRyb2xsZXIgZXhpdEZ1bGxTY3JlZW5XaXRoQ29tcGxldGlvbkhhbmRsZXI6XihCT09M
LCBOU0Vycm9yKikgewogICAgICAgICAgICAgICAgIG1fZXhpdENvbXBsZXRlZCA9IHRydWU7CkBA
IC0xMDAwLDYgKzk5Nyw3IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6
OmNsZWFudXBGdWxsc2NyZWVuKCkKICAgICAgICAgV2ViVGhyZWFkUnVuKF57CiAgICAgICAgICAg
ICBpZiAobV9mdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIpCiAgICAgICAgICAgICAgICAgbV9mdWxs
c2NyZWVuQ2hhbmdlT2JzZXJ2ZXItPmRpZENsZWFudXBGdWxsc2NyZWVuKCk7CisgICAgICAgICAg
ICBtX2VudGVyUmVxdWVzdGVkID0gZmFsc2U7CiAgICAgICAgICAgICBwcm90ZWN0ID0gbnVsbHB0
cjsKICAgICAgICAgfSk7CiAgICAgfSk7CkBAIC0xMDMwLDYgKzEwMjgsOSBAQCB2b2lkIFdlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjppbnZhbGlkYXRlKCkKIAogdm9pZCBXZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbigp
CiB7CisgICAgaWYgKCFtX2VudGVyUmVxdWVzdGVkKQorICAgICAgICByZXR1cm47CisgICAgCiAg
ICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRlb0Z1bGxzY3JlZW5Nb2RlT3B0
aW1pemVkKQogICAgICAgICByZXR1cm47CiAgICAgCkBAIC0xMDQzLDcgKzEwNDQsNyBAQCB2b2lk
IFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpyZXF1ZXN0SGlkZUFuZEV4aXRGdWxs
c2NyZWVuKCkKICAgICAgICAgfV07CiAgICAgfSk7CiAKLSAgICBpZiAobV92aWRlb0Z1bGxzY3Jl
ZW5Nb2RlbCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCAmJiAhbV9leGl0UmVxdWVz
dGVkKQogICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5yZXF1ZXN0RXhpdEZ1bGxzY3Jl
ZW4oKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQv
V2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IDgxYzNmMDlmZjU5ZWExMDRkZDAzNDg0ZjFhMDJm
MDM4MmVmZTAwYWQuLmYyMjllZWYxNjg3NDgyNzRlOTk3ZjRhMmIyMGI4NjdkZWM1NDY2MjcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3RlbUludGVy
ZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJTeXN0ZW1J
bnRlcmZhY2UubW0KQEAgLTEzMSw2ICsxMzEsNyBAQCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50
ZXJmYWNlKHZvaWQpCiAgICAgSU5JVChHZXRBdmFpbGFibGVTY3JlZW5TaXplKTsKICAgICBJTklU
KEdldFNjcmVlblNjYWxlRmFjdG9yKTsKICAgICBJTklUKElzR0IxODAzMENvbXBsaWFuY2VSZXF1
aXJlZCk7CisgICAgSU5JVChJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOwogI2VuZGlm
CiAKICAgICBJTklUKENyZWF0ZUNUTGluZVdpdGhVbmlDaGFyUHJvdmlkZXIpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVt
SW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9t
YWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IGZhMDIxNzlkMzE4NmViMDg1NjljYmY1YjU4
NGVkMDRjYmNjNzBhNmYuLjZjMmM4YTBmNjVmNTU0OWVlYjY0ODBhMzYxZmMzY2JlNGZlMjIzN2Ig
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvbWFj
L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTIwNyw2ICsyMDcsNyBA
QCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZvaWQpCiAgICAgICAgIElOSVQoR2V0
QXZhaWxhYmxlU2NyZWVuU2l6ZSk7CiAgICAgICAgIElOSVQoR2V0U2NyZWVuU2NhbGVGYWN0b3Ip
OwogICAgICAgICBJTklUKElzR0IxODAzMENvbXBsaWFuY2VSZXF1aXJlZCk7CisgICAgICAgIElO
SVQoSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKTsKICNlbmRpZgogCiAjaWYgRU5BQkxF
KFBVQkxJQ19TVUZGSVhfTElTVCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240943</attachid>
            <date>2014-11-04 13:07:08 -0800</date>
            <delta_ts>2014-11-04 15:41:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138351-20141104130720.patch</filename>
            <type>text/plain</type>
            <size>25958</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQ4MmRjNDE5MjBiM2Vi
YWZjYzg1NzFhYjA0NWI1ZmJjY2ZkYzA5My4uMTlmNDUzMGRkZDhmMjg3ZDc4ODEyZmNmNmJmNTZj
OWUzY2I4OTcxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE0LTExLTAzICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBl
bmFibGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uIHRvIGpz
IG1lZGlhIGVsZW1lbnQgY29udHJvbHMuIFJlbW92ZSAjaWYgY29uZGl0aW9uYWwgCisgICAgICAg
IGFuZCB1c2Ugb3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUgZmVhdHVyZSBh
dCBydW50aW1lCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sc0hvc3Q6OmVudGVyRnVs
bHNjcmVlbk9wdGltaXplZCk6IGVuYWJsZQorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
c0hvc3Q6Om9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOiBhZGRlZAorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oOiBhZGQgb3B0aW1pemVkRnVs
bHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5pZGw6IGRpdHRvCisgICAgICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21l
ZGlhQ29udHJvbHNBcHBsZS5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAqIE1vZHVs
ZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanM6CisgICAgICAgIChDb250cm9s
bGVyLnByb3RvdHlwZS5jcmVhdGVDb250cm9scyk6IGFkZCBidXR0b24KKyAgICAgICAgKENvbnRy
b2xsZXIucHJvdG90eXBlLmhhbmRsZVJlYWR5U3RhdGVDaGFuZ2UpOiB1cGRhdGUgYnV0dG9uCisg
ICAgICAgIChDb250cm9sbGVyLnByb3RvdHlwZS51cGRhdGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uKTogYWRkZWQKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9s
c2lPUy5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6
ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uKTogYWRkZWQKKyAgICAgICAg
KHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRv
bjphY3RpdmUpOiBhZGRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmpzOgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuY3JlYXRlQ29u
dHJvbHMpOiBsaXN0ZW4gZm9yIGV2ZW50cyBmcm9tIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24K
KyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmNvbmZpZ3VyZUlubGluZUNvbnRyb2xz
KTogYWRkIGJ1dHRvbiBmb3Igbm9uLWF1ZGlvIHdoZW4gc3VwcG9ydGVkLgorICAgICAgICAoQ29u
dHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2UpOiAyLWZpbmdlciBk
b3VibGUtdGFwIGdlc3R1cmUgZm9yIG9wdGltaXplZCBmdWxsc2NyZWVuCisgICAgICAgIChDb250
cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVXcmFwcGVyVG91Y2hTdGFydCk6IGRpdHRvCisgICAg
ICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uQ2xpY2tlZCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5k
bGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hTdGFydCk6IGFkZGVkIAorICAgICAgICAoQ29udHJv
bGxlcklPUy5wcm90b3R5cGUuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kKTogYWRk
ZWQKKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmhhbmRsZU9wdGltaXplZEZ1bGxz
Y3JlZW5Ub3VjaENhbmNlbCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlw
ZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hTdGFydCk6IGZpeCB0eXBvCisgICAgICAg
IChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hF
bmQpOiBmaXggdHlwbworICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlU3Rh
cnRQbGF5YmFja0J1dHRvblRvdWNoQ2FuY2VsKTogZml4IHR5cG8KKyAgICAgICAgKiBXZWJDb3Jl
LmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlP
Uy5oOiBhZGRlZCB3a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBs
YXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tOiBhZGRlZCB3a0lzT3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4pOiBlbmFibGUgZmVhdHVyZQorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmV4aXRGdWxsc2NyZWVuKTogZW5h
YmxlIGZlYXR1cmUKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpj
bGVhbnVwRnVsbHNjcmVlbik6IG9ubHkgcmVxdWVzdCBleGl0IHdoZW4gZW50ZXJlZCBhbmQgbm90
IHJlcXVlc3RlZCBleGl0CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbik6IGRpdHRvCisKIDIwMTQtMTEtMDMgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTm9uLWZhc3Qg
c2Nyb2xsYWJsZSByZWdpb24gb3ZlcmxheSBvZmZzZXRzIHRoZSBvdmVybGF5IGJ5IHRvcENvbnRl
bnRJbnNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGU2MWQxMWRiOWE0NDg0MzlmNDlkZjNhZTIzOTkz
OTVkYTMzZGUxZmIuLjlhMjM0ZjhmMDNhNGQwNjQ1NjExMDY3ZmQxOTkyZGRiNGM3MjNjM2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0xMS0wMyAgSmVyZW15IEpvbmVz
ICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGJ1dHRvbiBhbmQgZW5hYmxlIG9w
dGltaXplZCBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM4MzUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIElzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUg
dGhlIGZlYXR1cmUgb25seSB3aGVyZSBhcHByb3ByaWF0ZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKTogYWRkZWQKKwogMjAxNC0xMS0wMyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1
ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3NTQw
NiwgcjE3NTQxMywgYW5kIHIxNzU0MjMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDZkYzFkZjA0ZTNhYTEyMjYx
OWE0NTE5ZjZlMWRiOWI0ZDRlNzM4Yi4uOTMzMDcwZTU2MmU5ZjVlOTdlNDM4YzQ0MGFhODFjZDhi
MjljY2I0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTExLTAzICBKZXJlbXkg
Sm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBlbmFi
bGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkIHRvIGVu
YWJsZSB0aGUgZmVhdHVyZSBvbmx5IHdoZXJlIGFwcHJvcHJpYXRlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tOgorICAgICAg
ICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOiBhZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVu
U3VwcG9ydGVkCisKIDIwMTQtMTEtMDMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CiAKICAgICAgICAgRXhwb3NlIHZpc2libGVEZWJ1Z092ZXJsYXlSZWdpb25zIHByZWYg
dmlhIHRoZSBXSzIgQyBTUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCmluZGV4IGViMzAyZjQwZWQ2OTk2
NDFmNDU1ZTYxMTk1YmY4YTc3ZTJiMTI2MzcuLjUyMDk3YmUwZTMyZGUxZjFiNWJjMDk2YjJjM2M3
YjZkNzUyZjViOTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250
cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcApAQCAtMTkwLDEwICsxOTAsMTkgQEAg
dm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6ZXhpdGVkRnVsbHNjcmVlbigpCiAgICAgCiB2b2lkIE1l
ZGlhQ29udHJvbHNIb3N0OjplbnRlckZ1bGxzY3JlZW5PcHRpbWl6ZWQoKQogewotI2lmIEVOQUJM
RShPUFRJTUlaRURfRlVMTFNDUkVFTikKKyNpZiBQTEFURk9STShJT1MpCiAgICAgbV9tZWRpYUVs
ZW1lbnQtPmVudGVyRnVsbHNjcmVlbk9wdGltaXplZCgpOwogI2VuZGlmCiB9CisgICAgCitib29s
IE1lZGlhQ29udHJvbHNIb3N0OjpvcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKCkKK3sKKyNp
ZiBQTEFURk9STShJT1MpCisgICAgcmV0dXJuIHdrSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9y
dGVkKCk7CisjZWxzZQorICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQogCiB2b2lkIE1lZGlh
Q29udHJvbHNIb3N0Ojp1cGRhdGVDYXB0aW9uRGlzcGxheVNpemVzKCkKIHsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5o
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0
LmgKaW5kZXggMWJlYTMxZTljNGU2OGM4MTUxYjNjMWM2MjE3YzNiYmQxN2E3MDQwOS4uMzA1MGUy
NzhlZDcyODgzN2EzNGZjNGQwM2MwZGRkNDMzNjJhMDY3OSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmgKKysrIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmgKQEAg
LTcxLDYgKzcxLDcgQEAgcHVibGljOgogICAgIHZvaWQgZW50ZXJlZEZ1bGxzY3JlZW4oKTsKICAg
ICB2b2lkIGV4aXRlZEZ1bGxzY3JlZW4oKTsKICAgICB2b2lkIGVudGVyRnVsbHNjcmVlbk9wdGlt
aXplZCgpOworICAgIGJvb2wgb3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCgpOwogCiAgICAg
U3RyaW5nIGV4dGVybmFsRGV2aWNlRGlzcGxheU5hbWUoKSBjb25zdDsKICAgICBTdHJpbmcgZXh0
ZXJuYWxEZXZpY2VUeXBlKCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsIGIvU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbAppbmRleCA4ZGY1ZTg4
Yjg4ZTJmZDYwNDliYTI0ODgwNjM4N2NhNjhhY2NhMGRhLi5iOGU5YmY4MmVhODE2NmI5YTBhOTZh
MzE5NTliZDk0YmI5Yzg3MGJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21l
ZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5pZGwKQEAgLTU2LDQgKzU2LDUg
QEAgZW51bSBEZXZpY2VUeXBlIHsKICAgICB2b2lkIGVudGVyZWRGdWxsc2NyZWVuKCk7CiAgICAg
dm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAgICAgdm9pZCBlbnRlckZ1bGxzY3JlZW5PcHRpbWl6
ZWQoKTsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgYm9vbGVhbiBvcHRpbWl6ZWRGdWxsc2NyZWVu
U3VwcG9ydGVkOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFj
b250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5jc3MKaW5kZXggYjMxMTUyNDE0OGNjZTQx
ZmUzOTEwMmMxOTE5MzNlYzFkNjI3YjAwOS4uOTcyODIxMjg3NDUwZTI1N2U4YjBlMmU2YWE5NDUy
YmE5MTYyN2Y0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRy
b2xzL21lZGlhQ29udHJvbHNBcHBsZS5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9t
ZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5jc3MKQEAgLTM4OSw2ICszODksMTEgQEAg
dmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtZnVsbHNjcmVlbi1idXR0b24uZXhpdCwKIGF1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uLmV4aXQgewogICAg
IGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0
dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTUgMTUiIHRyYW5zZm9ybT0i
cm90YXRlKDkwLDAsMCkiPjxsaW5lYXJHcmFkaWVudCBpZD0iZ3JhZGllbnQiIHgyPSIwIiB5Mj0i
MTAwJSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIG9mZnNldD0iMCIgc3Rv
cC1jb2xvcj0icmdiKDIxNiwgMjE2LCAyMTYpIi8+PHN0b3Agb2Zmc2V0PSIwLjQzNzUiIHN0b3At
Y29sb3I9InJnYigyMTYsIDIxNiwgMjE2KSIvPjxzdG9wIG9mZnNldD0iMC40Mzc1IiBzdG9wLWNv
bG9yPSJyZ2IoMjA4LCAyMDgsIDIwOCkiLz48c3RvcCBvZmZzZXQ9IjAuNSIgc3RvcC1jb2xvcj0i
cmdiKDIwOCwgMjA4LCAyMDgpIi8+PHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9InJnYigy
MDAsIDIwMCwgMjAwKSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0icmdiKDIwOCwgMjA4
LCAyMDgpIi8+PC9saW5lYXJHcmFkaWVudD48cGF0aCBkPSJNIDcsOCBtIDAsNiAtMiwtMiAtMiwy
IGMgMCwwIC0xLDEgLTIsMCAtMSwtMSAwLC0yIDAsLTIgbCAyLC0yIC0yLC0yIDYsMCB6IiBzdHls
ZT0iZmlsbDp1cmwoI2dyYWRpZW50KSAiLz48cGF0aCBkPSJNIDgsNyBtIDAsLTYgMiwyIDIsLTIg
YyAwLDAgMSwtMSAyLDAgMSwxIDAsMiAwLDIgbCAtMiwyIDIsMiAtNiwwIHoiIHN0eWxlPSJmaWxs
OnVybCgjZ3JhZGllbnQpICIvPjwvc3ZnPicpOwogfQordmlkZW86Oi13ZWJraXQtbWVkaWEtY29u
dHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uLAorYXVkaW86Oi13ZWJraXQtbWVkaWEt
Y29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uIHsKKyAgICBiYWNrZ3JvdW5kLWlt
YWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1IDE1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCwwLDAp
Ij48bGluZWFyR3JhZGllbnQgaWQ9ImdyYWRpZW50IiB4Mj0iMCIgeTI9IjEwMCUiIGdyYWRpZW50
VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9InJnYigy
MTYsIDIxNiwgMjE2KSIvPjxzdG9wIG9mZnNldD0iMC40Mzc1IiBzdG9wLWNvbG9yPSJyZ2IoMjE2
LCAyMTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9IjAuNDM3NSIgc3RvcC1jb2xvcj0icmdiKDIwOCwg
MjA4LCAyMDgpIi8+PHN0b3Agb2Zmc2V0PSIwLjUiIHN0b3AtY29sb3I9InJnYigyMDgsIDIwOCwg
MjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9yPSJyZ2IoMjAwLCAyMDAsIDIwMCki
Lz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9InJnYigyMDgsIDIwOCwgMjA4KSIvPjwvbGlu
ZWFyR3JhZGllbnQ+PHBhdGggZD0iTSA3LDggbSAwLDYgLTIsLTIgLTIsMiBjIDAsMCAtMSwxIC0y
LDAgLTEsLTEgMCwtMiAwLC0yIGwgMiwtMiAtMiwtMiA2LDAgeiIgc3R5bGU9ImZpbGw6dXJsKCNn
cmFkaWVudCkgIi8+PHBhdGggZD0iTSA4LDcgbSAwLC02IDIsMiAyLC0yIGMgMCwwIDEsLTEgMiww
IDEsMSAwLDIgMCwyIGwgLTIsMiAyLDIgLTYsMCB6IiBzdHlsZT0iZmlsbDp1cmwoI2dyYWRpZW50
KSAiLz48L3N2Zz4nKTsKKyAgICBtYXJnaW46IDAgN3B4OworfQogdmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtc3RhdHVzLWRpc3BsYXksCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9s
cy1zdGF0dXMtZGlzcGxheSB7CiAgICAgY3Vyc29yOiBkZWZhdWx0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUu
anMKaW5kZXggNjdkOTJhMTU2MjQ1OTliYjVkNDBmNzg1NWE0MTRhYjU4M2Y5ZGRlZS4uOGExOGFh
ZTM1Yzg4NjkwNDE2NTQyZDk0MDM4ZmEzMDVmNTM1NDAyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcworKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmpz
CkBAIC0zOTUsNiArMzk1LDExIEBAIENvbnRyb2xsZXIucHJvdG90eXBlID0gewogICAgICAgICBm
dWxsc2NyZWVuQnV0dG9uLnNldEF0dHJpYnV0ZSgncHNldWRvJywgJy13ZWJraXQtbWVkaWEtY29u
dHJvbHMtZnVsbHNjcmVlbi1idXR0b24nKTsKICAgICAgICAgZnVsbHNjcmVlbkJ1dHRvbi5zZXRB
dHRyaWJ1dGUoJ2FyaWEtbGFiZWwnLCB0aGlzLlVJU3RyaW5nKCdEaXNwbGF5IEZ1bGwgU2NyZWVu
JykpOwogICAgICAgICB0aGlzLmxpc3RlbkZvcihmdWxsc2NyZWVuQnV0dG9uLCAnY2xpY2snLCB0
aGlzLmhhbmRsZUZ1bGxzY3JlZW5CdXR0b25DbGlja2VkKTsKKworICAgICAgICB2YXIgb3B0aW1p
emVkRnVsbHNjcmVlbkJ1dHRvbiA9IHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1
dHRvbiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2J1dHRvbicpOworICAgICAgICBvcHRpbWl6
ZWRGdWxsc2NyZWVuQnV0dG9uLnNldEF0dHJpYnV0ZSgncHNldWRvJywgJy13ZWJraXQtbWVkaWEt
Y29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uJyk7CisgICAgICAgIG9wdGltaXpl
ZEZ1bGxzY3JlZW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgdGhpcy5VSVN0cmlu
ZygnRGlzcGxheSBPcHRpbWl6ZWQgRnVsbCBTY3JlZW4nKSk7CisgICAgICAgIHRoaXMubGlzdGVu
Rm9yKG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24sICdjbGljaycsIHRoaXMuaGFuZGxlT3B0aW1p
emVkRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQpOwogICAgIH0sCiAKICAgICBzZXRDb250cm9sc1R5
cGU6IGZ1bmN0aW9uKHR5cGUpCkBAIC01NTQsNiArNTU5LDcgQEAgQ29udHJvbGxlci5wcm90b3R5
cGUgPSB7CiAgICAgICAgIHRoaXMudXBkYXRlQ2FwdGlvbkJ1dHRvbigpOwogICAgICAgICB0aGlz
LnVwZGF0ZUNhcHRpb25Db250YWluZXIoKTsKICAgICAgICAgdGhpcy51cGRhdGVGdWxsc2NyZWVu
QnV0dG9uKCk7CisgICAgICAgIHRoaXMudXBkYXRlT3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbigp
OwogICAgICAgICB0aGlzLnVwZGF0ZVByb2dyZXNzKCk7CiAgICAgfSwKIApAQCAtODU5LDYgKzg2
NSwxMSBAQCBDb250cm9sbGVyLnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5jb250cm9scy5m
dWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC50b2dnbGUodGhpcy5DbGFzc05hbWVzLmhpZGRlbiwg
IXRoaXMudmlkZW8ud2Via2l0U3VwcG9ydHNGdWxsc2NyZWVuKTsKICAgICB9LAogCisgICAgdXBk
YXRlT3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
dGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC50b2dnbGUo
dGhpcy5DbGFzc05hbWVzLmhpZGRlbiwgIXRoaXMudmlkZW8ud2Via2l0U3VwcG9ydHNGdWxsc2Ny
ZWVuKTsKKyAgICB9LAorICAgIAogICAgIGhhbmRsZUZ1bGxzY3JlZW5CdXR0b25DbGlja2VkOiBm
dW5jdGlvbihldmVudCkKICAgICB7CiAgICAgICAgIGlmICh0aGlzLmlzRnVsbFNjcmVlbigpKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29u
dHJvbHNpT1MuY3NzIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlh
Q29udHJvbHNpT1MuY3NzCmluZGV4IDE4ODUwMGExNmNjYzkwMWRlMWI0NzEzMDM5YjdkYmFkMTY5
ODhkNTAuLjBmZDA4NjY2OTQzNWVmYzcyMmRmYzA2YmMzMzUxYTNhMDY0OGM5OTggMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzaU9T
LmNzcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250
cm9sc2lPUy5jc3MKQEAgLTIwOSw3ICsyMDksOSBAQCBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1zdGFydC1wbGF5YmFjay1idXR0b24uZmFpbGVkIHsKIHZpZGVvOjotd2Via2l0LW1lZGlh
LWNvbnRyb2xzLXBsYXktYnV0dG9uLAogYXVkaW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtcGxh
eS1idXR0b24sCiB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1dHRv
biwKLWF1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uIHsKK2F1
ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uLAordmlkZW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uLAorYXVkaW86
Oi13ZWJraXQtbWVkaWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uIHsKICAg
ICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7CiAgICAgZGlzcGxheTogYmxvY2s7CiAgICAgcGFk
ZGluZzogMDsKQEAgLTI0MSw2ICsyNDMsMTQgQEAgdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJv
bHMtZnVsbHNjcmVlbi1idXR0b24gewogICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnZGF0YTpp
bWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3
Qm94PSIwIDAgMzUgNDQiPjxnIHN0cm9rZT0icmdiYSgwLCAwLCAwLCAwLjQpIiBmaWxsPSJub25l
Ij48cGF0aCBkPSJNIDEwLjUsMjAuNSB2IC01IGggNSBNIDEwLjUsMTUuNSBsIDUsNSIvPjxwYXRo
IGQ9Ik0gMjQuNSwyNC41IHYgNSBoIC01IE0gMjQuNSwyOS41IGwgLTUsLTUiLz48L2c+PC9zdmc+
Jyk7CiB9CiAKK3ZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2Ny
ZWVuLWJ1dHRvbiB7CisgICAgd2lkdGg6IDM1cHg7CisgICAgaGVpZ2h0OiA0NHB4OworICAgIGJh
Y2tncm91bmQtc2l6ZTogMzVweCA0NHB4OworICAgIG9wYWNpdHk6IDAuOTsKKyAgICBiYWNrZ3Jv
dW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3
LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM1IDQ0Ij48ZyBzdHJva2U9InJnYmEoMCwg
MCwgMCwgMC40KSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTSAxMCwxNSBoIDE0IHYgMTQgaCAtMTQg
diAtMTQiLz48L2c+PC9zdmc+Jyk7Cit9CisKIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xz
LXBsYXktYnV0dG9uIHsKICAgICB3aWR0aDogNDFweDsKICAgICBoZWlnaHQ6IDQ0cHg7CkBAIC0y
NjEsNiArMjcxLDEwIEBAIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4t
YnV0dG9uOmFjdGl2ZSB7CiAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2
Zyt4bWwsPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAg
MCAzNSA0NCI+PGcgc3Ryb2tlPSJ3aGl0ZSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTSAxMCwyMCB2
IC01IGggNSBNIDEwLDE1IGwgNSw1Ii8+PHBhdGggZD0iTSAyNCwyNCB2IDUgaCAtNSBNIDI0LDI5
IGwgLTUsLTUiLz48L2c+PC9zdmc+Jyk7CiB9CiAKK3ZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRy
b2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbjphY3RpdmUgeworICAgIGJhY2tncm91bmQt
aW1hZ2U6IHVybCgnZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMu
b3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMzUgNDQiPjxnIHN0cm9rZT0id2hpdGUiIGZpbGw9
Im5vbmUiPjxwYXRoIGQ9Ik0gMTAsMTUgaCAxNCB2IDE0IGggLTE0IHYgLTE0Ii8+PC9nPjwvc3Zn
PicpOworfQorCiB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSwKIGF1ZGlv
Ojotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXRpbWVsaW5lIHsKICAgICAtd2Via2l0LWFwcGVhcmFu
Y2U6IG5vbmU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJv
bHMvbWVkaWFDb250cm9sc2lPUy5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250
cm9scy9tZWRpYUNvbnRyb2xzaU9TLmpzCmluZGV4IGVkNThiNDNmZmU2NWU4MzIwMmJlYmUxZWE2
NDM2YWFkMGRmYjhhNzUuLjllZWExZGY2OWUxNDgwYjFhODJjMWU2OWZhNDljMDUxYTE3Yzg5MzIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9t
ZWRpYUNvbnRyb2xzaU9TLmpzCkBAIC0xNjcsNiArMTY3LDkgQEAgQ29udHJvbGxlcklPUy5wcm90
b3R5cGUgPSB7CiAgICAgICAgIHRoaXMubGlzdGVuRm9yKHRoaXMuY29udHJvbHMuZnVsbHNjcmVl
bkJ1dHRvbiwgJ3RvdWNoc3RhcnQnLCB0aGlzLmhhbmRsZUZ1bGxzY3JlZW5Ub3VjaFN0YXJ0KTsK
ICAgICAgICAgdGhpcy5saXN0ZW5Gb3IodGhpcy5jb250cm9scy5mdWxsc2NyZWVuQnV0dG9uLCAn
dG91Y2hlbmQnLCB0aGlzLmhhbmRsZUZ1bGxzY3JlZW5Ub3VjaEVuZCk7CiAgICAgICAgIHRoaXMu
bGlzdGVuRm9yKHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbiwgJ3RvdWNoY2FuY2VsJywg
dGhpcy5oYW5kbGVGdWxsc2NyZWVuVG91Y2hDYW5jZWwpOworICAgICAgICB0aGlzLmxpc3RlbkZv
cih0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24sICd0b3VjaHN0YXJ0Jywg
dGhpcy5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hTdGFydCk7CisgICAgICAgIHRoaXMu
bGlzdGVuRm9yKHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbiwgJ3RvdWNo
ZW5kJywgdGhpcy5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hFbmQpOworICAgICAgICB0
aGlzLmxpc3RlbkZvcih0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24sICd0
b3VjaGNhbmNlbCcsIHRoaXMuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoQ2FuY2VsKTsK
ICAgICAgICAgdGhpcy5zdG9wTGlzdGVuaW5nRm9yKHRoaXMuY29udHJvbHMucGxheUJ1dHRvbiwg
J2NsaWNrJywgdGhpcy5oYW5kbGVQbGF5QnV0dG9uQ2xpY2tlZCk7CiAgICAgfSwKIApAQCAtMjA0
LDggKzIwNywxMSBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKICAgICAgICAgICAgIHRo
aXMuY29udHJvbHMudGltZWxpbmVCb3guYXBwZW5kQ2hpbGQodGhpcy5jb250cm9scy50aW1lbGlu
ZSk7CiAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLnRpbWVsaW5lQm94LmFwcGVuZENoaWxkKHRo
aXMuY29udHJvbHMucmVtYWluaW5nVGltZSk7CiAgICAgICAgIH0KLSAgICAgICAgaWYgKCF0aGlz
LmlzQXVkaW8oKSkKKyAgICAgICAgaWYgKCF0aGlzLmlzQXVkaW8oKSkgewogICAgICAgICAgICAg
dGhpcy5jb250cm9scy5wYW5lbC5hcHBlbmRDaGlsZCh0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5C
dXR0b24pOworICAgICAgICAgICAgaWYgKHRoaXMuaG9zdC5vcHRpbWl6ZWRGdWxsc2NyZWVuU3Vw
cG9ydGVkKQorICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbHMucGFuZWwuYXBwZW5kQ2hpbGQo
dGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uKTsKKyAgICAgICAgfQogICAg
IH0sCiAKICAgICBjb25maWd1cmVGdWxsU2NyZWVuQ29udHJvbHM6IGZ1bmN0aW9uKCkgewpAQCAt
MzIwLDYgKzMyNiwxMCBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKICAgICBoYW5kbGVC
YXNlR2VzdHVyZUNoYW5nZTogZnVuY3Rpb24oZXZlbnQpIHsKICAgICAgICAgaWYgKCF0aGlzLnZp
ZGVvLmNvbnRyb2xzIHx8IHRoaXMuaXNBdWRpbygpIHx8IHRoaXMuaXNGdWxsU2NyZWVuKCkgfHwg
dGhpcy5nZXN0dXJlU3RhcnRUaW1lID09PSB1bmRlZmluZWQgfHwgdGhpcy5jb250cm9sc1R5cGUg
PT0gQ29udHJvbGxlcklPUy5TdGFydFBsYXliYWNrQ29udHJvbHMpCiAgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIAorICAgICAgICB2YXIgc2NhbGVEZXRlY3Rpb25UaHJlc2hvbGQgPSAwLjI7
CisgICAgICAgIGlmIChldmVudC5zY2FsZSA+IDEgKyBzY2FsZURldGVjdGlvblRocmVzaG9sZCB8
fCBldmVudC5zY2FsZSA8IDEgLSBzY2FsZURldGVjdGlvblRocmVzaG9sZCkKKyAgICAgICAgICAg
IGRlbGV0ZSB0aGlzLmxhc3REb3VibGVUb3VjaFRpbWU7CiAKICAgICAgICAgaWYgKHRoaXMubW9z
dFJlY2VudE51bWJlck9mVGFyZ2V0dGVkVG91Y2hlcyA9PSAyICYmIGV2ZW50LnNjYWxlID49IDEu
MCkKICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7CkBAIC0zMzEsMTYgKzM0MSwx
MyBAQCBDb250cm9sbGVySU9TLnByb3RvdHlwZSA9IHsKIAogICAgICAgICB2YXIgdmVsb2NpdHkg
PSBNYXRoLmFicyhldmVudC5zY2FsZSAtIDEpIC8gZHVyYXRpb247CiAgICAgICAgIAotICAgICAg
ICBpZiAodmVsb2NpdHkgPCAyKQorICAgICAgICB2YXIgcGluY2hPdXRWZWxvY2l0eVRocmVzaG9s
ZCA9IDI7CisgICAgICAgIHZhciBwaW5jaE91dEdlc3R1cmVTY2FsZVRocmVzaG9sZCA9IDEuMjU7
CisgICAgICAgIGlmICh2ZWxvY2l0eSA8IHBpbmNoT3V0VmVsb2NpdHlUaHJlc2hvbGQgfHwgZXZl
bnQuc2NhbGUgPCBwaW5jaE91dEdlc3R1cmVTY2FsZVRocmVzaG9sZCkKICAgICAgICAgICAgIHJl
dHVybjsKIAotICAgICAgICBpZiAoZXZlbnQuc2NhbGUgPj0gMS4yNSkgewotICAgICAgICAgICAg
ZGVsZXRlIHRoaXMuZ2VzdHVyZVN0YXJ0VGltZTsKLSAgICAgICAgICAgIHRoaXMudmlkZW8ud2Vi
a2l0RW50ZXJGdWxsc2NyZWVuKCk7Ci0gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuc2NhbGUgPD0g
MC43NSkgewotICAgICAgICAgICAgZGVsZXRlIHRoaXMuZ2VzdHVyZVN0YXJ0VGltZTsKLSAgICAg
ICAgICAgIHRoaXMuaG9zdC5lbnRlckZ1bGxzY3JlZW5PcHRpbWl6ZWQoKTsKLSAgICAgICAgfQor
ICAgICAgICBkZWxldGUgdGhpcy5nZXN0dXJlU3RhcnRUaW1lOworICAgICAgICB0aGlzLnZpZGVv
LndlYmtpdEVudGVyRnVsbHNjcmVlbigpOwogICAgIH0sCiAKICAgICBoYW5kbGVCYXNlR2VzdHVy
ZUVuZDogZnVuY3Rpb24oZXZlbnQpIHsKQEAgLTM1Miw3ICszNTksMjQgQEAgQ29udHJvbGxlcklP
Uy5wcm90b3R5cGUgPSB7CiAgICAgICAgICAgICByZXR1cm47CiAKICAgICAgICAgdGhpcy5tb3N0
UmVjZW50TnVtYmVyT2ZUYXJnZXR0ZWRUb3VjaGVzID0gZXZlbnQudGFyZ2V0VG91Y2hlcy5sZW5n
dGg7Ci0KKyAgICAgICAgCisgICAgICAgIGlmICh0aGlzLmhvc3Qub3B0aW1pemVkRnVsbHNjcmVl
blN1cHBvcnRlZCkgeworICAgICAgICAgICAgaWYgKHRoaXMubW9zdFJlY2VudE51bWJlck9mVGFy
Z2V0dGVkVG91Y2hlcyA9PSAyKSB7CisgICAgICAgICAgICAgICAgdmFyIG5vdyA9IG5ldyBEYXRl
KCk7CisgICAgICAgICAgICAgICAgaWYgKHRoaXMubGFzdERvdWJsZVRvdWNoVGltZSA9PT0gdW5k
ZWZpbmVkKSB7CisgICAgICAgICAgICAgICAgICAgIHRoaXMubGFzdERvdWJsZVRvdWNoVGltZSA9
IG5vdzsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICB2YXIg
ZG91YmxlVG91Y2hJbnRlcnZhbFRocmVzaG9sZG1zID0gMzAwCisgICAgICAgICAgICAgICAgICAg
IGlmIChub3cgLSB0aGlzLmxhc3REb3VibGVUb3VjaFRpbWUgPCBkb3VibGVUb3VjaFNwZWVkVGhy
ZXNob2xkKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGUgdGhpcy5sYXN0RG91Ymxl
VG91Y2hUaW1lOworICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQo
KTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdC5lbnRlckZ1bGxzY3JlZW5PcHRp
bWl6ZWQoKTsKKyAgICAgICAgICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgICAg
ICAgICB0aGlzLmxhc3REb3VibGVUb3VjaFRpbWUgPSBub3c7CisgICAgICAgICAgICAgICAgfQor
ICAgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIAogICAgICAgICBpZiAodGhpcy5jb250
cm9sc0FyZUhpZGRlbigpKSB7CiAgICAgICAgICAgICB0aGlzLnNob3dDb250cm9scygpOwogICAg
ICAgICAgICAgaWYgKHRoaXMuaGlkZVRpbWVyKQpAQCAtNDA3LDEyICs0MzEsMzYgQEAgQ29udHJv
bGxlcklPUy5wcm90b3R5cGUgPSB7CiAgICAgICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKKyAg
ICBoYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQp
IHsKKyAgICAgICAgaWYgKHRoaXMuaXNGdWxsZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVkU2NyZWVu
KCkpCisgICAgICAgICAgICB0aGlzLnZpZGVvLndlYmtpdEV4aXRGdWxsc2NyZWVuKCk7CisgICAg
ICAgIGVsc2UKKyAgICAgICAgICAgIHRoaXMuaG9zdC5lbnRlckZ1bGxzY3JlZW5PcHRpbWl6ZWQo
KTsKKyAgICB9LAorICAgICAgICAKKyAgICBoYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hT
dGFydDogZnVuY3Rpb24oKSB7CisgICAgICAgIHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNj
cmVlbkJ1dHRvbi5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKKyAgICB9LAorICAgICAgICAKKyAg
ICBoYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hFbmQ6IGZ1bmN0aW9uKGV2ZW50KSB7Cisg
ICAgICAgIHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3Qu
cmVtb3ZlKCdhY3RpdmUnKTsKKyAgICAgICAgCisgICAgICAgIHRoaXMuaGFuZGxlT3B0aW1pemVk
RnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQoKTsKKyAgICAgICAgCisgICAgICAgIHJldHVybiB0cnVl
OworICAgIH0sCisgICAgICAgIAorICAgIGhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5Ub3VjaENh
bmNlbDogZnVuY3Rpb24oZXZlbnQpIHsKKyAgICAgICAgdGhpcy5jb250cm9scy5vcHRpbWl6ZWRG
dWxsc2NyZWVuQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOworICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICB9LAorCiAgICAgaGFuZGxlU3RhcnRQbGF5YmFja0J1dHRvblRvdWNoU3Rh
cnQ6IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgIHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1
dHRvbi5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKKyAgICAgICAgdGhpcy5jb250cm9scy5zdGFy
dFBsYXliYWNrQnV0dG9uLmNsYXNzTGlzdC5hZGQoJ2FjdGl2ZScpOwogICAgIH0sCiAKICAgICBo
YW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hFbmQ6IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAg
ICAgIHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3Rp
dmUnKTsKKyAgICAgICAgdGhpcy5jb250cm9scy5zdGFydFBsYXliYWNrQnV0dG9uLmNsYXNzTGlz
dC5yZW1vdmUoJ2FjdGl2ZScpOwogICAgICAgICBpZiAodGhpcy52aWRlby5lcnJvcikKICAgICAg
ICAgICAgIHJldHVybiB0cnVlOwogCkBAIC00MjIsNyArNDcwLDcgQEAgQ29udHJvbGxlcklPUy5w
cm90b3R5cGUgPSB7CiAgICAgfSwKIAogICAgIGhhbmRsZVN0YXJ0UGxheWJhY2tCdXR0b25Ub3Vj
aENhbmNlbDogZnVuY3Rpb24oZXZlbnQpIHsKLSAgICAgICAgdGhpcy5jb250cm9scy5mdWxsc2Ny
ZWVuQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpOworICAgICAgICB0aGlzLmNvbnRy
b2xzLnN0YXJ0UGxheWJhY2tCdXR0b24uY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJyk7CiAgICAg
ICAgIHJldHVybiB0cnVlOwogICAgIH0sCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dl
YkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KaW5kZXggOTJmMzAw
MDA4MWY5YWQ2Njc0NDkwNWMwYjRiODRhY2M0ZDJkNDFhMy4uNzRmYTI4ZTdhN2E1OGRkYTE2M2E2
NjI5YzIzNDhmNTdiMWVlN2JjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5l
eHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KQEAgLTI4NTksNiArMjg1
OSw3IEBAIF93a0dldFVzZXJBZ2VudAogX3drR2V0VmVuZG9yTmFtZUZvck5hdmlnYXRvcgogX3dr
R2V0VmVydGljYWxHbHlwaHNGb3JDaGFyYWN0ZXJzCiBfd2tJc0dCMTgwMzBDb21wbGlhbmNlUmVx
dWlyZWQKK193a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZAogX3drU2V0TGF5ZXJDb250
ZW50c1NjYWxlCiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
aW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1MuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLmgKaW5kZXggMDE0MmQyMTJlYjhhMjI1YWY2
ZGIxZjRhYjk5ZGJkYWY1NDE0NWEyNi4uOThiN2M4OGVkYjBkY2IzMDFlN2Y2ZDRhZjMyYmViOTlk
YmMzNTQ4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVT
eXN0ZW1JbnRlcmZhY2VJT1MuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2Vi
Q29yZVN5c3RlbUludGVyZmFjZUlPUy5oCkBAIC03Myw0ICs3Myw2IEBAIGV4dGVybiBDRlN0cmlu
Z1JlZiAoKndrR2V0T1NOYW1lRm9yVXNlckFnZW50KSh2b2lkKTsKIGV4dGVybiBDRlN0cmluZ1Jl
ZiAoKndrR2V0UGxhdGZvcm1OYW1lRm9yTmF2aWdhdG9yKSh2b2lkKTsKIGV4dGVybiBDRlN0cmlu
Z1JlZiAoKndrR2V0VmVuZG9yTmFtZUZvck5hdmlnYXRvcikodm9pZCk7CiAKK2V4dGVybiBib29s
ICgqd2tJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpKHZvaWQpOworCiAjZW5kaWYgLy8g
V2ViQ29yZVN5c3RlbUludGVyZmFjZUlPU19oCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbSBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tCmluZGV4IDQ5YmMyY2Vi
MThiZjc5YTVlZmIwNTdkNzEwYjBiMjQyZjk3OWE1NDMuLjQyNzM0YzkwOGIzM2Y2ZDMxZDJmNWM5
OGQ3ZTljZDMyZjU1Y2ZmOTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lv
cy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tCkBAIC0xMzAsNiArMTMwLDggQEAg
V0VCQ09SRV9FWFBPUlQgQ0ZTdHJpbmdSZWYgKCp3a0dldE9TTmFtZUZvclVzZXJBZ2VudCkodm9p
ZCk7CiBXRUJDT1JFX0VYUE9SVCBDRlN0cmluZ1JlZiAoKndrR2V0UGxhdGZvcm1OYW1lRm9yTmF2
aWdhdG9yKSh2b2lkKTsKIFdFQkNPUkVfRVhQT1JUIENGU3RyaW5nUmVmICgqd2tHZXRWZW5kb3JO
YW1lRm9yTmF2aWdhdG9yKSh2b2lkKTsKIAorV0VCQ09SRV9FWFBPUlQgQk9PTCAoKndrSXNPcHRp
bWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKSh2b2lkKTsKKwogV0VCQ09SRV9FWFBPUlQgaW50ICgq
d2tFeGVybmFsRGV2aWNlVHlwZUZvclBsYXllcikoQVZQbGF5ZXIgKik7CiBXRUJDT1JFX0VYUE9S
VCBOU1N0cmluZyAqKCp3a0V4ZXJuYWxEZXZpY2VEaXNwbGF5TmFtZUZvclBsYXllcikoQVZQbGF5
ZXIgKik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9z
L1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgKaW5kZXggMzA1ZmFjNzUwOWYzMDA1
ZWJkY2YwYjE5YzFlYjM2ZmIxYTQ0YTExMC4uZGM4YjQxYzg2MWIwMmU3OWFkZmI0M2M4N2U3MmVk
OGJlZTVhMGE1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0LmgKQEAgLTEwNCw2ICsxMDQs
NyBAQCBwcm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9k
ZSBtX21vZGU7CiAgICAgYm9vbCBtX2V4aXRSZXF1ZXN0ZWQ7CiAgICAgYm9vbCBtX2V4aXRDb21w
bGV0ZWQ7CisgICAgYm9vbCBtX2VudGVyUmVxdWVzdGVkOwogCiAgICAgV2ViQVZQbGF5ZXJDb250
cm9sbGVyICpwbGF5ZXJDb250cm9sbGVyKCk7CiAgICAgCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0gYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZL
aXQubW0KaW5kZXggYjFkYmY4MzhkOTczNzUzNmI2ODlkYzEyYWFjZDU0ZDkzOGU5MjQxNS4uM2Qz
NmE0YTZhOGM2NGY4OTYyOGVkMmI1ZmI5MDE5NWUwMGI3N2UxYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Lm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRl
cmZhY2VBVktpdC5tbQpAQCAtODYwLDEwICs4NjAsMTAgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3Jl
ZW5JbnRlcmZhY2VBVktpdDo6ZW50ZXJGdWxsc2NyZWVuKCkKICAgICAKICAgICBtX2V4aXRDb21w
bGV0ZWQgPSBmYWxzZTsKICAgICBtX2V4aXRSZXF1ZXN0ZWQgPSBmYWxzZTsKKyAgICBtX2VudGVy
UmVxdWVzdGVkID0gdHJ1ZTsKICAgICAKICAgICBkaXNwYXRjaF9hc3luYyhkaXNwYXRjaF9nZXRf
bWFpbl9xdWV1ZSgpLCBeewogICAgICAgICBbbV92aWRlb0xheWVyQ29udGFpbmVyIHNldEJhY2tn
cm91bmRDb2xvcjpbW2dldFVJQ29sb3JDbGFzcygpIGJsYWNrQ29sb3JdIENHQ29sb3JdXTsKLSNp
ZiBFTkFCTEUoT1BUSU1JWkVEX0ZVTExTQ1JFRU4pCiAgICAgICAgIGlmIChtX21vZGUgPT0gSFRN
TE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZU9wdGltaXplZCkgewogICAgICAgICAg
ICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc3RhcnRPcHRpbWl6ZWRGdWxsc2NyZWVuV2l0aFN0
YXJ0Q29tcGxldGlvbkhhbmRsZXI6XihCT09MIHN1Y2Nlc3MsIE5TRXJyb3IgKikgewogICAgICAg
ICAgICAgICAgIApAQCAtODk2LDcgKzg5Niw2IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuSW50
ZXJmYWNlQVZLaXQ6OmVudGVyRnVsbHNjcmVlbigpCiAgICAgICAgICAgICAgICAgfQogICAgICAg
ICAgICAgfV07CiAgICAgICAgIH0gZWxzZQotI2VuZGlmCiAgICAgICAgIGlmIChtX21vZGUgPT0g
SFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZVN0YW5kYXJkKSB7CiAgICAgICAg
ICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBlbnRlckZ1bGxTY3JlZW5XaXRoQ29tcGxldGlv
bkhhbmRsZXI6XihCT09MLCBOU0Vycm9yKikKICAgICAgICAgICAgIHsKQEAgLTk0MCwxMiArOTM5
LDEwIEBAIHZvaWQgV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmV4aXRGdWxsc2Ny
ZWVuKFdlYkNvcmU6OkludFJlY3QgZmluYWxSZWN0CiAgICAgICAgICAgICBbbV92aWRlb0xheWVy
Q29udGFpbmVyIHNldFZpZGVvTGF5ZXJHcmF2aXR5OkFWVmlkZW9MYXllckdyYXZpdHlSZXNpemVB
c3BlY3RdOwogICAgICAgICBbW21fcGxheWVyVmlld0NvbnRyb2xsZXIgdmlld10gbGF5b3V0SWZO
ZWVkZWRdOwogICAgICAgICAKLSNpZiBFTkFCTEUoT1BUSU1JWkVEX0ZVTExTQ1JFRU4pCiAgICAg
ICAgIGlmIChtX21vZGUgPT0gSFRNTE1lZGlhRWxlbWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZU9w
dGltaXplZCkgewogICAgICAgICAgICAgW21fd2luZG93IHNldEhpZGRlbjpOT107CiAgICAgICAg
ICAgICBbbV9wbGF5ZXJWaWV3Q29udHJvbGxlciBzdG9wT3B0aW1pemVkRnVsbHNjcmVlbl07CiAg
ICAgICAgIH0gZWxzZQotI2VuZGlmCiAgICAgICAgIGlmIChtX21vZGUgPT0gSFRNTE1lZGlhRWxl
bWVudDo6VmlkZW9GdWxsc2NyZWVuTW9kZVN0YW5kYXJkKSB7CiAgICAgICAgICAgICBbbV9wbGF5
ZXJWaWV3Q29udHJvbGxlciBleGl0RnVsbFNjcmVlbldpdGhDb21wbGV0aW9uSGFuZGxlcjpeKEJP
T0wsIE5TRXJyb3IqKSB7CiAgICAgICAgICAgICAgICAgbV9leGl0Q29tcGxldGVkID0gdHJ1ZTsK
QEAgLTEwMDAsNiArOTk3LDcgQEAgdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dDo6Y2xlYW51cEZ1bGxzY3JlZW4oKQogICAgICAgICBXZWJUaHJlYWRSdW4oXnsKICAgICAgICAg
ICAgIGlmIChtX2Z1bGxzY3JlZW5DaGFuZ2VPYnNlcnZlcikKICAgICAgICAgICAgICAgICBtX2Z1
bGxzY3JlZW5DaGFuZ2VPYnNlcnZlci0+ZGlkQ2xlYW51cEZ1bGxzY3JlZW4oKTsKKyAgICAgICAg
ICAgIG1fZW50ZXJSZXF1ZXN0ZWQgPSBmYWxzZTsKICAgICAgICAgICAgIHByb3RlY3QgPSBudWxs
cHRyOwogICAgICAgICB9KTsKICAgICB9KTsKQEAgLTEwMzAsNiArMTAyOCw5IEBAIHZvaWQgV2Vi
VmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmludmFsaWRhdGUoKQogCiB2b2lkIFdlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpyZXF1ZXN0SGlkZUFuZEV4aXRGdWxsc2NyZWVu
KCkKIHsKKyAgICBpZiAoIW1fZW50ZXJSZXF1ZXN0ZWQpCisgICAgICAgIHJldHVybjsKKyAgICAK
ICAgICBpZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVP
cHRpbWl6ZWQpCiAgICAgICAgIHJldHVybjsKICAgICAKQEAgLTEwNDMsNyArMTA0NCw3IEBAIHZv
aWQgV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OnJlcXVlc3RIaWRlQW5kRXhpdEZ1
bGxzY3JlZW4oKQogICAgICAgICB9XTsKICAgICB9KTsKIAotICAgIGlmIChtX3ZpZGVvRnVsbHNj
cmVlbk1vZGVsKQorICAgIGlmIChtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsICYmICFtX2V4aXRSZXF1
ZXN0ZWQpCiAgICAgICAgIG1fdmlkZW9GdWxsc2NyZWVuTW9kZWwtPnJlcXVlc3RFeGl0RnVsbHNj
cmVlbigpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggODFjM2YwOWZmNTllYTEwNGRkMDM0ODRmMWEw
MmYwMzgyZWZlMDBhZC4uZjIyOWVlZjE2ODc0ODI3NGU5OTdmNGEyYjIwYjg2N2RlYzU0NjYyNyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50
ZXJmYWNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlN5c3Rl
bUludGVyZmFjZS5tbQpAQCAtMTMxLDYgKzEzMSw3IEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1J
bnRlcmZhY2Uodm9pZCkKICAgICBJTklUKEdldEF2YWlsYWJsZVNjcmVlblNpemUpOwogICAgIElO
SVQoR2V0U2NyZWVuU2NhbGVGYWN0b3IpOwogICAgIElOSVQoSXNHQjE4MDMwQ29tcGxpYW5jZVJl
cXVpcmVkKTsKKyAgICBJTklUKElzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCk7CiAjZW5k
aWYKIAogICAgIElOSVQoQ3JlYXRlQ1RMaW5lV2l0aFVuaUNoYXJQcm92aWRlcik7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0
ZW1JbnRlcmZhY2UubW0gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KaW5kZXggZmEwMjE3OWQzMTg2ZWIwODU2OWNiZjVi
NTg0ZWQwNGNiY2M3MGE2Zi4uNmMyYzhhMGY2NWY1NTQ5ZWViNjQ4MGEzNjFmYzNjYmU0ZmUyMjM3
YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9t
YWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbQpAQCAtMjA3LDYgKzIwNyw3
IEBAIHZvaWQgSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2Uodm9pZCkKICAgICAgICAgSU5JVChH
ZXRBdmFpbGFibGVTY3JlZW5TaXplKTsKICAgICAgICAgSU5JVChHZXRTY3JlZW5TY2FsZUZhY3Rv
cik7CiAgICAgICAgIElOSVQoSXNHQjE4MDMwQ29tcGxpYW5jZVJlcXVpcmVkKTsKKyAgICAgICAg
SU5JVChJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOwogI2VuZGlmCiAKICNpZiBFTkFC
TEUoUFVCTElDX1NVRkZJWF9MSVNUKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>240967</attachid>
            <date>2014-11-04 15:41:22 -0800</date>
            <delta_ts>2014-12-03 11:40:20 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-138351-20141104154135.patch</filename>
            <type>text/plain</type>
            <size>26658</size>
            <attacher name="Jeremy Jones">jeremyj-wk</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc1NTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTQ4MmRjNDE5MjBiM2Vi
YWZjYzg1NzFhYjA0NWI1ZmJjY2ZkYzA5My4uMTlmNDUzMGRkZDhmMjg3ZDc4ODEyZmNmNmJmNTZj
OWUzY2I4OTcxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUwIEBACisyMDE0LTExLTAzICBKZXJl
bXkgSm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBl
bmFibGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGRlZCBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uIHRvIGpz
IG1lZGlhIGVsZW1lbnQgY29udHJvbHMuIFJlbW92ZSAjaWYgY29uZGl0aW9uYWwgCisgICAgICAg
IGFuZCB1c2Ugb3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUgZmVhdHVyZSBh
dCBydW50aW1lCisKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9s
c0hvc3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9sc0hvc3Q6OmVudGVyRnVs
bHNjcmVlbk9wdGltaXplZCk6IGVuYWJsZQorICAgICAgICAoV2ViQ29yZTo6TWVkaWFDb250cm9s
c0hvc3Q6Om9wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpOiBhZGRlZAorICAgICAgICAqIE1v
ZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5oOiBhZGQgb3B0aW1pemVkRnVs
bHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5pZGw6IGRpdHRvCisgICAgICAgICogTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21l
ZGlhQ29udHJvbHNBcHBsZS5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAqIE1vZHVs
ZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuanM6CisgICAgICAgIChDb250cm9s
bGVyLnByb3RvdHlwZS5jcmVhdGVDb250cm9scyk6IGFkZCBidXR0b24KKyAgICAgICAgKENvbnRy
b2xsZXIucHJvdG90eXBlLmhhbmRsZVJlYWR5U3RhdGVDaGFuZ2UpOiB1cGRhdGUgYnV0dG9uCisg
ICAgICAgIChDb250cm9sbGVyLnByb3RvdHlwZS51cGRhdGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uKTogYWRkZWQKKyAgICAgICAgKiBNb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9s
c2lPUy5jc3M6CisgICAgICAgIChhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6
ZWQtZnVsbHNjcmVlbi1idXR0b24pOiBhZGRlZAorICAgICAgICAodmlkZW86Oi13ZWJraXQtbWVk
aWEtY29udHJvbHMtb3B0aW1pemVkLWZ1bGxzY3JlZW4tYnV0dG9uKTogYWRkZWQKKyAgICAgICAg
KHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRv
bjphY3RpdmUpOiBhZGRlZAorICAgICAgICAqIE1vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzaU9TLmpzOgorICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuY3JlYXRlQ29u
dHJvbHMpOiBsaXN0ZW4gZm9yIGV2ZW50cyBmcm9tIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24K
KyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmNvbmZpZ3VyZUlubGluZUNvbnRyb2xz
KTogYWRkIGJ1dHRvbiBmb3Igbm9uLWF1ZGlvIHdoZW4gc3VwcG9ydGVkLgorICAgICAgICAoQ29u
dHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2UpOiAyLWZpbmdlciBk
b3VibGUtdGFwIGdlc3R1cmUgZm9yIG9wdGltaXplZCBmdWxsc2NyZWVuCisgICAgICAgIChDb250
cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVXcmFwcGVyVG91Y2hTdGFydCk6IGRpdHRvCisgICAg
ICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVPcHRpbWl6ZWRGdWxsc2NyZWVuQnV0
dG9uQ2xpY2tlZCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5k
bGVPcHRpbWl6ZWRGdWxsc2NyZWVuVG91Y2hTdGFydCk6IGFkZGVkIAorICAgICAgICAoQ29udHJv
bGxlcklPUy5wcm90b3R5cGUuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kKTogYWRk
ZWQKKyAgICAgICAgKENvbnRyb2xsZXJJT1MucHJvdG90eXBlLmhhbmRsZU9wdGltaXplZEZ1bGxz
Y3JlZW5Ub3VjaENhbmNlbCk6IGFkZGVkCisgICAgICAgIChDb250cm9sbGVySU9TLnByb3RvdHlw
ZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hTdGFydCk6IGZpeCB0eXBvCisgICAgICAg
IChDb250cm9sbGVySU9TLnByb3RvdHlwZS5oYW5kbGVTdGFydFBsYXliYWNrQnV0dG9uVG91Y2hF
bmQpOiBmaXggdHlwbworICAgICAgICAoQ29udHJvbGxlcklPUy5wcm90b3R5cGUuaGFuZGxlU3Rh
cnRQbGF5YmFja0J1dHRvblRvdWNoQ2FuY2VsKTogZml4IHR5cG8KKyAgICAgICAgKiBXZWJDb3Jl
LmV4cC5pbjoKKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlP
Uy5oOiBhZGRlZCB3a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBs
YXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLm1tOiBhZGRlZCB3a0lzT3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZAorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1
bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oOgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9XZWJWaWRl
b0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5tbToKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVl
bkludGVyZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4pOiBlbmFibGUgZmVhdHVyZQorICAgICAg
ICAoV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmV4aXRGdWxsc2NyZWVuKTogZW5h
YmxlIGZlYXR1cmUKKyAgICAgICAgKFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0Ojpj
bGVhbnVwRnVsbHNjcmVlbik6IG9ubHkgcmVxdWVzdCBleGl0IHdoZW4gZW50ZXJlZCBhbmQgbm90
IHJlcXVlc3RlZCBleGl0CisgICAgICAgIChXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktp
dDo6cmVxdWVzdEhpZGVBbmRFeGl0RnVsbHNjcmVlbik6IGRpdHRvCisKIDIwMTQtMTEtMDMgIFNp
bW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBsZS5jb20+CiAKICAgICAgICAgTm9uLWZhc3Qg
c2Nyb2xsYWJsZSByZWdpb24gb3ZlcmxheSBvZmZzZXRzIHRoZSBvdmVybGF5IGJ5IHRvcENvbnRl
bnRJbnNldApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGU2MWQxMWRiOWE0NDg0MzlmNDlkZjNhZTIzOTkz
OTVkYTMzZGUxZmIuLjlhMjM0ZjhmMDNhNGQwNjQ1NjExMDY3ZmQxOTkyZGRiNGM3MjNjM2QgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0
L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxNC0xMS0wMyAgSmVyZW15IEpvbmVz
ICA8amVyZW15akBhcHBsZS5jb20+CisKKyAgICAgICAgQWRkIGJ1dHRvbiBhbmQgZW5hYmxlIG9w
dGltaXplZCBmdWxsc2NyZWVuLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM4MzUxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkIElzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCB0byBlbmFibGUg
dGhlIGZlYXR1cmUgb25seSB3aGVyZSBhcHByb3ByaWF0ZS4KKworICAgICAgICAqIFdlYkNvcmVT
dXBwb3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbToKKyAgICAgICAgKEluaXRXZWJDb3JlU3lzdGVt
SW50ZXJmYWNlKTogYWRkZWQKKwogMjAxNC0xMS0wMyAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1
ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE3NTQw
NiwgcjE3NTQxMywgYW5kIHIxNzU0MjMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMDZkYzFkZjA0ZTNhYTEyMjYx
OWE0NTE5ZjZlMWRiOWI0ZDRlNzM4Yi4uOTMzMDcwZTU2MmU5ZjVlOTdlNDM4YzQ0MGFhODFjZDhi
MjljY2I0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBACisyMDE0LTExLTAzICBKZXJlbXkg
Sm9uZXMgIDxqZXJlbXlqQGFwcGxlLmNvbT4KKworICAgICAgICBBZGQgYnV0dG9uIGFuZCBlbmFi
bGUgb3B0aW1pemVkIGZ1bGxzY3JlZW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xMzgzNTEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkIHRvIGVu
YWJsZSB0aGUgZmVhdHVyZSBvbmx5IHdoZXJlIGFwcHJvcHJpYXRlLgorCisgICAgICAgICogV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tOgorICAgICAg
ICAoSW5pdFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2UpOiBhZGQgSXNPcHRpbWl6ZWRGdWxsc2NyZWVu
U3VwcG9ydGVkCisKIDIwMTQtMTEtMDMgIFNpbW9uIEZyYXNlciAgPHNpbW9uLmZyYXNlckBhcHBs
ZS5jb20+CiAKICAgICAgICAgRXhwb3NlIHZpc2libGVEZWJ1Z092ZXJsYXlSZWdpb25zIHByZWYg
dmlhIHRoZSBXSzIgQyBTUEkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHBy
b2ovbWVkaWFDb250cm9sc0xvY2FsaXplZFN0cmluZ3MuanMgYi9Tb3VyY2UvV2ViQ29yZS9Fbmds
aXNoLmxwcm9qL21lZGlhQ29udHJvbHNMb2NhbGl6ZWRTdHJpbmdzLmpzCmluZGV4IDY4NjNkMzli
NmI0NDNhYjk4Njc5ODNhZTIzMzM1MmYxMjU0NDY2MGYuLjk1ZGNlZjEwOTZhOTBlOTM3Mjk2OWJh
M2FjZGFmZGY5ZjJiZjg4N2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0VuZ2xpc2gubHBy
b2ovbWVkaWFDb250cm9sc0xvY2FsaXplZFN0cmluZ3MuanMKKysrIGIvU291cmNlL1dlYkNvcmUv
RW5nbGlzaC5scHJvai9tZWRpYUNvbnRyb2xzTG9jYWxpemVkU3RyaW5ncy5qcwpAQCAtMTEsNiAr
MTEsNyBAQCB2YXIgVUlTdHJpbmdUYWJsZSA9IHsKICAgICAnQ2FwdGlvbnMnOiAnQ2FwdGlvbnMn
LAogICAgICdDaG9vc2UgV2lyZWxlc3MgRGlzcGxheSc6ICdDaG9vc2UgV2lyZWxlc3MgRGlzcGxh
eScsCiAgICAgJ0Rpc3BsYXkgRnVsbCBTY3JlZW4nOiAnRGlzcGxheSBGdWxsIFNjcmVlbicsCisg
ICAgJ0Rpc3BsYXkgT3B0aW1pemVkIEZ1bGwgU2NyZWVuJzogJ0Rpc3BsYXkgT3B0aW1pemVkIEZ1
bGwgU2NyZWVuJywKICAgICAnRHVyYXRpb24nOiAnRHVyYXRpb24nLAogICAgICdFbGFwc2VkJzog
J0VsYXBzZWQnLAogICAgICdFcnJvcic6ICdFcnJvcicsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwIGIvU291cmNl
L1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmNwcAppbmRl
eCBlYjMwMmY0MGVkNjk5NjQxZjQ1NWU2MTE5NWJmOGE3N2UyYjEyNjM3Li41MjA5N2JlMGUzMmRl
MWYxYjViYzA5NmIyYzNjN2I2ZDc1MmY1Yjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5jcHAKQEAgLTE5
MCwxMCArMTkwLDE5IEBAIHZvaWQgTWVkaWFDb250cm9sc0hvc3Q6OmV4aXRlZEZ1bGxzY3JlZW4o
KQogICAgIAogdm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6ZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVk
KCkKIHsKLSNpZiBFTkFCTEUoT1BUSU1JWkVEX0ZVTExTQ1JFRU4pCisjaWYgUExBVEZPUk0oSU9T
KQogICAgIG1fbWVkaWFFbGVtZW50LT5lbnRlckZ1bGxzY3JlZW5PcHRpbWl6ZWQoKTsKICNlbmRp
ZgogfQorICAgIAorYm9vbCBNZWRpYUNvbnRyb2xzSG9zdDo6b3B0aW1pemVkRnVsbHNjcmVlblN1
cHBvcnRlZCgpCit7CisjaWYgUExBVEZPUk0oSU9TKQorICAgIHJldHVybiB3a0lzT3B0aW1pemVk
RnVsbHNjcmVlblN1cHBvcnRlZCgpOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYK
K30KIAogdm9pZCBNZWRpYUNvbnRyb2xzSG9zdDo6dXBkYXRlQ2FwdGlvbkRpc3BsYXlTaXplcygp
CiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVk
aWFDb250cm9sc0hvc3QuaCBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9N
ZWRpYUNvbnRyb2xzSG9zdC5oCmluZGV4IDFiZWEzMWU5YzRlNjhjODE1MWIzYzFjNjIxN2MzYmJk
MTdhNzA0MDkuLjMwNTBlMjc4ZWQ3Mjg4MzdhMzRmYzRkMDNjMGRkZDQzMzYyYTA2NzkgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xz
SG9zdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNv
bnRyb2xzSG9zdC5oCkBAIC03MSw2ICs3MSw3IEBAIHB1YmxpYzoKICAgICB2b2lkIGVudGVyZWRG
dWxsc2NyZWVuKCk7CiAgICAgdm9pZCBleGl0ZWRGdWxsc2NyZWVuKCk7CiAgICAgdm9pZCBlbnRl
ckZ1bGxzY3JlZW5PcHRpbWl6ZWQoKTsKKyAgICBib29sIG9wdGltaXplZEZ1bGxzY3JlZW5TdXBw
b3J0ZWQoKTsKIAogICAgIFN0cmluZyBleHRlcm5hbERldmljZURpc3BsYXlOYW1lKCkgY29uc3Q7
CiAgICAgU3RyaW5nIGV4dGVybmFsRGV2aWNlVHlwZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9NZWRpYUNvbnRyb2xzSG9zdC5p
ZGwKaW5kZXggOGRmNWU4OGI4OGUyZmQ2MDQ5YmEyNDg4MDYzODdjYTY4YWNjYTBkYS4uYjhlOWJm
ODJlYTgxNjZiOWEwYTk2YTMxOTU5YmQ5NGJiOWM4NzBiYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL01lZGlhQ29udHJvbHNIb3N0LmlkbAorKysgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvTWVkaWFDb250cm9sc0hvc3QuaWRs
CkBAIC01Niw0ICs1Niw1IEBAIGVudW0gRGV2aWNlVHlwZSB7CiAgICAgdm9pZCBlbnRlcmVkRnVs
bHNjcmVlbigpOwogICAgIHZvaWQgZXhpdGVkRnVsbHNjcmVlbigpOwogICAgIHZvaWQgZW50ZXJG
dWxsc2NyZWVuT3B0aW1pemVkKCk7CisgICAgcmVhZG9ubHkgYXR0cmlidXRlIGJvb2xlYW4gb3B0
aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmNzcyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCmluZGV4
IGIzMTE1MjQxNDhjY2U0MWZlMzkxMDJjMTkxOTMzZWMxZDYyN2IwMDkuLjk3MjgyMTI4NzQ1MGUy
NTdlOGIwZTJlNmFhOTQ1MmJhOTE2MjdmNDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCkBAIC0z
ODksNiArMzg5LDExIEBAIHZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4t
YnV0dG9uLmV4aXQsCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1
dHRvbi5leGl0IHsKICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3ht
bCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE1
IDE1IiB0cmFuc2Zvcm09InJvdGF0ZSg5MCwwLDApIj48bGluZWFyR3JhZGllbnQgaWQ9ImdyYWRp
ZW50IiB4Mj0iMCIgeTI9IjEwMCUiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3Rv
cCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9InJnYigyMTYsIDIxNiwgMjE2KSIvPjxzdG9wIG9mZnNl
dD0iMC40Mzc1IiBzdG9wLWNvbG9yPSJyZ2IoMjE2LCAyMTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9
IjAuNDM3NSIgc3RvcC1jb2xvcj0icmdiKDIwOCwgMjA4LCAyMDgpIi8+PHN0b3Agb2Zmc2V0PSIw
LjUiIHN0b3AtY29sb3I9InJnYigyMDgsIDIwOCwgMjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBz
dG9wLWNvbG9yPSJyZ2IoMjAwLCAyMDAsIDIwMCkiLz48c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29s
b3I9InJnYigyMDgsIDIwOCwgMjA4KSIvPjwvbGluZWFyR3JhZGllbnQ+PHBhdGggZD0iTSA3LDgg
bSAwLDYgLTIsLTIgLTIsMiBjIDAsMCAtMSwxIC0yLDAgLTEsLTEgMCwtMiAwLC0yIGwgMiwtMiAt
MiwtMiA2LDAgeiIgc3R5bGU9ImZpbGw6dXJsKCNncmFkaWVudCkgIi8+PHBhdGggZD0iTSA4LDcg
bSAwLC02IDIsMiAyLC0yIGMgMCwwIDEsLTEgMiwwIDEsMSAwLDIgMCwyIGwgLTIsMiAyLDIgLTYs
MCB6IiBzdHlsZT0iZmlsbDp1cmwoI2dyYWRpZW50KSAiLz48L3N2Zz4nKTsKIH0KK3ZpZGVvOjot
d2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiwKK2F1ZGlv
Ojotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbiB7Cisg
ICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4bWxucz0i
aHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNSAxNSIgdHJhbnNmb3Jt
PSJyb3RhdGUoOTAsMCwwKSI+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkaWVudCIgeDI9IjAiIHky
PSIxMDAlIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHN0b3Agb2Zmc2V0PSIwIiBz
dG9wLWNvbG9yPSJyZ2IoMjE2LCAyMTYsIDIxNikiLz48c3RvcCBvZmZzZXQ9IjAuNDM3NSIgc3Rv
cC1jb2xvcj0icmdiKDIxNiwgMjE2LCAyMTYpIi8+PHN0b3Agb2Zmc2V0PSIwLjQzNzUiIHN0b3At
Y29sb3I9InJnYigyMDgsIDIwOCwgMjA4KSIvPjxzdG9wIG9mZnNldD0iMC41IiBzdG9wLWNvbG9y
PSJyZ2IoMjA4LCAyMDgsIDIwOCkiLz48c3RvcCBvZmZzZXQ9IjAuNSIgc3RvcC1jb2xvcj0icmdi
KDIwMCwgMjAwLCAyMDApIi8+PHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSJyZ2IoMjA4LCAy
MDgsIDIwOCkiLz48L2xpbmVhckdyYWRpZW50PjxwYXRoIGQ9Ik0gNyw4IG0gMCw2IC0yLC0yIC0y
LDIgYyAwLDAgLTEsMSAtMiwwIC0xLC0xIDAsLTIgMCwtMiBsIDIsLTIgLTIsLTIgNiwwIHoiIHN0
eWxlPSJmaWxsOnVybCgjZ3JhZGllbnQpICIvPjxwYXRoIGQ9Ik0gOCw3IG0gMCwtNiAyLDIgMiwt
MiBjIDAsMCAxLC0xIDIsMCAxLDEgMCwyIDAsMiBsIC0yLDIgMiwyIC02LDAgeiIgc3R5bGU9ImZp
bGw6dXJsKCNncmFkaWVudCkgIi8+PC9zdmc+Jyk7CisgICAgbWFyZ2luOiAwIDdweDsKK30KIHZp
ZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLXN0YXR1cy1kaXNwbGF5LAogYXVkaW86Oi13ZWJr
aXQtbWVkaWEtY29udHJvbHMtc3RhdHVzLWRpc3BsYXkgewogICAgIGN1cnNvcjogZGVmYXVsdDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNv
bnRyb2xzQXBwbGUuanMgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMvbWVk
aWFDb250cm9sc0FwcGxlLmpzCmluZGV4IDY3ZDkyYTE1NjI0NTk5YmI1ZDQwZjc4NTVhNDE0YWI1
ODNmOWRkZWUuLjhhMThhYWUzNWM4ODY5MDQxNjU0MmQ5NDAzOGZhMzA1ZjUzNTQwMmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xz
QXBwbGUuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlh
Q29udHJvbHNBcHBsZS5qcwpAQCAtMzk1LDYgKzM5NSwxMSBAQCBDb250cm9sbGVyLnByb3RvdHlw
ZSA9IHsKICAgICAgICAgZnVsbHNjcmVlbkJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ3BzZXVkbycsICct
d2Via2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uJyk7CiAgICAgICAgIGZ1bGxz
Y3JlZW5CdXR0b24uc2V0QXR0cmlidXRlKCdhcmlhLWxhYmVsJywgdGhpcy5VSVN0cmluZygnRGlz
cGxheSBGdWxsIFNjcmVlbicpKTsKICAgICAgICAgdGhpcy5saXN0ZW5Gb3IoZnVsbHNjcmVlbkJ1
dHRvbiwgJ2NsaWNrJywgdGhpcy5oYW5kbGVGdWxsc2NyZWVuQnV0dG9uQ2xpY2tlZCk7CisKKyAg
ICAgICAgdmFyIG9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24gPSB0aGlzLmNvbnRyb2xzLm9wdGlt
aXplZEZ1bGxzY3JlZW5CdXR0b24gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdidXR0b24nKTsK
KyAgICAgICAgb3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5zZXRBdHRyaWJ1dGUoJ3BzZXVkbycs
ICctd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVuLWJ1dHRvbicpOwor
ICAgICAgICBvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLnNldEF0dHJpYnV0ZSgnYXJpYS1sYWJl
bCcsIHRoaXMuVUlTdHJpbmcoJ0Rpc3BsYXkgT3B0aW1pemVkIEZ1bGwgU2NyZWVuJykpOworICAg
ICAgICB0aGlzLmxpc3RlbkZvcihvcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9uLCAnY2xpY2snLCB0
aGlzLmhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b25DbGlja2VkKTsKICAgICB9LAogCiAg
ICAgc2V0Q29udHJvbHNUeXBlOiBmdW5jdGlvbih0eXBlKQpAQCAtNTU0LDYgKzU1OSw3IEBAIENv
bnRyb2xsZXIucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLnVwZGF0ZUNhcHRpb25CdXR0b24o
KTsKICAgICAgICAgdGhpcy51cGRhdGVDYXB0aW9uQ29udGFpbmVyKCk7CiAgICAgICAgIHRoaXMu
dXBkYXRlRnVsbHNjcmVlbkJ1dHRvbigpOworICAgICAgICB0aGlzLnVwZGF0ZU9wdGltaXplZEZ1
bGxzY3JlZW5CdXR0b24oKTsKICAgICAgICAgdGhpcy51cGRhdGVQcm9ncmVzcygpOwogICAgIH0s
CiAKQEAgLTg1OSw2ICs4NjUsMTEgQEAgQ29udHJvbGxlci5wcm90b3R5cGUgPSB7CiAgICAgICAg
IHRoaXMuY29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QudG9nZ2xlKHRoaXMuQ2xh
c3NOYW1lcy5oaWRkZW4sICF0aGlzLnZpZGVvLndlYmtpdFN1cHBvcnRzRnVsbHNjcmVlbik7CiAg
ICAgfSwKIAorICAgIHVwZGF0ZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b246IGZ1bmN0aW9uKCkK
KyAgICB7CisgICAgICAgIHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5j
bGFzc0xpc3QudG9nZ2xlKHRoaXMuQ2xhc3NOYW1lcy5oaWRkZW4sICF0aGlzLnZpZGVvLndlYmtp
dFN1cHBvcnRzRnVsbHNjcmVlbik7CisgICAgfSwKKyAgICAKICAgICBoYW5kbGVGdWxsc2NyZWVu
QnV0dG9uQ2xpY2tlZDogZnVuY3Rpb24oZXZlbnQpCiAgICAgewogICAgICAgICBpZiAodGhpcy5p
c0Z1bGxTY3JlZW4oKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFj
b250cm9scy9tZWRpYUNvbnRyb2xzaU9TLmNzcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbWVk
aWFjb250cm9scy9tZWRpYUNvbnRyb2xzaU9TLmNzcwppbmRleCAxODg1MDBhMTZjY2M5MDFkZTFi
NDcxMzAzOWI3ZGJhZDE2OTg4ZDUwLi4wZmQwODY2Njk0MzVlZmM3MjJkZmMwNmJjMzM1MWEzYTA2
NDhjOTk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlhY29udHJvbHMv
bWVkaWFDb250cm9sc2lPUy5jc3MKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tZWRpYWNv
bnRyb2xzL21lZGlhQ29udHJvbHNpT1MuY3NzCkBAIC0yMDksNyArMjA5LDkgQEAgYXVkaW86Oi13
ZWJraXQtbWVkaWEtY29udHJvbHMtc3RhcnQtcGxheWJhY2stYnV0dG9uLmZhaWxlZCB7CiB2aWRl
bzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiwKIGF1ZGlvOjotd2Via2l0LW1l
ZGlhLWNvbnRyb2xzLXBsYXktYnV0dG9uLAogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
ZnVsbHNjcmVlbi1idXR0b24sCi1hdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2Ny
ZWVuLWJ1dHRvbiB7CithdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1mdWxsc2NyZWVuLWJ1
dHRvbiwKK3ZpZGVvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2NyZWVu
LWJ1dHRvbiwKK2F1ZGlvOjotd2Via2l0LW1lZGlhLWNvbnRyb2xzLW9wdGltaXplZC1mdWxsc2Ny
ZWVuLWJ1dHRvbiB7CiAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwogICAgIGRpc3BsYXk6
IGJsb2NrOwogICAgIHBhZGRpbmc6IDA7CkBAIC0yNDEsNiArMjQzLDE0IEBAIHZpZGVvOjotd2Vi
a2l0LW1lZGlhLWNvbnRyb2xzLWZ1bGxzY3JlZW4tYnV0dG9uIHsKICAgICBiYWNrZ3JvdW5kLWlt
YWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9y
Zy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM1IDQ0Ij48ZyBzdHJva2U9InJnYmEoMCwgMCwgMCwg
MC40KSIgZmlsbD0ibm9uZSI+PHBhdGggZD0iTSAxMC41LDIwLjUgdiAtNSBoIDUgTSAxMC41LDE1
LjUgbCA1LDUiLz48cGF0aCBkPSJNIDI0LjUsMjQuNSB2IDUgaCAtNSBNIDI0LjUsMjkuNSBsIC01
LC01Ii8+PC9nPjwvc3ZnPicpOwogfQogCit2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy1v
cHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b24geworICAgIHdpZHRoOiAzNXB4OworICAgIGhlaWdo
dDogNDRweDsKKyAgICBiYWNrZ3JvdW5kLXNpemU6IDM1cHggNDRweDsKKyAgICBvcGFjaXR5OiAw
Ljk7CisgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3N2Zyt4bWwsPHN2ZyB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzNSA0NCI+PGcg
c3Ryb2tlPSJyZ2JhKDAsIDAsIDAsIDAuNCkiIGZpbGw9Im5vbmUiPjxwYXRoIGQ9Ik0gMTAsMTUg
aCAxNCB2IDE0IGggLTE0IHYgLTE0Ii8+PC9nPjwvc3ZnPicpOworfQorCiB2aWRlbzo6LXdlYmtp
dC1tZWRpYS1jb250cm9scy1wbGF5LWJ1dHRvbiB7CiAgICAgd2lkdGg6IDQxcHg7CiAgICAgaGVp
Z2h0OiA0NHB4OwpAQCAtMjYxLDYgKzI3MSwxMCBAQCB2aWRlbzo6LXdlYmtpdC1tZWRpYS1jb250
cm9scy1mdWxsc2NyZWVuLWJ1dHRvbjphY3RpdmUgewogICAgIGJhY2tncm91bmQtaW1hZ2U6IHVy
bCgnZGF0YTppbWFnZS9zdmcreG1sLDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAv
c3ZnIiB2aWV3Qm94PSIwIDAgMzUgNDQiPjxnIHN0cm9rZT0id2hpdGUiIGZpbGw9Im5vbmUiPjxw
YXRoIGQ9Ik0gMTAsMjAgdiAtNSBoIDUgTSAxMCwxNSBsIDUsNSIvPjxwYXRoIGQ9Ik0gMjQsMjQg
diA1IGggLTUgTSAyNCwyOSBsIC01LC01Ii8+PC9nPjwvc3ZnPicpOwogfQogCit2aWRlbzo6LXdl
YmtpdC1tZWRpYS1jb250cm9scy1vcHRpbWl6ZWQtZnVsbHNjcmVlbi1idXR0b246YWN0aXZlIHsK
KyAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2Uvc3ZnK3htbCw8c3ZnIHhtbG5z
PSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDM1IDQ0Ij48ZyBzdHJv
a2U9IndoaXRlIiBmaWxsPSJub25lIj48cGF0aCBkPSJNIDEwLDE1IGggMTQgdiAxNCBoIC0xNCB2
IC0xNCIvPjwvZz48L3N2Zz4nKTsKK30KKwogdmlkZW86Oi13ZWJraXQtbWVkaWEtY29udHJvbHMt
dGltZWxpbmUsCiBhdWRpbzo6LXdlYmtpdC1tZWRpYS1jb250cm9scy10aW1lbGluZSB7CiAgICAg
LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNpT1MuanMgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5qcwppbmRleCBlZDU4YjQzZmZl
NjVlODMyMDJiZWJlMWVhNjQzNmFhZDBkZmI4YTc1Li45ZWVhMWRmNjllMTQ4MGIxYTgyYzFlNjlm
YTQ5YzA1MWExN2M4OTMyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21lZGlh
Y29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc2lPUy5qcwpAQCAtMTY3LDYgKzE2Nyw5IEBAIENv
bnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLmNv
bnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24sICd0b3VjaHN0YXJ0JywgdGhpcy5oYW5kbGVGdWxsc2Ny
ZWVuVG91Y2hTdGFydCk7CiAgICAgICAgIHRoaXMubGlzdGVuRm9yKHRoaXMuY29udHJvbHMuZnVs
bHNjcmVlbkJ1dHRvbiwgJ3RvdWNoZW5kJywgdGhpcy5oYW5kbGVGdWxsc2NyZWVuVG91Y2hFbmQp
OwogICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24s
ICd0b3VjaGNhbmNlbCcsIHRoaXMuaGFuZGxlRnVsbHNjcmVlblRvdWNoQ2FuY2VsKTsKKyAgICAg
ICAgdGhpcy5saXN0ZW5Gb3IodGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxsc2NyZWVuQnV0dG9u
LCAndG91Y2hzdGFydCcsIHRoaXMuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoU3RhcnQp
OworICAgICAgICB0aGlzLmxpc3RlbkZvcih0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3Jl
ZW5CdXR0b24sICd0b3VjaGVuZCcsIHRoaXMuaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNo
RW5kKTsKKyAgICAgICAgdGhpcy5saXN0ZW5Gb3IodGhpcy5jb250cm9scy5vcHRpbWl6ZWRGdWxs
c2NyZWVuQnV0dG9uLCAndG91Y2hjYW5jZWwnLCB0aGlzLmhhbmRsZU9wdGltaXplZEZ1bGxzY3Jl
ZW5Ub3VjaENhbmNlbCk7CiAgICAgICAgIHRoaXMuc3RvcExpc3RlbmluZ0Zvcih0aGlzLmNvbnRy
b2xzLnBsYXlCdXR0b24sICdjbGljaycsIHRoaXMuaGFuZGxlUGxheUJ1dHRvbkNsaWNrZWQpOwog
ICAgIH0sCiAKQEAgLTIwNCw4ICsyMDcsMTEgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7
CiAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLnRpbWVsaW5lQm94LmFwcGVuZENoaWxkKHRoaXMu
Y29udHJvbHMudGltZWxpbmUpOwogICAgICAgICAgICAgdGhpcy5jb250cm9scy50aW1lbGluZUJv
eC5hcHBlbmRDaGlsZCh0aGlzLmNvbnRyb2xzLnJlbWFpbmluZ1RpbWUpOwogICAgICAgICB9Ci0g
ICAgICAgIGlmICghdGhpcy5pc0F1ZGlvKCkpCisgICAgICAgIGlmICghdGhpcy5pc0F1ZGlvKCkp
IHsKICAgICAgICAgICAgIHRoaXMuY29udHJvbHMucGFuZWwuYXBwZW5kQ2hpbGQodGhpcy5jb250
cm9scy5mdWxsc2NyZWVuQnV0dG9uKTsKKyAgICAgICAgICAgIGlmICh0aGlzLmhvc3Qub3B0aW1p
emVkRnVsbHNjcmVlblN1cHBvcnRlZCkKKyAgICAgICAgICAgICAgICB0aGlzLmNvbnRyb2xzLnBh
bmVsLmFwcGVuZENoaWxkKHRoaXMuY29udHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbik7
CisgICAgICAgIH0KICAgICB9LAogCiAgICAgY29uZmlndXJlRnVsbFNjcmVlbkNvbnRyb2xzOiBm
dW5jdGlvbigpIHsKQEAgLTMyMCw2ICszMjYsMTAgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUg
PSB7CiAgICAgaGFuZGxlQmFzZUdlc3R1cmVDaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KSB7CiAgICAg
ICAgIGlmICghdGhpcy52aWRlby5jb250cm9scyB8fCB0aGlzLmlzQXVkaW8oKSB8fCB0aGlzLmlz
RnVsbFNjcmVlbigpIHx8IHRoaXMuZ2VzdHVyZVN0YXJ0VGltZSA9PT0gdW5kZWZpbmVkIHx8IHRo
aXMuY29udHJvbHNUeXBlID09IENvbnRyb2xsZXJJT1MuU3RhcnRQbGF5YmFja0NvbnRyb2xzKQog
ICAgICAgICAgICAgcmV0dXJuOworICAgICAgICAKKyAgICAgICAgdmFyIHNjYWxlRGV0ZWN0aW9u
VGhyZXNob2xkID0gMC4yOworICAgICAgICBpZiAoZXZlbnQuc2NhbGUgPiAxICsgc2NhbGVEZXRl
Y3Rpb25UaHJlc2hvbGQgfHwgZXZlbnQuc2NhbGUgPCAxIC0gc2NhbGVEZXRlY3Rpb25UaHJlc2hv
bGQpCisgICAgICAgICAgICBkZWxldGUgdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lOwogCiAgICAg
ICAgIGlmICh0aGlzLm1vc3RSZWNlbnROdW1iZXJPZlRhcmdldHRlZFRvdWNoZXMgPT0gMiAmJiBl
dmVudC5zY2FsZSA+PSAxLjApCiAgICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpOwpA
QCAtMzMxLDE2ICszNDEsMTMgQEAgQ29udHJvbGxlcklPUy5wcm90b3R5cGUgPSB7CiAKICAgICAg
ICAgdmFyIHZlbG9jaXR5ID0gTWF0aC5hYnMoZXZlbnQuc2NhbGUgLSAxKSAvIGR1cmF0aW9uOwog
ICAgICAgICAKLSAgICAgICAgaWYgKHZlbG9jaXR5IDwgMikKKyAgICAgICAgdmFyIHBpbmNoT3V0
VmVsb2NpdHlUaHJlc2hvbGQgPSAyOworICAgICAgICB2YXIgcGluY2hPdXRHZXN0dXJlU2NhbGVU
aHJlc2hvbGQgPSAxLjI1OworICAgICAgICBpZiAodmVsb2NpdHkgPCBwaW5jaE91dFZlbG9jaXR5
VGhyZXNob2xkIHx8IGV2ZW50LnNjYWxlIDwgcGluY2hPdXRHZXN0dXJlU2NhbGVUaHJlc2hvbGQp
CiAgICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgaWYgKGV2ZW50LnNjYWxlID49IDEuMjUp
IHsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmdlc3R1cmVTdGFydFRpbWU7Ci0gICAgICAgICAg
ICB0aGlzLnZpZGVvLndlYmtpdEVudGVyRnVsbHNjcmVlbigpOwotICAgICAgICB9IGVsc2UgaWYg
KGV2ZW50LnNjYWxlIDw9IDAuNzUpIHsKLSAgICAgICAgICAgIGRlbGV0ZSB0aGlzLmdlc3R1cmVT
dGFydFRpbWU7Ci0gICAgICAgICAgICB0aGlzLmhvc3QuZW50ZXJGdWxsc2NyZWVuT3B0aW1pemVk
KCk7Ci0gICAgICAgIH0KKyAgICAgICAgZGVsZXRlIHRoaXMuZ2VzdHVyZVN0YXJ0VGltZTsKKyAg
ICAgICAgdGhpcy52aWRlby53ZWJraXRFbnRlckZ1bGxzY3JlZW4oKTsKICAgICB9LAogCiAgICAg
aGFuZGxlQmFzZUdlc3R1cmVFbmQ6IGZ1bmN0aW9uKGV2ZW50KSB7CkBAIC0zNTIsNyArMzU5LDI0
IEBAIENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICAgICAgcmV0dXJuOwogCiAg
ICAgICAgIHRoaXMubW9zdFJlY2VudE51bWJlck9mVGFyZ2V0dGVkVG91Y2hlcyA9IGV2ZW50LnRh
cmdldFRvdWNoZXMubGVuZ3RoOwotCisgICAgICAgIAorICAgICAgICBpZiAodGhpcy5ob3N0Lm9w
dGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQpIHsKKyAgICAgICAgICAgIGlmICh0aGlzLm1vc3RS
ZWNlbnROdW1iZXJPZlRhcmdldHRlZFRvdWNoZXMgPT0gMikgeworICAgICAgICAgICAgICAgIHZh
ciBub3cgPSBuZXcgRGF0ZSgpOworICAgICAgICAgICAgICAgIGlmICh0aGlzLmxhc3REb3VibGVU
b3VjaFRpbWUgPT09IHVuZGVmaW5lZCkgeworICAgICAgICAgICAgICAgICAgICB0aGlzLmxhc3RE
b3VibGVUb3VjaFRpbWUgPSBub3c7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAg
ICAgICAgICAgICAgdmFyIGRvdWJsZVRvdWNoSW50ZXJ2YWxUaHJlc2hvbGRtcyA9IDMwMAorICAg
ICAgICAgICAgICAgICAgICBpZiAobm93IC0gdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lIDwgZG91
YmxlVG91Y2hTcGVlZFRocmVzaG9sZCkgeworICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRl
IHRoaXMubGFzdERvdWJsZVRvdWNoVGltZTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50
LnByZXZlbnREZWZhdWx0KCk7CisgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3QuZW50
ZXJGdWxsc2NyZWVuT3B0aW1pemVkKCk7CisgICAgICAgICAgICAgICAgICAgIH0gZWxzZQorICAg
ICAgICAgICAgICAgICAgICAgICAgdGhpcy5sYXN0RG91YmxlVG91Y2hUaW1lID0gbm93OworICAg
ICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyAgICAgICAgfQorICAgICAgICAKICAgICAg
ICAgaWYgKHRoaXMuY29udHJvbHNBcmVIaWRkZW4oKSkgewogICAgICAgICAgICAgdGhpcy5zaG93
Q29udHJvbHMoKTsKICAgICAgICAgICAgIGlmICh0aGlzLmhpZGVUaW1lcikKQEAgLTQwNywxMiAr
NDMxLDM2IEBAIENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogICAgICAgICByZXR1cm4gdHJ1
ZTsKICAgICB9LAogCisgICAgaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbkNsaWNrZWQ6
IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIGlmICh0aGlzLmlzRnVsbGVudGVyRnVsbHNjcmVl
bk9wdGltaXplZFNjcmVlbigpKQorICAgICAgICAgICAgdGhpcy52aWRlby53ZWJraXRFeGl0RnVs
bHNjcmVlbigpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLmhvc3QuZW50ZXJGdWxs
c2NyZWVuT3B0aW1pemVkKCk7CisgICAgfSwKKyAgICAgICAgCisgICAgaGFuZGxlT3B0aW1pemVk
RnVsbHNjcmVlblRvdWNoU3RhcnQ6IGZ1bmN0aW9uKCkgeworICAgICAgICB0aGlzLmNvbnRyb2xz
Lm9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CisgICAg
fSwKKyAgICAgICAgCisgICAgaGFuZGxlT3B0aW1pemVkRnVsbHNjcmVlblRvdWNoRW5kOiBmdW5j
dGlvbihldmVudCkgeworICAgICAgICB0aGlzLmNvbnRyb2xzLm9wdGltaXplZEZ1bGxzY3JlZW5C
dXR0b24uY2xhc3NMaXN0LnJlbW92ZSgnYWN0aXZlJyk7CisgICAgICAgIAorICAgICAgICB0aGlz
LmhhbmRsZU9wdGltaXplZEZ1bGxzY3JlZW5CdXR0b25DbGlja2VkKCk7CisgICAgICAgIAorICAg
ICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9LAorICAgICAgICAKKyAgICBoYW5kbGVPcHRpbWl6ZWRG
dWxsc2NyZWVuVG91Y2hDYW5jZWw6IGZ1bmN0aW9uKGV2ZW50KSB7CisgICAgICAgIHRoaXMuY29u
dHJvbHMub3B0aW1pemVkRnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUn
KTsKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgfSwKKwogICAgIGhhbmRsZVN0YXJ0UGxheWJh
Y2tCdXR0b25Ub3VjaFN0YXJ0OiBmdW5jdGlvbihldmVudCkgewotICAgICAgICB0aGlzLmNvbnRy
b2xzLmZ1bGxzY3JlZW5CdXR0b24uY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CisgICAgICAgIHRo
aXMuY29udHJvbHMuc3RhcnRQbGF5YmFja0J1dHRvbi5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsK
ICAgICB9LAogCiAgICAgaGFuZGxlU3RhcnRQbGF5YmFja0J1dHRvblRvdWNoRW5kOiBmdW5jdGlv
bihldmVudCkgewotICAgICAgICB0aGlzLmNvbnRyb2xzLmZ1bGxzY3JlZW5CdXR0b24uY2xhc3NM
aXN0LnJlbW92ZSgnYWN0aXZlJyk7CisgICAgICAgIHRoaXMuY29udHJvbHMuc3RhcnRQbGF5YmFj
a0J1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKICAgICAgICAgaWYgKHRoaXMudmlk
ZW8uZXJyb3IpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKIApAQCAtNDIyLDcgKzQ3MCw3IEBA
IENvbnRyb2xsZXJJT1MucHJvdG90eXBlID0gewogICAgIH0sCiAKICAgICBoYW5kbGVTdGFydFBs
YXliYWNrQnV0dG9uVG91Y2hDYW5jZWw6IGZ1bmN0aW9uKGV2ZW50KSB7Ci0gICAgICAgIHRoaXMu
Y29udHJvbHMuZnVsbHNjcmVlbkJ1dHRvbi5jbGFzc0xpc3QucmVtb3ZlKCdhY3RpdmUnKTsKKyAg
ICAgICAgdGhpcy5jb250cm9scy5zdGFydFBsYXliYWNrQnV0dG9uLmNsYXNzTGlzdC5yZW1vdmUo
J2FjdGl2ZScpOwogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9LAogCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhw
LmluCmluZGV4IDkyZjMwMDAwODFmOWFkNjY3NDQ5MDVjMGI0Yjg0YWNjNGQyZDQxYTMuLjc0ZmEy
OGU3YTdhNThkZGExNjNhNjYyOWMyMzQ4ZjU3YjFlZTdiYzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUuZXhwLmluCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUuZXhwLmlu
CkBAIC0yODU5LDYgKzI4NTksNyBAQCBfd2tHZXRVc2VyQWdlbnQKIF93a0dldFZlbmRvck5hbWVG
b3JOYXZpZ2F0b3IKIF93a0dldFZlcnRpY2FsR2x5cGhzRm9yQ2hhcmFjdGVycwogX3drSXNHQjE4
MDMwQ29tcGxpYW5jZVJlcXVpcmVkCitfd2tJc09wdGltaXplZEZ1bGxzY3JlZW5TdXBwb3J0ZWQK
IF93a1NldExheWVyQ29udGVudHNTY2FsZQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5oCmluZGV4IDAx
NDJkMjEyZWI4YTIyNWFmNmRiMWY0YWI5OWRiZGFmNTQxNDVhMjYuLjk4YjdjODhlZGIwZGNiMzAx
ZTdmNmQ0YWYzMmJlYjk5ZGJjMzU0OGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2lvcy9XZWJDb3JlU3lzdGVtSW50ZXJmYWNlSU9TLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1MuaApAQCAtNzMsNCArNzMsNiBA
QCBleHRlcm4gQ0ZTdHJpbmdSZWYgKCp3a0dldE9TTmFtZUZvclVzZXJBZ2VudCkodm9pZCk7CiBl
eHRlcm4gQ0ZTdHJpbmdSZWYgKCp3a0dldFBsYXRmb3JtTmFtZUZvck5hdmlnYXRvcikodm9pZCk7
CiBleHRlcm4gQ0ZTdHJpbmdSZWYgKCp3a0dldFZlbmRvck5hbWVGb3JOYXZpZ2F0b3IpKHZvaWQp
OwogCitleHRlcm4gYm9vbCAoKndrSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKSh2b2lk
KTsKKwogI2VuZGlmIC8vIFdlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1NfaApkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYkNvcmVTeXN0ZW1JbnRlcmZhY2VJT1MubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5t
bQppbmRleCA0OWJjMmNlYjE4YmY3OWE1ZWZiMDU3ZDcxMGIwYjI0MmY5NzlhNTQzLi40MjczNGM5
MDhiMzNmNmQzMWQyZjVjOThkN2U5Y2QzMmY1NWNmZjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbQorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViQ29yZVN5c3RlbUludGVyZmFjZUlPUy5tbQpAQCAt
MTMwLDYgKzEzMCw4IEBAIFdFQkNPUkVfRVhQT1JUIENGU3RyaW5nUmVmICgqd2tHZXRPU05hbWVG
b3JVc2VyQWdlbnQpKHZvaWQpOwogV0VCQ09SRV9FWFBPUlQgQ0ZTdHJpbmdSZWYgKCp3a0dldFBs
YXRmb3JtTmFtZUZvck5hdmlnYXRvcikodm9pZCk7CiBXRUJDT1JFX0VYUE9SVCBDRlN0cmluZ1Jl
ZiAoKndrR2V0VmVuZG9yTmFtZUZvck5hdmlnYXRvcikodm9pZCk7CiAKK1dFQkNPUkVfRVhQT1JU
IEJPT0wgKCp3a0lzT3B0aW1pemVkRnVsbHNjcmVlblN1cHBvcnRlZCkodm9pZCk7CisKIFdFQkNP
UkVfRVhQT1JUIGludCAoKndrRXhlcm5hbERldmljZVR5cGVGb3JQbGF5ZXIpKEFWUGxheWVyICop
OwogV0VCQ09SRV9FWFBPUlQgTlNTdHJpbmcgKigqd2tFeGVybmFsRGV2aWNlRGlzcGxheU5hbWVG
b3JQbGF5ZXIpKEFWUGxheWVyICopOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9pb3MvV2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQuaCBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCmluZGV4
IDMwNWZhYzc1MDlmMzAwNWViZGNmMGIxOWMxZWIzNmZiMWE0NGExMTAuLmRjOGI0MWM4NjFiMDJl
NzlhZGZiNDNjODdlNzJlZDhiZWU1YTBhNWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdC5o
CkBAIC0xMDQsNiArMTA0LDcgQEAgcHJvdGVjdGVkOgogICAgIEhUTUxNZWRpYUVsZW1lbnQ6OlZp
ZGVvRnVsbHNjcmVlbk1vZGUgbV9tb2RlOwogICAgIGJvb2wgbV9leGl0UmVxdWVzdGVkOwogICAg
IGJvb2wgbV9leGl0Q29tcGxldGVkOworICAgIGJvb2wgbV9lbnRlclJlcXVlc3RlZDsKIAogICAg
IFdlYkFWUGxheWVyQ29udHJvbGxlciAqcGxheWVyQ29udHJvbGxlcigpOwogICAgIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNjcmVlbkludGVy
ZmFjZUFWS2l0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vaW9zL1dlYlZpZGVvRnVsbHNj
cmVlbkludGVyZmFjZUFWS2l0Lm1tCmluZGV4IGIxZGJmODM4ZDk3Mzc1MzZiNjg5ZGMxMmFhY2Q1
NGQ5MzhlOTI0MTUuLjNkMzZhNGE2YThjNjRmODk2MjhlZDJiNWZiOTAxOTVlMDBiNzdlMWMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2lvcy9XZWJWaWRlb0Z1bGxzY3JlZW5J
bnRlcmZhY2VBVktpdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9pb3MvV2ViVmlk
ZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQubW0KQEAgLTg2MCwxMCArODYwLDEwIEBAIHZvaWQg
V2ViVmlkZW9GdWxsc2NyZWVuSW50ZXJmYWNlQVZLaXQ6OmVudGVyRnVsbHNjcmVlbigpCiAgICAg
CiAgICAgbV9leGl0Q29tcGxldGVkID0gZmFsc2U7CiAgICAgbV9leGl0UmVxdWVzdGVkID0gZmFs
c2U7CisgICAgbV9lbnRlclJlcXVlc3RlZCA9IHRydWU7CiAgICAgCiAgICAgZGlzcGF0Y2hfYXN5
bmMoZGlzcGF0Y2hfZ2V0X21haW5fcXVldWUoKSwgXnsKICAgICAgICAgW21fdmlkZW9MYXllckNv
bnRhaW5lciBzZXRCYWNrZ3JvdW5kQ29sb3I6W1tnZXRVSUNvbG9yQ2xhc3MoKSBibGFja0NvbG9y
XSBDR0NvbG9yXV07Ci0jaWYgRU5BQkxFKE9QVElNSVpFRF9GVUxMU0NSRUVOKQogICAgICAgICBp
ZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVPcHRpbWl6
ZWQpIHsKICAgICAgICAgICAgIFttX3BsYXllclZpZXdDb250cm9sbGVyIHN0YXJ0T3B0aW1pemVk
RnVsbHNjcmVlbldpdGhTdGFydENvbXBsZXRpb25IYW5kbGVyOl4oQk9PTCBzdWNjZXNzLCBOU0Vy
cm9yICopIHsKICAgICAgICAgICAgICAgICAKQEAgLTg5Niw3ICs4OTYsNiBAQCB2b2lkIFdlYlZp
ZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjplbnRlckZ1bGxzY3JlZW4oKQogICAgICAgICAg
ICAgICAgIH0KICAgICAgICAgICAgIH1dOwogICAgICAgICB9IGVsc2UKLSNlbmRpZgogICAgICAg
ICBpZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVTdGFu
ZGFyZCkgewogICAgICAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgZW50ZXJGdWxsU2Ny
ZWVuV2l0aENvbXBsZXRpb25IYW5kbGVyOl4oQk9PTCwgTlNFcnJvciopCiAgICAgICAgICAgICB7
CkBAIC05NDAsMTIgKzkzOSwxMCBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFW
S2l0OjpleGl0RnVsbHNjcmVlbihXZWJDb3JlOjpJbnRSZWN0IGZpbmFsUmVjdAogICAgICAgICAg
ICAgW21fdmlkZW9MYXllckNvbnRhaW5lciBzZXRWaWRlb0xheWVyR3Jhdml0eTpBVlZpZGVvTGF5
ZXJHcmF2aXR5UmVzaXplQXNwZWN0XTsKICAgICAgICAgW1ttX3BsYXllclZpZXdDb250cm9sbGVy
IHZpZXddIGxheW91dElmTmVlZGVkXTsKICAgICAgICAgCi0jaWYgRU5BQkxFKE9QVElNSVpFRF9G
VUxMU0NSRUVOKQogICAgICAgICBpZiAobV9tb2RlID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVv
RnVsbHNjcmVlbk1vZGVPcHRpbWl6ZWQpIHsKICAgICAgICAgICAgIFttX3dpbmRvdyBzZXRIaWRk
ZW46Tk9dOwogICAgICAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgc3RvcE9wdGltaXpl
ZEZ1bGxzY3JlZW5dOwogICAgICAgICB9IGVsc2UKLSNlbmRpZgogICAgICAgICBpZiAobV9tb2Rl
ID09IEhUTUxNZWRpYUVsZW1lbnQ6OlZpZGVvRnVsbHNjcmVlbk1vZGVTdGFuZGFyZCkgewogICAg
ICAgICAgICAgW21fcGxheWVyVmlld0NvbnRyb2xsZXIgZXhpdEZ1bGxTY3JlZW5XaXRoQ29tcGxl
dGlvbkhhbmRsZXI6XihCT09MLCBOU0Vycm9yKikgewogICAgICAgICAgICAgICAgIG1fZXhpdENv
bXBsZXRlZCA9IHRydWU7CkBAIC0xMDAwLDYgKzk5Nyw3IEBAIHZvaWQgV2ViVmlkZW9GdWxsc2Ny
ZWVuSW50ZXJmYWNlQVZLaXQ6OmNsZWFudXBGdWxsc2NyZWVuKCkKICAgICAgICAgV2ViVGhyZWFk
UnVuKF57CiAgICAgICAgICAgICBpZiAobV9mdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXIpCiAgICAg
ICAgICAgICAgICAgbV9mdWxsc2NyZWVuQ2hhbmdlT2JzZXJ2ZXItPmRpZENsZWFudXBGdWxsc2Ny
ZWVuKCk7CisgICAgICAgICAgICBtX2VudGVyUmVxdWVzdGVkID0gZmFsc2U7CiAgICAgICAgICAg
ICBwcm90ZWN0ID0gbnVsbHB0cjsKICAgICAgICAgfSk7CiAgICAgfSk7CkBAIC0xMDMwLDYgKzEw
MjgsOSBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjppbnZhbGlkYXRl
KCkKIAogdm9pZCBXZWJWaWRlb0Z1bGxzY3JlZW5JbnRlcmZhY2VBVktpdDo6cmVxdWVzdEhpZGVB
bmRFeGl0RnVsbHNjcmVlbigpCiB7CisgICAgaWYgKCFtX2VudGVyUmVxdWVzdGVkKQorICAgICAg
ICByZXR1cm47CisgICAgCiAgICAgaWYgKG1fbW9kZSA9PSBIVE1MTWVkaWFFbGVtZW50OjpWaWRl
b0Z1bGxzY3JlZW5Nb2RlT3B0aW1pemVkKQogICAgICAgICByZXR1cm47CiAgICAgCkBAIC0xMDQz
LDcgKzEwNDQsNyBAQCB2b2lkIFdlYlZpZGVvRnVsbHNjcmVlbkludGVyZmFjZUFWS2l0OjpyZXF1
ZXN0SGlkZUFuZEV4aXRGdWxsc2NyZWVuKCkKICAgICAgICAgfV07CiAgICAgfSk7CiAKLSAgICBp
ZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2RlbCkKKyAgICBpZiAobV92aWRlb0Z1bGxzY3JlZW5Nb2Rl
bCAmJiAhbV9leGl0UmVxdWVzdGVkKQogICAgICAgICBtX3ZpZGVvRnVsbHNjcmVlbk1vZGVsLT5y
ZXF1ZXN0RXhpdEZ1bGxzY3JlZW4oKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IDgxYzNmMDlmZjU5
ZWExMDRkZDAzNDg0ZjFhMDJmMDM4MmVmZTAwYWQuLmYyMjllZWYxNjg3NDgyNzRlOTk3ZjRhMmIy
MGI4NjdkZWM1NDY2MjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJTeXN0ZW1JbnRlcmZhY2UubW0KQEAgLTEzMSw2ICsxMzEsNyBAQCB2b2lkIElu
aXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZvaWQpCiAgICAgSU5JVChHZXRBdmFpbGFibGVTY3Jl
ZW5TaXplKTsKICAgICBJTklUKEdldFNjcmVlblNjYWxlRmFjdG9yKTsKICAgICBJTklUKElzR0Ix
ODAzMENvbXBsaWFuY2VSZXF1aXJlZCk7CisgICAgSU5JVChJc09wdGltaXplZEZ1bGxzY3JlZW5T
dXBwb3J0ZWQpOwogI2VuZGlmCiAKICAgICBJTklUKENyZWF0ZUNUTGluZVdpdGhVbmlDaGFyUHJv
dmlkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9tYWMvV2ViU3lzdGVtSW50ZXJmYWNlLm1tCmluZGV4IGZhMDIxNzlk
MzE4NmViMDg1NjljYmY1YjU4NGVkMDRjYmNjNzBhNmYuLjZjMmM4YTBmNjVmNTU0OWVlYjY0ODBh
MzYxZmMzY2JlNGZlMjIzN2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViQ29yZVN1cHBvcnQvbWFjL1dlYlN5c3RlbUludGVyZmFjZS5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L21hYy9XZWJTeXN0ZW1JbnRlcmZhY2UubW0K
QEAgLTIwNyw2ICsyMDcsNyBAQCB2b2lkIEluaXRXZWJDb3JlU3lzdGVtSW50ZXJmYWNlKHZvaWQp
CiAgICAgICAgIElOSVQoR2V0QXZhaWxhYmxlU2NyZWVuU2l6ZSk7CiAgICAgICAgIElOSVQoR2V0
U2NyZWVuU2NhbGVGYWN0b3IpOwogICAgICAgICBJTklUKElzR0IxODAzMENvbXBsaWFuY2VSZXF1
aXJlZCk7CisgICAgICAgIElOSVQoSXNPcHRpbWl6ZWRGdWxsc2NyZWVuU3VwcG9ydGVkKTsKICNl
bmRpZgogCiAjaWYgRU5BQkxFKFBVQkxJQ19TVUZGSVhfTElTVCkK
</data>

          </attachment>
      

    </bug>

</bugzilla>