<?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>217532</bug_id>
          
          <creation_ts>2020-10-09 13:32:49 -0700</creation_ts>
          <short_desc>[GPU Process] Add additional support for painting video elements to 2D contexts</short_desc>
          <delta_ts>2020-10-10 10:37:12 -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="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>peng.liu6</cc>
    
    <cc>philipj</cc>
    
    <cc>sabouhallawa</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1696342</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-10-09 13:32:49 -0700</bug_when>
    <thetext>In particular:
- CanvasRenderingContext2D.createPattern(HTMLVideoElement, …);
- createImageBitmap(HTMLVideoElement, …);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696366</commentid>
    <comment_count>1</comment_count>
      <attachid>410975</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-10-09 14:26:48 -0700</bug_when>
    <thetext>Created attachment 410975
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696368</commentid>
    <comment_count>2</comment_count>
      <attachid>410976</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-10-09 14:34:07 -0700</bug_when>
    <thetext>Created attachment 410976
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696397</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-09 16:39:39 -0700</bug_when>
    <thetext>Committed r268299: &lt;https://trac.webkit.org/changeset/268299&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 410976.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696398</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-09 16:40:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/70158828&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696508</commentid>
    <comment_count>5</comment_count>
      <attachid>410976</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2020-10-10 10:25:10 -0700</bug_when>
    <thetext>Comment on attachment 410976
Patch

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

&gt; Source/WebKit/WebProcess/WebPage/WebPage.cpp:7208
&gt; +    case RenderingPurpose::MediaPainting:
&gt; +        return m_page-&gt;settings().useGPUProcessForMediaEnabled();

It&apos;s not ideal that WebCore::Settings is being used for this. WebCore really shouldn&apos;t know about the GPUProcess. Perhaps its ok, because Settings is just like &quot;a bag of state&quot;, but we should try to avoid this. This could probably be avoided by just storing this state on the WebPage and/or keeping around the WebPreferencesStore that get&apos;s passed in preferencesDidChange.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1696511</commentid>
    <comment_count>6</comment_count>
      <attachid>410976</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-10-10 10:37:12 -0700</bug_when>
    <thetext>Comment on attachment 410976
Patch

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

&gt;&gt; Source/WebKit/WebProcess/WebPage/WebPage.cpp:7208
&gt;&gt; +        return m_page-&gt;settings().useGPUProcessForMediaEnabled();
&gt; 
&gt; It&apos;s not ideal that WebCore::Settings is being used for this. WebCore really shouldn&apos;t know about the GPUProcess. Perhaps its ok, because Settings is just like &quot;a bag of state&quot;, but we should try to avoid this. This could probably be avoided by just storing this state on the WebPage and/or keeping around the WebPreferencesStore that get&apos;s passed in preferencesDidChange.

Yeah — Said and I avoided adding a similar “render canvas in GPU process” flag in WebCore::Settings for this reason. I think ideally, the GPUP-for-media setting should be refactored to be more like the canvas one (but I didn’t try to fix that in this patch).</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410975</attachid>
            <date>2020-10-09 14:26:48 -0700</date>
            <delta_ts>2020-10-09 14:34:05 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217532-20201009142647.patch</filename>
            <type>text/plain</type>
            <size>12203</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhhMmY5Y2MwNDQ0NDBm
NGE1ZjgwN2RhOTlhZWYwZWFmOTU1NWI0Mi4uOGYxMjBlZmU5ZTNmMTIzNDQwYTliMjM5Y2ZkN2Q4
YTAzNTZiZDk5OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIwLTEwLTA5ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vz
c10gQWRkIGFkZGl0aW9uYWwgc3VwcG9ydCBmb3IgcGFpbnRpbmcgdmlkZW8gZWxlbWVudHMgdG8g
MkQgY29udGV4dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxNzUzMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBzdXBwb3J0IGZvciB1c2luZyBgdmlkZW9gIGVsZW1lbnRzIGFzIHNvdXJjZXMgZm9y
IGBjcmVhdGVJbWFnZUJpdG1hcGAgYW5kIGBjcmVhdGVQYXR0ZXJuYCBieSBlbnN1cmluZyB0aGF0
CisgICAgICAgIHdlIHVzZSBkaXNwbGF5LWxpc3QtYmFja2VkIGltYWdlIGJ1ZmZlcnMgZm9yIHBh
aW50aW5nIHdoZW4gdXNpbmcgdGhlIEdQVSBwcm9jZXNzIGZvciBtZWRpYS4gU2VlIGJlbG93IGZv
ciBtb3JlCisgICAgICAgIGRldGFpbHMuCisKKyAgICAgICAgVGVzdHM6ICBmYXN0L2NhbnZhcy9j
YW52YXMtY3JlYXRlUGF0dGVybi12aWRlby1sb2FkaW5nLmh0bWwKKyAgICAgICAgICAgICAgICBm
YXN0L2NhbnZhcy9jYW52YXMtY3JlYXRlUGF0dGVybi12aWRlby1tb2RpZnkuaHRtbAorICAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvZWxl
bWVudC9pbWFnZWJpdG1hcC9jYW52YXMtY3JlYXRlSW1hZ2VCaXRtYXAtdmlkZW8tcmVzaXplLmh0
bWwKKyAgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZHJhd0ltYWdlLmh0
bWwKKyAgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZmxpcFkuaHRtbAor
CisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQ6OmNyZWF0ZUNvbXBhdGlibGVCdWZmZXIgY29uc3QpOgorICAgICAg
ICAqIGh0bWwvSFRNTFZpZGVvRWxlbWVudC5oOgorCisgICAgICAgIEFkZCBhIGhlbHBlciBmdW5j
dGlvbiB0byBjcmVhdGUgYW4gYEltYWdlQnVmZmVyYCBjb21wYXRpYmxlIHdpdGggdGhpcyB2aWRl
byBlbGVtZW50LCBmb3IgdGhlIHB1cnBvc2Ugb2YKKyAgICAgICAgcGFpbnRpbmcgdmlkZW8gZnJh
bWVzLiBJbiBwYXJ0aWN1bGFyLCBpZiBHUFUgcHJvY2VzcyBmb3IgbWVkaWEgaXMgZW5hYmxlZCwg
d2UnbGwgY3JlYXRlIGEgZGlzcGxheS1saXN0LWJhY2tlZAorICAgICAgICByZW1vdGUgaW1hZ2Ug
YnVmZmVyLgorCisgICAgICAgICogaHRtbC9JbWFnZUJpdG1hcC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpJbWFnZUJpdG1hcDo6Y3JlYXRlUHJvbWlzZSk6CisKKyAgICAgICAgQ2FsbCBpbnRvIGBI
VE1MVmlkZW9FbGVtZW50OjpjcmVhdGVDb21wYXRpYmxlQnVmZmVyYCB0byBjb25zdHJ1Y3QgdGhl
IGBJbWFnZUJ1ZmZlcmAuCisKKyAgICAgICAgKiBodG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdD
b250ZXh0MkRCYXNlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhbnZhc1JlbmRlcmluZ0NvbnRl
eHQyREJhc2U6OmNyZWF0ZVBhdHRlcm4pOgorCisgICAgICAgIENhbGwgaW50byBgSFRNTFZpZGVv
RWxlbWVudDo6Y3JlYXRlQ29tcGF0aWJsZUJ1ZmZlcmAgdG8gY29uc3RydWN0IHRoZSBgSW1hZ2VC
dWZmZXJgLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUmVuZGVyaW5nTW9kZS5oOgor
CisgICAgICAgIEFkZCBhICJwdXJwb3NlIiBlbnVtIHZhbHVlIGZvciBtZWRpYSBwYWludGluZy4K
KworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdElt
YWdlQnVmZmVyLmg6CisKKyAgICAgICAgQWRqdXN0IHRoaXMgdG8gYXZvaWQgZm9yY2luZyB0aGUg
cGxhdGZvcm0gY29udGV4dCB0byBiZSBjcmVhdGVkIGluIHRoZSBjYXNlIHdoZXJlIHRoZXJlIGFy
ZSBubyBkaXNwbGF5IGxpc3QKKyAgICAgICAgaXRlbXMgdG8gZmx1c2guIE5lZWRlZCB0byBhdm9p
ZCBjcmFzaGluZyB3aGVuIGNyZWF0aW5nIGBDYW52YXNQYXR0ZXJuYCB3aXRoIGEgdmlkZW8gZWxl
bWVudC4KKwogMjAyMC0xMC0wOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNv
bT4KIAogICAgICAgICBbTW90aW9uTWFya10gQWRkIGEgZmFzdCBwYXRoIGZvciBHcmFwaGljc0Nv
bnRleHQ6OnN0cm9rZVBhdGggaW4gdGhlIGNhc2Ugd2hlcmUgdGhlIHBhdGggaXMgYSBsaW5lCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCmluZGV4IGQzYzYxMDk1NjJhOWU1MzBmNWJiMmYzYTFhMThmNWVmNjkyMGI0OWMuLjEwZjQ2
OWQyZjM0NmI0YmFhZTIzY2QxNzQ5ZWMxMTc0Y2M3MGFjMmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTUgQEAKKzIwMjAtMTAtMDkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+
CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBBZGQgYWRkaXRpb25hbCBzdXBwb3J0IGZvciBwYWlu
dGluZyB2aWRlbyBlbGVtZW50cyB0byAyRCBjb250ZXh0cworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTMyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIFdlYkNvcmUvQ2hhbmdlTG9nIGZvciBtb3Jl
IGRldGFpbHMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNob3VsZFVzZVJlbW90ZVJlbmRlcmluZ0Zvcik6CisK
IDIwMjAtMTAtMDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9yZz4K
IAogICAgICAgICBSRUdSRVNTSU9OIChyMjY3NzYzKTogU0hPVUxEIE5FVkVSIEJFIFJFQUNIRUQg
aW4gV2ViS2l0Ojpjb250ZW50UnVsZUxpc3RzRnJvbUlkZW50aWZpZXIKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxWaWRlb0VsZW1lbnQuY3BwCmluZGV4IGM5ZjI4YmQyYjgzNDJjZjAxYTU3MzQ5NTAx
NzM0MDJjNjQ4NmE1MGMuLmMwMTdiMzE1MjE0MGM2MjVmN2I4ZGVmNTAzNWE1MmY3NWE1NTBlYWIg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcApAQCAtMzcsNiArMzcs
NyBAQAogI2luY2x1ZGUgIkhUTUxJbWFnZUxvYWRlci5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5o
IgogI2luY2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKKyNpbmNsdWRlICJJbWFnZUJ1ZmZlci5o
IgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAiUGlj
dHVyZUluUGljdHVyZVN1cHBvcnQuaCIKQEAgLTI5MCw2ICsyOTEsMTMgQEAgdm9pZCBIVE1MVmlk
ZW9FbGVtZW50Ojp1cGRhdGVEaXNwbGF5U3RhdGUoKQogICAgICAgICBzZXREaXNwbGF5TW9kZShQ
b3N0ZXIpOwogfQogCitzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+IEhUTUxWaWRlb0VsZW1l
bnQ6OmNyZWF0ZUNvbXBhdGlibGVCdWZmZXIoY29uc3QgRmxvYXRTaXplJiBzaXplLCBTaG91bGRB
Y2NlbGVyYXRlIHNob3VsZEFjY2VsZXJhdGUpIGNvbnN0Cit7CisgICAgYXV0byogaG9zdFdpbmRv
dyA9IGRvY3VtZW50KCkudmlldygpICYmIGRvY3VtZW50KCkudmlldygpLT5yb290KCkgPyBkb2N1
bWVudCgpLnZpZXcoKS0+cm9vdCgpLT5ob3N0V2luZG93KCkgOiBudWxscHRyOworICAgIGF1dG8g
c2hvdWxkVXNlRGlzcGxheUxpc3QgPSBkb2N1bWVudCgpLnNldHRpbmdzKCkuZGlzcGxheUxpc3RE
cmF3aW5nRW5hYmxlZCgpID8gU2hvdWxkVXNlRGlzcGxheUxpc3Q6OlllcyA6IFNob3VsZFVzZURp
c3BsYXlMaXN0OjpObzsKKyAgICByZXR1cm4gSW1hZ2VCdWZmZXI6OmNyZWF0ZShzaXplLCBzaG91
bGRBY2NlbGVyYXRlLCBzaG91bGRVc2VEaXNwbGF5TGlzdCwgUmVuZGVyaW5nUHVycG9zZTo6TWVk
aWFQYWludGluZywgMSwgQ29sb3JTcGFjZTo6U1JHQiwgaG9zdFdpbmRvdyk7Cit9CisKIHZvaWQg
SFRNTFZpZGVvRWxlbWVudDo6cGFpbnRDdXJyZW50RnJhbWVJbkNvbnRleHQoR3JhcGhpY3NDb250
ZXh0JiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0KQogewogICAgIFJlZlB0cjxN
ZWRpYVBsYXllcj4gcGxheWVyID0gSFRNTE1lZGlhRWxlbWVudDo6cGxheWVyKCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaCBiL1NvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCmluZGV4IGVkMzRkZDM2ZGNlN2M2ZGNhZWVkYjQz
ZjczMjQ1Y2Q5Y2ZhMDkzNDMuLmU4NDRjMWVjYzNhN2YzYzU1YjhlMTc0ZWU0MzRmYWNlOTEzNTUx
NmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCkBAIC0zNCw5ICszNCwx
MiBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1MSW1hZ2VMb2FkZXI7CitjbGFz
cyBJbWFnZUJ1ZmZlcjsKIGNsYXNzIFJlbmRlclZpZGVvOwogY2xhc3MgUGljdHVyZUluUGljdHVy
ZU9ic2VydmVyOwogCitlbnVtIGNsYXNzIFNob3VsZEFjY2VsZXJhdGUgOiBib29sOworCiBjbGFz
cyBIVE1MVmlkZW9FbGVtZW50IGZpbmFsIDogcHVibGljIEhUTUxNZWRpYUVsZW1lbnQsIHB1Ymxp
YyBTdXBwbGVtZW50YWJsZTxIVE1MVmlkZW9FbGVtZW50PiB7CiAgICAgV1RGX01BS0VfSVNPX0FM
TE9DQVRFRChIVE1MVmlkZW9FbGVtZW50KTsKIHB1YmxpYzoKQEAgLTY3LDYgKzcwLDggQEAgcHVi
bGljOgogICAgIHZvaWQgd2Via2l0UmVxdWVzdEZ1bGxzY3JlZW4oKSBvdmVycmlkZTsKICNlbmRp
ZgogCisgICAgc3RkOjp1bmlxdWVfcHRyPEltYWdlQnVmZmVyPiBjcmVhdGVDb21wYXRpYmxlQnVm
ZmVyKGNvbnN0IEZsb2F0U2l6ZSYsIFNob3VsZEFjY2VsZXJhdGUpIGNvbnN0OworCiAgICAgLy8g
VXNlZCBieSBjYW52YXMgdG8gZ2FpbiByYXcgcGl4ZWwgYWNjZXNzCiAgICAgdm9pZCBwYWludEN1
cnJlbnRGcmFtZUluQ29udGV4dChHcmFwaGljc0NvbnRleHQmLCBjb25zdCBGbG9hdFJlY3QmKTsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9JbWFnZUJpdG1hcC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0ltYWdlQml0bWFwLmNwcAppbmRleCBiNjc3ZjFkNDA4N2MyNWFhM2I5
YmQ3ODZlNzMxYzA1NjI4NWQ3NjBkLi5lNWUwOTU0Mjc4NzdhNjk2Y2RjZWQ1NDMyMTBkYWU3ZGE2
OGQ4MDQ0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ltYWdlQml0bWFwLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0ltYWdlQml0bWFwLmNwcApAQCAtNDg3LDggKzQ4Nyw3
IEBAIHZvaWQgSW1hZ2VCaXRtYXA6OmNyZWF0ZVByb21pc2UoU2NyaXB0RXhlY3V0aW9uQ29udGV4
dCYgc2NyaXB0RXhlY3V0aW9uQ29udGV4dCwKICAgICBhdXRvIHNvdXJjZVJlY3RhbmdsZSA9IG1h
eWJlU291cmNlUmVjdGFuZ2xlLnJlbGVhc2VSZXR1cm5WYWx1ZSgpOwogCiAgICAgYXV0byBvdXRw
dXRTaXplID0gb3V0cHV0U2l6ZUZvclNvdXJjZVJlY3RhbmdsZShzb3VyY2VSZWN0YW5nbGUsIG9w
dGlvbnMpOwotICAgIGF1dG8gYml0bWFwRGF0YSA9IEltYWdlQnVmZmVyOjpjcmVhdGUoRmxvYXRT
aXplKG91dHB1dFNpemUud2lkdGgoKSwgb3V0cHV0U2l6ZS5oZWlnaHQoKSksIGJ1ZmZlclJlbmRl
cmluZ01vZGUpOwotCisgICAgYXV0byBiaXRtYXBEYXRhID0gdmlkZW8tPmNyZWF0ZUNvbXBhdGli
bGVCdWZmZXIob3V0cHV0U2l6ZSwgYnVmZmVyUmVuZGVyaW5nTW9kZSA9PSBSZW5kZXJpbmdNb2Rl
OjpBY2NlbGVyYXRlZCA/IFNob3VsZEFjY2VsZXJhdGU6OlllcyA6IFNob3VsZEFjY2VsZXJhdGU6
Ok5vKTsKICAgICBpZiAoIWJpdG1hcERhdGEpIHsKICAgICAgICAgcmVzb2x2ZVdpdGhCbGFua0lt
YWdlQnVmZmVyKCF0YWludHNPcmlnaW4oc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5zZWN1cml0eU9y
aWdpbigpLCAqdmlkZW8pLCBXVEZNb3ZlKHByb21pc2UpKTsKICAgICAgICAgcmV0dXJuOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5nQ29udGV4
dDJEQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdD
b250ZXh0MkRCYXNlLmNwcAppbmRleCA2YmMwZjA4ZDBlZDNmMTE0NWE2ZWZlM2M1YzI0MzEwOGYy
MWEzOTUxLi45MzFkZDliYTMxNzg2ODYyYjE0NWNjMjYxNjFjYTMwYjM4ZmY4NzFiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250ZXh0MkRC
YXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdD
b250ZXh0MkRCYXNlLmNwcApAQCAtMTk1Miw3ICsxOTUyLDggQEAgRXhjZXB0aW9uT3I8UmVmUHRy
PENhbnZhc1BhdHRlcm4+PiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpjcmVhdGVQYXR0
ZXJuKEgKICAgICAgICAgcmV0dXJuIFJlZlB0cjxDYW52YXNQYXR0ZXJuPiB7IENhbnZhc1BhdHRl
cm46OmNyZWF0ZShCaXRtYXBJbWFnZTo6Y3JlYXRlKFdURk1vdmUobmF0aXZlSW1hZ2UpKSwgcmVw
ZWF0WCwgcmVwZWF0WSwgb3JpZ2luQ2xlYW4pIH07CiAjZW5kaWYKIAotICAgIGF1dG8gaW1hZ2VC
dWZmZXIgPSBJbWFnZUJ1ZmZlcjo6Y3JlYXRlKHNpemUodmlkZW9FbGVtZW50KSwgZHJhd2luZ0Nv
bnRleHQoKSA/IGRyYXdpbmdDb250ZXh0KCktPnJlbmRlcmluZ01vZGUoKSA6IFJlbmRlcmluZ01v
ZGU6OkFjY2VsZXJhdGVkKTsKKyAgICBhdXRvIHNob3VsZEFjY2VsZXJhdGUgPSAhZHJhd2luZ0Nv
bnRleHQoKSB8fCBkcmF3aW5nQ29udGV4dCgpLT5pc0FjY2VsZXJhdGVkQ29udGV4dCgpID8gU2hv
dWxkQWNjZWxlcmF0ZTo6WWVzIDogU2hvdWxkQWNjZWxlcmF0ZTo6Tm87CisgICAgYXV0byBpbWFn
ZUJ1ZmZlciA9IHZpZGVvRWxlbWVudC5jcmVhdGVDb21wYXRpYmxlQnVmZmVyKHNpemUodmlkZW9F
bGVtZW50KSwgc2hvdWxkQWNjZWxlcmF0ZSk7CiAgICAgaWYgKCFpbWFnZUJ1ZmZlcikKICAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL1JlbmRlcmluZ01vZGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL1JlbmRlcmluZ01vZGUuaAppbmRleCA3ZTk2ZDA2OTAyNTY5NmMxNDY1YjVhMDA0YjQ4MDlh
ZGFkZDcwMjU2Li43MDc4NzBmNmE1ZmYxOTk4MTEzOTlmNzYzMDRjYzY2YTMxNzVmMjg5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9SZW5kZXJpbmdNb2RlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUmVuZGVyaW5nTW9kZS5oCkBA
IC0yOSw3ICsyOSw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogZW51bSBjbGFzcyBSZW5kZXJp
bmdQdXJwb3NlIDogdWludDhfdCB7CiAgICAgVW5zcGVjaWZpZWQsCi0gICAgQ2FudmFzCisgICAg
Q2FudmFzLAorICAgIE1lZGlhUGFpbnRpbmcKIH07CiAKIGVudW0gY2xhc3MgU2hvdWxkQWNjZWxl
cmF0ZSA6IGJvb2wgeyBObywgWWVzIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJbWFnZUJ1ZmZlci5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SW1h
Z2VCdWZmZXIuaAppbmRleCA4NjcyYjFiNDcwODQ3NjkwMTg1MDg0OTU5YTc3YWY0MmZkYjgwNDNm
Li42ZmQ5MTJkZmI4ZmUxMWMwOThkZDYxMjZhOGM4NzhhYzZiYTdhZTAyIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJ
bWFnZUJ1ZmZlci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3Bs
YXlsaXN0cy9EaXNwbGF5TGlzdEltYWdlQnVmZmVyLmgKQEAgLTcxLDcgKzcxLDggQEAgcHVibGlj
OgogCiAgICAgdm9pZCBmbHVzaERyYXdpbmdDb250ZXh0KCkgb3ZlcnJpZGUKICAgICB7Ci0gICAg
ICAgIG1fZHJhd2luZ0NvbnRleHQucmVwbGF5RGlzcGxheUxpc3QoQmFzZUNvbmNyZXRlSW1hZ2VC
dWZmZXI6OmNvbnRleHQoKSk7CisgICAgICAgIGlmIChtX2RyYXdpbmdDb250ZXh0LmRpc3BsYXlM
aXN0KCkuaXRlbUNvdW50KCkpCisgICAgICAgICAgICBtX2RyYXdpbmdDb250ZXh0LnJlcGxheURp
c3BsYXlMaXN0KEJhc2VDb25jcmV0ZUltYWdlQnVmZmVyOjpjb250ZXh0KCkpOwogICAgIH0KIAog
cHJvdGVjdGVkOgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAppbmRleCA0YzZhMTcyMGQ3NGI0ZjJjZjNjMmZjYjNhN2NlMWZlNzAzZDA2OWYzLi4yNzc2YmQy
NTZhZDhiZjRhM2ZkMzVmYzRmNmIzMDcyYTliOTY0MjAxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1dl
YlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtNzIwNCw2ICs3MjA0LDggQEAgYm9vbCBX
ZWJQYWdlOjpzaG91bGRVc2VSZW1vdGVSZW5kZXJpbmdGb3IoUmVuZGVyaW5nUHVycG9zZSBwdXJw
b3NlKQogICAgIHN3aXRjaCAocHVycG9zZSkgewogICAgIGNhc2UgUmVuZGVyaW5nUHVycG9zZTo6
Q2FudmFzOgogICAgICAgICByZXR1cm4gbV9zaG91bGRSZW5kZXJDYW52YXNJbkdQVVByb2Nlc3M7
CisgICAgY2FzZSBSZW5kZXJpbmdQdXJwb3NlOjpNZWRpYVBhaW50aW5nOgorICAgICAgICByZXR1
cm4gbV9wYWdlLT5zZXR0aW5ncygpLnVzZUdQVVByb2Nlc3NGb3JNZWRpYUVuYWJsZWQoKTsKICAg
ICBkZWZhdWx0OgogICAgICAgICBicmVhazsKICAgICB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMjAwZmYxODU0NDM2NjUz
MjBiNzNmMTcyYTA0NjQ1MzAxY2E1MGU3Ni4uOTdmYTgyYjg0YThlZDAwNjI3YWE3NzA3MjA1NGU2
NTNmNmE1MGEzMiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDIwLTEwLTA5ICBXZW5zb24gSHNp
ZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vzc10gQWRk
IGFkZGl0aW9uYWwgc3VwcG9ydCBmb3IgcGFpbnRpbmcgdmlkZW8gZWxlbWVudHMgdG8gMkQgY29u
dGV4dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIx
NzUzMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVu
c2tpcCBzZXZlcmFsIGxheW91dCB0ZXN0cyB0aGF0IHBhc3MgYWZ0ZXIgdGhpcyBjaGFuZ2UuCisK
KyAgICAgICAgKiBncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zOgorCiAyMDIwLTEwLTA4ICBX
ZW5zb24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3
ZWQsIHVuc2tpcCBzZXZlcmFsIGNhbnZhcy1yZWxhdGVkIGxheW91dCB0ZXN0IGRpcmVjdG9yaWVz
IHdoZW4gZW5hYmxpbmcgR1BVIHByb2Nlc3MKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2dwdS1w
cm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhw
ZWN0YXRpb25zCmluZGV4IGZkOTZkN2ZkZThiNDYzOWVmYTg2NzVkODAzZTUzZTU1Y2VjNjQzNjku
LjJhYTMxZmY1NTk1NzUzYjZkN2UzMDM0MmM3NDI5MmU2OTY0ZTAxYmIgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKKysrIGIvTGF5b3V0VGVzdHMv
Z3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjYsOCArMjYsNiBAQCBmYXN0L3JlcGxh
Y2VkL3RhYmxlLXBlcmNlbnQtaGVpZ2h0Lmh0bWwgWyBTa2lwIF0KIGZhc3QvcmVwbGFjZWQvcmVw
bGFjZWQtZWxlbWVudC13aXRoLXBlcmNlbnRhZ2Utd2lkdGgtaW5zaWRlLWZsb3ctYXNzZXJ0cy5o
dG1sIFsgU2tpcCBdCiBmYXN0L3JlcGxhY2VkL2JvcmRlci1yYWRpdXMtY2xpcC1jb250ZW50LWVk
Z2UuaHRtbCBbIFNraXAgXQogZmFzdC9jYW52YXMvY2FudmFzLWRyYXdJbWFnZS1jb21wb3NpdGUt
Y29weS5odG1sIFsgSW1hZ2VPbmx5RmFpbHVyZSBdCi1mYXN0L2NhbnZhcy9jYW52YXMtY3JlYXRl
UGF0dGVybi12aWRlby1sb2FkaW5nLmh0bWwgWyBGYWlsdXJlIF0KLWZhc3QvY2FudmFzL2NhbnZh
cy1jcmVhdGVQYXR0ZXJuLXZpZGVvLW1vZGlmeS5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZh
cy9jYW52YXMtbGFyZ2UtZGltZW5zaW9ucy5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy9j
YW52YXMtcmVuZGVyLWxheWVyLmh0bWwgWyBGYWlsdXJlIF0KIGZhc3QvY2FudmFzL2NoZWNrLXN0
YWxlLXB1dEltYWdlRGF0YS5odG1sIFsgRmFpbHVyZSBdCkBAIC05MSw5ICs4OSw2IEBAIGltcG9y
dGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaW1hZ2ViaXRtYXAtcmVuZGVyaW5nY29udGV4dC9i
aXRtYXByZW5kZXJlci1hcy1pCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ltYWdl
Yml0bWFwLXJlbmRlcmluZ2NvbnRleHQvdHJhbnNmZXJGcm9tSW1hZ2VCaXRtYXAtZGV0YWNoZWQu
aHRtbCBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9pbWFnZWJpdG1h
cC1yZW5kZXJpbmdjb250ZXh0L3RyYW5mZXJGcm9tSW1hZ2VCaXRtYXAtbnVsbC5odG1sIFsgU2tp
cCBdCiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL2VsZW1lbnQv
ZmlsbC1hbmQtc3Ryb2tlLXN0eWxlcy8yZC5wYXR0ZXJuLmFuaW1hdGVkLmdpZi5odG1sIFsgRmFp
bHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL2VsZW1l
bnQvaW1hZ2ViaXRtYXAvY2FudmFzLWNyZWF0ZUltYWdlQml0bWFwLXZpZGVvLXJlc2l6ZS5odG1s
IFsgRmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFz
L2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZHJhd0ltYWdlLmh0bWwgWyBG
YWlsdXJlIF0KLWltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvZWxl
bWVudC9pbWFnZWJpdG1hcC9jcmVhdGVJbWFnZUJpdG1hcC1mbGlwWS5odG1sIFsgRmFpbHVyZSBd
CiBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL2VsZW1lbnQvaW1h
Z2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtb3JpZ2luLnN1Yi5odG1sIFsgRmFpbHVyZSBdCiBp
bXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2FudmFzL2VsZW1lbnQvcGF0aC1v
YmplY3RzLzJkLnBhdGguc3Ryb2tlLnNjYWxlMi5odG1sIFsgRmFpbHVyZSBdCiBpbXBvcnRlZC93
M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvZG9tL2lkbGhhcm5lc3MuaHR0cHMuaHRtbCBbIFNr
aXAgXQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>410976</attachid>
            <date>2020-10-09 14:34:07 -0700</date>
            <delta_ts>2020-10-09 16:39:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-217532-20201009143406.patch</filename>
            <type>text/plain</type>
            <size>12210</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4MjQzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjhhMmY5Y2MwNDQ0NDBm
NGE1ZjgwN2RhOTlhZWYwZWFmOTU1NWI0Mi4uNTZiZDgxZDZkZGY2NDgzZTI0OGFlOGI3YjNkM2Rj
YjExZDBiNzdkMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ3IEBACisyMDIwLTEwLTA5ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFtHUFUgUHJvY2Vz
c10gQWRkIGFkZGl0aW9uYWwgc3VwcG9ydCBmb3IgcGFpbnRpbmcgdmlkZW8gZWxlbWVudHMgdG8g
MkQgY29udGV4dHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxNzUzMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZCBzdXBwb3J0IGZvciB1c2luZyBgdmlkZW9gIGVsZW1lbnRzIGFzIHNvdXJjZXMgZm9y
IGBjcmVhdGVJbWFnZUJpdG1hcGAgYW5kIGBjcmVhdGVQYXR0ZXJuYCBieSBlbnN1cmluZyB0aGF0
CisgICAgICAgIHdlIHVzZSBkaXNwbGF5LWxpc3QtYmFja2VkIGltYWdlIGJ1ZmZlcnMgZm9yIHBh
aW50aW5nIHdoZW4gdXNpbmcgdGhlIEdQVSBwcm9jZXNzIGZvciBtZWRpYS4gU2VlIGJlbG93IGZv
ciBtb3JlCisgICAgICAgIGRldGFpbHMuCisKKyAgICAgICAgVGVzdHM6ICBmYXN0L2NhbnZhcy9j
YW52YXMtY3JlYXRlUGF0dGVybi12aWRlby1sb2FkaW5nLmh0bWwKKyAgICAgICAgICAgICAgICBm
YXN0L2NhbnZhcy9jYW52YXMtY3JlYXRlUGF0dGVybi12aWRlby1tb2RpZnkuaHRtbAorICAgICAg
ICAgICAgICAgIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaHRtbC9jYW52YXMvZWxl
bWVudC9pbWFnZWJpdG1hcC9jYW52YXMtY3JlYXRlSW1hZ2VCaXRtYXAtdmlkZW8tcmVzaXplLmh0
bWwKKyAgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZHJhd0ltYWdlLmh0
bWwKKyAgICAgICAgICAgICAgICBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwv
Y2FudmFzL2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZmxpcFkuaHRtbAor
CisgICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxWaWRlb0VsZW1lbnQ6OmNyZWF0ZUJ1ZmZlckZvclBhaW50aW5nIGNvbnN0KToKKyAgICAg
ICAgKiBodG1sL0hUTUxWaWRlb0VsZW1lbnQuaDoKKworICAgICAgICBBZGQgYSBoZWxwZXIgZnVu
Y3Rpb24gdG8gY3JlYXRlIGFuIGBJbWFnZUJ1ZmZlcmAgY29tcGF0aWJsZSB3aXRoIHRoaXMgdmlk
ZW8gZWxlbWVudCwgZm9yIHRoZSBwdXJwb3NlIG9mCisgICAgICAgIHBhaW50aW5nIHZpZGVvIGZy
YW1lcy4gSW4gcGFydGljdWxhciwgaWYgR1BVIHByb2Nlc3MgZm9yIG1lZGlhIGlzIGVuYWJsZWQs
IHdlJ2xsIGNyZWF0ZSBhIGRpc3BsYXktbGlzdC1iYWNrZWQKKyAgICAgICAgcmVtb3RlIGltYWdl
IGJ1ZmZlci4KKworICAgICAgICAqIGh0bWwvSW1hZ2VCaXRtYXAuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SW1hZ2VCaXRtYXA6OmNyZWF0ZVByb21pc2UpOgorCisgICAgICAgIENhbGwgaW50byBg
SFRNTFZpZGVvRWxlbWVudDo6Y3JlYXRlQnVmZmVyRm9yUGFpbnRpbmdgIHRvIGNvbnN0cnVjdCB0
aGUgYEltYWdlQnVmZmVyYC4KKworICAgICAgICAqIGh0bWwvY2FudmFzL0NhbnZhc1JlbmRlcmlu
Z0NvbnRleHQyREJhc2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q2FudmFzUmVuZGVyaW5nQ29u
dGV4dDJEQmFzZTo6Y3JlYXRlUGF0dGVybik6CisKKyAgICAgICAgQ2FsbCBpbnRvIGBIVE1MVmlk
ZW9FbGVtZW50OjpjcmVhdGVCdWZmZXJGb3JQYWludGluZ2AgdG8gY29uc3RydWN0IHRoZSBgSW1h
Z2VCdWZmZXJgLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvUmVuZGVyaW5nTW9kZS5o
OgorCisgICAgICAgIEFkZCBhICJwdXJwb3NlIiBlbnVtIHZhbHVlIGZvciBtZWRpYSBwYWludGlu
Zy4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlz
dEltYWdlQnVmZmVyLmg6CisKKyAgICAgICAgQWRqdXN0IHRoaXMgdG8gYXZvaWQgZm9yY2luZyB0
aGUgcGxhdGZvcm0gY29udGV4dCB0byBiZSBjcmVhdGVkIGluIHRoZSBjYXNlIHdoZXJlIHRoZXJl
IGFyZSBubyBkaXNwbGF5IGxpc3QKKyAgICAgICAgaXRlbXMgdG8gZmx1c2guIE5lZWRlZCB0byBh
dm9pZCBjcmFzaGluZyB3aGVuIGNyZWF0aW5nIGBDYW52YXNQYXR0ZXJuYCB3aXRoIGEgdmlkZW8g
ZWxlbWVudC4KKwogMjAyMC0xMC0wOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxl
LmNvbT4KIAogICAgICAgICBbTW90aW9uTWFya10gQWRkIGEgZmFzdCBwYXRoIGZvciBHcmFwaGlj
c0NvbnRleHQ6OnN0cm9rZVBhdGggaW4gdGhlIGNhc2Ugd2hlcmUgdGhlIHBhdGggaXMgYSBsaW5l
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCmluZGV4IGQzYzYxMDk1NjJhOWU1MzBmNWJiMmYzYTFhMThmNWVmNjkyMGI0OWMuLjEw
ZjQ2OWQyZjM0NmI0YmFhZTIzY2QxNzQ5ZWMxMTc0Y2M3MGFjMmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTUgQEAKKzIwMjAtMTAtMDkgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5j
b20+CisKKyAgICAgICAgW0dQVSBQcm9jZXNzXSBBZGQgYWRkaXRpb25hbCBzdXBwb3J0IGZvciBw
YWludGluZyB2aWRlbyBlbGVtZW50cyB0byAyRCBjb250ZXh0cworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE3NTMyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU2VlIFdlYkNvcmUvQ2hhbmdlTG9nIGZvciBt
b3JlIGRldGFpbHMuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6
CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OnNob3VsZFVzZVJlbW90ZVJlbmRlcmluZ0Zvcik6
CisKIDIwMjAtMTAtMDggIEFsZXggQ2hyaXN0ZW5zZW4gIDxhY2hyaXN0ZW5zZW5Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBSRUdSRVNTSU9OIChyMjY3NzYzKTogU0hPVUxEIE5FVkVSIEJFIFJFQUNI
RUQgaW4gV2ViS2l0Ojpjb250ZW50UnVsZUxpc3RzRnJvbUlkZW50aWZpZXIKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuY3BwCmluZGV4IGM5ZjI4YmQyYjgzNDJjZjAxYTU3MzQ5
NTAxNzM0MDJjNjQ4NmE1MGMuLjU2ZmU1MTcyZDliNjQxNWFiZmY5ODk0NDJlYTFjY2VkYWU2NmNm
ODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5jcHAK
KysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmNwcApAQCAtMzcsNiAr
MzcsNyBAQAogI2luY2x1ZGUgIkhUTUxJbWFnZUxvYWRlci5oIgogI2luY2x1ZGUgIkhUTUxOYW1l
cy5oIgogI2luY2x1ZGUgIkhUTUxQYXJzZXJJZGlvbXMuaCIKKyNpbmNsdWRlICJJbWFnZUJ1ZmZl
ci5oIgogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKICNpbmNsdWRlICJQYWdlLmgiCiAjaW5jbHVkZSAi
UGljdHVyZUluUGljdHVyZVN1cHBvcnQuaCIKQEAgLTI5MCw2ICsyOTEsMTMgQEAgdm9pZCBIVE1M
VmlkZW9FbGVtZW50Ojp1cGRhdGVEaXNwbGF5U3RhdGUoKQogICAgICAgICBzZXREaXNwbGF5TW9k
ZShQb3N0ZXIpOwogfQogCitzdGQ6OnVuaXF1ZV9wdHI8SW1hZ2VCdWZmZXI+IEhUTUxWaWRlb0Vs
ZW1lbnQ6OmNyZWF0ZUJ1ZmZlckZvclBhaW50aW5nKGNvbnN0IEZsb2F0U2l6ZSYgc2l6ZSwgU2hv
dWxkQWNjZWxlcmF0ZSBzaG91bGRBY2NlbGVyYXRlKSBjb25zdAoreworICAgIGF1dG8qIGhvc3RX
aW5kb3cgPSBkb2N1bWVudCgpLnZpZXcoKSAmJiBkb2N1bWVudCgpLnZpZXcoKS0+cm9vdCgpID8g
ZG9jdW1lbnQoKS52aWV3KCktPnJvb3QoKS0+aG9zdFdpbmRvdygpIDogbnVsbHB0cjsKKyAgICBh
dXRvIHNob3VsZFVzZURpc3BsYXlMaXN0ID0gZG9jdW1lbnQoKS5zZXR0aW5ncygpLmRpc3BsYXlM
aXN0RHJhd2luZ0VuYWJsZWQoKSA/IFNob3VsZFVzZURpc3BsYXlMaXN0OjpZZXMgOiBTaG91bGRV
c2VEaXNwbGF5TGlzdDo6Tm87CisgICAgcmV0dXJuIEltYWdlQnVmZmVyOjpjcmVhdGUoc2l6ZSwg
c2hvdWxkQWNjZWxlcmF0ZSwgc2hvdWxkVXNlRGlzcGxheUxpc3QsIFJlbmRlcmluZ1B1cnBvc2U6
Ok1lZGlhUGFpbnRpbmcsIDEsIENvbG9yU3BhY2U6OlNSR0IsIGhvc3RXaW5kb3cpOworfQorCiB2
b2lkIEhUTUxWaWRlb0VsZW1lbnQ6OnBhaW50Q3VycmVudEZyYW1lSW5Db250ZXh0KEdyYXBoaWNz
Q29udGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCkKIHsKICAgICBSZWZQ
dHI8TWVkaWFQbGF5ZXI+IHBsYXllciA9IEhUTUxNZWRpYUVsZW1lbnQ6OnBsYXllcigpOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAppbmRleCBlZDM0ZGQzNmRjZTdjNmRjYWVl
ZGI0M2Y3MzI0NWNkOWNmYTA5MzQzLi5lY2RiZjFkMTZjMmU2ZjI2YjYyNzllMjM3N2M5ZTU0MTQ5
NjZmN2ZjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaApAQCAtMzQsOSAr
MzQsMTIgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSFRNTEltYWdlTG9hZGVyOwor
Y2xhc3MgSW1hZ2VCdWZmZXI7CiBjbGFzcyBSZW5kZXJWaWRlbzsKIGNsYXNzIFBpY3R1cmVJblBp
Y3R1cmVPYnNlcnZlcjsKIAorZW51bSBjbGFzcyBTaG91bGRBY2NlbGVyYXRlIDogYm9vbDsKKwog
Y2xhc3MgSFRNTFZpZGVvRWxlbWVudCBmaW5hbCA6IHB1YmxpYyBIVE1MTWVkaWFFbGVtZW50LCBw
dWJsaWMgU3VwcGxlbWVudGFibGU8SFRNTFZpZGVvRWxlbWVudD4gewogICAgIFdURl9NQUtFX0lT
T19BTExPQ0FURUQoSFRNTFZpZGVvRWxlbWVudCk7CiBwdWJsaWM6CkBAIC02Nyw2ICs3MCw4IEBA
IHB1YmxpYzoKICAgICB2b2lkIHdlYmtpdFJlcXVlc3RGdWxsc2NyZWVuKCkgb3ZlcnJpZGU7CiAj
ZW5kaWYKIAorICAgIHN0ZDo6dW5pcXVlX3B0cjxJbWFnZUJ1ZmZlcj4gY3JlYXRlQnVmZmVyRm9y
UGFpbnRpbmcoY29uc3QgRmxvYXRTaXplJiwgU2hvdWxkQWNjZWxlcmF0ZSkgY29uc3Q7CisKICAg
ICAvLyBVc2VkIGJ5IGNhbnZhcyB0byBnYWluIHJhdyBwaXhlbCBhY2Nlc3MKICAgICB2b2lkIHBh
aW50Q3VycmVudEZyYW1lSW5Db250ZXh0KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEZsb2F0UmVj
dCYpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0ltYWdlQml0bWFwLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VCaXRtYXAuY3BwCmluZGV4IGI2NzdmMWQ0MDg3YzI1
YWEzYjliZDc4NmU3MzFjMDU2Mjg1ZDc2MGQuLjQzOWI2YTlkN2Q4MTIwZDkxZTFlMWFmYzU2ZDFh
YWY2YmUwYjQ5ZTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VCaXRtYXAu
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSW1hZ2VCaXRtYXAuY3BwCkBAIC00ODcsOCAr
NDg3LDcgQEAgdm9pZCBJbWFnZUJpdG1hcDo6Y3JlYXRlUHJvbWlzZShTY3JpcHRFeGVjdXRpb25D
b250ZXh0JiBzY3JpcHRFeGVjdXRpb25Db250ZXh0LAogICAgIGF1dG8gc291cmNlUmVjdGFuZ2xl
ID0gbWF5YmVTb3VyY2VSZWN0YW5nbGUucmVsZWFzZVJldHVyblZhbHVlKCk7CiAKICAgICBhdXRv
IG91dHB1dFNpemUgPSBvdXRwdXRTaXplRm9yU291cmNlUmVjdGFuZ2xlKHNvdXJjZVJlY3Rhbmds
ZSwgb3B0aW9ucyk7Ci0gICAgYXV0byBiaXRtYXBEYXRhID0gSW1hZ2VCdWZmZXI6OmNyZWF0ZShG
bG9hdFNpemUob3V0cHV0U2l6ZS53aWR0aCgpLCBvdXRwdXRTaXplLmhlaWdodCgpKSwgYnVmZmVy
UmVuZGVyaW5nTW9kZSk7Ci0KKyAgICBhdXRvIGJpdG1hcERhdGEgPSB2aWRlby0+Y3JlYXRlQnVm
ZmVyRm9yUGFpbnRpbmcob3V0cHV0U2l6ZSwgYnVmZmVyUmVuZGVyaW5nTW9kZSA9PSBSZW5kZXJp
bmdNb2RlOjpBY2NlbGVyYXRlZCA/IFNob3VsZEFjY2VsZXJhdGU6OlllcyA6IFNob3VsZEFjY2Vs
ZXJhdGU6Ok5vKTsKICAgICBpZiAoIWJpdG1hcERhdGEpIHsKICAgICAgICAgcmVzb2x2ZVdpdGhC
bGFua0ltYWdlQnVmZmVyKCF0YWludHNPcmlnaW4oc2NyaXB0RXhlY3V0aW9uQ29udGV4dC5zZWN1
cml0eU9yaWdpbigpLCAqdmlkZW8pLCBXVEZNb3ZlKHByb21pc2UpKTsKICAgICAgICAgcmV0dXJu
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaHRtbC9jYW52YXMvQ2FudmFzUmVuZGVyaW5n
Q29udGV4dDJEQmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkRCYXNlLmNwcAppbmRleCA2YmMwZjA4ZDBlZDNmMTE0NWE2ZWZlM2M1YzI0
MzEwOGYyMWEzOTUxLi40ODBiZjdlZjFiZTMxM2U3MDVmYjJlNDU1ZWI2MmZlNjU1NmYzYzUzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5kZXJpbmdDb250
ZXh0MkRCYXNlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9odG1sL2NhbnZhcy9DYW52YXNSZW5k
ZXJpbmdDb250ZXh0MkRCYXNlLmNwcApAQCAtMTk1Miw3ICsxOTUyLDggQEAgRXhjZXB0aW9uT3I8
UmVmUHRyPENhbnZhc1BhdHRlcm4+PiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRCYXNlOjpjcmVh
dGVQYXR0ZXJuKEgKICAgICAgICAgcmV0dXJuIFJlZlB0cjxDYW52YXNQYXR0ZXJuPiB7IENhbnZh
c1BhdHRlcm46OmNyZWF0ZShCaXRtYXBJbWFnZTo6Y3JlYXRlKFdURk1vdmUobmF0aXZlSW1hZ2Up
KSwgcmVwZWF0WCwgcmVwZWF0WSwgb3JpZ2luQ2xlYW4pIH07CiAjZW5kaWYKIAotICAgIGF1dG8g
aW1hZ2VCdWZmZXIgPSBJbWFnZUJ1ZmZlcjo6Y3JlYXRlKHNpemUodmlkZW9FbGVtZW50KSwgZHJh
d2luZ0NvbnRleHQoKSA/IGRyYXdpbmdDb250ZXh0KCktPnJlbmRlcmluZ01vZGUoKSA6IFJlbmRl
cmluZ01vZGU6OkFjY2VsZXJhdGVkKTsKKyAgICBhdXRvIHNob3VsZEFjY2VsZXJhdGUgPSAhZHJh
d2luZ0NvbnRleHQoKSB8fCBkcmF3aW5nQ29udGV4dCgpLT5pc0FjY2VsZXJhdGVkQ29udGV4dCgp
ID8gU2hvdWxkQWNjZWxlcmF0ZTo6WWVzIDogU2hvdWxkQWNjZWxlcmF0ZTo6Tm87CisgICAgYXV0
byBpbWFnZUJ1ZmZlciA9IHZpZGVvRWxlbWVudC5jcmVhdGVCdWZmZXJGb3JQYWludGluZyhzaXpl
KHZpZGVvRWxlbWVudCksIHNob3VsZEFjY2VsZXJhdGUpOwogICAgIGlmICghaW1hZ2VCdWZmZXIp
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9SZW5kZXJpbmdNb2RlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9SZW5kZXJpbmdNb2RlLmgKaW5kZXggN2U5NmQwNjkwMjU2OTZjMTQ2NWI1YTAw
NGI0ODA5YWRhZGQ3MDI1Ni4uNzA3ODcwZjZhNWZmMTk5ODExMzk5Zjc2MzA0Y2M2NmEzMTc1ZjI4
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvUmVuZGVyaW5n
TW9kZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL1JlbmRlcmluZ01v
ZGUuaApAQCAtMjksNyArMjksOCBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIGVudW0gY2xhc3Mg
UmVuZGVyaW5nUHVycG9zZSA6IHVpbnQ4X3QgewogICAgIFVuc3BlY2lmaWVkLAotICAgIENhbnZh
cworICAgIENhbnZhcywKKyAgICBNZWRpYVBhaW50aW5nCiB9OwogCiBlbnVtIGNsYXNzIFNob3Vs
ZEFjY2VsZXJhdGUgOiBib29sIHsgTm8sIFllcyB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SW1hZ2VCdWZmZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5
TGlzdEltYWdlQnVmZmVyLmgKaW5kZXggODY3MmIxYjQ3MDg0NzY5MDE4NTA4NDk1OWE3N2FmNDJm
ZGI4MDQzZi4uNmZkOTEyZGZiOGZlMTFjMDk4ZGQ2MTI2YThjODc4YWM2YmE3YWUwMiAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3Bs
YXlMaXN0SW1hZ2VCdWZmZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJbWFnZUJ1ZmZlci5oCkBAIC03MSw3ICs3MSw4IEBA
IHB1YmxpYzoKIAogICAgIHZvaWQgZmx1c2hEcmF3aW5nQ29udGV4dCgpIG92ZXJyaWRlCiAgICAg
ewotICAgICAgICBtX2RyYXdpbmdDb250ZXh0LnJlcGxheURpc3BsYXlMaXN0KEJhc2VDb25jcmV0
ZUltYWdlQnVmZmVyOjpjb250ZXh0KCkpOworICAgICAgICBpZiAobV9kcmF3aW5nQ29udGV4dC5k
aXNwbGF5TGlzdCgpLml0ZW1Db3VudCgpKQorICAgICAgICAgICAgbV9kcmF3aW5nQ29udGV4dC5y
ZXBsYXlEaXNwbGF5TGlzdChCYXNlQ29uY3JldGVJbWFnZUJ1ZmZlcjo6Y29udGV4dCgpKTsKICAg
ICB9CiAKIHByb3RlY3RlZDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9X
ZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5jcHAKaW5kZXggNGM2YTE3MjBkNzRiNGYyY2YzYzJmY2IzYTdjZTFmZTcwM2QwNjlmMy4u
Mjc3NmJkMjU2YWQ4YmY0YTNmZDM1ZmM0ZjZiMzA3MmE5Yjk2NDIwMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTcyMDQsNiArNzIwNCw4IEBA
IGJvb2wgV2ViUGFnZTo6c2hvdWxkVXNlUmVtb3RlUmVuZGVyaW5nRm9yKFJlbmRlcmluZ1B1cnBv
c2UgcHVycG9zZSkKICAgICBzd2l0Y2ggKHB1cnBvc2UpIHsKICAgICBjYXNlIFJlbmRlcmluZ1B1
cnBvc2U6OkNhbnZhczoKICAgICAgICAgcmV0dXJuIG1fc2hvdWxkUmVuZGVyQ2FudmFzSW5HUFVQ
cm9jZXNzOworICAgIGNhc2UgUmVuZGVyaW5nUHVycG9zZTo6TWVkaWFQYWludGluZzoKKyAgICAg
ICAgcmV0dXJuIG1fcGFnZS0+c2V0dGluZ3MoKS51c2VHUFVQcm9jZXNzRm9yTWVkaWFFbmFibGVk
KCk7CiAgICAgZGVmYXVsdDoKICAgICAgICAgYnJlYWs7CiAgICAgfQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDIwMGZmMTg1
NDQzNjY1MzIwYjczZjE3MmEwNDY0NTMwMWNhNTBlNzYuLjk3ZmE4MmI4NGE4ZWQwMDYyN2FhNzcw
NzIwNTRlNjUzZjZhNTBhMzIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysg
Yi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAyMC0xMC0wOSAgV2Vu
c29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KKworICAgICAgICBbR1BVIFByb2Nl
c3NdIEFkZCBhZGRpdGlvbmFsIHN1cHBvcnQgZm9yIHBhaW50aW5nIHZpZGVvIGVsZW1lbnRzIHRv
IDJEIGNvbnRleHRzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTc1MzIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBVbnNraXAgc2V2ZXJhbCBsYXlvdXQgdGVzdHMgdGhhdCBwYXNzIGFmdGVyIHRoaXMgY2hh
bmdlLgorCisgICAgICAgICogZ3B1LXByb2Nlc3MvVGVzdEV4cGVjdGF0aW9uczoKKwogMjAyMC0x
MC0wOCAgV2Vuc29uIEhzaWVoICA8d2Vuc29uX2hzaWVoQGFwcGxlLmNvbT4KIAogICAgICAgICBV
bnJldmlld2VkLCB1bnNraXAgc2V2ZXJhbCBjYW52YXMtcmVsYXRlZCBsYXlvdXQgdGVzdCBkaXJl
Y3RvcmllcyB3aGVuIGVuYWJsaW5nIEdQVSBwcm9jZXNzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvZ3B1LXByb2Nlc3Mv
VGVzdEV4cGVjdGF0aW9ucwppbmRleCBmZDk2ZDdmZGU4YjQ2MzllZmE4Njc1ZDgwM2U1M2U1NWNl
YzY0MzY5Li4yYWEzMWZmNTU5NTc1M2I2ZDdlMzAzNDJjNzQyOTJlNjk2NGUwMWJiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9ncHUtcHJvY2Vzcy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91
dFRlc3RzL2dwdS1wcm9jZXNzL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI2LDggKzI2LDYgQEAgZmFz
dC9yZXBsYWNlZC90YWJsZS1wZXJjZW50LWhlaWdodC5odG1sIFsgU2tpcCBdCiBmYXN0L3JlcGxh
Y2VkL3JlcGxhY2VkLWVsZW1lbnQtd2l0aC1wZXJjZW50YWdlLXdpZHRoLWluc2lkZS1mbG93LWFz
c2VydHMuaHRtbCBbIFNraXAgXQogZmFzdC9yZXBsYWNlZC9ib3JkZXItcmFkaXVzLWNsaXAtY29u
dGVudC1lZGdlLmh0bWwgWyBTa2lwIF0KIGZhc3QvY2FudmFzL2NhbnZhcy1kcmF3SW1hZ2UtY29t
cG9zaXRlLWNvcHkuaHRtbCBbIEltYWdlT25seUZhaWx1cmUgXQotZmFzdC9jYW52YXMvY2FudmFz
LWNyZWF0ZVBhdHRlcm4tdmlkZW8tbG9hZGluZy5odG1sIFsgRmFpbHVyZSBdCi1mYXN0L2NhbnZh
cy9jYW52YXMtY3JlYXRlUGF0dGVybi12aWRlby1tb2RpZnkuaHRtbCBbIEZhaWx1cmUgXQogZmFz
dC9jYW52YXMvY2FudmFzLWxhcmdlLWRpbWVuc2lvbnMuaHRtbCBbIEZhaWx1cmUgXQogZmFzdC9j
YW52YXMvY2FudmFzLXJlbmRlci1sYXllci5odG1sIFsgRmFpbHVyZSBdCiBmYXN0L2NhbnZhcy9j
aGVjay1zdGFsZS1wdXRJbWFnZURhdGEuaHRtbCBbIEZhaWx1cmUgXQpAQCAtOTEsOSArODksNiBA
QCBpbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2ltYWdlYml0bWFwLXJlbmRlcmluZ2Nv
bnRleHQvYml0bWFwcmVuZGVyZXItYXMtaQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0
cy9pbWFnZWJpdG1hcC1yZW5kZXJpbmdjb250ZXh0L3RyYW5zZmVyRnJvbUltYWdlQml0bWFwLWRl
dGFjaGVkLmh0bWwgWyBTa2lwIF0KIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvaW1h
Z2ViaXRtYXAtcmVuZGVyaW5nY29udGV4dC90cmFuZmVyRnJvbUltYWdlQml0bWFwLW51bGwuaHRt
bCBbIFNraXAgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9l
bGVtZW50L2ZpbGwtYW5kLXN0cm9rZS1zdHlsZXMvMmQucGF0dGVybi5hbmltYXRlZC5naWYuaHRt
bCBbIEZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZh
cy9lbGVtZW50L2ltYWdlYml0bWFwL2NhbnZhcy1jcmVhdGVJbWFnZUJpdG1hcC12aWRlby1yZXNp
emUuaHRtbCBbIEZhaWx1cmUgXQotaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1s
L2NhbnZhcy9lbGVtZW50L2ltYWdlYml0bWFwL2NyZWF0ZUltYWdlQml0bWFwLWRyYXdJbWFnZS5o
dG1sIFsgRmFpbHVyZSBdCi1pbXBvcnRlZC93M2Mvd2ViLXBsYXRmb3JtLXRlc3RzL2h0bWwvY2Fu
dmFzL2VsZW1lbnQvaW1hZ2ViaXRtYXAvY3JlYXRlSW1hZ2VCaXRtYXAtZmxpcFkuaHRtbCBbIEZh
aWx1cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9lbGVt
ZW50L2ltYWdlYml0bWFwL2NyZWF0ZUltYWdlQml0bWFwLW9yaWdpbi5zdWIuaHRtbCBbIEZhaWx1
cmUgXQogaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2NhbnZhcy9lbGVtZW50
L3BhdGgtb2JqZWN0cy8yZC5wYXRoLnN0cm9rZS5zY2FsZTIuaHRtbCBbIEZhaWx1cmUgXQogaW1w
b3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9odG1sL2RvbS9pZGxoYXJuZXNzLmh0dHBzLmh0
bWwgWyBTa2lwIF0K
</data>

          </attachment>
      

    </bug>

</bugzilla>