<?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>230692</bug_id>
          
          <creation_ts>2021-09-23 08:55:24 -0700</creation_ts>
          <short_desc>[Media Controls] Allow for a single mute and volume button</short_desc>
          <delta_ts>2021-09-23 12:08:18 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Antoine Quint">graouts</assigned_to>
          <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>hi</cc>
    
    <cc>jer.noble</cc>
    
    <cc>joepeck</cc>
    
    <cc>philipj</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1796517</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-09-23 08:55:24 -0700</bug_when>
    <thetext>[Media Controls] Allow for a single mute and volume button</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796519</commentid>
    <comment_count>1</comment_count>
      <attachid>439049</attachid>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-09-23 09:01:47 -0700</bug_when>
    <thetext>Created attachment 439049
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796520</commentid>
    <comment_count>2</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-09-23 09:01:53 -0700</bug_when>
    <thetext>&lt;rdar://problem/79956248&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796564</commentid>
    <comment_count>3</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2021-09-23 10:44:58 -0700</bug_when>
    <thetext>Committed r282971 (242061@main): &lt;https://commits.webkit.org/242061@main&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1796620</commentid>
    <comment_count>4</comment_count>
      <attachid>439049</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2021-09-23 12:08:18 -0700</bug_when>
    <thetext>Comment on attachment 439049
Patch

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

&gt; Source/WebCore/Modules/modern-media-controls/controls/range-button.js:75
&gt; +        if (event.currentTarget === this.element &amp;&amp; event.type == &quot;pointerdown&quot;)

oops `==`

&gt; Source/WebCore/Modules/modern-media-controls/controls/range-button.js:101
&gt; +            if (this.uiDelegate &amp;&amp; typeof this.uiDelegate.controlValueWillStartChanging === &quot;function&quot;)
&gt; +                this.uiDelegate.controlValueWillStartChanging(this);

NIT: you can simplify this as
```
    this.uiDelegate?.controlValueWillStartChanging?.(this);
```

&gt; Source/WebCore/Modules/modern-media-controls/controls/range-button.js:134
&gt; +            if (this.uiDelegate &amp;&amp; typeof this.uiDelegate.controlValueDidStopChanging === &quot;function&quot;)
&gt; +                this.uiDelegate.controlValueDidStopChanging(this);

ditto (:100)
```
    this.uiDelegate?.controlValueDidStopChanging?.(this);
```

&gt; Source/WebCore/Modules/modern-media-controls/controls/range-button.js:138
&gt; +            if (this._enabled &amp;&amp; this.uiDelegate &amp;&amp; typeof this.uiDelegate.buttonWasPressed === &quot;function&quot;)
&gt; +                this.uiDelegate.buttonWasPressed(this);

ditto (:100)
```
    if (this._enabled)
        this.uiDelegate?.buttonWasPressed?.(this);
```

&gt; Source/WebCore/Modules/modern-media-controls/controls/volume-button.js:26
&gt; +class VolumeButton extends RangeButton

I wonder if instead of basically duplicating the entirety of `MuteButton` we could&apos;ve had `MuteButton` extend from `RangeButton` and just have a `set allowsSlidingToAdjustVolume` to switch behavior at runtime or something 🤔</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>439049</attachid>
            <date>2021-09-23 09:01:47 -0700</date>
            <delta_ts>2021-09-23 09:14:03 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-230692-20210923180145.patch</filename>
            <type>text/plain</type>
            <size>30947</size>
            <attacher name="Antoine Quint">graouts</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjgyNzQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDk1M2Q3MDZlMDY5ZDc5
ZjA4MGQ1ZTFjNzYzNjI2NDA0MzBmODZhYi4uMGZiMWI0NmMzNDZhZDcyNTc2ODc4ZDdmNzFkNTJi
NmQ2MGEyYzNmNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDY0IEBACisyMDIxLTA5LTIzICBBbnRv
aW5lIFF1aW50ICA8Z3Jhb3V0c0B3ZWJraXQub3JnPgorCisgICAgICAgIFtNZWRpYSBDb250cm9s
c10gQWxsb3cgZm9yIGEgc2luZ2xlIG11dGUgYW5kIHZvbHVtZSBidXR0b24KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIzMDY5MgorICAgICAgICA8cmRh
cjovL3Byb2JsZW0vNzk5NTYyNDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgVXAgdG8gbm93LCB0aGUgbXV0ZSBidXR0b24gaW4gdGhlIGNvbnRyb2xz
IGJhciB3b3VsZCBhY3QgYXMgYSB0b2dnbGUgZm9yIHRoZSAibXV0ZWQiIHByb3BlcnR5IG9uIHRo
ZSBtZWRpYSBlbGVtZW50LgorICAgICAgICBIb3ZlcmluZyB0aGF0IGJ1dHRvbiB3b3VsZCBtYWtl
IGEgc2xpZGVyIGFwcGVhciB0aGF0IHdvdWxkIGFsbG93IHRoZSAidm9sdW1lIiBwcm9wZXJ0eSBv
ZiB0aGUgbWVkaWEgZWxlbWVudCB0byBiZQorICAgICAgICBjaGFuZ2VkIGFzIHdlbGwuCisKKyAg
ICAgICAgV2Ugbm93IGFsbG93IGZvciBhIHNpbmdsZSBidXR0b24gd2l0aCBhIGJ1aWx0LWluIHJh
bmdlIGluZGljYXRvciB0byBiZSB1c2VkIGZvciBtdXRlIGFuZCB2b2x1bWUuIENsaWNraW5nIG9u
IHRoZQorICAgICAgICBidXR0b24gd2l0aG91dCBtb3Zpbmcgd2lsbCB0b2dnbGUgdGhlIG11dGUg
c3RhdHVzLCB3aGlsZSBtb3ZpbmcgdGhlIG1vdXNlIHVwIG9yIGRvd24gd2lsbCBhZGp1c3QgdGhl
IHZvbHVtZQorICAgICAgICBhbmQgc2hvdyBhIHBpbGwtbGluayByYW5nZSBpbmRpY2F0b3Igc2hv
d2luZyB0aGUgY3VycmVudCB2b2x1bWUuCisKKyAgICAgICAgVGhpcyBuZXcgY29udHJvbCBpcyBh
IEJ1dHRvbiBzdWJjbGFzcyBjYWxsZWQgUmFuZ2VCdXR0b24uIFRoZSBuZXcgVm9sdW1lQnV0dG9u
IGNsYXNzIGV4dGVuZHMgaXQgdG8gcHJvdmlkZSB0aGUKKyAgICAgICAgY29ycmVjdCBpY29uIGRl
cGVuZGluZyBvbiB0aGUgdm9sdW1lIGFuZCBtdXRlZCBzdGF0ZS4gVGhlIG5ldyBNdXRlQW5kVm9s
dW1lU3VwcG9ydCBjbGFzcyBpcyB1c2VkIGluIGNvbmp1bmN0aW9uCisgICAgICAgIHdpdGggVm9s
dW1lQnV0dG9uLgorCisgICAgICAgIFRvIGluZGljYXRlIHRoYXQgbWVkaWEgY29udHJvbHMgd2Fu
dCB0byB1c2UgdGhpcyBuZXcgc3R5bGUsIE1lZGlhQ29udHJvbHMgc3ViY2xhc3NlcyBjYW4gb3Zl
cnJpZGUgdGhlCisgICAgICAgIHVzZXNTaW5nbGVNdXRlQW5kVm9sdW1lQnV0dG9uIGdldHRlciB0
byByZXR1cm4gdHJ1ZS4gQ3VycmVudGx5IGl0J3MgZmFsc2UgZXZlcnl3aGVyZSB1bnRpbCB3ZSBk
ZWNpZGUKKyAgICAgICAgdG8gdXNlIHRoaXMgc3R5bGUuCisKKyAgICAgICAgKiBEZXJpdmVkU291
cmNlcy1pbnB1dC54Y2ZpbGVsaXN0OgorICAgICAgICAqIERlcml2ZWRTb3VyY2VzLm1ha2U6Cisg
ICAgICAgICogTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWVkaWEtY29u
dHJvbHMuanM6CisgICAgICAgIChNZWRpYUNvbnRyb2xzLnByb3RvdHlwZS5nZXQgdXNlc1Npbmds
ZU11dGVBbmRWb2x1bWVCdXR0b24pOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL3JhbmdlLWJ1dHRvbi5jc3M6IEFkZGVkLgorICAgICAgICAoYnV0dG9u
LnJhbmdlID4gZGl2LmluZGljYXRvcik6CisgICAgICAgIChidXR0b24ucmFuZ2UgPiBkaXYuaW5k
aWNhdG9yID4gZGl2LmZpbGwpOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzL3JhbmdlLWJ1dHRvbi5qczogQWRkZWQuCisgICAgICAgIChSYW5nZUJ1dHRv
bi5wcm90b3R5cGUuZ2V0IHZhbHVlKToKKyAgICAgICAgKFJhbmdlQnV0dG9uLnByb3RvdHlwZS5z
ZXQgdmFsdWUpOgorICAgICAgICAoUmFuZ2VCdXR0b24ucHJvdG90eXBlLmNvbW1pdFByb3BlcnR5
KToKKyAgICAgICAgKFJhbmdlQnV0dG9uLnByb3RvdHlwZS5oYW5kbGVFdmVudCk6CisgICAgICAg
IChSYW5nZUJ1dHRvbi5wcm90b3R5cGUuX2hhbmRsZVBvaW50ZXJkb3duKToKKyAgICAgICAgKFJh
bmdlQnV0dG9uLnByb3RvdHlwZS5faGFuZGxlUG9pbnRlcm1vdmUpOgorICAgICAgICAoUmFuZ2VC
dXR0b24ucHJvdG90eXBlLl9oYW5kbGVQb2ludGVydXApOgorICAgICAgICAqIE1vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3ZvbHVtZS1idXR0b24uanM6IEFkZGVkLgorICAg
ICAgICAoVm9sdW1lQnV0dG9uKToKKyAgICAgICAgKFZvbHVtZUJ1dHRvbi5wcm90b3R5cGUuZ2V0
IHZvbHVtZSk6CisgICAgICAgIChWb2x1bWVCdXR0b24ucHJvdG90eXBlLnNldCB2b2x1bWUpOgor
ICAgICAgICAoVm9sdW1lQnV0dG9uLnByb3RvdHlwZS5nZXQgbXV0ZWQpOgorICAgICAgICAoVm9s
dW1lQnV0dG9uLnByb3RvdHlwZS5zZXQgbXV0ZWQpOgorICAgICAgICAoVm9sdW1lQnV0dG9uLnBy
b3RvdHlwZS5zZXQgdXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24pOgorICAgICAg
ICAoVm9sdW1lQnV0dG9uLnByb3RvdHlwZS5sYXlvdXQpOgorICAgICAgICAqIE1vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL2pzLWZpbGVzOgorICAgICAgICAqIE1vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanM6CisgICAgICAgIChNZWRpYUNv
bnRyb2xsZXIucHJvdG90eXBlLl9zdXBwb3J0aW5nT2JqZWN0Q2xhc3Nlcyk6CisgICAgICAgICog
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbXV0ZS1hbmQtdm9sdW1lLXN1cHBv
cnQuanM6IEFkZGVkLgorICAgICAgICAoTXV0ZUFuZFZvbHVtZVN1cHBvcnQucHJvdG90eXBlLmdl
dCBjb250cm9sKToKKyAgICAgICAgKE11dGVBbmRWb2x1bWVTdXBwb3J0LnByb3RvdHlwZS5nZXQg
bWVkaWFFdmVudHMpOgorICAgICAgICAoTXV0ZUFuZFZvbHVtZVN1cHBvcnQucHJvdG90eXBlLmNv
bnRyb2xWYWx1ZVdpbGxTdGFydENoYW5naW5nKToKKyAgICAgICAgKE11dGVBbmRWb2x1bWVTdXBw
b3J0LnByb3RvdHlwZS5jb250cm9sVmFsdWVEaWRDaGFuZ2UpOgorICAgICAgICAoTXV0ZUFuZFZv
bHVtZVN1cHBvcnQucHJvdG90eXBlLmNvbnRyb2xWYWx1ZURpZFN0b3BDaGFuZ2luZyk6CisgICAg
ICAgIChNdXRlQW5kVm9sdW1lU3VwcG9ydC5wcm90b3R5cGUuYnV0dG9uV2FzUHJlc3NlZCk6Cisg
ICAgICAgIChNdXRlQW5kVm9sdW1lU3VwcG9ydC5wcm90b3R5cGUuc3luY0NvbnRyb2wpOgorICAg
ICAgICAoTXV0ZUFuZFZvbHVtZVN1cHBvcnQpOgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9q
L3Byb2plY3QucGJ4cHJvajoKKwogMjAyMS0wOS0xOSAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJh
c2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBIYXZlIFNjcm9sbEFuaW1hdGlvbiB3b3JrIGluIHRl
cm1zIG9mIG9mZnNldHMsIG5vdCBwb3NpdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxpc3QgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy1pbnB1dC54Y2ZpbGVsaXN0CmluZGV4IDdlZjM5ZmRjMzVhZWUyYTIzZDNmNmRhNjA2
NzcwMTQ3ZTY4OWY0ZWEuLjRiZjgxNDU3MGUwNWMxYTRiMzA1YTE4MDAwOWFlZDczNjA3ZjczZjAg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLWlucHV0LnhjZmlsZWxp
c3QKKysrIGIvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMtaW5wdXQueGNmaWxlbGlzdApA
QCAtMzI3LDYgKzMyNyw4IEBAICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL3BpcC1wbGFjYXJkLmpzCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL21v
ZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9wbGFjYXJkLmNzcwogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvcGxhY2FyZC5qcwogJChQUk9K
RUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvcGxheS1wYXVz
ZS1idXR0b24uanMKKyQoUFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL3JhbmdlLWJ1dHRvbi5jc3MKKyQoUFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJu
LW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3JhbmdlLWJ1dHRvbi5qcwogJChQUk9KRUNUX0RJUikv
TW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvcmV3aW5kLWJ1dHRvbi5qcwog
JChQUk9KRUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvc2No
ZWR1bGVyLmpzCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9j
b250cm9scy9zZWVrLWJ1dHRvbi5qcwpAQCAtMzQxLDYgKzM0Myw3IEBAICQoUFJPSkVDVF9ESVIp
L01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3RpbWUtY29udHJvbC5qcwog
JChQUk9KRUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdGlt
ZS1sYWJlbC5jc3MKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xz
L2NvbnRyb2xzL3RpbWUtbGFiZWwuanMKICQoUFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3RyYWNrcy1idXR0b24uanMKKyQoUFJPSkVDVF9ESVIpL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3ZvbHVtZS1idXR0b24uanMKICQo
UFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3dhdGNo
b3MtYWN0aXZpdHktaW5kaWNhdG9yLmNzcwogJChQUk9KRUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvY29udHJvbHMvd2F0Y2hvcy1hY3Rpdml0eS1pbmRpY2F0b3IuanMKICQo
UFJPSkVDVF9ESVIpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3dhdGNo
b3MtbGF5b3V0LXRyYWl0cy5qcwpAQCAtMzU3LDYgKzM2MCw3IEBAICQoUFJPSkVDVF9ESVIpL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL2Z1bGxzY3JlZW4tc3VwcG9ydC5qcwog
JChQUk9KRUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEt
Y29udHJvbGxlci1zdXBwb3J0LmpzCiAkKFBST0pFQ1RfRElSKS9Nb2R1bGVzL21vZGVybi1tZWRp
YS1jb250cm9scy9tZWRpYS9tZWRpYS1jb250cm9sbGVyLmpzCiAkKFBST0pFQ1RfRElSKS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1kb2N1bWVudC1jb250cm9sbGVy
LmpzCiskKFBST0pFQ1RfRElSKS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9t
dXRlLWFuZC12b2x1bWUtc3VwcG9ydC5qcwogJChQUk9KRUNUX0RJUikvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvbWVkaWEvbXV0ZS1zdXBwb3J0LmpzCiAkKFBST0pFQ1RfRElSKS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9vdmVyZmxvdy1zdXBwb3J0LmpzCiAkKFBS
T0pFQ1RfRElSKS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9waXAtc3VwcG9y
dC5qcwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1Nv
dXJjZS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNWNmYmJhN2Y2MTA4MWIxZGEx
ODBmYWUwY2FhZTg4MjZkNjFjM2M5Ny4uODhlZDFhM2FlM2NiNzkyYWRlY2FmYmQ3ZjA1NzQzMzg2
YzkyMWY2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQor
KysgYi9Tb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCkBAIC0xNTQ4LDYgKzE1NDgs
NyBAQCBNT0RFUk5fTUVESUFfQ09OVFJPTFNfU1RZTEVfU0hFRVRTID0gXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvbWVkaWEtY29udHJvbHMu
Y3NzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRy
b2xzL21lZGlhLWRvY3VtZW50LmNzcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21vZGVybi1t
ZWRpYS1jb250cm9scy9jb250cm9scy9wbGFjYXJkLmNzcyBcCisgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9yYW5nZS1idXR0b24uY3NzIFwKICAg
ICAkKFdlYkNvcmUpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3NsaWRl
ci5jc3MgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29u
dHJvbHMvc3RhdHVzLWxhYmVsLmNzcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21vZGVybi1t
ZWRpYS1jb250cm9scy9jb250cm9scy90ZXh0LXRyYWNrcy5jc3MgXApAQCAtMTYyMyw2ICsxNjI0
LDggQEAgTU9ERVJOX01FRElBX0NPTlRST0xTX1NDUklQVFMgPSBcCiAgICAgJChXZWJDb3JlKS9N
b2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9yZXdpbmQtYnV0dG9uLmpzIFwK
ICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL2Zv
cndhcmQtYnV0dG9uLmpzIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcyBcCisgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9yYW5nZS1idXR0b24uanMgXAorICAg
ICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvdm9sdW1l
LWJ1dHRvbi5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9s
cy9jb250cm9scy9idXR0b25zLWNvbnRhaW5lci5qcyBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9zdGF0dXMtbGFiZWwuanMgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvY29udHJvbHMt
YmFyLmpzIFwKQEAgLTE2NjMsNiArMTY2Niw3IEBAIE1PREVSTl9NRURJQV9DT05UUk9MU19TQ1JJ
UFRTID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVk
aWEvdGltZS1jb250cm9sLXN1cHBvcnQuanMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rl
cm4tbWVkaWEtY29udHJvbHMvbWVkaWEvdHJhY2tzLXN1cHBvcnQuanMgXAogICAgICQoV2ViQ29y
ZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvdm9sdW1lLXN1cHBvcnQuanMg
XAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbXV0
ZS1hbmQtdm9sdW1lLXN1cHBvcnQuanMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEtZG9jdW1lbnQtY29udHJvbGxlci5qcyBcCiAgICAg
JChXZWJDb3JlKS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS93YXRjaG9zLW1l
ZGlhLWNvbnRyb2xzLXN1cHBvcnQuanMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tb2Rlcm4t
bWVkaWEtY29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcyBcCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9tZWRp
YS1jb250cm9scy5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRy
b2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCmluZGV4IGRlM2RiNjU0OGFkNDk3NTQwNTdk
MTA0MThhYzhkYjQ1NjI5MzJhNjIuLmQyYTYxZDlmOTAzZmQzNzVmMTZmNWM5YmM5NDJjOGMyY2Yx
NDQyZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNv
bnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCisrKyBiL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL21lZGlhLWNvbnRyb2xzLmpzCkBA
IC00NCw2ICs0NCw3IEBAIGNsYXNzIE1lZGlhQ29udHJvbHMgZXh0ZW5kcyBMYXlvdXROb2RlCiAg
ICAgICAgIHRoaXMubXV0ZUJ1dHRvbiA9IG5ldyBNdXRlQnV0dG9uKHRoaXMpOwogICAgICAgICB0
aGlzLnRyYWNrc0J1dHRvbiA9IG5ldyBUcmFja3NCdXR0b24odGhpcyk7CiAgICAgICAgIHRoaXMu
b3ZlcmZsb3dCdXR0b24gPSBuZXcgT3ZlcmZsb3dCdXR0b24odGhpcyk7CisgICAgICAgIHRoaXMu
dm9sdW1lQnV0dG9uID0gbmV3IFZvbHVtZUJ1dHRvbih0aGlzKTsKIAogICAgICAgICB0aGlzLnN0
YXR1c0xhYmVsID0gbmV3IFN0YXR1c0xhYmVsKHRoaXMpOwogICAgICAgICB0aGlzLnRpbWVDb250
cm9sID0gbmV3IFRpbWVDb250cm9sKHRoaXMpOwpAQCAtMjM1LDQgKzIzNiw4IEBAIGNsYXNzIE1l
ZGlhQ29udHJvbHMgZXh0ZW5kcyBMYXlvdXROb2RlCiAgICAgICAgICAgICBzdXBlci5jb21taXRQ
cm9wZXJ0eShwcm9wZXJ0eU5hbWUpOwogICAgIH0KIAorICAgIGdldCB1c2VzU2luZ2xlTXV0ZUFu
ZFZvbHVtZUJ1dHRvbigpCisgICAgeworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQogfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMv
Y29udHJvbHMvcmFuZ2UtYnV0dG9uLmNzcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJu
LW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3JhbmdlLWJ1dHRvbi5jc3MKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNmRl
NTlhNTk1MWU2MWUyZjYzOWRjYzdjYjJlOGU2NzA2NThlMTY1YQotLS0gL2Rldi9udWxsCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3Jh
bmdlLWJ1dHRvbi5jc3MKQEAgLTAsMCArMSw0NSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAy
MSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLgorICovCisKK2J1dHRvbi5yYW5nZSA+IGRpdi5pbmRpY2F0b3IgeworICAg
IC0taW5kaWNhdG9yLXdpZHRoOiA0NXB4OworICAgIC0taW5kaWNhdG9yLWhlaWdodDogMTM0cHg7
CisKKyAgICBwb3NpdGlvbjogYWJzb2x1dGU7CisgICAgdG9wOiBjYWxjKDEwMCUgLSB2YXIoLS1p
bmRpY2F0b3ItaGVpZ2h0KSAtIDVweCk7CisgICAgd2lkdGg6IHZhcigtLWluZGljYXRvci13aWR0
aCk7CisgICAgaGVpZ2h0OiB2YXIoLS1pbmRpY2F0b3ItaGVpZ2h0KTsKKworICAgIGNsaXAtcGF0
aDogcGF0aCgnTTAsMjIuNSBhMjIuNSwyMi41IDAgMCAxIDQ1LDAgdjg5IGEyMi41LDIyLjUgMCAw
IDEgLTQ1LDAgeicpOworfQorCitidXR0b24ucmFuZ2UgPiBkaXYuaW5kaWNhdG9yID4gZGl2LmZp
bGwgeworICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKKyAgICBsZWZ0OiAwOworICAgIGJvdHRvbTog
MDsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDA7CisgICAgYmFja2dyb3VuZC1jb2xv
cjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjUpOworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMvcmFuZ2UtYnV0dG9uLmpz
IGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvY29udHJvbHMv
cmFuZ2UtYnV0dG9uLmpzCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjg1YWM4NTVkZTg1YmE0YmVlOWY3ZDFjYjhmMjY5
OGU4MDU2NjQ5YTcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21v
ZGVybi1tZWRpYS1jb250cm9scy9jb250cm9scy9yYW5nZS1idXR0b24uanMKQEAgLTAsMCArMSwx
NDIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitjbGFz
cyBSYW5nZUJ1dHRvbiBleHRlbmRzIEJ1dHRvbgoreworCisgICAgY29uc3RydWN0b3IoeyBsYXlv
dXREZWxlZ2F0ZSA9IG51bGwsIGNzc0NsYXNzTmFtZSA9ICIiLCBpY29uTmFtZSA9ICIiIH0gPSB7
fSkKKyAgICB7CisgICAgICAgIHN1cGVyKHsgbGF5b3V0RGVsZWdhdGUsIGNzc0NsYXNzTmFtZSwg
aWNvbk5hbWUgfSk7CisKKyAgICAgICAgdGhpcy5fdmFsdWUgPSAwOworCisgICAgICAgIHRoaXMu
ZWxlbWVudC5jbGFzc0xpc3QuYWRkKCJyYW5nZSIpOworICAgICAgICB0aGlzLmVsZW1lbnQuYWRk
RXZlbnRMaXN0ZW5lcigicG9pbnRlcmRvd24iLCB0aGlzKTsKKworICAgICAgICB0aGlzLl9pbmRp
Y2F0b3IgPSB0aGlzLmFkZENoaWxkKG5ldyBMYXlvdXROb2RlKGA8ZGl2IGNsYXNzPSJpbmRpY2F0
b3IiPjwvZGl2PmApLCAwKTsKKyAgICAgICAgdGhpcy5faW5kaWNhdG9yVGludCA9IHRoaXMuX2lu
ZGljYXRvci5hZGRDaGlsZChuZXcgQmFja2dyb3VuZFRpbnQpOworICAgICAgICB0aGlzLl9pbmRp
Y2F0b3JGaWxsID0gdGhpcy5faW5kaWNhdG9yLmFkZENoaWxkKG5ldyBMYXlvdXROb2RlKGA8ZGl2
IGNsYXNzPSJmaWxsIj48L2Rpdj5gKSk7CisKKyAgICAgICAgdGhpcy5faW5kaWNhdG9yLnZpc2li
bGUgPSBmYWxzZTsKKworICAgICAgICBpZiAoR2VzdHVyZVJlY29nbml6ZXIuU3VwcG9ydHNUb3Vj
aGVzKQorICAgICAgICAgICAgdGhpcy5fdGFwR2VzdHVyZVJlY29nbml6ZXIuZW5hYmxlZCA9IGZh
bHNlOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLmVsZW1lbnQucmVtb3ZlRXZlbnRM
aXN0ZW5lcigiY2xpY2siLCB0aGlzKTsKKyAgICB9CisKKyAgICAvLyBQdWJsaWMKKworICAgIGdl
dCB2YWx1ZSgpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWU7CisgICAgfQorCisg
ICAgc2V0IHZhbHVlKHZhbHVlKQorICAgIHsKKyAgICAgICAgdGhpcy5fdmFsdWUgPSB2YWx1ZTsK
KyAgICAgICAgdGhpcy5tYXJrRGlydHlQcm9wZXJ0eSgidmFsdWUiKTsKKyAgICB9CisKKyAgICAv
LyBQcm90ZWN0ZWQKKworICAgIGNvbW1pdFByb3BlcnR5KHByb3BlcnR5TmFtZSkKKyAgICB7Cisg
ICAgICAgIGlmIChwcm9wZXJ0eU5hbWUgPT09ICJ2YWx1ZSIpCisgICAgICAgICAgICB0aGlzLl9p
bmRpY2F0b3JGaWxsLmVsZW1lbnQuc3R5bGUuaGVpZ2h0ID0gYCR7dGhpcy5fdmFsdWUgKiAxMDB9
JWA7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHN1cGVyLmNvbW1pdFByb3BlcnR5KHByb3Bl
cnR5TmFtZSk7CisgICAgfQorCisgICAgaGFuZGxlRXZlbnQoZXZlbnQpCisgICAgeworICAgICAg
ICBpZiAoZXZlbnQuY3VycmVudFRhcmdldCA9PT0gdGhpcy5lbGVtZW50ICYmIGV2ZW50LnR5cGUg
PT0gInBvaW50ZXJkb3duIikKKyAgICAgICAgICAgIHRoaXMuX2hhbmRsZVBvaW50ZXJkb3duKGV2
ZW50KTsKKyAgICAgICAgZWxzZSBpZiAoZXZlbnQuY3VycmVudFRhcmdldCA9PT0gd2luZG93ICYm
IGV2ZW50LnR5cGUgPT09ICJwb2ludGVybW92ZSIpCisgICAgICAgICAgICB0aGlzLl9oYW5kbGVQ
b2ludGVybW92ZShldmVudCk7CisgICAgICAgIGVsc2UgaWYgKGV2ZW50LmN1cnJlbnRUYXJnZXQg
PT09IHdpbmRvdyAmJiBldmVudC50eXBlID09PSAicG9pbnRlcnVwIikKKyAgICAgICAgICAgIHRo
aXMuX2hhbmRsZVBvaW50ZXJ1cChldmVudCk7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIHN1
cGVyLmhhbmRsZUV2ZW50KGV2ZW50KTsKKyAgICB9CisKKyAgICAvLyBQcml2YXRlCisKKyAgICBf
aGFuZGxlUG9pbnRlcmRvd24oZXZlbnQpCisgICAgeworICAgICAgICB3aW5kb3cuYWRkRXZlbnRM
aXN0ZW5lcigicG9pbnRlcm1vdmUiLCB0aGlzLCB0cnVlKTsKKyAgICAgICAgd2luZG93LmFkZEV2
ZW50TGlzdGVuZXIoInBvaW50ZXJ1cCIsIHRoaXMsIHRydWUpOworCisgICAgICAgIHRoaXMuX2lu
aXRpYWxQb2ludGVyWSA9IGV2ZW50LmNsaWVudFk7CisgICAgICAgIHRoaXMuX2luaXRpYWxWYWx1
ZSA9IHRoaXMuX3ZhbHVlOworICAgIH0KKworICAgIF9oYW5kbGVQb2ludGVybW92ZShldmVudCkK
KyAgICB7CisgICAgICAgIGlmICghdGhpcy5faW5kaWNhdG9yLnZpc2libGUpIHsKKyAgICAgICAg
ICAgIHRoaXMuX2luZGljYXRvci52aXNpYmxlID0gdHJ1ZTsKKyAgICAgICAgICAgIGlmICh0aGlz
LnVpRGVsZWdhdGUgJiYgdHlwZW9mIHRoaXMudWlEZWxlZ2F0ZS5jb250cm9sVmFsdWVXaWxsU3Rh
cnRDaGFuZ2luZyA9PT0gImZ1bmN0aW9uIikKKyAgICAgICAgICAgICAgICB0aGlzLnVpRGVsZWdh
dGUuY29udHJvbFZhbHVlV2lsbFN0YXJ0Q2hhbmdpbmcodGhpcyk7CisgICAgICAgICAgICByZXR1
cm47CisgICAgICAgIH0KKworICAgICAgICBpZiAoIXRoaXMuX2luZGljYXRvckhlaWdodCkKKyAg
ICAgICAgICAgIHRoaXMuX2luZGljYXRvckhlaWdodCA9IHRoaXMuX2luZGljYXRvci5jb21wdXRl
ZFZhbHVlRm9yU3R5bGVQcm9wZXJ0eUluUHgoImhlaWdodCIpOworCisgICAgICAgIGlmICghdGhp
cy5faW5kaWNhdG9ySGVpZ2h0KQorICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgIGNvbnN0
IHRyYXZlbGVkUG9pbnRlckRpc3RhbmNlID0gdGhpcy5faW5pdGlhbFBvaW50ZXJZIC0gZXZlbnQu
Y2xpZW50WTsKKyAgICAgICAgY29uc3QgdmFsdWVJbmNyZW1lbnQgPSB0cmF2ZWxlZFBvaW50ZXJE
aXN0YW5jZSAvIHRoaXMuX2luZGljYXRvckhlaWdodDsKKworICAgICAgICBjb25zdCBuZXdWYWx1
ZSA9IE1hdGgubWF4KDAsIE1hdGgubWluKDEsIHRoaXMuX2luaXRpYWxWYWx1ZSArIHZhbHVlSW5j
cmVtZW50KSk7CisgICAgICAgIGlmICh0aGlzLl92YWx1ZSA9PT0gbmV3VmFsdWUpCisgICAgICAg
ICAgICByZXR1cm47CisKKyAgICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlOworCisgICAgICAg
IGlmICh0aGlzLnVpRGVsZWdhdGUgJiYgdHlwZW9mIHRoaXMudWlEZWxlZ2F0ZS5jb250cm9sVmFs
dWVEaWRDaGFuZ2UgPT09ICJmdW5jdGlvbiIpCisgICAgICAgICAgICB0aGlzLnVpRGVsZWdhdGUu
Y29udHJvbFZhbHVlRGlkQ2hhbmdlKHRoaXMpOworICAgIH0KKworICAgIF9oYW5kbGVQb2ludGVy
dXAoZXZlbnQpCisgICAgeworICAgICAgICB3aW5kb3cucmVtb3ZlRXZlbnRMaXN0ZW5lcigicG9p
bnRlcm1vdmUiLCB0aGlzLCB0cnVlKTsKKyAgICAgICAgd2luZG93LnJlbW92ZUV2ZW50TGlzdGVu
ZXIoInBvaW50ZXJ1cCIsIHRoaXMsIHRydWUpOworCisgICAgICAgIGRlbGV0ZSB0aGlzLl9pbml0
aWFsUG9pbnRlclk7CisgICAgICAgIGRlbGV0ZSB0aGlzLl9pbml0aWFsVmFsdWU7CisKKyAgICAg
ICAgaWYgKHRoaXMuX2luZGljYXRvci52aXNpYmxlKSB7CisgICAgICAgICAgICBpZiAodGhpcy51
aURlbGVnYXRlICYmIHR5cGVvZiB0aGlzLnVpRGVsZWdhdGUuY29udHJvbFZhbHVlRGlkU3RvcENo
YW5naW5nID09PSAiZnVuY3Rpb24iKQorICAgICAgICAgICAgICAgIHRoaXMudWlEZWxlZ2F0ZS5j
b250cm9sVmFsdWVEaWRTdG9wQ2hhbmdpbmcodGhpcyk7CisgICAgICAgICAgICB0aGlzLl9pbmRp
Y2F0b3IudmlzaWJsZSA9IGZhbHNlOworICAgICAgICB9IGVsc2UgeworICAgICAgICAgICAgaWYg
KHRoaXMuX2VuYWJsZWQgJiYgdGhpcy51aURlbGVnYXRlICYmIHR5cGVvZiB0aGlzLnVpRGVsZWdh
dGUuYnV0dG9uV2FzUHJlc3NlZCA9PT0gImZ1bmN0aW9uIikKKyAgICAgICAgICAgICAgICB0aGlz
LnVpRGVsZWdhdGUuYnV0dG9uV2FzUHJlc3NlZCh0aGlzKTsKKyAgICAgICAgfQorICAgIH0KKwor
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJv
bHMvY29udHJvbHMvdm9sdW1lLWJ1dHRvbi5qcyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9k
ZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xzL3ZvbHVtZS1idXR0b24uanMKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ODlkNGRiMGE5NmYyM2UyNmRjZTJmOTkwYWI2YTdhNjdhYWRiYzgzNwotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL2NvbnRyb2xz
L3ZvbHVtZS1idXR0b24uanMKQEAgLTAsMCArMSw5NCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAyMSBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisg
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKK2NsYXNzIFZvbHVtZUJ1dHRvbiBleHRlbmRzIFJhbmdl
QnV0dG9uCit7CisKKyAgICBjb25zdHJ1Y3RvcihsYXlvdXREZWxlZ2F0ZSkKKyAgICB7CisgICAg
ICAgIHN1cGVyKHsKKyAgICAgICAgICAgIGNzc0NsYXNzTmFtZTogIm11dGUiLAorICAgICAgICAg
ICAgaWNvbk5hbWU6IEljb25zLlZvbHVtZU11dGVkUlRMLAorICAgICAgICAgICAgbGF5b3V0RGVs
ZWdhdGUKKyAgICAgICAgfSk7CisKKyAgICAgICAgdGhpcy5fbXV0ZWQgPSB0cnVlOworCisgICAg
ICAgIHRoaXMuX3VzZXNMVFJVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID0gdW5kZWZpbmVk
OworICAgIH0KKworICAgIC8vIFB1YmxpYworCisgICAgZ2V0IHZvbHVtZSgpCisgICAgeworICAg
ICAgICByZXR1cm4gdGhpcy52YWx1ZTsKKyAgICB9CisKKyAgICBzZXQgdm9sdW1lKHZvbHVtZSkK
KyAgICB7CisgICAgICAgIHRoaXMudmFsdWUgPSB2b2x1bWU7CisgICAgICAgIHRoaXMubmVlZHNM
YXlvdXQgPSB0cnVlOworICAgIH0KKworICAgIGdldCBtdXRlZCgpCisgICAgeworICAgICAgICBy
ZXR1cm4gdGhpcy5fbXV0ZWQ7CisgICAgfQorCisgICAgc2V0IG11dGVkKGZsYWcpCisgICAgewor
ICAgICAgICBpZiAodGhpcy5fbXV0ZWQgPT09IGZsYWcpCisgICAgICAgICAgICByZXR1cm47CisK
KyAgICAgICAgdGhpcy5fbXV0ZWQgPSBmbGFnOworICAgICAgICB0aGlzLm5lZWRzTGF5b3V0ID0g
dHJ1ZTsKKyAgICB9CisKKyAgICBzZXQgdXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rp
b24odXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24pCisgICAgeworICAgICAgICBp
ZiAodXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gPT09IHRoaXMuX3VzZXNMVFJV
c2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uKQorICAgICAgICAgICAgcmV0dXJuOworCisgICAg
ICAgIHRoaXMuX3VzZXNMVFJVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID0gdXNlc0xUUlVz
ZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb247CisKKyAgICAgICAgdGhpcy5uZWVkc0xheW91dCA9
IHRydWU7CisgICAgfQorCisgICAgLy8gUHJvdGVjdGVkCisKKyAgICBsYXlvdXQoKQorICAgIHsK
KyAgICAgICAgaWYgKHRoaXMuX211dGVkIHx8IHRoaXMudm9sdW1lIDwgMCkKKyAgICAgICAgICAg
IHRoaXMuaWNvbk5hbWUgPSB0aGlzLl91c2VzTFRSVXNlckludGVyZmFjZUxheW91dERpcmVjdGlv
biA/IEljb25zLlZvbHVtZU11dGVkIDogSWNvbnMuVm9sdW1lTXV0ZWRSVEw7CisgICAgICAgIGVs
c2UgaWYgKHRoaXMudm9sdW1lIDwgMC4yNSkKKyAgICAgICAgICAgIHRoaXMuaWNvbk5hbWUgPSB0
aGlzLl91c2VzTFRSVXNlckludGVyZmFjZUxheW91dERpcmVjdGlvbiA/IEljb25zLlZvbHVtZTAg
OiBJY29ucy5Wb2x1bWUwUlRMOworICAgICAgICBlbHNlIGlmICh0aGlzLnZvbHVtZSA8IDAuNSkK
KyAgICAgICAgICAgIHRoaXMuaWNvbk5hbWUgPSB0aGlzLl91c2VzTFRSVXNlckludGVyZmFjZUxh
eW91dERpcmVjdGlvbiA/IEljb25zLlZvbHVtZTEgOiBJY29ucy5Wb2x1bWUxUlRMOworICAgICAg
ICBlbHNlIGlmICh0aGlzLnZvbHVtZSA8IDAuNzUpCisgICAgICAgICAgICB0aGlzLmljb25OYW1l
ID0gdGhpcy5fdXNlc0xUUlVzZXJJbnRlcmZhY2VMYXlvdXREaXJlY3Rpb24gPyBJY29ucy5Wb2x1
bWUyIDogSWNvbnMuVm9sdW1lMlJUTDsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5p
Y29uTmFtZSA9IHRoaXMuX3VzZXNMVFJVc2VySW50ZXJmYWNlTGF5b3V0RGlyZWN0aW9uID8gSWNv
bnMuVm9sdW1lMyA6IEljb25zLlZvbHVtZTNSVEw7CisgICAgfQorfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvanMtZmlsZXMgYi9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcwppbmRleCA2
ZWUxY2ZlYTc3ZTBkMzdiNjhiZDkxNTY0ZjEwYjU3MzJjYThmZmYzLi41YzgzMmIzM2IzOTdmMmU4
OTZhYmVkYmI1ZTE3ZGNiNmU3OTMwZGYyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcworKysgYi9Tb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9qcy1maWxlcwpAQCAtMjQsNiArMjQsOCBAQCBj
b250cm9scy9zZWVrLWJ1dHRvbi5qcwogY29udHJvbHMvcmV3aW5kLWJ1dHRvbi5qcwogY29udHJv
bHMvZm9yd2FyZC1idXR0b24uanMKIGNvbnRyb2xzL292ZXJmbG93LWJ1dHRvbi5qcworY29udHJv
bHMvcmFuZ2UtYnV0dG9uLmpzCitjb250cm9scy92b2x1bWUtYnV0dG9uLmpzCiBjb250cm9scy9i
dXR0b25zLWNvbnRhaW5lci5qcwogY29udHJvbHMvc3RhdHVzLWxhYmVsLmpzCiBjb250cm9scy9j
b250cm9scy1iYXIuanMKQEAgLTQ4LDYgKzUwLDcgQEAgbWVkaWEvYWlycGxheS1zdXBwb3J0Lmpz
CiBtZWRpYS9hdWRpby1zdXBwb3J0LmpzCiBtZWRpYS9jb250cm9scy12aXNpYmlsaXR5LXN1cHBv
cnQuanMKIG1lZGlhL2Z1bGxzY3JlZW4tc3VwcG9ydC5qcworbWVkaWEvbXV0ZS1hbmQtdm9sdW1l
LXN1cHBvcnQuanMKIG1lZGlhL211dGUtc3VwcG9ydC5qcwogbWVkaWEvb3ZlcmZsb3ctc3VwcG9y
dC5qcwogbWVkaWEvcGlwLXN1cHBvcnQuanMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL21lZGlhLWNvbnRyb2xsZXIuanMgYi9T
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL21vZGVybi1tZWRpYS1jb250cm9scy9tZWRpYS9tZWRpYS1j
b250cm9sbGVyLmpzCmluZGV4IGFkOTI5ZjJjMmI5NjM2ODcyN2M1YWYzNTc1ZjUzOTc5MTJhMTky
YTguLmM1ZDgxY2MxNWM4N2ViOTUyZDY5NDRjZDQ3YWUxMGQzYTIwMTFjYzYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlhLWNvbnRyb2xzL21lZGlhL21lZGlh
LWNvbnRyb2xsZXIuanMKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEt
Y29udHJvbHMvbWVkaWEvbWVkaWEtY29udHJvbGxlci5qcwpAQCAtMjEzLDcgKzIxMywxNCBAQCBj
bGFzcyBNZWRpYUNvbnRyb2xsZXIKICAgICAgICAgaWYgKG92ZXJyaWRlblN1cHBvcnRpbmdPYmpl
Y3RDbGFzc2VzKQogICAgICAgICAgICAgcmV0dXJuIG92ZXJyaWRlblN1cHBvcnRpbmdPYmplY3RD
bGFzc2VzOwogCi0gICAgICAgIHJldHVybiBbQWlycGxheVN1cHBvcnQsIEF1ZGlvU3VwcG9ydCwg
Q29udHJvbHNWaXNpYmlsaXR5U3VwcG9ydCwgRnVsbHNjcmVlblN1cHBvcnQsIE11dGVTdXBwb3J0
LCBPdmVyZmxvd1N1cHBvcnQsIFBpUFN1cHBvcnQsIFBsYWNhcmRTdXBwb3J0LCBQbGF5YmFja1N1
cHBvcnQsIFNjcnViYmluZ1N1cHBvcnQsIFNlZWtCYWNrd2FyZFN1cHBvcnQsIFNlZWtGb3J3YXJk
U3VwcG9ydCwgU2tpcEJhY2tTdXBwb3J0LCBTa2lwRm9yd2FyZFN1cHBvcnQsIFN0YXJ0U3VwcG9y
dCwgU3RhdHVzU3VwcG9ydCwgVGltZUNvbnRyb2xTdXBwb3J0LCBUcmFja3NTdXBwb3J0LCBWb2x1
bWVTdXBwb3J0XTsKKyAgICAgICAgbGV0IGNsYXNzZXMgPSBbQWlycGxheVN1cHBvcnQsIEF1ZGlv
U3VwcG9ydCwgQ29udHJvbHNWaXNpYmlsaXR5U3VwcG9ydCwgRnVsbHNjcmVlblN1cHBvcnQsIE92
ZXJmbG93U3VwcG9ydCwgUGlQU3VwcG9ydCwgUGxhY2FyZFN1cHBvcnQsIFBsYXliYWNrU3VwcG9y
dCwgU2NydWJiaW5nU3VwcG9ydCwgU2Vla0JhY2t3YXJkU3VwcG9ydCwgU2Vla0ZvcndhcmRTdXBw
b3J0LCBTa2lwQmFja1N1cHBvcnQsIFNraXBGb3J3YXJkU3VwcG9ydCwgU3RhcnRTdXBwb3J0LCBT
dGF0dXNTdXBwb3J0LCBUaW1lQ29udHJvbFN1cHBvcnQsIFRyYWNrc1N1cHBvcnRdCisKKyAgICAg
ICAgaWYgKHRoaXMuY29udHJvbHMudXNlc1NpbmdsZU11dGVBbmRWb2x1bWVCdXR0b24pCisgICAg
ICAgICAgICBjbGFzc2VzLnB1c2goTXV0ZUFuZFZvbHVtZVN1cHBvcnQpOworICAgICAgICBlbHNl
CisgICAgICAgICAgICBjbGFzc2VzLnB1c2goTXV0ZVN1cHBvcnQsIFZvbHVtZVN1cHBvcnQpOwor
CisgICAgICAgIHJldHVybiBjbGFzc2VzOwogICAgIH0KIAogICAgIF91cGRhdGVDb250cm9sc0lm
TmVlZGVkKCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1lZGlh
LWNvbnRyb2xzL21lZGlhL211dGUtYW5kLXZvbHVtZS1zdXBwb3J0LmpzIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9tb2Rlcm4tbWVkaWEtY29udHJvbHMvbWVkaWEvbXV0ZS1hbmQtdm9sdW1lLXN1
cHBvcnQuanMKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uOTdmOWVmNzJmNjNhMDY1MDI5NmNlY2I1NTk4NzgyZDViYzc2
YTk1OQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvbW9kZXJuLW1l
ZGlhLWNvbnRyb2xzL21lZGlhL211dGUtYW5kLXZvbHVtZS1zdXBwb3J0LmpzCkBAIC0wLDAgKzEs
NzIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjEgQXBwbGUgSW5jLiBBbGwgUmlnaHRzIFJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJ
RVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFO
VElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICog
UFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitjbGFz
cyBNdXRlQW5kVm9sdW1lU3VwcG9ydCBleHRlbmRzIE1lZGlhQ29udHJvbGxlclN1cHBvcnQKK3sK
KworICAgIC8vIFByb3RlY3RlZAorCisgICAgZ2V0IGNvbnRyb2woKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIHRoaXMubWVkaWFDb250cm9sbGVyLmNvbnRyb2xzLnZvbHVtZUJ1dHRvbjsKKyAgICB9
CisKKyAgICBnZXQgbWVkaWFFdmVudHMoKQorICAgIHsKKyAgICAgICAgcmV0dXJuIFsidm9sdW1l
Y2hhbmdlIl07CisgICAgfQorCisgICAgY29udHJvbFZhbHVlV2lsbFN0YXJ0Q2hhbmdpbmcoY29u
dHJvbCkKKyAgICB7CisgICAgICAgIHRoaXMuX3ZvbHVtZUJlZm9yZUNoYW5nZSA9IHRoaXMubWVk
aWFDb250cm9sbGVyLm1lZGlhLnZvbHVtZTsKKyAgICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIu
Y29udHJvbHMuYXV0b0hpZGVDb250cm9sbGVyLmhhc1NlY29uZGFyeVVJQXR0YWNoZWQgPSB0cnVl
OworICAgIH0KKworICAgIGNvbnRyb2xWYWx1ZURpZENoYW5nZShjb250cm9sKQorICAgIHsKKyAg
ICAgICAgdGhpcy5tZWRpYUNvbnRyb2xsZXIubWVkaWEudm9sdW1lID0gKGNvbnRyb2wudmFsdWUg
PT09IDAgJiYgdGhpcy5fdm9sdW1lQmVmb3JlQ2hhbmdlID4gMCkgPyB0aGlzLl92b2x1bWVCZWZv
cmVDaGFuZ2UgOiBjb250cm9sLnZhbHVlOworICAgICAgICB0aGlzLm1lZGlhQ29udHJvbGxlci5t
ZWRpYS5tdXRlZCA9IGNvbnRyb2wudmFsdWUgPT09IDA7CisgICAgfQorCisgICAgY29udHJvbFZh
bHVlRGlkU3RvcENoYW5naW5nKGNvbnRyb2wpCisgICAgeworICAgICAgICBkZWxldGUgdGhpcy5f
dm9sdW1lQmVmb3JlQ2hhbmdlOworICAgICAgICB0aGlzLm1lZGlhQ29udHJvbGxlci5jb250cm9s
cy5hdXRvSGlkZUNvbnRyb2xsZXIuaGFzU2Vjb25kYXJ5VUlBdHRhY2hlZCA9IGZhbHNlOworICAg
IH0KKworICAgIGJ1dHRvbldhc1ByZXNzZWQoY29udHJvbCkKKyAgICB7CisgICAgICAgIGNvbnN0
IG1lZGlhID0gdGhpcy5tZWRpYUNvbnRyb2xsZXIubWVkaWE7CisgICAgICAgIG1lZGlhLm11dGVk
ID0gIW1lZGlhLm11dGVkOworICAgIH0KKworICAgIHN5bmNDb250cm9sKCkKKyAgICB7CisgICAg
ICAgIGNvbnN0IG1lZGlhID0gdGhpcy5tZWRpYUNvbnRyb2xsZXIubWVkaWE7CisgICAgICAgIHRo
aXMuY29udHJvbC52b2x1bWUgPSB0aGlzLm1lZGlhQ29udHJvbGxlci5tZWRpYS52b2x1bWU7Cisg
ICAgICAgIHRoaXMuY29udHJvbC5tdXRlZCA9IHRoaXMubWVkaWFDb250cm9sbGVyLm1lZGlhLm11
dGVkOworICAgIH0KKworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCmluZGV4IDcwYjA0MDliM2VmMTZmYTBhZDhmZjVjOGZmYzViYWE1M2M5
NjEwM2EuLjdlMTRjYzNhZWNhZTA0Y2VjZDQ3NTk0NmIyYzNhOGYwNGQ2MmM0YjMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTEw
MzY1LDYgKzEwMzY1LDkgQEAKIAkJNzE1QUQ3MUQyMDUwNTEyNDAwRDU5MkRDIC8qIERlY2xhcmF0
aXZlQW5pbWF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IERlY2xhcmF0
aXZlQW5pbWF0aW9uLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNUFENzFGMjA1
MDUxMjQwMEQ1OTJEQyAvKiBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBEZWNsYXJhdGl2ZUFuaW1hdGlvbi5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNURBNUQzMjAxQkI5MDIwMDJFRjJCMCAvKiBKU1dlYkFu
aW1hdGlvbkN1c3RvbS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U1dlYkFuaW1hdGlvbkN1c3RvbS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcx
NkE1NUFCMjZGQTM0OUIwMEM5NkQ2OSAvKiByYW5nZS1idXR0b24uY3NzICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IHBhdGggPSAicmFu
Z2UtYnV0dG9uLmNzcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTcxNkE1NUFEMjZG
QTM0OUMwMEM5NkQ2OSAvKiB2b2x1bWUtYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0g
InZvbHVtZS1idXR0b24uanMiOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk3MTZBNTVB
RTI2RkEzNDlDMDBDOTZENjkgLyogcmFuZ2UtYnV0dG9uLmpzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRo
ID0gInJhbmdlLWJ1dHRvbi5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxNkZB
MEQ4MURCMjY1OTEwMDczMjNDQyAvKiBhaXJwbGF5LWJ1dHRvbi5jc3MgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0
LmNzczsgcGF0aCA9ICJhaXJwbGF5LWJ1dHRvbi5jc3MiOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk3MTZGQTBEOTFEQjI2NTkxMDA3MzIzQ0MgLyogYWlycGxheS1idXR0b24uanMgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmphdmFzY3JpcHQ7IHBhdGggPSAiYWlycGxheS1idXR0b24uanMi
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MTZGQTBEQTFEQjI2NTkxMDA3MzIzQ0Mg
LyogYWlycGxheS1wbGFjYXJkLmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gImFpcnBsYXktcGxhY2FyZC5qcyI7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xMDQ1OCw2ICsxMDQ2MSw4IEBACiAJCTcxRDZBQTkzMURBNEVBRjcwMEIyMzk2OSAvKiBhaXJw
bGF5LXBsYWNhcmRAMngucG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gaW1hZ2UucG5nOyBwYXRoID0gImFpcnBsYXktcGxhY2FyZEAyeC5wbmciOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MUQ2QUFBQTFEQTRFQUY3MDBCMjM5NjkgLyog
cGlwLXBsYWNhcmRAMXgucG5nICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gaW1hZ2UucG5nOyBwYXRoID0gInBpcC1wbGFjYXJkQDF4LnBuZyI7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTcxRDZBQUFCMURBNEVBRjcwMEIyMzk2OSAvKiBwaXAt
cGxhY2FyZEAyeC5wbmcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmls
ZVR5cGUgPSBpbWFnZS5wbmc7IHBhdGggPSAicGlwLXBsYWNhcmRAMngucG5nIjsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFEODMyMzEyNkZDRDhGNjAwRjM0OEE0IC8qIG11dGUtYW5k
LXZvbHVtZS1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBwYXRoID0gIm11dGUtYW5kLXZvbHVt
ZS1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJNzFEODMyMzMyNkZD
RDhGNjAwRjM0OEE0IC8qIHNraXAtZm9yd2FyZC1zdXBwb3J0LmpzICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBw
YXRoID0gInNraXAtZm9yd2FyZC1zdXBwb3J0LmpzIjsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJNzFEQ0I2RkYxNTY4MTk3NjAwODYyMjcxIC8qIEpTU1ZHWm9vbUFuZFBhbi5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1NWR1pvb21BbmRQYW4uY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MURDQjcwMDE1NjgxOTc2MDA4NjIyNzEgLyog
SlNTVkdab29tQW5kUGFuLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTU1ZH
Wm9vbUFuZFBhbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk3MURFMjc5NDIwM0E5
QzFDMDA1OENCNTEgLyogd2F0Y2hvcy1tZWRpYS1jb250cm9scy5qcyAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuamF2YXNjcmlwdDsgcGF0aCA9ICJ3YXRjaG9zLW1lZGlhLWNvbnRyb2xzLmpzIjsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTIyODM5LDYgKzIyODQ0LDggQEAKIAkJCQk3MTZG
QTBFRjFEQjI2NTkxMDA3MzIzQ0MgLyogcGxhY2FyZC5jc3MgKi8sCiAJCQkJNzE2RkEwRjAxREIy
NjU5MTAwNzMyM0NDIC8qIHBsYWNhcmQuanMgKi8sCiAJCQkJNzE2RkEwRjExREIyNjU5MTAwNzMy
M0NDIC8qIHBsYXktcGF1c2UtYnV0dG9uLmpzICovLAorCQkJCTcxNkE1NUFCMjZGQTM0OUIwMEM5
NkQ2OSAvKiByYW5nZS1idXR0b24uY3NzICovLAorCQkJCTcxNkE1NUFFMjZGQTM0OUMwMEM5NkQ2
OSAvKiByYW5nZS1idXR0b24uanMgKi8sCiAJCQkJNzE2RkEwRjIxREIyNjU5MTAwNzMyM0NDIC8q
IHJld2luZC1idXR0b24uanMgKi8sCiAJCQkJNzE2RkEwRjMxREIyNjU5MTAwNzMyM0NDIC8qIHNj
aGVkdWxlci5qcyAqLywKIAkJCQk3MTg2NzU0MzFERjEwMUFEMDAzM0Q3RjMgLyogc2Vlay1idXR0
b24uanMgKi8sCkBAIC0yMjg1Myw2ICsyMjg2MCw3IEBACiAJCQkJNzE2RkEwRkMxREIyNjU5MTAw
NzMyM0NDIC8qIHRpbWUtbGFiZWwuY3NzICovLAogCQkJCTcxNkZBMEZEMURCMjY1OTEwMDczMjND
QyAvKiB0aW1lLWxhYmVsLmpzICovLAogCQkJCTcxNkZBMEZFMURCMjY1OTEwMDczMjNDQyAvKiB0
cmFja3MtYnV0dG9uLmpzICovLAorCQkJCTcxNkE1NUFEMjZGQTM0OUMwMEM5NkQ2OSAvKiB2b2x1
bWUtYnV0dG9uLmpzICovLAogCQkJCTk1NTE5NThFMjVGQTlFMzAwMEY1OENGMCAvKiB3YXRjaG9z
LWFjdGl2aXR5LWluZGljYXRvci5jc3MgKi8sCiAJCQkJOTU1MTk1OEYyNUZBOUUzMTAwRjU4Q0Yw
IC8qIHdhdGNob3MtYWN0aXZpdHktaW5kaWNhdG9yLmpzICovLAogCQkJCUJDRDM3MzZGMjY4NjQy
MDMwMDM2NDRFNCAvKiB3YXRjaG9zLWxheW91dC10cmFpdHMuanMgKi8sCkBAIC0yMjg3Myw2ICsy
Mjg4MSw3IEBACiAJCQkJNzE3N0UyNDYxREI4MEQyRjAwOTE5QTBCIC8qIG1lZGlhLWNvbnRyb2xs
ZXItc3VwcG9ydC5qcyAqLywKIAkJCQk3MUQwMkQ5MjFEQjU1QzRFMDBERDVDRjUgLyogbWVkaWEt
Y29udHJvbGxlci5qcyAqLywKIAkJCQk5NTUxOTU5MjI1RkE5RTRDMDBGNThDRjAgLyogbWVkaWEt
ZG9jdW1lbnQtY29udHJvbGxlci5qcyAqLywKKwkJCQk3MUQ4MzIzMTI2RkNEOEY2MDBGMzQ4QTQg
LyogbXV0ZS1hbmQtdm9sdW1lLXN1cHBvcnQuanMgKi8sCiAJCQkJNzE3N0UyNDcxREI4MEQyRjAw
OTE5QTBCIC8qIG11dGUtc3VwcG9ydC5qcyAqLywKIAkJCQk5NTBDNDg0OTI1RDY3NzQyMDBBQjNE
OUMgLyogb3ZlcmZsb3ctc3VwcG9ydC5qcyAqLywKIAkJCQk3MTMwMTQxRDFEQzlDMDg2MDBDQTNB
ODggLyogcGlwLXN1cHBvcnQuanMgKi8sCkBAIC0yMjg4Myw2ICsyMjg5Miw3IEBACiAJCQkJNzE4
Njc1NDUxREYxMDFDNjAwMzNEN0YzIC8qIHNlZWstZm9yd2FyZC1zdXBwb3J0LmpzICovLAogCQkJ
CTcxODY3NTQ2MURGMTAxQzYwMDMzRDdGMyAvKiBzZWVrLXN1cHBvcnQuanMgKi8sCiAJCQkJNzFE
MjU1NEYxREI5MDAwMjAwMDRENzZCIC8qIHNraXAtYmFjay1zdXBwb3J0LmpzICovLAorCQkJCTcx
RDgzMjMzMjZGQ0Q4RjYwMEYzNDhBNCAvKiBza2lwLWZvcndhcmQtc3VwcG9ydC5qcyAqLywKIAkJ
CQk3MTc3RTI0ODFEQjgwRDJGMDA5MTlBMEIgLyogc3RhcnQtc3VwcG9ydC5qcyAqLywKIAkJCQk3
MUIwNDYwQTFERDNDMkVFMDBFRTE5Q0YgLyogc3RhdHVzLXN1cHBvcnQuanMgKi8sCiAJCQkJOTU1
MTk1OTUyNUZBOUU3RTAwRjU4Q0YwIC8qIHRpbWUtY29udHJvbC1zdXBwb3J0LmpzICovLAo=
</data>
<flag name="review"
          id="462611"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
      

    </bug>

</bugzilla>