<?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>218675</bug_id>
          
          <creation_ts>2020-11-06 15:41:04 -0800</creation_ts>
          <short_desc>Remove `localBounds` and `globalBounds` methods from display list items that are not drawing items</short_desc>
          <delta_ts>2020-11-06 19:54:05 -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>WebCore Misc.</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>DoNotImportToRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>218588</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Wenson Hsieh">wenson_hsieh</reporter>
          <assigned_to name="Wenson Hsieh">wenson_hsieh</assigned_to>
          <cc>hi</cc>
    
    <cc>sabouhallawa</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>1705453</commentid>
    <comment_count>0</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-11-06 15:41:04 -0800</bug_when>
    <thetext>SSIA</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705467</commentid>
    <comment_count>1</comment_count>
      <attachid>413497</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-11-06 16:24:48 -0800</bug_when>
    <thetext>Created attachment 413497
Depends on #218588</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705482</commentid>
    <comment_count>2</comment_count>
      <attachid>413497</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2020-11-06 17:23:53 -0800</bug_when>
    <thetext>Comment on attachment 413497
Depends on #218588

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

&gt; Source/WebCore/platform/graphics/displaylists/DisplayListRecorder.h:160
&gt; +        appendWithoutUpdatingExtents&lt;T&gt;(std::forward&lt;Args&gt;(args)...);

I think you could do this with `if constexpr` instead of two overloads</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705483</commentid>
    <comment_count>3</comment_count>
      <attachid>413497</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-11-06 17:24:25 -0800</bug_when>
    <thetext>Comment on attachment 413497
Depends on #218588

I learned from Devin and Andy over Slack that simply wrapping the extent logic in `if constexpr (T::isDrawingItem) { ... }` works here too — I&apos;m going to change it to that instead, since it&apos;s a bit cleaner than using std::enable_if.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705485</commentid>
    <comment_count>4</comment_count>
      <attachid>413503</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-11-06 17:30:13 -0800</bug_when>
    <thetext>Created attachment 413503
For EWS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1705497</commentid>
    <comment_count>5</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-11-06 19:54:04 -0800</bug_when>
    <thetext>Committed r269556: &lt;https://trac.webkit.org/changeset/269556&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 413503.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413497</attachid>
            <date>2020-11-06 16:24:48 -0800</date>
            <delta_ts>2020-11-06 17:30:11 -0800</delta_ts>
            <desc>Depends on #218588</desc>
            <filename>bug-218675-20201106162448.patch</filename>
            <type>text/plain</type>
            <size>15837</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGZlZWFhNTIzNGI2Mjlm
OWEyNjQxNjhkYTNkMjJlYTA5NDRkYWI3Mi4uYzUwYzkyYjZhZWUwNjBlZWRhMDBkYWUyYzE1N2Jj
MWU0ZmFlYTcwMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgxIEBACisyMDIwLTExLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBgbG9j
YWxCb3VuZHNgIGFuZCBgZ2xvYmFsQm91bmRzYCBtZXRob2RzIGZyb20gZGlzcGxheSBsaXN0IGl0
ZW1zIHRoYXQgYXJlIG5vdCBkcmF3aW5nIGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg2NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBJbiByMjY5NTI1LCBJIHJlZmFjdG9yZWQgZGlzcGxheSBs
aXN0IGl0ZW1zIHRvIG5vIGxvbmdlciBkZXJpdmUgZnJvbSBiYXNlIGNsYXNzZXMgKGkuZS4gYERp
c3BsYXlMaXN0OjpJdGVtYCBhbmQKKyAgICAgICAgYERpc3BsYXlMaXN0OjpEcmF3aW5nSXRlbWAp
LiBJbiBkb2luZyBzbywgSSBlbmRlZCB1cCBhZGRpbmcgdGhlIGBsb2NhbEJvdW5kc2AgYW5kIGBn
bG9iYWxCb3VuZHNgIG1ldGhvZHMKKyAgICAgICAgZXZlcnl3aGVyZSwgc2luY2UgdGhlc2UgbWV0
aG9kcyBhcmUgY2FsbGVkIGZyb20gd2l0aGluIHRoZSB0ZW1wbGF0ZWQgYERpc3BsYXlMaXN0OjpS
ZWNvcmRlcjo6YXBwZW5kYCBtZXRob2QKKyAgICAgICAgaWYgdGhlIGdpdmVuIHR5cGUgaXMgYSBk
cmF3aW5nIGl0ZW0gKHRoYXQgaXMsIHRoZSBzdGF0aWMgYGlzRHJhd2luZ0l0ZW1gIGZsYWcgaXMg
c2V0KS4KKworICAgICAgICBIb3dldmVyLCBmb3Igbm9uLWRyYXdpbmcgaXRlbXMgc3VjaCBhcyBz
dGF0ZSBjaGFuZ2UgaXRlbXMsIGBGbHVzaENvbnRleHRgLCBhbmQgYE1ldGFDb21tYW5kU3dpdGNo
VG9gLCBoYXZpbmcKKyAgICAgICAgdGhlc2UgbWV0aG9kcyBtYWtlcyBubyBzZW5zZS4gV2UgY2Fu
IGZpeCB0aGlzIGJ5IGxldmVyYWdpbmcgYHN0ZDo6ZW5hYmxlX2lmYCB0byBmb3JjZSBhbGwgbm9u
LWRyYXdpbmcgaXRlbXMgdG8KKyAgICAgICAgY2FsbCBhIHZlcnNpb24gb2YgYGFwcGVuZGAgdGhh
dCBkb2VzIG5vdCB1cGRhdGUgaXRlbSBleHRlbnRzLCBhbmQgZm9yY2UgYWxsIGRyYXdpbmcgaXRl
bXMgdG8gY2FsbCBhIGRpZmZlcmVudAorICAgICAgICB2ZXJzaW9uIG9mIGBhcHBlbmRgIHRoYXQg
ZG9lcy4KKworICAgICAgICBUaGlzIGFsbG93cyB1cyB0byByZW1vdmUgdGhlc2UgdHdvIG1ldGhv
ZHMgZnJvbSBhbGwgZGlzcGxheSBsaXN0IGl0ZW1zIHRoYXQgYXJlIG5vdCBkcmF3aW5nIGl0ZW1z
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0
SXRlbXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTYXZlOjpsb2NhbEJvdW5k
cyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2F2ZTo6
Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpSZXN0b3JlOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVzdG9yZTo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpUcmFuc2xhdGU6OmxvY2FsQm91bmRzIGNv
bnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpUcmFuc2xhdGU6
Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6Um90YXRlOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6Um90YXRlOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNjYWxlOjpsb2NhbEJvdW5kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2NhbGU6Omdsb2JhbEJv
dW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0
Q1RNOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNw
bGF5TGlzdDo6U2V0Q1RNOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNvbmNhdGVuYXRlQ1RNOjpsb2NhbEJvdW5kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Q29uY2F0ZW5hdGVDVE06
Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6U2V0SW5saW5lRmlsbEdyYWRpZW50Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0SW5saW5lRmlsbEdyYWRpZW50Ojpn
bG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxp
c3Q6OlNldElubGluZUZpbGxDb2xvcjo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAg
ICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldElubGluZUZpbGxDb2xvcjo6Z2xvYmFsQm91
bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRJ
bmxpbmVTdHJva2VDb2xvcjo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldElubGluZVN0cm9rZUNvbG9yOjpnbG9iYWxCb3VuZHMg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldFN0cm9r
ZVRoaWNrbmVzczo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29y
ZTo6RGlzcGxheUxpc3Q6OlNldFN0cm9rZVRoaWNrbmVzczo6Z2xvYmFsQm91bmRzIGNvbnN0KTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRTdGF0ZTo6bG9jYWxC
b3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNl
dFN0YXRlOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
RGlzcGxheUxpc3Q6OlNldExpbmVDYXA6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRMaW5lQ2FwOjpnbG9iYWxCb3VuZHMgY29u
c3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldExpbmVEYXNo
Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6U2V0TGluZURhc2g6Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAg
IChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0TGluZUpvaW46OmxvY2FsQm91bmRzIGNvbnN0KTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRMaW5lSm9pbjo6Z2xv
YmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0
OjpTZXRNaXRlckxpbWl0Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0TWl0ZXJMaW1pdDo6Z2xvYmFsQm91bmRzIGNvbnN0KTog
RGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGVhclNoYWRvdzo6bG9j
YWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6
OkNsZWFyU2hhZG93OjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OkNsaXA6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGlwOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNsaXBPdXQ6OmxvY2FsQm91
bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGlw
T3V0OjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlz
cGxheUxpc3Q6OkNsaXBPdXRUb1BhdGg6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAg
ICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGlwT3V0VG9QYXRoOjpnbG9iYWxCb3VuZHMg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNsaXBQYXRo
Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6Q2xpcFBhdGg6Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChX
ZWJDb3JlOjpEaXNwbGF5TGlzdDo6Q2xpcFRvRHJhd2luZ0NvbW1hbmRzOjpsb2NhbEJvdW5kcyBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Q2xpcFRvRHJh
d2luZ0NvbW1hbmRzOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OkFwcGx5U3Ryb2tlUGF0dGVybjo6bG9jYWxCb3VuZHMgY29uc3Qp
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkFwcGx5U3Ryb2tlUGF0
dGVybjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpBcHBseUZpbGxQYXR0ZXJuOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6QXBwbHlGaWxsUGF0dGVybjo6Z2xvYmFs
Qm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpB
cHBseURldmljZVNjYWxlRmFjdG9yOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6QXBwbHlEZXZpY2VTY2FsZUZhY3Rvcjo6Z2xvYmFs
Qm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpG
bHVzaENvbnRleHQ6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpGbHVzaENvbnRleHQ6Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0
ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6TWV0YUNvbW1hbmRTd2l0Y2hUbzo6
bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxp
c3Q6Ok1ldGFDb21tYW5kU3dpdGNoVG86Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3Jk
ZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZWNvcmRlcjo6YXBwZW5kV2l0
aG91dFVwZGF0aW5nRXh0ZW50cyk6CisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVj
b3JkZXI6OmFwcGVuZCk6CisKIDIwMjAtMTEtMDUgIFdlbnNvbiBIc2llaCAgPHdlbnNvbl9oc2ll
aEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgZGlzcGxheSBsaXN0IGl0ZW0gdG8gcmVwcmVz
ZW50IHN0cm9raW5nIGEgc2luZ2xlIGxpbmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdEl0ZW1zLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RJdGVtcy5o
CmluZGV4IDgyYjBjZTE5N2MxMmNlODRkMzE3NDFhNjljZGUxYTQyMmExZDNkNTcuLmVmZDFhZTE2
MTEyMWRiOTFmOGZlZGRlZjNiZDBkNTYzMTM0MTE3YjAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdEl0ZW1zLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0SXRlbXMuaApAQCAtNTgsOSArNTgsNiBAQCBwdWJsaWM6CiAgICAgc3RhdGljIGNvbnN0ZXhw
ciBib29sIGlzRHJhd2luZ0l0ZW0gPSBmYWxzZTsKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhpY3ND
b250ZXh0JikgY29uc3Q7Ci0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNv
bnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotICAg
IE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RGOjpu
dWxsb3B0OyB9CiB9OwogCiBjbGFzcyBSZXN0b3JlIHsKQEAgLTcwLDkgKzY3LDYgQEAgcHVibGlj
OgogICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0RyYXdpbmdJdGVtID0gZmFsc2U7CiAKICAg
ICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwotCi0gICAgT3B0aW9uYWw8Rmxv
YXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVy
biBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygp
IGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQogfTsKIAogY2xhc3MgVHJhbnNsYXRlIHsK
QEAgLTkyLDkgKzg2LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRl
eHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3Qg
R3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0
aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxv
cHQ7IH0KLQogcHJpdmF0ZToKICAgICBmbG9hdCBtX3ggeyAwIH07CiAgICAgZmxvYXQgbV95IHsg
MCB9OwpAQCAtMTE1LDkgKzEwNiw2IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhp
Y3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRz
KGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQot
ICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RG
OjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgZmxvYXQgbV9hbmdsZSB7IDAgfTsgLy8gSW4g
cmFkaWFucy4KIH07CkBAIC0xMzcsOSArMTI1LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBs
eShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9j
YWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxs
b3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJl
dHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBGbG9hdFNpemUgbV9zaXplOwog
fTsKQEAgLTE1OSw5ICsxNDQsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNz
Q29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhj
b25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAg
ICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6
bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIEFmZmluZVRyYW5zZm9ybSBtX3RyYW5zZm9ybTsK
IH07CkBAIC0xODEsOSArMTYzLDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGlj
c0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMo
Y29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0g
ICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6
Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBBZmZpbmVUcmFuc2Zvcm0gbV90cmFuc2Zvcm07
CiB9OwpAQCAtMjA0LDkgKzE4Myw2IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhp
Y3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRz
KGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQot
ICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RG
OjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgZmxvYXQgbV9vZmZzZXRzW21heENvbG9yU3Rv
cENvdW50XTsKICAgICBTUkdCQTx1aW50OF90PiBtX2NvbG9yc1ttYXhDb2xvclN0b3BDb3VudF07
CkBAIC0yMzAsOSArMjA2LDYgQEAgcHVibGljOgogICAgIENvbG9yIGNvbG9yKCkgY29uc3QgeyBy
ZXR1cm4geyBtX2NvbG9yRGF0YSB9OyB9CiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQm
KSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3Jh
cGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9u
YWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7
IH0KLQogcHJpdmF0ZToKICAgICBTUkdCQTx1aW50OF90PiBtX2NvbG9yRGF0YTsKIH07CkBAIC0y
NTIsOSArMjI1LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQm
KSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3Jh
cGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9u
YWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7
IH0KLQogcHJpdmF0ZToKICAgICBTUkdCQTx1aW50OF90PiBtX2NvbG9yRGF0YTsKIH07CkBAIC0y
NzQsOSArMjQ0LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQm
KSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3Jh
cGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9u
YWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7
IH0KLQogcHJpdmF0ZToKICAgICBmbG9hdCBtX3RoaWNrbmVzcyB7IDAgfTsKIH07CkBAIC0zMDEs
OSArMjY4LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBj
b25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhp
Y3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8
RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0K
LQogcHJpdmF0ZToKICAgICBHcmFwaGljc0NvbnRleHRTdGF0ZUNoYW5nZSBtX3N0YXRlOwogfTsK
QEAgLTYzOCw5ICs2MDIsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29u
dGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25z
dCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBP
cHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVs
bG9wdDsgfQotCiBwcml2YXRlOgogICAgIExpbmVDYXAgbV9saW5lQ2FwOwogfTsKQEAgLTY2Miw5
ICs2MjMsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNv
bnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGlj
c0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxG
bG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQot
CiAgICAgdGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9pZCBlbmNvZGUoRW5jb2RlciYpIGNvbnN0
OwogICAgIHRlbXBsYXRlPGNsYXNzIERlY29kZXI+IHN0YXRpYyBPcHRpb25hbDxTZXRMaW5lRGFz
aD4gZGVjb2RlKERlY29kZXImKTsKIApAQCAtNzExLDkgKzY2OSw2IEBAIHB1YmxpYzoKIAogICAg
IHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxGbG9h
dFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJu
IFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkg
Y29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgTGluZUpvaW4g
bV9saW5lSm9pbjsKIH07CkBAIC03MzMsOSArNjg4LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBh
cHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4g
bG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpu
dWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7
IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBmbG9hdCBtX21pdGVyTGlt
aXQ7CiB9OwpAQCAtNzQ3LDkgKzY5OSw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3RleHBy
IGJvb2wgaXNEcmF3aW5nSXRlbSA9IGZhbHNlOwogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0Nv
bnRleHQmKSBjb25zdDsKLQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29u
c3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAg
T3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51
bGxvcHQ7IH0KIH07CiAKIC8vIEZJWE1FOiB0cmVhdCBhcyBkcmF3aW5nIGl0ZW0/CkBAIC03Njgs
OSArNzE3LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBj
b25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhp
Y3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8
RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0K
LQogcHJpdmF0ZToKICAgICBGbG9hdFJlY3QgbV9yZWN0OwogfTsKQEAgLTc5MCw5ICs3MzYsNiBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwogCi0g
ICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQm
KSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+
IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotCiBwcml2YXRl
OgogICAgIEZsb2F0UmVjdCBtX3JlY3Q7CiB9OwpAQCAtODIwLDkgKzc2Myw2IEBAIHB1YmxpYzoK
IAogICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25h
bDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsg
cmV0dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91
bmRzKCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgUGF0
aCBtX3BhdGg7CiB9OwpAQCAtODY3LDkgKzgwNyw2IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBw
bHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxv
Y2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVs
bG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyBy
ZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KICAgICB0ZW1wbGF0ZTxjbGFzcyBFbmNvZGVyPiB2b2lk
IGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAgdGVtcGxhdGU8Y2xhc3MgRGVjb2Rlcj4gc3Rh
dGljIE9wdGlvbmFsPENsaXBQYXRoPiBkZWNvZGUoRGVjb2RlciYpOwogCkBAIC05MzgsOSArODc1
LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsK
IAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250
ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRS
ZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJp
dmF0ZToKICAgICBGbG9hdFJlY3QgbV9kZXN0aW5hdGlvbjsKICAgICBDb2xvclNwYWNlIG1fY29s
b3JTcGFjZTsKQEAgLTI1NjcsOSArMjUwMSw2IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgY29uc3Rl
eHByIGJvb2wgaXNEcmF3aW5nSXRlbSA9IGZhbHNlOwogCiAgICAgdm9pZCBhcHBseShHcmFwaGlj
c0NvbnRleHQmKSBjb25zdDsKLQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMo
Y29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0g
ICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6
Om51bGxvcHQ7IH0KIH07CiAKIGNsYXNzIEFwcGx5RmlsbFBhdHRlcm4gewpAQCAtMjU3OSw5ICsy
NTEwLDYgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0RyYXdpbmdJdGVt
ID0gZmFsc2U7CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwotCi0g
ICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQm
KSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+
IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQogfTsKIAogI2Vu
ZGlmCkBAIC0yNjAxLDkgKzI1MjksNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBo
aWNzQ29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5k
cyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0K
LSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdU
Rjo6bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIGZsb2F0IG1fc2NhbGVGYWN0b3IgeyAxIH07
CiB9OwpAQCAtMjYyMyw5ICsyNTQ4LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFw
aGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3Vu
ZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9
Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBX
VEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBGbHVzaElkZW50aWZpZXIgbV9pZGVudGlm
aWVyOwogfTsKQEAgLTI2NDUsOSArMjU2Nyw2IEBAIHB1YmxpYzoKIAogICAgIEl0ZW1CdWZmZXJJ
ZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBtX2lkZW50aWZpZXI7IH0KIAot
ICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0
JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0
PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0
ZToKICAgICBJdGVtQnVmZmVySWRlbnRpZmllciBtX2lkZW50aWZpZXI7CiB9OwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlM
aXN0UmVjb3JkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXls
aXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgKaW5kZXggZjk1MWNmYWEyY2FjYzk2ZDRjMWExOGEy
NWZhNTg5NjA3OTIyNDZkNC4uODhjNDIwMDNkZDM5YzViNzk5OWEzMThlY2UyNGJkMmY5ODIxMTVm
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNvcmRlci5oCkBAIC0xNDcsMTQgKzE0
NywyMyBAQCBwcml2YXRlOgogICAgIEZsb2F0UmVjdCByb3VuZFRvRGV2aWNlUGl4ZWxzKGNvbnN0
IEZsb2F0UmVjdCYsIEdyYXBoaWNzQ29udGV4dDo6Um91bmRpbmdNb2RlKSBvdmVycmlkZTsKIAog
ICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQsIGNsYXNzLi4uIEFyZ3M+Ci0gICAgdm9pZCBhcHBlbmQo
QXJncyYmLi4uIGFyZ3MpCisgICAgdm9pZCBhcHBlbmRXaXRob3V0VXBkYXRpbmdFeHRlbnRzKEFy
Z3MmJi4uLiBhcmdzKQogICAgIHsKICAgICAgICAgd2lsbEFwcGVuZEl0ZW1PZlR5cGUoVDo6aXRl
bVR5cGUpOwogICAgICAgICBtX2Rpc3BsYXlMaXN0LmFwcGVuZDxUPihzdGQ6OmZvcndhcmQ8QXJn
cz4oYXJncykuLi4pOwogICAgICAgICBkaWRBcHBlbmRJdGVtT2ZUeXBlKFQ6Oml0ZW1UeXBlKTsK
KyAgICB9CiAKLSAgICAgICAgaWYgKCFUOjppc0RyYXdpbmdJdGVtKQotICAgICAgICAgICAgcmV0
dXJuOworICAgIHRlbXBsYXRlPHR5cGVuYW1lIFQsIGNsYXNzLi4uIEFyZ3M+CisgICAgdHlwZW5h
bWUgc3RkOjplbmFibGVfaWY8IVQ6OmlzRHJhd2luZ0l0ZW0sIHZvaWQ+Ojp0eXBlIGFwcGVuZChB
cmdzJiYuLi4gYXJncykKKyAgICB7CisgICAgICAgIGFwcGVuZFdpdGhvdXRVcGRhdGluZ0V4dGVu
dHM8VD4oc3RkOjpmb3J3YXJkPEFyZ3M+KGFyZ3MpLi4uKTsKKyAgICB9CisKKyAgICB0ZW1wbGF0
ZTx0eXBlbmFtZSBULCBjbGFzcy4uLiBBcmdzPgorICAgIHR5cGVuYW1lIHN0ZDo6ZW5hYmxlX2lm
PFQ6OmlzRHJhd2luZ0l0ZW0sIHZvaWQ+Ojp0eXBlIGFwcGVuZChBcmdzJiYuLi4gYXJncykKKyAg
ICB7CisgICAgICAgIGFwcGVuZFdpdGhvdXRVcGRhdGluZ0V4dGVudHM8VD4oc3RkOjpmb3J3YXJk
PEFyZ3M+KGFyZ3MpLi4uKTsKIAogICAgICAgICBpZiAoTElLRUxZKCFtX2Rpc3BsYXlMaXN0LnRy
YWNrc0RyYXdpbmdJdGVtRXh0ZW50cygpKSkKICAgICAgICAgICAgIHJldHVybjsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>413503</attachid>
            <date>2020-11-06 17:30:13 -0800</date>
            <delta_ts>2020-11-06 19:54:05 -0800</delta_ts>
            <desc>For EWS</desc>
            <filename>bug-218675-20201106173012.patch</filename>
            <type>text/plain</type>
            <size>16035</size>
            <attacher name="Wenson Hsieh">wenson_hsieh</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY5NTQyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOGZlZWFhNTIzNGI2Mjlm
OWEyNjQxNjhkYTNkMjJlYTA5NDRkYWI3Mi4uYjk0NzI1YTczNDA1NWMwYzVjMzM5YTdlMGYyNjY4
ODgwYjExNTdlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDgwIEBACisyMDIwLTExLTA2ICBXZW5z
b24gSHNpZWggIDx3ZW5zb25faHNpZWhAYXBwbGUuY29tPgorCisgICAgICAgIFJlbW92ZSBgbG9j
YWxCb3VuZHNgIGFuZCBgZ2xvYmFsQm91bmRzYCBtZXRob2RzIGZyb20gZGlzcGxheSBsaXN0IGl0
ZW1zIHRoYXQgYXJlIG5vdCBkcmF3aW5nIGl0ZW1zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTg2NzUKKworICAgICAgICBSZXZpZXdlZCBieSBUaW0g
SG9ydG9uIGFuZCBEZXZpbiBSb3Vzc28uCisKKyAgICAgICAgSW4gcjI2OTUyNSwgSSByZWZhY3Rv
cmVkIGRpc3BsYXkgbGlzdCBpdGVtcyB0byBubyBsb25nZXIgZGVyaXZlIGZyb20gYmFzZSBjbGFz
c2VzIChpLmUuIGBEaXNwbGF5TGlzdDo6SXRlbWAgYW5kCisgICAgICAgIGBEaXNwbGF5TGlzdDo6
RHJhd2luZ0l0ZW1gKS4gSW4gZG9pbmcgc28sIEkgZW5kZWQgdXAgYWRkaW5nIHRoZSBgbG9jYWxC
b3VuZHNgIGFuZCBgZ2xvYmFsQm91bmRzYCBtZXRob2RzCisgICAgICAgIGV2ZXJ5d2hlcmUsIHNp
bmNlIHRoZXNlIG1ldGhvZHMgYXJlIGNhbGxlZCBmcm9tIHdpdGhpbiB0aGUgdGVtcGxhdGVkIGBE
aXNwbGF5TGlzdDo6UmVjb3JkZXI6OmFwcGVuZGAgbWV0aG9kCisgICAgICAgIGlmIHRoZSBnaXZl
biB0eXBlIGlzIGEgZHJhd2luZyBpdGVtICh0aGF0IGlzLCB0aGUgc3RhdGljIGBpc0RyYXdpbmdJ
dGVtYCBmbGFnIGlzIHNldCkuCisKKyAgICAgICAgSG93ZXZlciwgZm9yIG5vbi1kcmF3aW5nIGl0
ZW1zIHN1Y2ggYXMgc3RhdGUgY2hhbmdlIGl0ZW1zLCBgRmx1c2hDb250ZXh0YCwgYW5kIGBNZXRh
Q29tbWFuZFN3aXRjaFRvYCwgaGF2aW5nCisgICAgICAgIHRoZXNlIG1ldGhvZHMgbWFrZXMgbm8g
c2Vuc2UuIFdlIGNhbiBmaXggdGhpcyBieSBsZXZlcmFnaW5nIGBjb25zdGV4cHIgaWZgIHRvIG9u
bHkgdXBkYXRlIGl0ZW0gZXh0ZW50cyBmb3IKKyAgICAgICAgZGlzcGxheSBsaXN0IGl0ZW0gdHlw
ZXMgdGhhdCBhcmUgZHJhd2luZyBpdGVtcy4KKworICAgICAgICBUaGlzIGFsbG93cyB1cyB0byBy
ZW1vdmUgdGhlc2UgdHdvIG1ldGhvZHMgZnJvbSBhbGwgZGlzcGxheSBsaXN0IGl0ZW1zIHRoYXQg
YXJlIG5vdCBkcmF3aW5nIGl0ZW1zLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlz
cGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpTYXZlOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3Jl
OjpEaXNwbGF5TGlzdDo6U2F2ZTo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAg
ICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpSZXN0b3JlOjpsb2NhbEJvdW5kcyBjb25zdCk6IERl
bGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6UmVzdG9yZTo6Z2xvYmFsQm91
bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpUcmFu
c2xhdGU6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRp
c3BsYXlMaXN0OjpUcmFuc2xhdGU6Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Um90YXRlOjpsb2NhbEJvdW5kcyBjb25zdCk6IERl
bGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Um90YXRlOjpnbG9iYWxCb3Vu
ZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNjYWxl
Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6U2NhbGU6Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6U2V0Q1RNOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisg
ICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0Q1RNOjpnbG9iYWxCb3VuZHMgY29uc3Qp
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNvbmNhdGVuYXRlQ1RN
Ojpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5
TGlzdDo6Q29uY2F0ZW5hdGVDVE06Omdsb2JhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0SW5saW5lRmlsbEdyYWRpZW50Ojpsb2NhbEJv
dW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0
SW5saW5lRmlsbEdyYWRpZW50OjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldElubGluZUZpbGxDb2xvcjo6bG9jYWxCb3VuZHMg
Y29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldElubGlu
ZUZpbGxDb2xvcjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpTZXRJbmxpbmVTdHJva2VDb2xvcjo6bG9jYWxCb3VuZHMgY29uc3Qp
OiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldElubGluZVN0cm9r
ZUNvbG9yOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
RGlzcGxheUxpc3Q6OlNldFN0cm9rZVRoaWNrbmVzczo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxl
dGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldFN0cm9rZVRoaWNrbmVzczo6
Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpTZXRTdGF0ZTo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2Vi
Q29yZTo6RGlzcGxheUxpc3Q6OlNldFN0YXRlOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVk
LgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OlNldExpbmVDYXA6OmxvY2FsQm91bmRz
IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRMaW5l
Q2FwOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlz
cGxheUxpc3Q6OlNldExpbmVEYXNoOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0TGluZURhc2g6Omdsb2JhbEJvdW5kcyBjb25z
dCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0TGluZUpvaW46
OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpTZXRMaW5lSm9pbjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAg
KFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpTZXRNaXRlckxpbWl0Ojpsb2NhbEJvdW5kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6U2V0TWl0ZXJMaW1pdDo6
Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlM
aXN0OjpDbGVhclNoYWRvdzo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAo
V2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNsZWFyU2hhZG93OjpnbG9iYWxCb3VuZHMgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNsaXA6OmxvY2FsQm91bmRz
IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGlwOjpn
bG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxp
c3Q6OkNsaXBPdXQ6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNv
cmU6OkRpc3BsYXlMaXN0OjpDbGlwT3V0OjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkNsaXBPdXRUb1BhdGg6OmxvY2FsQm91bmRz
IGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpDbGlwT3V0
VG9QYXRoOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6
RGlzcGxheUxpc3Q6OkNsaXBQYXRoOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAg
ICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Q2xpcFBhdGg6Omdsb2JhbEJvdW5kcyBjb25zdCk6
IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6Q2xpcFRvRHJhd2luZ0Nv
bW1hbmRzOjpsb2NhbEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpE
aXNwbGF5TGlzdDo6Q2xpcFRvRHJhd2luZ0NvbW1hbmRzOjpnbG9iYWxCb3VuZHMgY29uc3QpOiBE
ZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6OkFwcGx5U3Ryb2tlUGF0dGVy
bjo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAgICAoV2ViQ29yZTo6RGlzcGxh
eUxpc3Q6OkFwcGx5U3Ryb2tlUGF0dGVybjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4K
KyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpBcHBseUZpbGxQYXR0ZXJuOjpsb2NhbEJv
dW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6QXBw
bHlGaWxsUGF0dGVybjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkRpc3BsYXlMaXN0OjpBcHBseURldmljZVNjYWxlRmFjdG9yOjpsb2NhbEJvdW5kcyBj
b25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6QXBwbHlEZXZp
Y2VTY2FsZUZhY3Rvcjo6Z2xvYmFsQm91bmRzIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkRpc3BsYXlMaXN0OjpGbHVzaENvbnRleHQ6OmxvY2FsQm91bmRzIGNvbnN0KTogRGVs
ZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0OjpGbHVzaENvbnRleHQ6Omdsb2Jh
bEJvdW5kcyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgIChXZWJDb3JlOjpEaXNwbGF5TGlzdDo6
TWV0YUNvbW1hbmRTd2l0Y2hUbzo6bG9jYWxCb3VuZHMgY29uc3QpOiBEZWxldGVkLgorICAgICAg
ICAoV2ViQ29yZTo6RGlzcGxheUxpc3Q6Ok1ldGFDb21tYW5kU3dpdGNoVG86Omdsb2JhbEJvdW5k
cyBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZGlzcGxheWxp
c3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaDoKKyAgICAgICAgKFdlYkNvcmU6OkRpc3BsYXlMaXN0
OjpSZWNvcmRlcjo6YXBwZW5kV2l0aG91dFVwZGF0aW5nRXh0ZW50cyk6CisgICAgICAgIChXZWJD
b3JlOjpEaXNwbGF5TGlzdDo6UmVjb3JkZXI6OmFwcGVuZCk6CisKIDIwMjAtMTEtMDUgIFdlbnNv
biBIc2llaCAgPHdlbnNvbl9oc2llaEBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGEgZGlzcGxh
eSBsaXN0IGl0ZW0gdG8gcmVwcmVzZW50IHN0cm9raW5nIGEgc2luZ2xlIGxpbmUKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5
TGlzdEl0ZW1zLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlz
dHMvRGlzcGxheUxpc3RJdGVtcy5oCmluZGV4IDgyYjBjZTE5N2MxMmNlODRkMzE3NDFhNjljZGUx
YTQyMmExZDNkNTcuLmVmZDFhZTE2MTEyMWRiOTFmOGZlZGRlZjNiZDBkNTYzMTM0MTE3YjAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9E
aXNwbGF5TGlzdEl0ZW1zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0SXRlbXMuaApAQCAtNTgsOSArNTgsNiBAQCBwdWJsaWM6
CiAgICAgc3RhdGljIGNvbnN0ZXhwciBib29sIGlzRHJhd2luZ0l0ZW0gPSBmYWxzZTsKIAogICAg
IHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7Ci0KLSAgICBPcHRpb25hbDxGbG9h
dFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJu
IFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkg
Y29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9CiB9OwogCiBjbGFzcyBSZXN0b3JlIHsKQEAg
LTcwLDkgKzY3LDYgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4cHIgYm9vbCBpc0RyYXdp
bmdJdGVtID0gZmFsc2U7CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0
OwotCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0Nv
bnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9h
dFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQogfTsK
IAogY2xhc3MgVHJhbnNsYXRlIHsKQEAgLTkyLDkgKzg2LDYgQEAgcHVibGljOgogCiAgICAgdm9p
ZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVj
dD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RG
OjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25z
dCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBmbG9hdCBtX3ggeyAw
IH07CiAgICAgZmxvYXQgbV95IHsgMCB9OwpAQCAtMTE1LDkgKzEwNiw2IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxG
bG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0
dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRz
KCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgZmxvYXQg
bV9hbmdsZSB7IDAgfTsgLy8gSW4gcmFkaWFucy4KIH07CkBAIC0xMzcsOSArMTI1LDYgQEAgcHVi
bGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9w
dGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29u
c3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9i
YWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAg
ICBGbG9hdFNpemUgbV9zaXplOwogfTsKQEAgLTE1OSw5ICsxNDQsNiBAQCBwdWJsaWM6CiAKICAg
ICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8Rmxv
YXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVy
biBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygp
IGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIEFmZmluZVRy
YW5zZm9ybSBtX3RyYW5zZm9ybTsKIH07CkBAIC0xODEsOSArMTYzLDYgQEAgcHVibGljOgogCiAg
ICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZs
b2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1
cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMo
KSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBBZmZpbmVU
cmFuc2Zvcm0gbV90cmFuc2Zvcm07CiB9OwpAQCAtMjA0LDkgKzE4Myw2IEBAIHB1YmxpYzoKIAog
ICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBPcHRpb25hbDxG
bG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0
dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRz
KCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KIHByaXZhdGU6CiAgICAgZmxvYXQg
bV9vZmZzZXRzW21heENvbG9yU3RvcENvdW50XTsKICAgICBTUkdCQTx1aW50OF90PiBtX2NvbG9y
c1ttYXhDb2xvclN0b3BDb3VudF07CkBAIC0yMzAsOSArMjA2LDYgQEAgcHVibGljOgogICAgIENv
bG9yIGNvbG9yKCkgY29uc3QgeyByZXR1cm4geyBtX2NvbG9yRGF0YSB9OyB9CiAgICAgdm9pZCBh
cHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4g
bG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpu
dWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7
IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBTUkdCQTx1aW50OF90PiBt
X2NvbG9yRGF0YTsKIH07CkBAIC0yNTIsOSArMjI1LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBh
cHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4g
bG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpu
dWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7
IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBTUkdCQTx1aW50OF90PiBt
X2NvbG9yRGF0YTsKIH07CkBAIC0yNzQsOSArMjQ0LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBh
cHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4g
bG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpu
dWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7
IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBmbG9hdCBtX3RoaWNrbmVz
cyB7IDAgfTsKIH07CkBAIC0zMDEsOSArMjY4LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBs
eShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9j
YWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxs
b3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJl
dHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBHcmFwaGljc0NvbnRleHRTdGF0
ZUNoYW5nZSBtX3N0YXRlOwogfTsKQEAgLTYzOCw5ICs2MDIsNiBAQCBwdWJsaWM6CiAKICAgICB2
b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRS
ZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBX
VEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNv
bnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIExpbmVDYXAgbV9s
aW5lQ2FwOwogfTsKQEAgLTY2Miw5ICs2MjMsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5
KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2Nh
bEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxv
cHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0
dXJuIFdURjo6bnVsbG9wdDsgfQotCiAgICAgdGVtcGxhdGU8Y2xhc3MgRW5jb2Rlcj4gdm9pZCBl
bmNvZGUoRW5jb2RlciYpIGNvbnN0OwogICAgIHRlbXBsYXRlPGNsYXNzIERlY29kZXI+IHN0YXRp
YyBPcHRpb25hbDxTZXRMaW5lRGFzaD4gZGVjb2RlKERlY29kZXImKTsKIApAQCAtNzExLDkgKzY2
OSw2IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7
CiAKLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29u
dGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0
UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KIHBy
aXZhdGU6CiAgICAgTGluZUpvaW4gbV9saW5lSm9pbjsKIH07CkBAIC03MzMsOSArNjg4LDYgQEAg
cHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAg
IE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0Jikg
Y29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBn
bG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToK
ICAgICBmbG9hdCBtX21pdGVyTGltaXQ7CiB9OwpAQCAtNzQ3LDkgKzY5OSw2IEBAIHB1YmxpYzoK
ICAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNEcmF3aW5nSXRlbSA9IGZhbHNlOwogCiAgICAg
dm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKLQotICAgIE9wdGlvbmFsPEZsb2F0
UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4g
V1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBj
b25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KIH07CiAKIC8vIEZJWE1FOiB0cmVhdCBhcyBk
cmF3aW5nIGl0ZW0/CkBAIC03NjgsOSArNzE3LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBs
eShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9j
YWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxs
b3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJl
dHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBGbG9hdFJlY3QgbV9yZWN0Owog
fTsKQEAgLTc5MCw5ICs3MzYsNiBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNz
Q29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhj
b25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAg
ICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6
bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIEZsb2F0UmVjdCBtX3JlY3Q7CiB9OwpAQCAtODIw
LDkgKzc2Myw2IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0Jikg
Y29uc3Q7CiAKLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBo
aWNzQ29udGV4dCYpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFs
PEZsb2F0UmVjdD4gZ2xvYmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9
Ci0KIHByaXZhdGU6CiAgICAgUGF0aCBtX3BhdGg7CiB9OwpAQCAtODY3LDkgKzgwNyw2IEBAIHB1
YmxpYzoKIAogICAgIHZvaWQgYXBwbHkoR3JhcGhpY3NDb250ZXh0JikgY29uc3Q7CiAKLSAgICBP
cHRpb25hbDxGbG9hdFJlY3Q+IGxvY2FsQm91bmRzKGNvbnN0IEdyYXBoaWNzQ29udGV4dCYpIGNv
bnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gZ2xv
YmFsQm91bmRzKCkgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0KICAgICB0ZW1wbGF0
ZTxjbGFzcyBFbmNvZGVyPiB2b2lkIGVuY29kZShFbmNvZGVyJikgY29uc3Q7CiAgICAgdGVtcGxh
dGU8Y2xhc3MgRGVjb2Rlcj4gc3RhdGljIE9wdGlvbmFsPENsaXBQYXRoPiBkZWNvZGUoRGVjb2Rl
ciYpOwogCkBAIC05MzgsOSArODc1LDYgQEAgcHVibGljOgogCiAgICAgdm9pZCBhcHBseShHcmFw
aGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3Vu
ZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9
Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBX
VEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBGbG9hdFJlY3QgbV9kZXN0aW5hdGlvbjsK
ICAgICBDb2xvclNwYWNlIG1fY29sb3JTcGFjZTsKQEAgLTI1NjcsOSArMjUwMSw2IEBAIHB1Ymxp
YzoKICAgICBzdGF0aWMgY29uc3RleHByIGJvb2wgaXNEcmF3aW5nSXRlbSA9IGZhbHNlOwogCiAg
ICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKLQotICAgIE9wdGlvbmFsPEZs
b2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1
cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMo
KSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KIH07CiAKIGNsYXNzIEFwcGx5RmlsbFBh
dHRlcm4gewpAQCAtMjU3OSw5ICsyNTEwLDYgQEAgcHVibGljOgogICAgIHN0YXRpYyBjb25zdGV4
cHIgYm9vbCBpc0RyYXdpbmdJdGVtID0gZmFsc2U7CiAKICAgICB2b2lkIGFwcGx5KEdyYXBoaWNz
Q29udGV4dCYpIGNvbnN0OwotCi0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhj
b25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLSAg
ICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIFdURjo6
bnVsbG9wdDsgfQogfTsKIAogI2VuZGlmCkBAIC0yNjAxLDkgKzI1MjksNiBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIGFwcGx5KEdyYXBoaWNzQ29udGV4dCYpIGNvbnN0OwogCi0gICAgT3B0aW9uYWw8
RmxvYXRSZWN0PiBsb2NhbEJvdW5kcyhjb25zdCBHcmFwaGljc0NvbnRleHQmKSBjb25zdCB7IHJl
dHVybiBXVEY6Om51bGxvcHQ7IH0KLSAgICBPcHRpb25hbDxGbG9hdFJlY3Q+IGdsb2JhbEJvdW5k
cygpIGNvbnN0IHsgcmV0dXJuIFdURjo6bnVsbG9wdDsgfQotCiBwcml2YXRlOgogICAgIGZsb2F0
IG1fc2NhbGVGYWN0b3IgeyAxIH07CiB9OwpAQCAtMjYyMyw5ICsyNTQ4LDYgQEAgcHVibGljOgog
CiAgICAgdm9pZCBhcHBseShHcmFwaGljc0NvbnRleHQmKSBjb25zdDsKIAotICAgIE9wdGlvbmFs
PEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMoY29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyBy
ZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0gICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3Vu
ZHMoKSBjb25zdCB7IHJldHVybiBXVEY6Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBGbHVz
aElkZW50aWZpZXIgbV9pZGVudGlmaWVyOwogfTsKQEAgLTI2NDUsOSArMjU2Nyw2IEBAIHB1Ymxp
YzoKIAogICAgIEl0ZW1CdWZmZXJJZGVudGlmaWVyIGlkZW50aWZpZXIoKSBjb25zdCB7IHJldHVy
biBtX2lkZW50aWZpZXI7IH0KIAotICAgIE9wdGlvbmFsPEZsb2F0UmVjdD4gbG9jYWxCb3VuZHMo
Y29uc3QgR3JhcGhpY3NDb250ZXh0JikgY29uc3QgeyByZXR1cm4gV1RGOjpudWxsb3B0OyB9Ci0g
ICAgT3B0aW9uYWw8RmxvYXRSZWN0PiBnbG9iYWxCb3VuZHMoKSBjb25zdCB7IHJldHVybiBXVEY6
Om51bGxvcHQ7IH0KLQogcHJpdmF0ZToKICAgICBJdGVtQnVmZmVySWRlbnRpZmllciBtX2lkZW50
aWZpZXI7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
ZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Rpc3BsYXlsaXN0cy9EaXNwbGF5TGlzdFJlY29yZGVyLmgKaW5kZXggZjk1
MWNmYWEyY2FjYzk2ZDRjMWExOGEyNWZhNTg5NjA3OTIyNDZkNC4uNDY0OGY2ZGQ5MWNhODVlYTYz
OGE4ZWZkMjQzNDg4NGQ2NTBlMmFjNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZGlzcGxheWxpc3RzL0Rpc3BsYXlMaXN0UmVjb3JkZXIuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9kaXNwbGF5bGlzdHMvRGlzcGxheUxpc3RSZWNv
cmRlci5oCkBAIC0xNTMsMTkgKzE1MywxOCBAQCBwcml2YXRlOgogICAgICAgICBtX2Rpc3BsYXlM
aXN0LmFwcGVuZDxUPihzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pOwogICAgICAgICBkaWRB
cHBlbmRJdGVtT2ZUeXBlKFQ6Oml0ZW1UeXBlKTsKIAotICAgICAgICBpZiAoIVQ6OmlzRHJhd2lu
Z0l0ZW0pCi0gICAgICAgICAgICByZXR1cm47Ci0KLSAgICAgICAgaWYgKExJS0VMWSghbV9kaXNw
bGF5TGlzdC50cmFja3NEcmF3aW5nSXRlbUV4dGVudHMoKSkpCi0gICAgICAgICAgICByZXR1cm47
Ci0KLSAgICAgICAgYXV0byBpdGVtID0gVChzdGQ6OmZvcndhcmQ8QXJncz4oYXJncykuLi4pOwot
ICAgICAgICBpZiAoYXV0byByZWN0ID0gaXRlbS5sb2NhbEJvdW5kcyhncmFwaGljc0NvbnRleHQo
KSkpCi0gICAgICAgICAgICBtX2Rpc3BsYXlMaXN0LmFkZERyYXdpbmdJdGVtRXh0ZW50KGV4dGVu
dEZyb21Mb2NhbEJvdW5kcygqcmVjdCkpOwotICAgICAgICBlbHNlIGlmIChhdXRvIHJlY3QgPSBp
dGVtLmdsb2JhbEJvdW5kcygpKQotICAgICAgICAgICAgbV9kaXNwbGF5TGlzdC5hZGREcmF3aW5n
SXRlbUV4dGVudCgqcmVjdCk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fZGlzcGxheUxp
c3QuYWRkRHJhd2luZ0l0ZW1FeHRlbnQoV1RGOjpudWxsb3B0KTsKKyAgICAgICAgaWYgY29uc3Rl
eHByIChUOjppc0RyYXdpbmdJdGVtKSB7CisgICAgICAgICAgICBpZiAoTElLRUxZKCFtX2Rpc3Bs
YXlMaXN0LnRyYWNrc0RyYXdpbmdJdGVtRXh0ZW50cygpKSkKKyAgICAgICAgICAgICAgICByZXR1
cm47CisKKyAgICAgICAgICAgIGF1dG8gaXRlbSA9IFQoc3RkOjpmb3J3YXJkPEFyZ3M+KGFyZ3Mp
Li4uKTsKKyAgICAgICAgICAgIGlmIChhdXRvIHJlY3QgPSBpdGVtLmxvY2FsQm91bmRzKGdyYXBo
aWNzQ29udGV4dCgpKSkKKyAgICAgICAgICAgICAgICBtX2Rpc3BsYXlMaXN0LmFkZERyYXdpbmdJ
dGVtRXh0ZW50KGV4dGVudEZyb21Mb2NhbEJvdW5kcygqcmVjdCkpOworICAgICAgICAgICAgZWxz
ZSBpZiAoYXV0byByZWN0ID0gaXRlbS5nbG9iYWxCb3VuZHMoKSkKKyAgICAgICAgICAgICAgICBt
X2Rpc3BsYXlMaXN0LmFkZERyYXdpbmdJdGVtRXh0ZW50KCpyZWN0KTsKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICBtX2Rpc3BsYXlMaXN0LmFkZERyYXdpbmdJdGVtRXh0ZW50KFdU
Rjo6bnVsbG9wdCk7CisgICAgICAgIH0KICAgICB9CiAKICAgICB2b2lkIHdpbGxBcHBlbmRJdGVt
T2ZUeXBlKEl0ZW1UeXBlKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>