<?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>139519</bug_id>
          
          <creation_ts>2014-12-10 18:05:31 -0800</creation_ts>
          <short_desc>Get rid of the storage strategy</short_desc>
          <delta_ts>2014-12-11 17:58:16 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>joepeck</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1054371</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-10 18:05:31 -0800</bug_when>
    <thetext>Get rid of the storage strategy</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054372</commentid>
    <comment_count>1</comment_count>
      <attachid>243085</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-10 18:06:45 -0800</bug_when>
    <thetext>Created attachment 243085
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054396</commentid>
    <comment_count>2</comment_count>
      <attachid>243092</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-10 20:14:22 -0800</bug_when>
    <thetext>Created attachment 243092
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054453</commentid>
    <comment_count>3</comment_count>
      <attachid>243092</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2014-12-11 03:39:44 -0800</bug_when>
    <thetext>Comment on attachment 243092
Patch

nit: Please remove the duplicated changelog entries.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054508</commentid>
    <comment_count>4</comment_count>
      <attachid>243092</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2014-12-11 09:08:04 -0800</bug_when>
    <thetext>Comment on attachment 243092
Patch

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

&gt; Source/WebCore/ChangeLog:31
&gt; +        * storage/StorageStrategy.cpp: Removed.
&gt; +        * storage/StorageStrategy.h: Removed.

Nice!

&gt; Source/WebCore/ChangeLog:36
&gt; +
&gt; +2014-12-10  Anders Carlsson  &lt;andersca@apple.com&gt;
&gt; +
&gt; +        Get rid of the storage strategy
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=139519

Duplicated ChangeLog entry

&gt; Source/WebKit2/ChangeLog:18
&gt; +        * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
&gt; +
&gt; +2014-12-10  Anders Carlsson  &lt;andersca@apple.com&gt;
&gt; +
&gt; +        Get rid of the storage strategy
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=139519

Here too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054512</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2014-12-11 09:12:15 -0800</bug_when>
    <thetext>Committed r177151: &lt;http://trac.webkit.org/changeset/177151&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054718</commentid>
    <comment_count>6</comment_count>
      <attachid>243092</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-12-11 17:55:22 -0800</bug_when>
    <thetext>Comment on attachment 243092
Patch

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

&gt; Source/WebCore/page/PageGroup.cpp:170
&gt;  StorageNamespace* PageGroup::localStorage()
&gt;  {
&gt; -    if (!m_localStorage)
&gt; -        m_localStorage = StorageNamespace::localStorageNamespace(this);
&gt; -
&gt;      return m_localStorage.get();
&gt;  }

The inspector used this interface, and always expected a Storage object, and is now crashing.

It doesn&apos;t look like m_localStorage is ever assigned now, so this is always null.

Is this being phased out, or is there something else we should use in Inspector land?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054719</commentid>
    <comment_count>7</comment_count>
      <attachid>243092</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2014-12-11 17:58:16 -0800</bug_when>
    <thetext>Comment on attachment 243092
Patch

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

&gt; Source/WebCore/page/DOMWindow.cpp:864
&gt; +    if (document-&gt;securityOrigin()-&gt;canAccessLocalStorage(document-&gt;topOrigin()))
&gt; +        storageArea = page-&gt;storageNamespaceProvider().localStorageNamespace().storageArea(document-&gt;securityOrigin());
&gt; +    else
&gt; +        storageArea = page-&gt;storageNamespaceProvider().transientLocalStorageNamespace(*document-&gt;topOrigin()).storageArea(document-&gt;securityOrigin());

Sounds like we should switch to using storageNamespaceProvider.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243085</attachid>
            <date>2014-12-10 18:06:45 -0800</date>
            <delta_ts>2014-12-10 20:14:19 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139519-20141210180727.patch</filename>
            <type>text/plain</type>
            <size>40734</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3MTE5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNjczYzQwNWM2ODE0MmRh
YjkzOTk1ZWU5YjI3NzY3YmNiZWNjODRlYi4uOGIyMTE4MTI5ODE4YTQ3ZGVlZGMzNWQwZGJlYjUy
M2Y3NTViMjlkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDE0LTEyLTEwICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgR2V0IHJpZCBvZiB0
aGUgc3RvcmFnZSBzdHJhdGVneQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM5NTE5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoK
KyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qOgorICAgICAgICAqIFdl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojpsb2NhbFN0b3JhZ2UpOgorICAgICAgICAq
IHBhZ2UvUGFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpQYWdlKToKKyAgICAgICAg
KFdlYkNvcmU6OlBhZ2U6On5QYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNlc3Npb25T
dG9yYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldFN0b3JhZ2VOYW1lc3BhY2VQcm92
aWRlcik6CisgICAgICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpz
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpOgorICAgICAgICAqIHBhZ2UvUGFnZUdyb3VwLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VHcm91cDo6bG9jYWxTdG9yYWdlKToKKyAgICAgICAgKFdl
YkNvcmU6OlBhZ2VHcm91cDo6dHJhbnNpZW50TG9jYWxTdG9yYWdlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtU3Ry
YXRlZ2llczo6UGxhdGZvcm1TdHJhdGVnaWVzKToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3Jt
U3RyYXRlZ2llczo6c3RvcmFnZVN0cmF0ZWd5KTogRGVsZXRlZC4KKyAgICAgICAgKiBzdG9yYWdl
L1N0b3JhZ2VOYW1lc3BhY2UuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFn
ZU5hbWVzcGFjZS5oOgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN0cmF0ZWd5LmNwcDogUmVt
b3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5oOiBSZW1vdmVkLgorCiAy
MDE0LTEyLTEwICBCZXRoIERha2luICA8YmRha2luQGFwcGxlLmNvbT4KIAogICAgICAgICBXSzI6
IEFkZCBpbml0aWFsIHN1cHBvcnQgZm9yIGltbWVkaWF0ZSBhY3Rpb25zCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggMDVlMzBkMTliZjRlOGY2NmZkZWExZmM1NzUwYTE5YTJjMmZmYmZiYy4uYTUyNjI5NmVl
MGEzYzA2YWI5N2UzMTU0NmQ5Y2JlZjFlNzQ1NjYzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE0IEBACisyMDE0LTEyLTEwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5j
b20+CisKKyAgICAgICAgR2V0IHJpZCBvZiB0aGUgc3RvcmFnZSBzdHJhdGVneQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NTE5CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0
Zm9ybVN0cmF0ZWdpZXMubW06CisgICAgICAgIChXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0
ZVN0b3JhZ2VTdHJhdGVneSk6IERlbGV0ZWQuCisKIDIwMTQtMTItMDggIEFuZGVycyBDYXJsc3Nv
biAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBVc2UgdGhlIG5ldyBzdG9yYWdlIG5h
bWVzcGFjZSBwcm92aWRlciBpbiBXZWJLaXQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dp
bi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKaW5kZXggZGQxMTFmOWQ3
OWMyNjdlYTdhMjAzNzAzODRjY2JhYzlhOGYxZWU2NS4uOTU3YjE4NTFhM2ZiNjFhNTAzYTVjZTBh
NWU1MjlmOWRkNDBmMWQ1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE0IEBACisyMDE0
LTEyLTEwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAg
R2V0IHJpZCBvZiB0aGUgc3RvcmFnZSBzdHJhdGVneQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NTE5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0
ZWdpZXMuY3BwOgorICAgICAgICAoV2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpjcmVhdGVTdG9yYWdl
U3RyYXRlZ3kpOiBEZWxldGVkLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5oOgorCiAyMDE0LTEyLTA4ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBh
cHBsZS5jb20+CiAKICAgICAgICAgVXNlIHRoZSBuZXcgc3RvcmFnZSBuYW1lc3BhY2UgcHJvdmlk
ZXIgaW4gV2ViS2l0MQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCmluZGV4IGI1ODY1OTg4ZTNjNmQ2N2U5OWRmMmRkNzI5Zjlj
MTUzMzY4ZTkxYzguLjdmMWM1YWE2ODc4N2YyN2VlZWE5NWUzZmQ4Y2U2NGIxN2VkNTVjMzEgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cKQEAgLTEsNSArMSwxOSBAQAogMjAxNC0xMi0xMCAgQW5kZXJzIENhcmxzc29uICA8
YW5kZXJzY2FAYXBwbGUuY29tPgogCisgICAgICAgIEdldCByaWQgb2YgdGhlIHN0b3JhZ2Ugc3Ry
YXRlZ3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
OTUxOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpOZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU3Rv
cmFnZVN0cmF0ZWd5KTogRGVsZXRlZC4KKyAgICAgICAgKiBOZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2Vi
UGxhdGZvcm1TdHJhdGVnaWVzOjpjcmVhdGVTdG9yYWdlU3RyYXRlZ3kpOiBEZWxldGVkLgorICAg
ICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmg6
CisKKzIwMTQtMTItMTAgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKwog
ICAgICAgICBTd2l0Y2ggV2ViS2l0MiBvdmVyIHRvIHVzaW5nIHRoZSBzdG9yYWdlIG5hbWVzcGFj
ZSBwcm92aWRlcgogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTM5NTA5CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0IGIv
U291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKaW5kZXggODAyMDliYjFmYzA0ODA1NjdkZDY3
NzA1ZDBmMTM4OGQwYjkzYmU0MC4uMmUxNzdlNjk0ZWYxZTEzZmU3NGQ2OTYxYWNlNDZmMTI1YzUx
Yzg3ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKKysrIGIvU291
cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTI0ODgsNyArMjQ4OCw2IEBAIHNldChXZWJD
b3JlX1NPVVJDRVMKICAgICBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2UuY3BwCiAgICAgc3RvcmFn
ZS9TdG9yYWdlTmFtZXNwYWNlSW1wbC5jcHAKICAgICBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlci5jcHAKLSAgICBzdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5jcHAKICAgICBzdG9yYWdl
L1N0b3JhZ2VTeW5jTWFuYWdlci5jcHAKICAgICBzdG9yYWdlL1N0b3JhZ2VUaHJlYWQuY3BwCiAg
ICAgc3RvcmFnZS9TdG9yYWdlVHJhY2tlci5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L1dlYkNvcmUuZXhwLmluIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KaW5kZXggMTM1
ZTU1Y2E3MWYxMDU5MTg5ZDRkYzM5Y2UyZTBkYzE3ZjM0NGM4OS4uYzkyNTQ2YWRlYTc2MDE1NmI4
NmU2ZDNmYWY1YzJhMDA4NDY1MGVkNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS5leHAuaW4KKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4KQEAgLTY1Miw5ICs2
NTIsNiBAQCBfX1pON1dlYkNvcmUxNVNRTGl0ZVN0YXRlbWVudEMxRVJOU18xNFNRTGl0ZURhdGFi
YXNlRVJLTjNXVEY2U3RyaW5nRQogX19aTjdXZWJDb3JlMTVTUUxpdGVTdGF0ZW1lbnREMUV2CiBf
X1pON1dlYkNvcmUxNVNjcm9sbEFsaWdubWVudDE3YWxpZ25DZW50ZXJBbHdheXNFCiBfX1pON1dl
YkNvcmUxNVNjcm9sbEFsaWdubWVudDE5YWxpZ25Ub0VkZ2VJZk5lZWRlZEUKLV9fWk43V2ViQ29y
ZTE1U3RvcmFnZVN0cmF0ZWd5MjFsb2NhbFN0b3JhZ2VOYW1lc3BhY2VFUE5TXzlQYWdlR3JvdXBF
Ci1fX1pON1dlYkNvcmUxNVN0b3JhZ2VTdHJhdGVneTIzc2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2VF
UE5TXzRQYWdlRQotX19aTjdXZWJDb3JlMTVTdG9yYWdlU3RyYXRlZ3kzMHRyYW5zaWVudExvY2Fs
U3RvcmFnZU5hbWVzcGFjZUVQTlNfOVBhZ2VHcm91cEVQTlNfMTRTZWN1cml0eU9yaWdpbkUKIF9f
Wk43V2ViQ29yZTE1U3RyaW5nVHJ1bmNhdG9yMTNyaWdodFRydW5jYXRlRVJLTjNXVEY2U3RyaW5n
RWZSS05TXzRGb250RU5TMF8yNEVuYWJsZVJvdW5kaW5nSGFja3NPck5vdEUKIF9fWk43V2ViQ29y
ZTE1U3RyaW5nVHJ1bmNhdG9yMTRjZW50ZXJUcnVuY2F0ZUVSS04zV1RGNlN0cmluZ0VmUktOU180
Rm9udEVOUzBfMjRFbmFibGVSb3VuZGluZ0hhY2tzT3JOb3RFCiBfX1pON1dlYkNvcmUxNVN0cmlu
Z1RydW5jYXRvcjV3aWR0aEVSS04zV1RGNlN0cmluZ0VSS05TXzRGb250RU5TMF8yNEVuYWJsZVJv
dW5kaW5nSGFja3NPck5vdEUKQEAgLTIxMTYsNyArMjExMyw2IEBAIF9fWlRWTjdXZWJDb3JlMTJD
aHJvbWVDbGllbnRFCiBfX1pUVk43V2ViQ29yZTE0TG9hZGVyU3RyYXRlZ3lFCiBfX1pUVk43V2Vi
Q29yZTE0U3RhdGljTm9kZUxpc3RFCiBfX1pUVk43V2ViQ29yZTE1UGxhdGZvcm1DQUxheWVyRQot
X19aVFZON1dlYkNvcmUxNVN0b3JhZ2VTdHJhdGVneUUKIF9fWlRWTjdXZWJDb3JlMTZCbG9iUmVn
aXN0cnlJbXBsRQogX19aVFZON1dlYkNvcmUxNkRhdGFiYXNlU3RyYXRlZ3lFCiBfX1pUVk43V2Vi
Q29yZTE2SWNvbkRhdGFiYXNlQmFzZUUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHBy
b2ovV2ViQ29yZS52Y3hwcm9qCmluZGV4IDg1MzgxYjhiOTQyMzBlNjEzNGVlMDBiYmNhNjI5YTA2
NDVhYTlkZjcuLjllYzY4MmY3OWY4ODZiODQxZjc4MmM0NTQ3MDA5MzA4MTk1OWQ2ODIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKKysr
IGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvagpAQCAtNzk4
Miw3ICs3OTgyLDYgQEAKICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENv
bmZpZ3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8V2luMzInIj50cnVlPC9FeGNsdWRl
ZEZyb21CdWlsZD4KICAgICAgIDxFeGNsdWRlZEZyb21CdWlsZCBDb25kaXRpb249IickKENvbmZp
Z3VyYXRpb24pfCQoUGxhdGZvcm0pJz09J1JlbGVhc2V8eDY0JyI+dHJ1ZTwvRXhjbHVkZWRGcm9t
QnVpbGQ+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxzdG9y
YWdlXFN0b3JhZ2VTdHJhdGVneS5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxz
dmdcZ3JhcGhpY3NcU1ZHSW1hZ2VGb3JDb250YWluZXIuY3BwIiAvPgogICAgIDxDbENvbXBpbGUg
SW5jbHVkZT0iLi5cV2ViQ29yZVByZWZpeC5jcHAiPgogICAgICAgPFByZWNvbXBpbGVkSGVhZGVy
IENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nRGVidWd8V2luMzIn
Ij5DcmVhdGU8L1ByZWNvbXBpbGVkSGVhZGVyPgpAQCAtMTk1NjIsOCArMTk1NjEsNiBAQAogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXEhpdFRlc3RMb2NhdGlvbi5oIiAvPgog
ICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXFJlbmRlckxheWVyTWFza0ltYWdl
SW5mby5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccmVuZGVyaW5nXHN0eWxlXFN0
eWxlQ2FjaGVkSW1hZ2VTZXQuaCIgLz4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHN0b3Jh
Z2VcU3RvcmFnZVN0cmF0ZWd5LmgiIC8+Ci0gICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxzdmdc
Z3JhcGhpY3NcU1ZHSW1hZ2VGb3JDb250YWluZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXFdlYkNvcmVQcmVmaXguaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBs
YXRmb3JtXHdpblxXZWJDb3JlVGV4dFJlbmRlcmVyLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxwbGF0Zm9ybVx3aW5cV2luZG93TWVzc2FnZUJyb2FkY2FzdGVyLmgiIC8+CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnMgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qLmZp
bHRlcnMKaW5kZXggM2Q4NjZlZThlZDkwNWYwNzI2YzRjN2YxNzk0OTE2ZjJlNTE4ZWY5MC4uNzA1
NjIxZmYzZjU4MWMzZmU4MjkxY2EwNTYzMTFmZTQ5MDhmYTIzYyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvai5maWx0ZXJzCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwpAQCAt
NTA5OCw5ICs1MDk4LDYgQEAKICAgICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXGh0bWxcdHJhY2tc
VGV4dFRyYWNrQ3VlR2VuZXJpYy5jcHAiPgogICAgICAgPEZpbHRlcj5odG1sXHRyYWNrPC9GaWx0
ZXI+CiAgICAgPC9DbENvbXBpbGU+Ci0gICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxzdG9yYWdl
XFN0b3JhZ2VTdHJhdGVneS5jcHAiPgotICAgICAgPEZpbHRlcj5zdG9yYWdlPC9GaWx0ZXI+Ci0g
ICAgPC9DbENvbXBpbGU+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxodG1sXHRyYWNrXFdl
YlZUVEVsZW1lbnQuY3BwIj4KICAgICAgIDxGaWx0ZXI+aHRtbFx0cmFjazwvRmlsdGVyPgogICAg
IDwvQ2xDb21waWxlPgpAQCAtMTMwNTIsOSArMTMwNDksNiBAQAogICAgIDxDbEluY2x1ZGUgSW5j
bHVkZT0iLi5caHRtbFx0cmFja1xUZXh0VHJhY2tDdWVHZW5lcmljLmgiPgogICAgICAgPEZpbHRl
cj5odG1sXHRyYWNrPC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+Ci0gICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxzdG9yYWdlXFN0b3JhZ2VTdHJhdGVneS5oIj4KLSAgICAgIDxGaWx0ZXI+c3Rv
cmFnZTwvRmlsdGVyPgotICAgIDwvQ2xJbmNsdWRlPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5caHRtbFx0cmFja1xXZWJWVFRFbGVtZW50LmgiPgogICAgICAgPEZpbHRlcj5odG1sXHRyYWNr
PC9GaWx0ZXI+CiAgICAgPC9DbEluY2x1ZGU+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZWUwYTQxNTI4MjU0OTU3ZDQ0N2IzNDE3
YzAyNTdmMjcyY2ZjOTNlYy4uMmEzM2YxNzkyZjUwZjJmODM5YTgwNGUwYjUyNjZjMmJkMzVhY2My
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagpAQCAtODA2LDggKzgwNiw2IEBACiAJCTFBQUFEREE0MTREQjQwOUYwMEFGNjRCMyAvKiBT
Y3JvbGxpbmdUcmVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAxQUFBRERBMjE0REI0MDlGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTFBQUFEREUzMTREQzhD
OEYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlTm9kZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUFBRERFMTE0REM4QzhGMDBBRjY0QjMgLyogU2Ny
b2xsaW5nVHJlZU5vZGUuY3BwICovOyB9OwogCQkxQUFBRERFNDE0REM4QzhGMDBBRjY0QjMgLyog
U2Nyb2xsaW5nVHJlZU5vZGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDFBQUFEREUyMTREQzhDOEYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlTm9kZS5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCTFBQjA5
REI0MTZBRjVGNkMwMDg1MzhFNyAvKiBTdG9yYWdlU3RyYXRlZ3kuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCMDlEQjIxNkFGNUY2QzAwODUzOEU3
IC8qIFN0b3JhZ2VTdHJhdGVneS5jcHAgKi87IH07Ci0JCTFBQjA5REI1MTZBRjVGNkMwMDg1MzhF
NyAvKiBTdG9yYWdlU3RyYXRlZ3kuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDFBQjA5REIzMTZBRjVGNkMwMDg1MzhFNyAvKiBTdG9yYWdlU3RyYXRlZ3ku
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkxQUIz
M0RBNTEyNTUxRTMyMDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrIGluIEZyYW1ld29ya3MgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCMzNEQTQxMjU1MUUzMjAwMjQ0NTdB
IC8qIElPS2l0LmZyYW1ld29yayAqLzsgfTsKIAkJMUFCNUVCRDAxOTRBMUQxNzAwNTlBQzcwIC8q
IFNoYXBlVmFsdWUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMUFCNUVCQ0YxOTRBMUQxNzAwNTlBQzcwIC8qIFNoYXBlVmFsdWUuY3BwICovOyB9Owog
CQkxQUI1RUJEMjE5NEE1MEYzMDA1OUFDNzAgLyogSFRUUEhlYWRlck5hbWVzLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUM5MDBDMjE5NDNDMEEwMDA4
NjI1QjUgLyogSFRUUEhlYWRlck5hbWVzLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTU1NDQsNyArNTU0Miw2IEBACiAJCUM0Q0Q2MjlCMTgzODM3
NjYwMDdFQkFGMSAvKiBGcmFtZVNuYXBzaG90dGluZy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzRDRDYyOTkxODM4Mzc2NjAwN0VCQUYxIC8qIEZyYW1l
U25hcHNob3R0aW5nLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsg
fTsgfTsKIAkJQzUwQjU2MTYxMjExOUQyMzAwOEI0NkUwIC8qIEdyb3VwU2V0dGluZ3MuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQzUwQjU2MTQxMjEx
OUQyMzAwOEI0NkUwIC8qIEdyb3VwU2V0dGluZ3MuY3BwICovOyB9OwogCQlDNTBCNTYxNzEyMTE5
RDIzMDA4QjQ2RTAgLyogR3JvdXBTZXR0aW5ncy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gQzUwQjU2MTUxMjExOUQyMzAwOEI0NkUwIC8qIEdyb3VwU2V0
dGluZ3MuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owot
CQlDNTBEMEU4MjBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFnZU5hbWVzcGFjZS5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTBEMEU4MDBGRjQyNzI5
MDBBQzI2NDQgLyogU3RvcmFnZU5hbWVzcGFjZS5jcHAgKi87IH07CiAJCUM1MEQwRTgzMEZGNDI3
MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTBEMEU4MTBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFn
ZU5hbWVzcGFjZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07
IH07CiAJCUM1MTAyRDk0MEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdlU3luY01hbmFnZXIuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1MTAyRDkyMEZE
OUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdlU3luY01hbmFnZXIuaCAqLzsgfTsKIAkJQzUxMDJEOTUw
RkQ5QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTEwMkQ5MzBGRDlBQTJEMDBGQUZGMDQg
LyogU3RvcmFnZVN5bmNNYW5hZ2VyLmNwcCAqLzsgfTsKQEAgLTc4MTQsOCArNzgxMSw2IEBACiAJ
CTFBQUFEREEyMTREQjQwOUYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNjcm9sbGluZ1RyZWUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMUFBQURERTExNERDOEM4RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2Rl
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFNjcm9sbGluZ1RyZWVO
b2RlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFBQURERTIxNERDOEM4RjAw
QUY2NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2RlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IFNjcm9sbGluZ1RyZWVOb2RlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0J
CTFBQjA5REIyMTZBRjVGNkMwMDg1MzhFNyAvKiBTdG9yYWdlU3RyYXRlZ3kuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RvcmFnZVN0cmF0ZWd5LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFCMDlEQjMxNkFGNUY2QzAwODUzOEU3IC8qIFN0b3Jh
Z2VTdHJhdGVneS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlU3Ry
YXRlZ3kuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMUFCMzNEQTQxMjU1MUUzMjAw
MjQ0NTdBIC8qIElPS2l0LmZyYW1ld29yayAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHdyYXBwZXIuZnJhbWV3b3JrOyBuYW1lID0gSU9LaXQuZnJhbWV3
b3JrOyBwYXRoID0gL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvSU9LaXQuZnJhbWV3b3JrOyBz
b3VyY2VUcmVlID0gIjxhYnNvbHV0ZT4iOyB9OwogCQkxQUI1RUJDRjE5NEExRDE3MDA1OUFDNzAg
LyogU2hhcGVWYWx1ZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBT
aGFwZVZhbHVlLmNwcDsgcGF0aCA9IHN0eWxlL1NoYXBlVmFsdWUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkxQUI3RkM0NzBBOEI5MkVDMDBEOUQzN0IgLyogWFBhdGhFdmFsdWF0
b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFhQYXRoRXZhbHVh
dG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzMDEzLDcgKzEzMDA4LDYg
QEAKIAkJQzRDRDYyOTkxODM4Mzc2NjAwN0VCQUYxIC8qIEZyYW1lU25hcHNob3R0aW5nLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEZyYW1lU25hcHNob3R0aW5nLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM1MEI1NjE0MTIxMTlEMjMwMDhCNDZFMCAvKiBHcm91
cFNldHRpbmdzLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEdyb3Vw
U2V0dGluZ3MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlDNTBCNTYxNTEyMTE5
RDIzMDA4QjQ2RTAgLyogR3JvdXBTZXR0aW5ncy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBHcm91cFNldHRpbmdzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUM1
MEQwRTgwMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN0b3JhZ2VOYW1lc3BhY2UuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQlDNTBEMEU4MTBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFn
ZU5hbWVzcGFjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlTmFt
ZXNwYWNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM1MTAyRDkyMEZEOUFBMkQw
MEZBRkYwNCAvKiBTdG9yYWdlU3luY01hbmFnZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gU3RvcmFnZVN5bmNNYW5hZ2VyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUM1MTAyRDkzMEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdlU3luY01hbmFnZXIuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3RvcmFnZVN5bmNNYW5hZ2VyLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE1MTUwLDE0ICsxNTE0NCwxMSBAQAog
CQkJCUM1RUJERDgxMTA1RURERUMwMDU2ODE2RiAvKiBTdG9yYWdlRXZlbnREaXNwYXRjaGVyLmgg
Ki8sCiAJCQkJNTFFMEJCMzcwREE1QUNCNjAwQTlFNDE3IC8qIFN0b3JhZ2VNYXAuY3BwICovLAog
CQkJCTUxRTBCQjM2MERBNUFDQjYwMEE5RTQxNyAvKiBTdG9yYWdlTWFwLmggKi8sCi0JCQkJQzUw
RDBFODAwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3BhY2UuY3BwICovLAogCQkJCUM1
MEQwRTgxMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggKi8sCiAJCQkJQzU1
RTM4QkMxMDA0MEQ1RDAwQTU2QkRCIC8qIFN0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcCAqLywKIAkJ
CQlDNTVFMzhCQjEwMDQwRDVEMDBBNTZCREIgLyogU3RvcmFnZU5hbWVzcGFjZUltcGwuaCAqLywK
IAkJCQkxQTM3NjM2OTFBMkU2OEJCMDA5QTdFRTIgLyogU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVy
LmNwcCAqLywKIAkJCQkxQTM3NjM2QTFBMkU2OEJCMDA5QTdFRTIgLyogU3RvcmFnZU5hbWVzcGFj
ZVByb3ZpZGVyLmggKi8sCi0JCQkJMUFCMDlEQjIxNkFGNUY2QzAwODUzOEU3IC8qIFN0b3JhZ2VT
dHJhdGVneS5jcHAgKi8sCi0JCQkJMUFCMDlEQjMxNkFGNUY2QzAwODUzOEU3IC8qIFN0b3JhZ2VT
dHJhdGVneS5oICovLAogCQkJCUM1MTAyRDkzMEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdlU3lu
Y01hbmFnZXIuY3BwICovLAogCQkJCUM1MTAyRDkyMEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdl
U3luY01hbmFnZXIuaCAqLywKIAkJCQk1MTFGMjMxNTBEQzE2MERBMDA0RjAwMzIgLyogU3RvcmFn
ZVRocmVhZC5jcHAgKi8sCkBAIC0yNjIwNCw3ICsyNjE5NSw2IEBACiAJCQkJNTFFMEJCMzgwREE1
QUNCNjAwQTlFNDE3IC8qIFN0b3JhZ2VNYXAuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1MEQwRTgz
MEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlDNTVFMzhCRjEwMDQwRDVEMDBBNTZCREIgLyogU3RvcmFnZU5hbWVzcGFjZUltcGwuaCBpbiBI
ZWFkZXJzICovLAotCQkJCTFBQjA5REI1MTZBRjVGNkMwMDg1MzhFNyAvKiBTdG9yYWdlU3RyYXRl
Z3kuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1MTAyRDk0MEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9y
YWdlU3luY01hbmFnZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxMUYyMzFBMERDMTYwREEwMDRG
MDAzMiAvKiBTdG9yYWdlVGhyZWFkLmggaW4gSGVhZGVycyAqLywKIAkJCQkzQUIwMkQyQTEyRDRG
OTE2MDBGQkI2OTQgLyogU3RvcmFnZVRyYWNrZXIuaCBpbiBIZWFkZXJzICovLApAQCAtMjk2MjAs
OSArMjk2MTAsNyBAQAogCQkJCTUxRTBCQUJDMERBNTU0NzEwMEE5RTQxNyAvKiBTdG9yYWdlRXZl
bnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzVFOUI2NzcxMDY5N0UxMzAwQzdCQjFBIC8qIFN0
b3JhZ2VFdmVudERpc3BhdGNoZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFFMEJCMzkwREE1
QUNCNjAwQTlFNDE3IC8qIFN0b3JhZ2VNYXAuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJQzUwRDBF
ODIwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3BhY2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJQzU1RTM4QzAxMDA0MEQ1RDAwQTU2QkRCIC8qIFN0b3JhZ2VOYW1lc3BhY2VJbXBsLmNw
cCBpbiBTb3VyY2VzICovLAotCQkJCTFBQjA5REI0MTZBRjVGNkMwMDg1MzhFNyAvKiBTdG9yYWdl
U3RyYXRlZ3kuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQzUxMDJEOTUwRkQ5QUEyRDAwRkFGRjA0
IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1MTFGMjMxOTBE
QzE2MERBMDA0RjAwMzIgLyogU3RvcmFnZVRocmVhZC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkz
QUIwMkQyQjEyRDRGOTE2MDBGQkI2OTQgLyogU3RvcmFnZVRyYWNrZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wYWdlL0RPTVdpbmRvdy5jcHAKaW5kZXggMGZkMzJhMmNjYjRhNDFjYzFiZjkz
ZmYwZGFlYThmMjZkY2RjMWUyNC4uM2I4M2U3OTZiMjllYzc0YmJjOTkwODIxZjg3NTc5ZTc4MTQx
OGRkZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApAQCAtODU3LDE4ICs4NTcsMTEgQEAg
U3RvcmFnZSogRE9NV2luZG93Ojpsb2NhbFN0b3JhZ2UoRXhjZXB0aW9uQ29kZSYgZWMpIGNvbnN0
CiAgICAgICAgIHJldHVybiBudWxscHRyOwogCiAgICAgUmVmUHRyPFN0b3JhZ2VBcmVhPiBzdG9y
YWdlQXJlYTsKLSAgICBpZiAoYXV0byogc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyID0gcGFnZS0+
c3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKCkpIHsKLSAgICAgICAgaWYgKGRvY3VtZW50LT5zZWN1
cml0eU9yaWdpbigpLT5jYW5BY2Nlc3NMb2NhbFN0b3JhZ2UoZG9jdW1lbnQtPnRvcE9yaWdpbigp
KSkKLSAgICAgICAgICAgIHN0b3JhZ2VBcmVhID0gc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLT5s
b2NhbFN0b3JhZ2VOYW1lc3BhY2UoKS5zdG9yYWdlQXJlYShkb2N1bWVudC0+c2VjdXJpdHlPcmln
aW4oKSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIHN0b3JhZ2VBcmVhID0gc3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyLT50cmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UoKmRvY3VtZW50
LT50b3BPcmlnaW4oKSkuc3RvcmFnZUFyZWEoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpOwot
ICAgIH0gZWxzZSB7Ci0gICAgICAgIC8vIEZJWE1FOiBSZW1vdmUgdGhpcyBvbmNlIGV2ZXJ5b25l
IGhhcyB0cmFuc2l0aW9uZWQgYXdheSBmcm9tIHVzaW5nIHRoZSBwYWdlIGdyb3VwIGxvY2FsIHN0
b3JhZ2UuCi0gICAgICAgIGlmICghZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vz
c0xvY2FsU3RvcmFnZShkb2N1bWVudC0+dG9wT3JpZ2luKCkpKQotICAgICAgICAgICAgc3RvcmFn
ZUFyZWEgPSBwYWdlLT5ncm91cCgpLnRyYW5zaWVudExvY2FsU3RvcmFnZShkb2N1bWVudC0+dG9w
T3JpZ2luKCkpLT5zdG9yYWdlQXJlYShkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSk7Ci0gICAg
ICAgIGVsc2UKLSAgICAgICAgICAgIHN0b3JhZ2VBcmVhID0gcGFnZS0+Z3JvdXAoKS5sb2NhbFN0
b3JhZ2UoKS0+c3RvcmFnZUFyZWEoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpOwotICAgIH0K
KworICAgIGlmIChkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzTG9jYWxTdG9y
YWdlKGRvY3VtZW50LT50b3BPcmlnaW4oKSkpCisgICAgICAgIHN0b3JhZ2VBcmVhID0gcGFnZS0+
c3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKCkubG9jYWxTdG9yYWdlTmFtZXNwYWNlKCkuc3RvcmFn
ZUFyZWEoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpOworICAgIGVsc2UKKyAgICAgICAgc3Rv
cmFnZUFyZWEgPSBwYWdlLT5zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIoKS50cmFuc2llbnRMb2Nh
bFN0b3JhZ2VOYW1lc3BhY2UoKmRvY3VtZW50LT50b3BPcmlnaW4oKSkuc3RvcmFnZUFyZWEoZG9j
dW1lbnQtPnNlY3VyaXR5T3JpZ2luKCkpOwogCiAgICAgaWYgKCFzdG9yYWdlQXJlYS0+Y2FuQWNj
ZXNzU3RvcmFnZShtX2ZyYW1lKSkgewogICAgICAgICBlYyA9IFNFQ1VSSVRZX0VSUjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wYWdl
L1BhZ2UuY3BwCmluZGV4IGMzNjAxYzgzZGY2OGM0NTZlMTg3ZWYxOWE2OWFkOWEwN2Y4YTY1ZjYu
LjJiMDQwMDQ2OGQ3NTM3OGFmZDVlZDM5ZDM3OTc1ZDkxMmYyZjhjMzEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdl
LmNwcApAQCAtMjAzLDcgKzIwMyw3IEBAIFBhZ2U6OlBhZ2UoUGFnZUNvbmZpZ3VyYXRpb24mIHBh
Z2VDb25maWd1cmF0aW9uKQogI2VuZGlmCiAgICAgLCBtX2xhc3RTcGF0aWFsTmF2aWdhdGlvbkNh
bmRpZGF0ZXNDb3VudCgwKSAvLyBOT1RFOiBPbmx5IGNhbGxlZCBmcm9tIEludGVybmFscyBmb3Ig
U3BhdGlhbCBOYXZpZ2F0aW9uIHRlc3RpbmcuCiAgICAgLCBtX2ZyYW1lc0hhbmRsaW5nQmVmb3Jl
VW5sb2FkRXZlbnQoMCkKLSAgICAsIG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKFdURjo6bW92
ZShwYWdlQ29uZmlndXJhdGlvbi5zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpKQorICAgICwgbV9z
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIoKldURjo6bW92ZShwYWdlQ29uZmlndXJhdGlvbi5zdG9y
YWdlTmFtZXNwYWNlUHJvdmlkZXIpKQogICAgICwgbV91c2VyQ29udGVudENvbnRyb2xsZXIoV1RG
Ojptb3ZlKHBhZ2VDb25maWd1cmF0aW9uLnVzZXJDb250ZW50Q29udHJvbGxlcikpCiAgICAgLCBt
X3Zpc2l0ZWRMaW5rU3RvcmUoKldURjo6bW92ZShwYWdlQ29uZmlndXJhdGlvbi52aXNpdGVkTGlu
a1N0b3JlKSkKICAgICAsIG1fc2Vzc2lvbklEKFNlc3Npb25JRDo6ZGVmYXVsdFNlc3Npb25JRCgp
KQpAQCAtMjE0LDggKzIxNCw4IEBAIFBhZ2U6OlBhZ2UoUGFnZUNvbmZpZ3VyYXRpb24mIHBhZ2VD
b25maWd1cmF0aW9uKQogICAgIAogICAgIHNldFRpbWVyVGhyb3R0bGluZ0VuYWJsZWQobV92aWV3
U3RhdGUgJiBWaWV3U3RhdGU6OklzVmlzdWFsbHlJZGxlKTsKIAotICAgIGlmIChtX3N0b3JhZ2VO
YW1lc3BhY2VQcm92aWRlcikKLSAgICAgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPmFk
ZFBhZ2UoKnRoaXMpOworICAgIG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLT5hZGRQYWdlKCp0
aGlzKTsKKwogICAgIGlmIChtX3VzZXJDb250ZW50Q29udHJvbGxlcikKICAgICAgICAgbV91c2Vy
Q29udGVudENvbnRyb2xsZXItPmFkZFBhZ2UoKnRoaXMpOwogCkBAIC0yNzEsOCArMjcxLDggQEAg
UGFnZTo6flBhZ2UoKQogICAgIHBhZ2VDb3VudGVyLmRlY3JlbWVudCgpOwogI2VuZGlmCiAKLSAg
ICBpZiAobV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpCi0gICAgICAgIG1fc3RvcmFnZU5hbWVz
cGFjZVByb3ZpZGVyLT5yZW1vdmVQYWdlKCp0aGlzKTsKKyAgICBtX3N0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlci0+cmVtb3ZlUGFnZSgqdGhpcyk7CisKICAgICBpZiAobV91c2VyQ29udGVudENvbnRy
b2xsZXIpCiAgICAgICAgIG1fdXNlckNvbnRlbnRDb250cm9sbGVyLT5yZW1vdmVQYWdlKCp0aGlz
KTsKICAgICBtX3Zpc2l0ZWRMaW5rU3RvcmUtPnJlbW92ZVBhZ2UoKnRoaXMpOwpAQCAtMTA5MCwx
MiArMTA5MCw4IEBAIHZvaWQgUGFnZTo6c2V0RGVidWdnZXIoSlNDOjpEZWJ1Z2dlciogZGVidWdn
ZXIpCiAKIFN0b3JhZ2VOYW1lc3BhY2UqIFBhZ2U6OnNlc3Npb25TdG9yYWdlKGJvb2wgb3B0aW9u
YWxDcmVhdGUpCiB7Ci0gICAgaWYgKCFtX3Nlc3Npb25TdG9yYWdlICYmIG9wdGlvbmFsQ3JlYXRl
KSB7Ci0gICAgICAgIGlmIChtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcikKLSAgICAgICAgICAg
IG1fc2Vzc2lvblN0b3JhZ2UgPSBtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci0+Y3JlYXRlU2Vz
c2lvblN0b3JhZ2VOYW1lc3BhY2UoKnRoaXMsIG1fc2V0dGluZ3MtPnNlc3Npb25TdG9yYWdlUXVv
dGEoKSk7Ci0gICAgICAgIGVsc2UKLSAgICAgICAgICAgIG1fc2Vzc2lvblN0b3JhZ2UgPSBTdG9y
YWdlTmFtZXNwYWNlOjpzZXNzaW9uU3RvcmFnZU5hbWVzcGFjZSh0aGlzKTsKLSAgICB9CisgICAg
aWYgKCFtX3Nlc3Npb25TdG9yYWdlICYmIG9wdGlvbmFsQ3JlYXRlKQorICAgICAgICBtX3Nlc3Np
b25TdG9yYWdlID0gbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPmNyZWF0ZVNlc3Npb25TdG9y
YWdlTmFtZXNwYWNlKCp0aGlzLCBtX3NldHRpbmdzLT5zZXNzaW9uU3RvcmFnZVF1b3RhKCkpOwog
CiAgICAgcmV0dXJuIG1fc2Vzc2lvblN0b3JhZ2UuZ2V0KCk7CiB9CkBAIC0xNjUxLDkgKzE2NDcs
NyBAQCB2b2lkIFBhZ2U6OnNldFVzZXJDb250ZW50Q29udHJvbGxlcihVc2VyQ29udGVudENvbnRy
b2xsZXIqIHVzZXJDb250ZW50Q29udHJvbGxlcgogCiB2b2lkIFBhZ2U6OnNldFN0b3JhZ2VOYW1l
c3BhY2VQcm92aWRlcihQYXNzUmVmPFN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcj4gc3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyKQogewotICAgIGlmIChtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcikK
LSAgICAgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPnJlbW92ZVBhZ2UoKnRoaXMpOwot
CisgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPnJlbW92ZVBhZ2UoKnRoaXMpOwogICAg
IG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyID0gV1RGOjptb3ZlKHN0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlcik7CiAgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPmFkZFBhZ2UoKnRoaXMp
OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuaCBiL1NvdXJjZS9XZWJD
b3JlL3BhZ2UvUGFnZS5oCmluZGV4IDlhY2M0ODkyMDExOWNmMTA0ZGFmNjZjNmVhNzczNTE1MWVh
MzkxZmQuLjVmMzhjYTIzNTk0MWVlNmQ5NzJjODIwOGI2NmQ0NTFkZGRlMDIzNmQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BhZ2Uv
UGFnZS5oCkBAIC00MDIsNyArNDAyLDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0TGFzdFNwYXRp
YWxOYXZpZ2F0aW9uQ2FuZGlkYXRlQ291bnQodW5zaWduZWQgY291bnQpIHsgbV9sYXN0U3BhdGlh
bE5hdmlnYXRpb25DYW5kaWRhdGVzQ291bnQgPSBjb3VudDsgfQogICAgIHVuc2lnbmVkIGxhc3RT
cGF0aWFsTmF2aWdhdGlvbkNhbmRpZGF0ZUNvdW50KCkgY29uc3QgeyByZXR1cm4gbV9sYXN0U3Bh
dGlhbE5hdmlnYXRpb25DYW5kaWRhdGVzQ291bnQ7IH0KIAotICAgIFN0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlciogc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKCkgeyByZXR1cm4gbV9zdG9yYWdlTmFt
ZXNwYWNlUHJvdmlkZXIuZ2V0KCk7IH0KKyAgICBTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXImIHN0
b3JhZ2VOYW1lc3BhY2VQcm92aWRlcigpIHsgcmV0dXJuIG1fc3RvcmFnZU5hbWVzcGFjZVByb3Zp
ZGVyLmdldCgpOyB9CiAgICAgdm9pZCBzZXRTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIoUGFzc1Jl
ZjxTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXI+KTsKIAogICAgIFVzZXJDb250ZW50Q29udHJvbGxl
ciogdXNlckNvbnRlbnRDb250cm9sbGVyKCkgeyByZXR1cm4gbV91c2VyQ29udGVudENvbnRyb2xs
ZXIuZ2V0KCk7IH0KQEAgLTU3Myw3ICs1NzMsNyBAQCBwcml2YXRlOgogICAgIHVuc2lnbmVkIG1f
bGFzdFNwYXRpYWxOYXZpZ2F0aW9uQ2FuZGlkYXRlc0NvdW50OwogICAgIHVuc2lnbmVkIG1fZnJh
bWVzSGFuZGxpbmdCZWZvcmVVbmxvYWRFdmVudDsKIAotICAgIFJlZlB0cjxTdG9yYWdlTmFtZXNw
YWNlUHJvdmlkZXI+IG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOworICAgIFJlZjxTdG9yYWdl
TmFtZXNwYWNlUHJvdmlkZXI+IG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyOwogICAgIFJlZlB0
cjxVc2VyQ29udGVudENvbnRyb2xsZXI+IG1fdXNlckNvbnRlbnRDb250cm9sbGVyOwogICAgIFJl
ZjxWaXNpdGVkTGlua1N0b3JlPiBtX3Zpc2l0ZWRMaW5rU3RvcmU7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BhZ2UvUGFnZUdyb3VwLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFn
ZUdyb3VwLmNwcAppbmRleCA0NWVlZDA4ODhmZTkwM2FjZDQ5MTRmZDY0ZmYzMTRjOWE5MzFlMDM1
Li4wODZiNDBlNjUyZDAyYTIzMGEwYjFmOTVlYTIxZDNlM2YxNjFhNzIxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VHcm91cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFn
ZS9QYWdlR3JvdXAuY3BwCkBAIC0xNjYsMjAgKzE2NiwxMiBAQCB2b2lkIFBhZ2VHcm91cDo6cmVt
b3ZlUGFnZShQYWdlJiBwYWdlKQogCiBTdG9yYWdlTmFtZXNwYWNlKiBQYWdlR3JvdXA6OmxvY2Fs
U3RvcmFnZSgpCiB7Ci0gICAgaWYgKCFtX2xvY2FsU3RvcmFnZSkKLSAgICAgICAgbV9sb2NhbFN0
b3JhZ2UgPSBTdG9yYWdlTmFtZXNwYWNlOjpsb2NhbFN0b3JhZ2VOYW1lc3BhY2UodGhpcyk7Ci0K
ICAgICByZXR1cm4gbV9sb2NhbFN0b3JhZ2UuZ2V0KCk7CiB9CiAKLVN0b3JhZ2VOYW1lc3BhY2Uq
IFBhZ2VHcm91cDo6dHJhbnNpZW50TG9jYWxTdG9yYWdlKFNlY3VyaXR5T3JpZ2luKiB0b3BPcmln
aW4pCitTdG9yYWdlTmFtZXNwYWNlKiBQYWdlR3JvdXA6OnRyYW5zaWVudExvY2FsU3RvcmFnZShT
ZWN1cml0eU9yaWdpbiopCiB7Ci0gICAgYXV0byByZXN1bHQgPSBtX3RyYW5zaWVudExvY2FsU3Rv
cmFnZU1hcC5hZGQodG9wT3JpZ2luLCBudWxscHRyKTsKLQotICAgIGlmIChyZXN1bHQuaXNOZXdF
bnRyeSkKLSAgICAgICAgcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZSA9IFN0b3JhZ2VOYW1lc3BhY2U6
OnRyYW5zaWVudExvY2FsU3RvcmFnZU5hbWVzcGFjZSh0aGlzLCB0b3BPcmlnaW4pOwotCi0gICAg
cmV0dXJuIHJlc3VsdC5pdGVyYXRvci0+dmFsdWUuZ2V0KCk7CisgICAgcmV0dXJuIG51bGxwdHI7
CiB9CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L1BsYXRmb3JtU3RyYXRlZ2llcy5oCmluZGV4IGQ5MTY0ZjEzNTYwZGI2NGQ3YjdmMzZjNDMzMmJi
NmViYTZiMGNjMWIuLjBhY2JhODk4NDc5MDkyYzhlNDkzMGIxOWVmOWY5MDQ4Njg1OGNhZDcgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5oCkBAIC0zNCw3
ICszNCw2IEBAIGNsYXNzIExvYWRlclN0cmF0ZWd5OwogY2xhc3MgUGFzdGVib2FyZFN0cmF0ZWd5
OwogY2xhc3MgUGx1Z2luU3RyYXRlZ3k7CiBjbGFzcyBTaGFyZWRXb3JrZXJTdHJhdGVneTsKLWNs
YXNzIFN0b3JhZ2VTdHJhdGVneTsKIAogY2xhc3MgUGxhdGZvcm1TdHJhdGVnaWVzIHsKIHB1Ymxp
YzoKQEAgLTgwLDEzICs3OSw2IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIG1fc2hhcmVkV29y
a2VyU3RyYXRlZ3k7CiAgICAgfQogCi0gICAgU3RvcmFnZVN0cmF0ZWd5KiBzdG9yYWdlU3RyYXRl
Z3koKQotICAgIHsKLSAgICAgICAgaWYgKCFtX3N0b3JhZ2VTdHJhdGVneSkKLSAgICAgICAgICAg
IG1fc3RvcmFnZVN0cmF0ZWd5ID0gY3JlYXRlU3RvcmFnZVN0cmF0ZWd5KCk7Ci0gICAgICAgIHJl
dHVybiBtX3N0b3JhZ2VTdHJhdGVneTsKLSAgICB9Ci0KIHByb3RlY3RlZDoKICAgICBQbGF0Zm9y
bVN0cmF0ZWdpZXMoKQogICAgICAgICA6IG1fY29va2llc1N0cmF0ZWd5KG51bGxwdHIpCkBAIC05
NSw3ICs4Nyw2IEBAIHByb3RlY3RlZDoKICAgICAgICAgLCBtX3Bhc3RlYm9hcmRTdHJhdGVneShu
dWxscHRyKQogICAgICAgICAsIG1fcGx1Z2luU3RyYXRlZ3kobnVsbHB0cikKICAgICAgICAgLCBt
X3NoYXJlZFdvcmtlclN0cmF0ZWd5KG51bGxwdHIpCi0gICAgICAgICwgbV9zdG9yYWdlU3RyYXRl
Z3kobnVsbHB0cikKICAgICB7CiAgICAgfQogCkBAIC0xMTAsNyArMTAxLDYgQEAgcHJpdmF0ZToK
ICAgICB2aXJ0dWFsIFBhc3RlYm9hcmRTdHJhdGVneSogY3JlYXRlUGFzdGVib2FyZFN0cmF0ZWd5
KCkgPSAwOwogICAgIHZpcnR1YWwgUGx1Z2luU3RyYXRlZ3kqIGNyZWF0ZVBsdWdpblN0cmF0ZWd5
KCkgPSAwOwogICAgIHZpcnR1YWwgU2hhcmVkV29ya2VyU3RyYXRlZ3kqIGNyZWF0ZVNoYXJlZFdv
cmtlclN0cmF0ZWd5KCkgPSAwOwotICAgIHZpcnR1YWwgU3RvcmFnZVN0cmF0ZWd5KiBjcmVhdGVT
dG9yYWdlU3RyYXRlZ3koKSA9IDA7CiAKICAgICBDb29raWVzU3RyYXRlZ3kqIG1fY29va2llc1N0
cmF0ZWd5OwogICAgIERhdGFiYXNlU3RyYXRlZ3kqIG1fZGF0YWJhc2VTdHJhdGVneTsKQEAgLTEx
OCw3ICsxMDgsNiBAQCBwcml2YXRlOgogICAgIFBhc3RlYm9hcmRTdHJhdGVneSogbV9wYXN0ZWJv
YXJkU3RyYXRlZ3k7CiAgICAgUGx1Z2luU3RyYXRlZ3kqIG1fcGx1Z2luU3RyYXRlZ3k7CiAgICAg
U2hhcmVkV29ya2VyU3RyYXRlZ3kqIG1fc2hhcmVkV29ya2VyU3RyYXRlZ3k7Ci0gICAgU3RvcmFn
ZVN0cmF0ZWd5KiBtX3N0b3JhZ2VTdHJhdGVneTsKIH07CiAKIFBsYXRmb3JtU3RyYXRlZ2llcyog
cGxhdGZvcm1TdHJhdGVnaWVzKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L1N0b3JhZ2VOYW1lc3BhY2UuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFt
ZXNwYWNlLmNwcApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmJiYmVkYzc5ZTJjMDRi
ZjMwNDdiZmUwNjcwMTA3ZmQwN2RhYWFhOS4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2Uu
Y3BwCisrKyAvZGV2L251bGwKQEAgLTEsNDkgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykg
MjAwOCBBcHBsZSBJbmMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0g
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0g
KiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlU
RUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQg
RklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
Ci0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNpbmNsdWRlICJT
dG9yYWdlTmFtZXNwYWNlLmgiCi0KLSNpbmNsdWRlICJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCIKLSNp
bmNsdWRlICJTdG9yYWdlU3RyYXRlZ3kuaCIKLQotbmFtZXNwYWNlIFdlYkNvcmUgewotCi1QYXNz
UmVmUHRyPFN0b3JhZ2VOYW1lc3BhY2U+IFN0b3JhZ2VOYW1lc3BhY2U6OmxvY2FsU3RvcmFnZU5h
bWVzcGFjZShQYWdlR3JvdXAqIHBhZ2VHcm91cCkKLXsKLSAgICByZXR1cm4gcGxhdGZvcm1TdHJh
dGVnaWVzKCktPnN0b3JhZ2VTdHJhdGVneSgpLT5sb2NhbFN0b3JhZ2VOYW1lc3BhY2UocGFnZUdy
b3VwKTsKLX0KLQotUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlTmFtZXNwYWNl
Ojp0cmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UoUGFnZUdyb3VwKiBwYWdlR3JvdXAsIFNl
Y3VyaXR5T3JpZ2luKiBzZWN1cml0eU9yaWdpbikKLXsKLSAgICByZXR1cm4gcGxhdGZvcm1TdHJh
dGVnaWVzKCktPnN0b3JhZ2VTdHJhdGVneSgpLT50cmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3Bh
Y2UocGFnZUdyb3VwLCBzZWN1cml0eU9yaWdpbik7Ci19Ci0KLVBhc3NSZWZQdHI8U3RvcmFnZU5h
bWVzcGFjZT4gU3RvcmFnZU5hbWVzcGFjZTo6c2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2UoUGFnZSog
cGFnZSkKLXsKLSAgICByZXR1cm4gcGxhdGZvcm1TdHJhdGVnaWVzKCktPnN0b3JhZ2VTdHJhdGVn
eSgpLT5zZXNzaW9uU3RvcmFnZU5hbWVzcGFjZShwYWdlKTsKLX0KLQotfSAvLyBuYW1lc3BhY2Ug
V2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlTmFtZXNw
YWNlLmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2UuaAppbmRleCAx
YWVmOWU2ZmVmZDMwODM3YTdmYzFjMGM0YmMzMTQwNGVlYzBmODdkLi44MjAwODYyYWViZjQ0MjEw
ZTQ3MWU5NmJiMzI1NjhhN2Y3MzE4YTlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL1N0b3JhZ2VOYW1lc3BhY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3Jh
Z2VOYW1lc3BhY2UuaApAQCAtMzksMTAgKzM5LDYgQEAgY2xhc3MgU3RvcmFnZUFyZWE7CiAKIGNs
YXNzIFN0b3JhZ2VOYW1lc3BhY2UgOiBwdWJsaWMgUmVmQ291bnRlZDxTdG9yYWdlTmFtZXNwYWNl
PiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gbG9j
YWxTdG9yYWdlTmFtZXNwYWNlKFBhZ2VHcm91cCopOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0
b3JhZ2VOYW1lc3BhY2U+IHRyYW5zaWVudExvY2FsU3RvcmFnZU5hbWVzcGFjZShQYWdlR3JvdXAq
LCBTZWN1cml0eU9yaWdpbiopOwotICAgIHN0YXRpYyBQYXNzUmVmUHRyPFN0b3JhZ2VOYW1lc3Bh
Y2U+IHNlc3Npb25TdG9yYWdlTmFtZXNwYWNlKFBhZ2UqKTsKLQogICAgIHZpcnR1YWwgflN0b3Jh
Z2VOYW1lc3BhY2UoKSB7IH0KICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8U3RvcmFnZUFyZWE+IHN0
b3JhZ2VBcmVhKFBhc3NSZWZQdHI8U2VjdXJpdHlPcmlnaW4+KSA9IDA7CiAgICAgdmlydHVhbCBQ
YXNzUmVmUHRyPFN0b3JhZ2VOYW1lc3BhY2U+IGNvcHkoUGFnZSogbmV3UGFnZSkgPSAwOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlU3RyYXRlZ3kuY3BwIGIvU291
cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlU3RyYXRlZ3kuY3BwCmRlbGV0ZWQgZmlsZSBtb2Rl
IDEwMDY0NAppbmRleCA4OGI4NGY0MTc3OTI1MDVkYTE3YjY1MThmYWUxMTlmYWViMzdkZTAyLi4w
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJD
b3JlL3N0b3JhZ2UvU3RvcmFnZVN0cmF0ZWd5LmNwcAorKysgL2Rldi9udWxsCkBAIC0xLDQ4ICsw
LDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0g
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiU3RvcmFn
ZVN0cmF0ZWd5LmgiCi0KLSNpbmNsdWRlICJTdG9yYWdlTmFtZXNwYWNlSW1wbC5oIgotCi1uYW1l
c3BhY2UgV2ViQ29yZSB7Ci0KLVBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gU3RvcmFnZVN0
cmF0ZWd5Ojpsb2NhbFN0b3JhZ2VOYW1lc3BhY2UoUGFnZUdyb3VwKiBwYWdlR3JvdXApCi17Ci0g
ICAgcmV0dXJuIFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjpsb2NhbFN0b3JhZ2VOYW1lc3BhY2UocGFn
ZUdyb3VwKTsKLX0KLQotUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlU3RyYXRl
Z3k6OnNlc3Npb25TdG9yYWdlTmFtZXNwYWNlKFBhZ2UqIHBhZ2UpCi17Ci0gICAgcmV0dXJuIFN0
b3JhZ2VOYW1lc3BhY2VJbXBsOjpzZXNzaW9uU3RvcmFnZU5hbWVzcGFjZShwYWdlKTsKLX0KLQot
UGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlU3RyYXRlZ3k6OnRyYW5zaWVudExv
Y2FsU3RvcmFnZU5hbWVzcGFjZShQYWdlR3JvdXAqIHBhZ2VHcm91cCwgU2VjdXJpdHlPcmlnaW4q
IHNlY3VyaXR5T3JpZ2luKQotewotICAgIHJldHVybiBTdG9yYWdlTmFtZXNwYWNlSW1wbDo6dHJh
bnNpZW50TG9jYWxTdG9yYWdlTmFtZXNwYWNlKHBhZ2VHcm91cCwgc2VjdXJpdHlPcmlnaW4pOwot
fQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9z
dG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdl
U3RyYXRlZ3kuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDljNDM0OWJkM2VmYzll
MGZlY2U1Njk4ZGY4MmI2MzQxYzQ3ZTAxNy4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5o
CisrKyAvZGV2L251bGwKQEAgLTEsNTIgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpZm5kZWYgU3Rv
cmFnZVN0cmF0ZWd5X2gKLSNkZWZpbmUgU3RvcmFnZVN0cmF0ZWd5X2gKLQotI2luY2x1ZGUgPHd0
Zi9Gb3J3YXJkLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotY2xhc3MgUGFnZTsKLWNsYXNz
IFBhZ2VHcm91cDsKLWNsYXNzIFNlY3VyaXR5T3JpZ2luOwotY2xhc3MgU3RvcmFnZU5hbWVzcGFj
ZTsKLQotY2xhc3MgU3RvcmFnZVN0cmF0ZWd5IHsKLXB1YmxpYzoKLSAgICBXRUJDT1JFX0VYUE9S
VCB2aXJ0dWFsIFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gbG9jYWxTdG9yYWdlTmFtZXNw
YWNlKFBhZ2VHcm91cCopOwotICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgUGFzc1JlZlB0cjxT
dG9yYWdlTmFtZXNwYWNlPiB0cmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UoUGFnZUdyb3Vw
KiwgU2VjdXJpdHlPcmlnaW4qKTsKLSAgICBXRUJDT1JFX0VYUE9SVCB2aXJ0dWFsIFBhc3NSZWZQ
dHI8U3RvcmFnZU5hbWVzcGFjZT4gc2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2UoUGFnZSopOwotCi1w
cm90ZWN0ZWQ6Ci0gICAgdmlydHVhbCB+U3RvcmFnZVN0cmF0ZWd5KCkKLSAgICB7Ci0gICAgfQot
fTsKLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gU3RvcmFnZVN0cmF0ZWd5
X2gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxh
dGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggYzZlYzQzNzkwMzc3M2IyNjVmZDBjMDNjYjNhYTkyNDVi
Y2UxM2VmNi4uMGZlMTMyYWRmOTUwNTIwOGY0YmIwOTQ3YTMxMzNlM2U3YzNiN2I5ZSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVn
aWVzLmgKKysrIGIvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1T
dHJhdGVnaWVzLmgKQEAgLTMzLDEyICszMywxMSBAQAogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZv
cm1TdHJhdGVnaWVzLmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9QbHVnaW5TdHJhdGVneS5oPgogI2lu
Y2x1ZGUgPFdlYkNvcmUvU2hhcmVkV29ya2VyU3RyYXRlZ3kuaD4KLSNpbmNsdWRlIDxXZWJDb3Jl
L1N0b3JhZ2VTdHJhdGVneS5oPgogCiBzdHJ1Y3QgUGFzdGVib2FyZEltYWdlOwogc3RydWN0IFBh
c3RlYm9hcmRXZWJDb250ZW50OwogCi1jbGFzcyBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXMgOiBwdWJs
aWMgV2ViQ29yZTo6UGxhdGZvcm1TdHJhdGVnaWVzLCBwcml2YXRlIFdlYkNvcmU6OkNvb2tpZXNT
dHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpEYXRhYmFzZVN0cmF0ZWd5LCBwcml2YXRlIFdlYkNv
cmU6OkxvYWRlclN0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6OlBhc3RlYm9hcmRTdHJhdGVneSwg
cHJpdmF0ZSBXZWJDb3JlOjpQbHVnaW5TdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpTaGFyZWRX
b3JrZXJTdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpTdG9yYWdlU3RyYXRlZ3kgeworY2xhc3Mg
V2ViUGxhdGZvcm1TdHJhdGVnaWVzIDogcHVibGljIFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2ll
cywgcHJpdmF0ZSBXZWJDb3JlOjpDb29raWVzU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6RGF0
YWJhc2VTdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpMb2FkZXJTdHJhdGVneSwgcHJpdmF0ZSBX
ZWJDb3JlOjpQYXN0ZWJvYXJkU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6UGx1Z2luU3RyYXRl
Z3ksIHByaXZhdGUgV2ViQ29yZTo6U2hhcmVkV29ya2VyU3RyYXRlZ3kgewogcHVibGljOgogICAg
IHN0YXRpYyB2b2lkIGluaXRpYWxpemVJZk5lY2Vzc2FyeSgpOwogICAgIApAQCAtNTIsNyArNTEs
NiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgV2ViQ29yZTo6UGFzdGVib2FyZFN0cmF0ZWd5KiBj
cmVhdGVQYXN0ZWJvYXJkU3RyYXRlZ3koKSBvdmVycmlkZTsKICAgICB2aXJ0dWFsIFdlYkNvcmU6
OlBsdWdpblN0cmF0ZWd5KiBjcmVhdGVQbHVnaW5TdHJhdGVneSgpIG92ZXJyaWRlOwogICAgIHZp
cnR1YWwgV2ViQ29yZTo6U2hhcmVkV29ya2VyU3RyYXRlZ3kqIGNyZWF0ZVNoYXJlZFdvcmtlclN0
cmF0ZWd5KCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVhbCBXZWJDb3JlOjpTdG9yYWdlU3RyYXRlZ3kq
IGNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpIG92ZXJyaWRlOwogCiAgICAgLy8gV2ViQ29yZTo6Q29v
a2llc1N0cmF0ZWd5CiAgICAgdmlydHVhbCBTdHJpbmcgY29va2llc0ZvckRPTShjb25zdCBXZWJD
b3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mLCBjb25zdCBXZWJDb3JlOjpVUkwmIGZpcnN0UGFy
dHksIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJyaWRlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLm1tIGIvU291cmNl
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLm1tCmluZGV4
IGYxNjhlNzcxMjQ3MzZjNjA1YTU0OTJhMDg3ZTVlMDRhYzUzOGMyYWIuLjU0MTc3OTUxYjY3MGZl
MzE1MGNhYzZiZDJmMDQ3YmUyNzE1YmIyNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5tbQorKysgYi9Tb3VyY2UvV2Vi
S2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMubW0KQEAgLTg1LDEx
ICs4NSw2IEBAIFNoYXJlZFdvcmtlclN0cmF0ZWd5KiBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNy
ZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZWd5KCkKICAgICByZXR1cm4gdGhpczsKIH0KIAotU3RvcmFn
ZVN0cmF0ZWd5KiBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgp
Ci17Ci0gICAgcmV0dXJuIHRoaXM7Ci19Ci0KIFN0cmluZyBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6
OmNvb2tpZXNGb3JET00oY29uc3QgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzZXNzaW9uLCBjb25z
dCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFVSTCYgdXJsKQogewogICAgIHJldHVybiBXZWJDb3Jl
Ojpjb29raWVzRm9yRE9NKHNlc3Npb24sIGZpcnN0UGFydHksIHVybCk7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3Bw
IGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVz
LmNwcAppbmRleCA3NjUzYjczYmIzNWM2N2E3N2ZhN2QzMWYyODA4MzFmNDhhYWQ1MGYyLi4xYjM2
MWIwYTY2YjI4YzE3NTJhNDE3OWEwZmFlNjBiYTYwZDU5ZDUwIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5j
cHAKQEAgLTc3LDExICs3Nyw2IEBAIFNoYXJlZFdvcmtlclN0cmF0ZWd5KiBXZWJQbGF0Zm9ybVN0
cmF0ZWdpZXM6OmNyZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZWd5KCkKICAgICByZXR1cm4gdGhpczsK
IH0KIAotU3RvcmFnZVN0cmF0ZWd5KiBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0ZVN0b3Jh
Z2VTdHJhdGVneSgpCi17Ci0gICAgcmV0dXJuIHRoaXM7Ci19Ci0KIFN0cmluZyBXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmNvb2tpZXNGb3JET00oY29uc3QgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBz
ZXNzaW9uLCBjb25zdCBVUkwmIGZpcnN0UGFydHksIGNvbnN0IFVSTCYgdXJsKQogewogICAgIHJl
dHVybiBXZWJDb3JlOjpjb29raWVzRm9yRE9NKHNlc3Npb24sIGZpcnN0UGFydHksIHVybCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0
cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3Jt
U3RyYXRlZ2llcy5oCmluZGV4IDJiOTQ0ZDRhYzJlMTRhMTg4Njc3YzVkZjVlNWRiNWUyMzcxZTZk
OTkuLjg3YTU5Njk4ZjExMmYwZGY3NDRmYzU3ZGI1MjU3ZjUzNjcwNTJmNDUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5o
CisrKyBiL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRl
Z2llcy5oCkBAIC0zMiw5ICszMiw4IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVN0cmF0
ZWdpZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BsdWdpblN0cmF0ZWd5Lmg+CiAjaW5jbHVkZSA8
V2ViQ29yZS9TaGFyZWRXb3JrZXJTdHJhdGVneS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvU3RvcmFn
ZVN0cmF0ZWd5Lmg+CiAKLWNsYXNzIFdlYlBsYXRmb3JtU3RyYXRlZ2llcyA6IHB1YmxpYyBXZWJD
b3JlOjpQbGF0Zm9ybVN0cmF0ZWdpZXMsIHByaXZhdGUgV2ViQ29yZTo6Q29va2llc1N0cmF0ZWd5
LCBwcml2YXRlIFdlYkNvcmU6OkRhdGFiYXNlU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6TG9h
ZGVyU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6UGx1Z2luU3RyYXRlZ3ksIHByaXZhdGUgV2Vi
Q29yZTo6U2hhcmVkV29ya2VyU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6U3RvcmFnZVN0cmF0
ZWd5IHsKK2NsYXNzIFdlYlBsYXRmb3JtU3RyYXRlZ2llcyA6IHB1YmxpYyBXZWJDb3JlOjpQbGF0
Zm9ybVN0cmF0ZWdpZXMsIHByaXZhdGUgV2ViQ29yZTo6Q29va2llc1N0cmF0ZWd5LCBwcml2YXRl
IFdlYkNvcmU6OkRhdGFiYXNlU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6TG9hZGVyU3RyYXRl
Z3ksIHByaXZhdGUgV2ViQ29yZTo6UGx1Z2luU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6U2hh
cmVkV29ya2VyU3RyYXRlZ3kgewogcHVibGljOgogICAgIHN0YXRpYyB2b2lkIGluaXRpYWxpemUo
KTsKICAgICAKQEAgLTQ4LDcgKzQ3LDYgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6
OlBhc3RlYm9hcmRTdHJhdGVneSogY3JlYXRlUGFzdGVib2FyZFN0cmF0ZWd5KCk7CiAgICAgdmly
dHVhbCBXZWJDb3JlOjpQbHVnaW5TdHJhdGVneSogY3JlYXRlUGx1Z2luU3RyYXRlZ3koKTsKICAg
ICB2aXJ0dWFsIFdlYkNvcmU6OlNoYXJlZFdvcmtlclN0cmF0ZWd5KiBjcmVhdGVTaGFyZWRXb3Jr
ZXJTdHJhdGVneSgpOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6U3RvcmFnZVN0cmF0ZWd5KiBjcmVh
dGVTdG9yYWdlU3RyYXRlZ3koKTsKIAogICAgIC8vIFdlYkNvcmU6OkNvb2tpZXNTdHJhdGVneQog
ICAgIHZpcnR1YWwgU3RyaW5nIGNvb2tpZXNGb3JET00oY29uc3QgV2ViQ29yZTo6TmV0d29ya1N0
b3JhZ2VTZXNzaW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJiBmaXJzdFBhcnR5LCBjb25zdCBXZWJD
b3JlOjpVUkwmKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05l
dHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL05ldHdv
cmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAppbmRleCA1NWQ4
YTk5NGFiMzUzOTJkNGQyODg4YmQ3OWNkYmU2Mjg1YTkyZjE4Li5lMmQ4OGEyYTNhZTVmZGQ0Zjky
NzdhODYzNDA5YjE4MmFlMGQ5Y2RiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXMu
Y3BwCkBAIC02OSwxMSArNjksNiBAQCBTaGFyZWRXb3JrZXJTdHJhdGVneSogTmV0d29ya1Byb2Nl
c3NQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZQogICAgIHJldHVy
biAwOwogfQogCi1TdG9yYWdlU3RyYXRlZ3kqIE5ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVn
aWVzOjpjcmVhdGVTdG9yYWdlU3RyYXRlZ3koKQotewotICAgIHJldHVybiAwOwotfQotCiBSZXNv
dXJjZUxvYWRTY2hlZHVsZXIqIE5ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzOjpyZXNv
dXJjZUxvYWRTY2hlZHVsZXIoKQogewogICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9y
bVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9j
ZXNzUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggNjBiZTYxNThjZWExYmRkOGJiMGVjY2RkNDZi
M2VkMDliODE1ZmZiOS4uYzdlYjM0Zjg4YTczMDc0ODg2MWM0NmUwNDFmNzI3ODkwYWI2NDFlOSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQ
bGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9O
ZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oCkBAIC00Myw3ICs0Myw2IEBAIHByaXZh
dGU6CiAgICAgdmlydHVhbCBXZWJDb3JlOjpQYXN0ZWJvYXJkU3RyYXRlZ3kqIGNyZWF0ZVBhc3Rl
Ym9hcmRTdHJhdGVneSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6UGx1Z2luU3Ry
YXRlZ3kqIGNyZWF0ZVBsdWdpblN0cmF0ZWd5KCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBXZWJD
b3JlOjpTaGFyZWRXb3JrZXJTdHJhdGVneSogY3JlYXRlU2hhcmVkV29ya2VyU3RyYXRlZ3koKSBv
dmVycmlkZTsKLSAgICB2aXJ0dWFsIFdlYkNvcmU6OlN0b3JhZ2VTdHJhdGVneSogY3JlYXRlU3Rv
cmFnZVN0cmF0ZWd5KCkgb3ZlcnJpZGU7CiAKICAgICAvLyBXZWJDb3JlOjpMb2FkZXJTdHJhdGVn
eQogICAgIHZpcnR1YWwgV2ViQ29yZTo6UmVzb3VyY2VMb2FkU2NoZWR1bGVyKiByZXNvdXJjZUxv
YWRTY2hlZHVsZXIoKSBvdmVycmlkZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNw
cAppbmRleCBkYzk2ZjM4MDQ5MGJkZTYyYzBlZWQ4MzRmOGFkOWRlYjc5YWNiYzY4Li43NmVmYmJi
ZmVmMWI3NTFhMWVlMzkwOWY5ODA5YjQwZGQ1Nzk1Y2JmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAK
KysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuY3BwCkBAIC0xMTUsMTIgKzExNSw2IEBAIFNoYXJlZFdvcmtlclN0cmF0ZWd5
KiBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZWd5KCkKICAg
ICByZXR1cm4gdGhpczsKIH0KIAotU3RvcmFnZVN0cmF0ZWd5KiBXZWJQbGF0Zm9ybVN0cmF0ZWdp
ZXM6OmNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpCi17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7
Ci0gICAgcmV0dXJuIG51bGxwdHI7Ci19Ci0KIC8vIENvb2tpZXNTdHJhdGVneQogCiBTdHJpbmcg
V2ViUGxhdGZvcm1TdHJhdGVnaWVzOjpjb29raWVzRm9yRE9NKGNvbnN0IE5ldHdvcmtTdG9yYWdl
U2Vzc2lvbiYgc2Vzc2lvbiwgY29uc3QgVVJMJiBmaXJzdFBhcnR5LCBjb25zdCBVUkwmIHVybCkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
UGxhdGZvcm1TdHJhdGVnaWVzLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oCmluZGV4IGZiNzc4YzA5MjM0MjY1MTE1Nzll
ZmM0ZGUzZmZkOWFkMDNjMzFkZDEuLjY2OTZlYTNjZTMwMDFhZmFiY2ZiM2ZiMjZkMjJmMDk0ODBh
YzIxODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBv
cnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtMzMsNyArMzMsNiBA
QAogI2luY2x1ZGUgPFdlYkNvcmUvUGxhdGZvcm1TdHJhdGVnaWVzLmg+CiAjaW5jbHVkZSA8V2Vi
Q29yZS9QbHVnaW5TdHJhdGVneS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU2hhcmVkV29ya2VyU3Ry
YXRlZ3kuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL1N0b3JhZ2VTdHJhdGVneS5oPgogI2luY2x1ZGUg
PHd0Zi9OZXZlckRlc3Ryb3llZC5oPgogCiBuYW1lc3BhY2UgV2ViS2l0IHsKQEAgLTUzLDcgKzUy
LDYgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlBhc3RlYm9hcmRTdHJhdGVneSog
Y3JlYXRlUGFzdGVib2FyZFN0cmF0ZWd5KCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBXZWJDb3Jl
OjpQbHVnaW5TdHJhdGVneSogY3JlYXRlUGx1Z2luU3RyYXRlZ3koKSBvdmVycmlkZTsKICAgICB2
aXJ0dWFsIFdlYkNvcmU6OlNoYXJlZFdvcmtlclN0cmF0ZWd5KiBjcmVhdGVTaGFyZWRXb3JrZXJT
dHJhdGVneSgpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6U3RvcmFnZVN0cmF0ZWd5
KiBjcmVhdGVTdG9yYWdlU3RyYXRlZ3koKSBvdmVycmlkZTsKIAogICAgIC8vIFdlYkNvcmU6OkNv
b2tpZXNTdHJhdGVneQogICAgIHZpcnR1YWwgU3RyaW5nIGNvb2tpZXNGb3JET00oY29uc3QgV2Vi
Q29yZTo6TmV0d29ya1N0b3JhZ2VTZXNzaW9uJiwgY29uc3QgV2ViQ29yZTo6VVJMJiBmaXJzdFBh
cnR5LCBjb25zdCBXZWJDb3JlOjpVUkwmKSBvdmVycmlkZTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243092</attachid>
            <date>2014-12-10 20:14:22 -0800</date>
            <delta_ts>2014-12-11 09:08:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139519-20141210201504.patch</filename>
            <type>text/plain</type>
            <size>42641</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTc3MTI2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWRiZjhmYjc3YjZkY2Jm
YjllZDkyNzk0Y2UxZmVlNGRmZTcwMjZhYy4uZWZhMDE0OTJkYTU5YjY4OWI4Nzg3YTc2ODMzZGRm
ZGYwNzAyMWRmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDY5IEBACiAyMDE0LTEyLTEwICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgR2V0IHJpZCBvZiB0
aGUgc3RvcmFnZSBzdHJhdGVneQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTM5NTE5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBXZWJDb3JlLmV4cC5pbjoK
KyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qOgorICAgICAgICAqIFdl
YkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFnZS9ET01XaW5kb3cuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojpsb2NhbFN0b3JhZ2UpOgorICAgICAgICAq
IHBhZ2UvUGFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpQYWdlKToKKyAgICAgICAg
KFdlYkNvcmU6OlBhZ2U6On5QYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNlc3Npb25T
dG9yYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldFN0b3JhZ2VOYW1lc3BhY2VQcm92
aWRlcik6CisgICAgICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpz
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpOgorICAgICAgICAqIHBhZ2UvUGFnZUdyb3VwLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OlBhZ2VHcm91cDo6bG9jYWxTdG9yYWdlKToKKyAgICAgICAgKFdl
YkNvcmU6OlBhZ2VHcm91cDo6dHJhbnNpZW50TG9jYWxTdG9yYWdlKToKKyAgICAgICAgKiBwbGF0
Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3JtU3Ry
YXRlZ2llczo6UGxhdGZvcm1TdHJhdGVnaWVzKToKKyAgICAgICAgKFdlYkNvcmU6OlBsYXRmb3Jt
U3RyYXRlZ2llczo6c3RvcmFnZVN0cmF0ZWd5KTogRGVsZXRlZC4KKyAgICAgICAgKiBzdG9yYWdl
L1N0b3JhZ2VOYW1lc3BhY2UuY3BwOiBSZW1vdmVkLgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFn
ZU5hbWVzcGFjZS5oOgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN0cmF0ZWd5LmNwcDogUmVt
b3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5oOiBSZW1vdmVkLgorCisy
MDE0LTEyLTEwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgR2V0IHJpZCBvZiB0aGUgc3RvcmFnZSBzdHJhdGVneQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NTE5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBX
ZWJDb3JlLmV4cC5pbjoKKyAgICAgICAgKiBXZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
OgorICAgICAgICAqIFdlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVyczoKKyAg
ICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFn
ZS9ET01XaW5kb3cuY3BwOgorICAgICAgICAoV2ViQ29yZTo6RE9NV2luZG93Ojpsb2NhbFN0b3Jh
Z2UpOgorICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpQ
YWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6On5QYWdlKToKKyAgICAgICAgKFdlYkNvcmU6
OlBhZ2U6OnNlc3Npb25TdG9yYWdlKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OnNldFN0b3Jh
Z2VOYW1lc3BhY2VQcm92aWRlcik6CisgICAgICAgICogcGFnZS9QYWdlLmg6CisgICAgICAgIChX
ZWJDb3JlOjpQYWdlOjpzdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpOgorICAgICAgICAqIHBhZ2Uv
UGFnZUdyb3VwLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VHcm91cDo6bG9jYWxTdG9yYWdl
KToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VHcm91cDo6dHJhbnNpZW50TG9jYWxTdG9yYWdlKToK
KyAgICAgICAgKiBwbGF0Zm9ybS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6UGxhdGZvcm1TdHJhdGVnaWVzKToKKyAgICAgICAgKFdl
YkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llczo6c3RvcmFnZVN0cmF0ZWd5KTogRGVsZXRlZC4KKyAg
ICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2UuY3BwOiBSZW1vdmVkLgorICAgICAgICAq
IHN0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZS5oOgorICAgICAgICAqIHN0b3JhZ2UvU3RvcmFnZVN0
cmF0ZWd5LmNwcDogUmVtb3ZlZC4KKyAgICAgICAgKiBzdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5o
OiBSZW1vdmVkLgorCisyMDE0LTEyLTEwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBs
ZS5jb20+CisKICAgICAgICAgQWRkIGFuIGVtcHR5IHN0b3JhZ2UgbmFtZXNwYWNlIHByb3ZpZGVy
CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk1MjAK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktp
dC9tYWMvQ2hhbmdlTG9nCmluZGV4IDA1ZTMwZDE5YmY0ZThmNjZmZGVhMWZjNTc1MGExOWEyYzJm
ZmJmYmMuLmE1MjYyOTZlZTBhM2MwNmFiOTdlMzE1NDZkOWNiZWYxZTc0NTY2MzMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvbWFjL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxNC0xMi0xMCAgQW5kZXJzIENhcmxzc29uICA8
YW5kZXJzY2FAYXBwbGUuY29tPgorCisgICAgICAgIEdldCByaWQgb2YgdGhlIHN0b3JhZ2Ugc3Ry
YXRlZ3kKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
OTUxOQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmg6CisgICAgICAgICogV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLm1tOgorICAgICAgICAoV2ViUGxhdGZvcm1T
dHJhdGVnaWVzOjpjcmVhdGVTdG9yYWdlU3RyYXRlZ3kpOiBEZWxldGVkLgorCiAyMDE0LTEyLTA4
ICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKICAgICAgICAgVXNlIHRo
ZSBuZXcgc3RvcmFnZSBuYW1lc3BhY2UgcHJvdmlkZXIgaW4gV2ViS2l0MQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC93aW4vQ2hhbmdlTG9n
CmluZGV4IGRkMTExZjlkNzljMjY3ZWE3YTIwMzcwMzg0Y2NiYWM5YThmMWVlNjUuLjk1N2IxODUx
YTNmYjYxYTUwM2E1Y2UwYTVlNTI5ZjlkZDQwZjFkNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvd2luL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3dpbi9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNCBAQAorMjAxNC0xMi0xMCAgQW5kZXJzIENhcmxzc29uICA8YW5kZXJzY2FAYXBwbGUu
Y29tPgorCisgICAgICAgIEdldCByaWQgb2YgdGhlIHN0b3JhZ2Ugc3RyYXRlZ3kKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTUxOQorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcDoKKyAgICAgICAgKFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6Y3JlYXRlU3RvcmFnZVN0cmF0ZWd5KTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKwogMjAxNC0xMi0wOCAgQW5kZXJzIENhcmxz
c29uICA8YW5kZXJzY2FAYXBwbGUuY29tPgogCiAgICAgICAgIFVzZSB0aGUgbmV3IHN0b3JhZ2Ug
bmFtZXNwYWNlIHByb3ZpZGVyIGluIFdlYktpdDEKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBlMTZjN2RlYzVkMzA5
NGRlMzM0YzVjMWJiN2M0MTZmOGQ1Nzk1Y2JjLi40N2YyMDU1ZDA4NTQ3MDM0MjMzMGJiNGY1OTA5
MjYyMWYxMTlhYThiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIv
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEgQEAKKzIwMTQtMTItMTAgIEFu
ZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBHZXQgcmlkIG9m
IHRoZSBzdG9yYWdlIHN0cmF0ZWd5CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xMzk1MTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJh
dGVnaWVzLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0
ZWdpZXM6OmNyZWF0ZVN0b3JhZ2VTdHJhdGVneSk6IERlbGV0ZWQuCisgICAgICAgICogTmV0d29y
a1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU3RvcmFnZVN0cmF0ZWd5
KTogRGVsZXRlZC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5oOgorCisyMDE0LTEyLTEwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNj
YUBhcHBsZS5jb20+CisKKyAgICAgICAgR2V0IHJpZCBvZiB0aGUgc3RvcmFnZSBzdHJhdGVneQor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NTE5CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBOZXR3b3Jr
UHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5jcHA6CisgICAgICAgIChX
ZWJLaXQ6Ok5ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVzOjpjcmVhdGVTdG9yYWdlU3Ry
YXRlZ3kpOiBEZWxldGVkLgorICAgICAgICAqIE5ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNz
UGxhdGZvcm1TdHJhdGVnaWVzLmg6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQbGF0Zm9y
bVN0cmF0ZWdpZXM6OmNyZWF0ZVN0b3JhZ2VTdHJhdGVneSk6IERlbGV0ZWQuCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaDoKKwogMjAx
NC0xMi0xMCAgSmFlaHVuIExpbSAgPGxqYWVodW4ubGltQHNhbXN1bmcuY29tPgogCiAgICAgICAg
IFtDTWFrZV0gRml4IGJ1aWxkIGFmdGVyIFdlYlN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9Tb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAppbmRleCA4MDIwOWJiMWZjMDQ4MDU2N2RkNjc3MDVkMGYxMzg4ZDBiOTNi
ZTQwLi4xNjA4ZWQzMWQ4YTJlNzFhYzBmMjI4NWRkMGRkOGQ4YzlhNWI1YjdmIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dApAQCAtMjQ4NSwxMCArMjQ4NSw4IEBAIHNldChXZWJDb3JlX1NPVVJDRVMKICAg
ICBzdG9yYWdlL1N0b3JhZ2VFdmVudC5jcHAKICAgICBzdG9yYWdlL1N0b3JhZ2VFdmVudERpc3Bh
dGNoZXIuY3BwCiAgICAgc3RvcmFnZS9TdG9yYWdlTWFwLmNwcAotICAgIHN0b3JhZ2UvU3RvcmFn
ZU5hbWVzcGFjZS5jcHAKICAgICBzdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2VJbXBsLmNwcAogICAg
IHN0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLmNwcAotICAgIHN0b3JhZ2UvU3RvcmFn
ZVN0cmF0ZWd5LmNwcAogICAgIHN0b3JhZ2UvU3RvcmFnZVN5bmNNYW5hZ2VyLmNwcAogICAgIHN0
b3JhZ2UvU3RvcmFnZVRocmVhZC5jcHAKICAgICBzdG9yYWdlL1N0b3JhZ2VUcmFja2VyLmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLmV4cC5pbgppbmRleCAxMzVlNTVjYTcxZjEwNTkxODlkNGRjMzljZTJlMGRjMTdm
MzQ0Yzg5Li5jOTI1NDZhZGVhNzYwMTU2Yjg2ZTZkM2ZhZjVjMmEwMDg0NjUwZWQ1IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLmV4cC5pbgpAQCAtNjUyLDkgKzY1Miw2IEBAIF9fWk43V2ViQ29yZTE1U1FMaXRlU3Rh
dGVtZW50QzFFUk5TXzE0U1FMaXRlRGF0YWJhc2VFUktOM1dURjZTdHJpbmdFCiBfX1pON1dlYkNv
cmUxNVNRTGl0ZVN0YXRlbWVudEQxRXYKIF9fWk43V2ViQ29yZTE1U2Nyb2xsQWxpZ25tZW50MTdh
bGlnbkNlbnRlckFsd2F5c0UKIF9fWk43V2ViQ29yZTE1U2Nyb2xsQWxpZ25tZW50MTlhbGlnblRv
RWRnZUlmTmVlZGVkRQotX19aTjdXZWJDb3JlMTVTdG9yYWdlU3RyYXRlZ3kyMWxvY2FsU3RvcmFn
ZU5hbWVzcGFjZUVQTlNfOVBhZ2VHcm91cEUKLV9fWk43V2ViQ29yZTE1U3RvcmFnZVN0cmF0ZWd5
MjNzZXNzaW9uU3RvcmFnZU5hbWVzcGFjZUVQTlNfNFBhZ2VFCi1fX1pON1dlYkNvcmUxNVN0b3Jh
Z2VTdHJhdGVneTMwdHJhbnNpZW50TG9jYWxTdG9yYWdlTmFtZXNwYWNlRVBOU185UGFnZUdyb3Vw
RVBOU18xNFNlY3VyaXR5T3JpZ2luRQogX19aTjdXZWJDb3JlMTVTdHJpbmdUcnVuY2F0b3IxM3Jp
Z2h0VHJ1bmNhdGVFUktOM1dURjZTdHJpbmdFZlJLTlNfNEZvbnRFTlMwXzI0RW5hYmxlUm91bmRp
bmdIYWNrc09yTm90RQogX19aTjdXZWJDb3JlMTVTdHJpbmdUcnVuY2F0b3IxNGNlbnRlclRydW5j
YXRlRVJLTjNXVEY2U3RyaW5nRWZSS05TXzRGb250RU5TMF8yNEVuYWJsZVJvdW5kaW5nSGFja3NP
ck5vdEUKIF9fWk43V2ViQ29yZTE1U3RyaW5nVHJ1bmNhdG9yNXdpZHRoRVJLTjNXVEY2U3RyaW5n
RVJLTlNfNEZvbnRFTlMwXzI0RW5hYmxlUm91bmRpbmdIYWNrc09yTm90RQpAQCAtMjExNiw3ICsy
MTEzLDYgQEAgX19aVFZON1dlYkNvcmUxMkNocm9tZUNsaWVudEUKIF9fWlRWTjdXZWJDb3JlMTRM
b2FkZXJTdHJhdGVneUUKIF9fWlRWTjdXZWJDb3JlMTRTdGF0aWNOb2RlTGlzdEUKIF9fWlRWTjdX
ZWJDb3JlMTVQbGF0Zm9ybUNBTGF5ZXJFCi1fX1pUVk43V2ViQ29yZTE1U3RvcmFnZVN0cmF0ZWd5
RQogX19aVFZON1dlYkNvcmUxNkJsb2JSZWdpc3RyeUltcGxFCiBfX1pUVk43V2ViQ29yZTE2RGF0
YWJhc2VTdHJhdGVneUUKIF9fWlRWTjdXZWJDb3JlMTZJY29uRGF0YWJhc2VCYXNlRQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oKaW5kZXggODUzODFi
OGI5NDIzMGU2MTM0ZWUwMGJiY2E2MjlhMDY0NWFhOWRmNy4uOWVjNjgyZjc5Zjg4NmI4NDFmNzgy
YzQ1NDcwMDkzMDgxOTU5ZDY4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52
Y3hwcm9qL1dlYkNvcmUudmN4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHBy
b2ovV2ViQ29yZS52Y3hwcm9qCkBAIC03OTgyLDcgKzc5ODIsNiBAQAogICAgICAgPEV4Y2x1ZGVk
RnJvbUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVs
ZWFzZXxXaW4zMiciPnRydWU8L0V4Y2x1ZGVkRnJvbUJ1aWxkPgogICAgICAgPEV4Y2x1ZGVkRnJv
bUJ1aWxkIENvbmRpdGlvbj0iJyQoQ29uZmlndXJhdGlvbil8JChQbGF0Zm9ybSknPT0nUmVsZWFz
ZXx4NjQnIj50cnVlPC9FeGNsdWRlZEZyb21CdWlsZD4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8
Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHN0b3JhZ2VcU3RvcmFnZVN0cmF0ZWd5LmNwcCIgLz4KICAg
ICA8Q2xDb21waWxlIEluY2x1ZGU9Ii4uXHN2Z1xncmFwaGljc1xTVkdJbWFnZUZvckNvbnRhaW5l
ci5jcHAiIC8+CiAgICAgPENsQ29tcGlsZSBJbmNsdWRlPSIuLlxXZWJDb3JlUHJlZml4LmNwcCI+
CiAgICAgICA8UHJlY29tcGlsZWRIZWFkZXIgQ29uZGl0aW9uPSInJChDb25maWd1cmF0aW9uKXwk
KFBsYXRmb3JtKSc9PSdEZWJ1Z3xXaW4zMiciPkNyZWF0ZTwvUHJlY29tcGlsZWRIZWFkZXI+CkBA
IC0xOTU2Miw4ICsxOTU2MSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5kZXJp
bmdcSGl0VGVzdExvY2F0aW9uLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxyZW5k
ZXJpbmdcUmVuZGVyTGF5ZXJNYXNrSW1hZ2VJbmZvLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNs
dWRlPSIuLlxyZW5kZXJpbmdcc3R5bGVcU3R5bGVDYWNoZWRJbWFnZVNldC5oIiAvPgotICAgIDxD
bEluY2x1ZGUgSW5jbHVkZT0iLi5cc3RvcmFnZVxTdG9yYWdlU3RyYXRlZ3kuaCIgLz4KLSAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHN2Z1xncmFwaGljc1xTVkdJbWFnZUZvckNvbnRhaW5lci5o
IiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cV2ViQ29yZVByZWZpeC5oIiAvPgogICAg
IDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5ccGxhdGZvcm1cd2luXFdlYkNvcmVUZXh0UmVuZGVyZXIu
aCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHBsYXRmb3JtXHdpblxXaW5kb3dNZXNz
YWdlQnJvYWRjYXN0ZXIuaCIgLz4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycyBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
dmN4cHJvai9XZWJDb3JlLnZjeHByb2ouZmlsdGVycwppbmRleCAzZDg2NmVlOGVkOTA1ZjA3MjZj
NGM3ZjE3OTQ5MTZmMmU1MThlZjkwLi43MDU2MjFmZjNmNTgxYzNmZTgyOTFjYTA1NjMxMWZlNDkw
OGZhMjNjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29y
ZS52Y3hwcm9qLmZpbHRlcnMKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dl
YkNvcmUudmN4cHJvai5maWx0ZXJzCkBAIC01MDk4LDkgKzUwOTgsNiBAQAogICAgIDxDbENvbXBp
bGUgSW5jbHVkZT0iLi5caHRtbFx0cmFja1xUZXh0VHJhY2tDdWVHZW5lcmljLmNwcCI+CiAgICAg
ICA8RmlsdGVyPmh0bWxcdHJhY2s8L0ZpbHRlcj4KICAgICA8L0NsQ29tcGlsZT4KLSAgICA8Q2xD
b21waWxlIEluY2x1ZGU9Ii4uXHN0b3JhZ2VcU3RvcmFnZVN0cmF0ZWd5LmNwcCI+Ci0gICAgICA8
RmlsdGVyPnN0b3JhZ2U8L0ZpbHRlcj4KLSAgICA8L0NsQ29tcGlsZT4KICAgICA8Q2xDb21waWxl
IEluY2x1ZGU9Ii4uXGh0bWxcdHJhY2tcV2ViVlRURWxlbWVudC5jcHAiPgogICAgICAgPEZpbHRl
cj5odG1sXHRyYWNrPC9GaWx0ZXI+CiAgICAgPC9DbENvbXBpbGU+CkBAIC0xMzA1Miw5ICsxMzA0
OSw2IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxodG1sXHRyYWNrXFRleHRUcmFja0N1
ZUdlbmVyaWMuaCI+CiAgICAgICA8RmlsdGVyPmh0bWxcdHJhY2s8L0ZpbHRlcj4KICAgICA8L0Ns
SW5jbHVkZT4KLSAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXHN0b3JhZ2VcU3RvcmFnZVN0cmF0
ZWd5LmgiPgotICAgICAgPEZpbHRlcj5zdG9yYWdlPC9GaWx0ZXI+Ci0gICAgPC9DbEluY2x1ZGU+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxodG1sXHRyYWNrXFdlYlZUVEVsZW1lbnQuaCI+
CiAgICAgICA8RmlsdGVyPmh0bWxcdHJhY2s8L0ZpbHRlcj4KICAgICA8L0NsSW5jbHVkZT4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRl
eCBlZTBhNDE1MjgyNTQ5NTdkNDQ3YjM0MTdjMDI1N2YyNzJjZmM5M2VjLi4yYTMzZjE3OTJmNTBm
MmY4MzlhODA0ZTBiNTI2NmMyYmQzNWFjYzI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9X
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC04MDYsOCArODA2LDYgQEAKIAkJMUFB
QUREQTQxNERCNDA5RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQUFEREEyMTREQjQwOUYwMEFGNjRCMyAv
KiBTY3JvbGxpbmdUcmVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJMUFBQURERTMxNERDOEM4RjAwQUY2NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2Rl
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDFBQUFE
REUxMTREQzhDOEYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlTm9kZS5jcHAgKi87IH07CiAJCTFB
QUFEREU0MTREQzhDOEYwMEFGNjRCMyAvKiBTY3JvbGxpbmdUcmVlTm9kZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFBQURERTIxNERDOEM4RjAwQUY2
NEIzIC8qIFNjcm9sbGluZ1RyZWVOb2RlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKLQkJMUFCMDlEQjQxNkFGNUY2QzAwODUzOEU3IC8qIFN0b3JhZ2VT
dHJhdGVneS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQUIwOURCMjE2QUY1RjZDMDA4NTM4RTcgLyogU3RvcmFnZVN0cmF0ZWd5LmNwcCAqLzsgfTsK
LQkJMUFCMDlEQjUxNkFGNUY2QzAwODUzOEU3IC8qIFN0b3JhZ2VTdHJhdGVneS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMUFCMDlEQjMxNkFGNUY2QzAw
ODUzOEU3IC8qIFN0b3JhZ2VTdHJhdGVneS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTFBQjMzREE1MTI1NTFFMzIwMDI0NDU3QSAvKiBJT0tpdC5m
cmFtZXdvcmsgaW4gRnJhbWV3b3JrcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAxQUIzM0RBNDEyNTUxRTMyMDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrICovOyB9OwogCQkx
QUI1RUJEMDE5NEExRDE3MDA1OUFDNzAgLyogU2hhcGVWYWx1ZS5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAxQUI1RUJDRjE5NEExRDE3MDA1OUFDNzAg
LyogU2hhcGVWYWx1ZS5jcHAgKi87IH07CiAJCTFBQjVFQkQyMTk0QTUwRjMwMDU5QUM3MCAvKiBI
VFRQSGVhZGVyTmFtZXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDFBQzkwMEMyMTk0M0MwQTAwMDg2MjVCNSAvKiBIVFRQSGVhZGVyTmFtZXMuaCAqLzsg
c2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtNTU0NCw3ICs1
NTQyLDYgQEAKIAkJQzRDRDYyOUIxODM4Mzc2NjAwN0VCQUYxIC8qIEZyYW1lU25hcHNob3R0aW5n
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNENENjI5
OTE4MzgzNzY2MDA3RUJBRjEgLyogRnJhbWVTbmFwc2hvdHRpbmcuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlDNTBCNTYxNjEyMTE5RDIzMDA4QjQ2
RTAgLyogR3JvdXBTZXR0aW5ncy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSBDNTBCNTYxNDEyMTE5RDIzMDA4QjQ2RTAgLyogR3JvdXBTZXR0aW5ncy5j
cHAgKi87IH07CiAJCUM1MEI1NjE3MTIxMTlEMjMwMDhCNDZFMCAvKiBHcm91cFNldHRpbmdzLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBDNTBCNTYxNTEy
MTE5RDIzMDA4QjQ2RTAgLyogR3JvdXBTZXR0aW5ncy5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07Ci0JCUM1MEQwRTgyMEZGNDI3MjkwMEFDMjY0NCAvKiBT
dG9yYWdlTmFtZXNwYWNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IEM1MEQwRTgwMEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmNw
cCAqLzsgfTsKIAkJQzUwRDBFODMwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1lc3BhY2Uu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEM1MEQwRTgx
MEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggKi87IHNldHRpbmdzID0ge0FU
VFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJQzUxMDJEOTQwRkQ5QUEyRDAwRkFGRjA0
IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gQzUxMDJEOTIwRkQ5QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFu
YWdlci5oICovOyB9OwogCQlDNTEwMkQ5NTBGRDlBQTJEMDBGQUZGMDQgLyogU3RvcmFnZVN5bmNN
YW5hZ2VyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IEM1MTAyRDkzMEZEOUFBMkQwMEZBRkYwNCAvKiBTdG9yYWdlU3luY01hbmFnZXIuY3BwICovOyB9
OwpAQCAtNzgxNCw4ICs3ODExLDYgQEAKIAkJMUFBQUREQTIxNERCNDA5RjAwQUY2NEIzIC8qIFNj
cm9sbGluZ1RyZWUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5n
VHJlZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkxQUFBRERFMTE0REM4QzhGMDBB
RjY0QjMgLyogU2Nyb2xsaW5nVHJlZU5vZGUuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gU2Nyb2xsaW5nVHJlZU5vZGUuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxQUFBRERFMjE0REM4QzhGMDBBRjY0QjMgLyogU2Nyb2xsaW5nVHJlZU5vZGUuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU2Nyb2xsaW5nVHJlZU5vZGUuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMUFCMDlEQjIxNkFGNUY2QzAwODUzOEU3IC8qIFN0
b3JhZ2VTdHJhdGVneS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBT
dG9yYWdlU3RyYXRlZ3kuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkxQUIwOURC
MzE2QUY1RjZDMDA4NTM4RTcgLyogU3RvcmFnZVN0cmF0ZWd5LmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFN0b3JhZ2VTdHJhdGVneS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkxQUIzM0RBNDEyNTUxRTMyMDAyNDQ1N0EgLyogSU9LaXQuZnJhbWV3b3JrICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gd3JhcHBlci5mcmFt
ZXdvcms7IG5hbWUgPSBJT0tpdC5mcmFtZXdvcms7IHBhdGggPSAvU3lzdGVtL0xpYnJhcnkvRnJh
bWV3b3Jrcy9JT0tpdC5mcmFtZXdvcms7IHNvdXJjZVRyZWUgPSAiPGFic29sdXRlPiI7IH07CiAJ
CTFBQjVFQkNGMTk0QTFEMTcwMDU5QUM3MCAvKiBTaGFwZVZhbHVlLmNwcCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFNoYXBlVmFsdWUuY3BwOyBwYXRoID0gc3R5bGUvU2hh
cGVWYWx1ZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTFBQjdGQzQ3MEE4Qjky
RUMwMEQ5RDM3QiAvKiBYUGF0aEV2YWx1YXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
cHAuY3BwOyBwYXRoID0gWFBhdGhFdmFsdWF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTMwMTMsNyArMTMwMDgsNiBAQAogCQlDNENENjI5OTE4MzgzNzY2MDA3RUJBRjEg
LyogRnJhbWVTbmFwc2hvdHRpbmcuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
RnJhbWVTbmFwc2hvdHRpbmcuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzUwQjU2
MTQxMjExOUQyMzAwOEI0NkUwIC8qIEdyb3VwU2V0dGluZ3MuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gR3JvdXBTZXR0aW5ncy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUM1MEI1NjE1MTIxMTlEMjMwMDhCNDZFMCAvKiBHcm91cFNldHRpbmdzLmgg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdyb3VwU2V0dGluZ3MuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKLQkJQzUwRDBFODAwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3Jh
Z2VOYW1lc3BhY2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gU3Rv
cmFnZU5hbWVzcGFjZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUM1MEQwRTgx
MEZGNDI3MjkwMEFDMjY0NCAvKiBTdG9yYWdlTmFtZXNwYWNlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IFN0b3JhZ2VOYW1lc3BhY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJQzUxMDJEOTIwRkQ5QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTdG9yYWdlU3luY01hbmFnZXIuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQzUxMDJEOTMwRkQ5QUEyRDAwRkFGRjA0IC8q
IFN0b3JhZ2VTeW5jTWFuYWdlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBh
dGggPSBTdG9yYWdlU3luY01hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpA
QCAtMTUxNTAsMTQgKzE1MTQ0LDExIEBACiAJCQkJQzVFQkREODExMDVFRERFQzAwNTY4MTZGIC8q
IFN0b3JhZ2VFdmVudERpc3BhdGNoZXIuaCAqLywKIAkJCQk1MUUwQkIzNzBEQTVBQ0I2MDBBOUU0
MTcgLyogU3RvcmFnZU1hcC5jcHAgKi8sCiAJCQkJNTFFMEJCMzYwREE1QUNCNjAwQTlFNDE3IC8q
IFN0b3JhZ2VNYXAuaCAqLywKLQkJCQlDNTBEMEU4MDBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFn
ZU5hbWVzcGFjZS5jcHAgKi8sCiAJCQkJQzUwRDBFODEwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3Jh
Z2VOYW1lc3BhY2UuaCAqLywKIAkJCQlDNTVFMzhCQzEwMDQwRDVEMDBBNTZCREIgLyogU3RvcmFn
ZU5hbWVzcGFjZUltcGwuY3BwICovLAogCQkJCUM1NUUzOEJCMTAwNDBENUQwMEE1NkJEQiAvKiBT
dG9yYWdlTmFtZXNwYWNlSW1wbC5oICovLAogCQkJCTFBMzc2MzY5MUEyRTY4QkIwMDlBN0VFMiAv
KiBTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuY3BwICovLAogCQkJCTFBMzc2MzZBMUEyRTY4QkIw
MDlBN0VFMiAvKiBTdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuaCAqLywKLQkJCQkxQUIwOURCMjE2
QUY1RjZDMDA4NTM4RTcgLyogU3RvcmFnZVN0cmF0ZWd5LmNwcCAqLywKLQkJCQkxQUIwOURCMzE2
QUY1RjZDMDA4NTM4RTcgLyogU3RvcmFnZVN0cmF0ZWd5LmggKi8sCiAJCQkJQzUxMDJEOTMwRkQ5
QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5jcHAgKi8sCiAJCQkJQzUxMDJEOTIw
RkQ5QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5oICovLAogCQkJCTUxMUYyMzE1
MERDMTYwREEwMDRGMDAzMiAvKiBTdG9yYWdlVGhyZWFkLmNwcCAqLywKQEAgLTI2MjA0LDcgKzI2
MTk1LDYgQEAKIAkJCQk1MUUwQkIzODBEQTVBQ0I2MDBBOUU0MTcgLyogU3RvcmFnZU1hcC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQzUwRDBFODMwRkY0MjcyOTAwQUMyNjQ0IC8qIFN0b3JhZ2VOYW1l
c3BhY2UuaCBpbiBIZWFkZXJzICovLAogCQkJCUM1NUUzOEJGMTAwNDBENUQwMEE1NkJEQiAvKiBT
dG9yYWdlTmFtZXNwYWNlSW1wbC5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMUFCMDlEQjUxNkFGNUY2
QzAwODUzOEU3IC8qIFN0b3JhZ2VTdHJhdGVneS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQzUxMDJE
OTQwRkQ5QUEyRDAwRkFGRjA0IC8qIFN0b3JhZ2VTeW5jTWFuYWdlci5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNTExRjIzMUEwREMxNjBEQTAwNEYwMDMyIC8qIFN0b3JhZ2VUaHJlYWQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTNBQjAyRDJBMTJENEY5MTYwMEZCQjY5NCAvKiBTdG9yYWdlVHJhY2tlci5o
IGluIEhlYWRlcnMgKi8sCkBAIC0yOTYyMCw5ICsyOTYxMCw3IEBACiAJCQkJNTFFMEJBQkMwREE1
NTQ3MTAwQTlFNDE3IC8qIFN0b3JhZ2VFdmVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNUU5
QjY3NzEwNjk3RTEzMDBDN0JCMUEgLyogU3RvcmFnZUV2ZW50RGlzcGF0Y2hlci5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQk1MUUwQkIzOTBEQTVBQ0I2MDBBOUU0MTcgLyogU3RvcmFnZU1hcC5jcHAg
aW4gU291cmNlcyAqLywKLQkJCQlDNTBEMEU4MjBGRjQyNzI5MDBBQzI2NDQgLyogU3RvcmFnZU5h
bWVzcGFjZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlDNTVFMzhDMDEwMDQwRDVEMDBBNTZCREIg
LyogU3RvcmFnZU5hbWVzcGFjZUltcGwuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMUFCMDlEQjQx
NkFGNUY2QzAwODUzOEU3IC8qIFN0b3JhZ2VTdHJhdGVneS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQlDNTEwMkQ5NTBGRDlBQTJEMDBGQUZGMDQgLyogU3RvcmFnZVN5bmNNYW5hZ2VyLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTUxMUYyMzE5MERDMTYwREEwMDRGMDAzMiAvKiBTdG9yYWdlVGhyZWFk
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTNBQjAyRDJCMTJENEY5MTYwMEZCQjY5NCAvKiBTdG9y
YWdlVHJhY2tlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvRE9NV2luZG93LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvRE9NV2luZG93LmNwcApp
bmRleCAwZmQzMmEyY2NiNGE0MWNjMWJmOTNmZjBkYWVhOGYyNmRjZGMxZTI0Li4zYjgzZTc5NmIy
OWVjNzRiYmM5OTA4MjFmODc1NzllNzgxNDE4ZGRkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wYWdlL0RPTVdpbmRvdy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9ET01XaW5kb3cu
Y3BwCkBAIC04NTcsMTggKzg1NywxMSBAQCBTdG9yYWdlKiBET01XaW5kb3c6OmxvY2FsU3RvcmFn
ZShFeGNlcHRpb25Db2RlJiBlYykgY29uc3QKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAg
ICBSZWZQdHI8U3RvcmFnZUFyZWE+IHN0b3JhZ2VBcmVhOwotICAgIGlmIChhdXRvKiBzdG9yYWdl
TmFtZXNwYWNlUHJvdmlkZXIgPSBwYWdlLT5zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIoKSkgewot
ICAgICAgICBpZiAoZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCktPmNhbkFjY2Vzc0xvY2FsU3Rv
cmFnZShkb2N1bWVudC0+dG9wT3JpZ2luKCkpKQotICAgICAgICAgICAgc3RvcmFnZUFyZWEgPSBz
dG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPmxvY2FsU3RvcmFnZU5hbWVzcGFjZSgpLnN0b3JhZ2VB
cmVhKGRvY3VtZW50LT5zZWN1cml0eU9yaWdpbigpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAg
ICAgc3RvcmFnZUFyZWEgPSBzdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPnRyYW5zaWVudExvY2Fs
U3RvcmFnZU5hbWVzcGFjZSgqZG9jdW1lbnQtPnRvcE9yaWdpbigpKS5zdG9yYWdlQXJlYShkb2N1
bWVudC0+c2VjdXJpdHlPcmlnaW4oKSk7Ci0gICAgfSBlbHNlIHsKLSAgICAgICAgLy8gRklYTUU6
IFJlbW92ZSB0aGlzIG9uY2UgZXZlcnlvbmUgaGFzIHRyYW5zaXRpb25lZCBhd2F5IGZyb20gdXNp
bmcgdGhlIHBhZ2UgZ3JvdXAgbG9jYWwgc3RvcmFnZS4KLSAgICAgICAgaWYgKCFkb2N1bWVudC0+
c2VjdXJpdHlPcmlnaW4oKS0+Y2FuQWNjZXNzTG9jYWxTdG9yYWdlKGRvY3VtZW50LT50b3BPcmln
aW4oKSkpCi0gICAgICAgICAgICBzdG9yYWdlQXJlYSA9IHBhZ2UtPmdyb3VwKCkudHJhbnNpZW50
TG9jYWxTdG9yYWdlKGRvY3VtZW50LT50b3BPcmlnaW4oKSktPnN0b3JhZ2VBcmVhKGRvY3VtZW50
LT5zZWN1cml0eU9yaWdpbigpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAgICAgc3RvcmFnZUFy
ZWEgPSBwYWdlLT5ncm91cCgpLmxvY2FsU3RvcmFnZSgpLT5zdG9yYWdlQXJlYShkb2N1bWVudC0+
c2VjdXJpdHlPcmlnaW4oKSk7Ci0gICAgfQorCisgICAgaWYgKGRvY3VtZW50LT5zZWN1cml0eU9y
aWdpbigpLT5jYW5BY2Nlc3NMb2NhbFN0b3JhZ2UoZG9jdW1lbnQtPnRvcE9yaWdpbigpKSkKKyAg
ICAgICAgc3RvcmFnZUFyZWEgPSBwYWdlLT5zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIoKS5sb2Nh
bFN0b3JhZ2VOYW1lc3BhY2UoKS5zdG9yYWdlQXJlYShkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4o
KSk7CisgICAgZWxzZQorICAgICAgICBzdG9yYWdlQXJlYSA9IHBhZ2UtPnN0b3JhZ2VOYW1lc3Bh
Y2VQcm92aWRlcigpLnRyYW5zaWVudExvY2FsU3RvcmFnZU5hbWVzcGFjZSgqZG9jdW1lbnQtPnRv
cE9yaWdpbigpKS5zdG9yYWdlQXJlYShkb2N1bWVudC0+c2VjdXJpdHlPcmlnaW4oKSk7CiAKICAg
ICBpZiAoIXN0b3JhZ2VBcmVhLT5jYW5BY2Nlc3NTdG9yYWdlKG1fZnJhbWUpKSB7CiAgICAgICAg
IGVjID0gU0VDVVJJVFlfRVJSOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdl
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKaW5kZXggYzM2MDFjODNkZjY4YzQ1
NmUxODdlZjE5YTY5YWQ5YTA3ZjhhNjVmNi4uMmIwNDAwNDY4ZDc1Mzc4YWZkNWVkMzlkMzc5NzVk
OTEyZjJmOGMzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC0yMDMsNyArMjAzLDcgQEAgUGFnZTo6
UGFnZShQYWdlQ29uZmlndXJhdGlvbiYgcGFnZUNvbmZpZ3VyYXRpb24pCiAjZW5kaWYKICAgICAs
IG1fbGFzdFNwYXRpYWxOYXZpZ2F0aW9uQ2FuZGlkYXRlc0NvdW50KDApIC8vIE5PVEU6IE9ubHkg
Y2FsbGVkIGZyb20gSW50ZXJuYWxzIGZvciBTcGF0aWFsIE5hdmlnYXRpb24gdGVzdGluZy4KICAg
ICAsIG1fZnJhbWVzSGFuZGxpbmdCZWZvcmVVbmxvYWRFdmVudCgwKQotICAgICwgbV9zdG9yYWdl
TmFtZXNwYWNlUHJvdmlkZXIoV1RGOjptb3ZlKHBhZ2VDb25maWd1cmF0aW9uLnN0b3JhZ2VOYW1l
c3BhY2VQcm92aWRlcikpCisgICAgLCBtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcigqV1RGOjpt
b3ZlKHBhZ2VDb25maWd1cmF0aW9uLnN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcikpCiAgICAgLCBt
X3VzZXJDb250ZW50Q29udHJvbGxlcihXVEY6Om1vdmUocGFnZUNvbmZpZ3VyYXRpb24udXNlckNv
bnRlbnRDb250cm9sbGVyKSkKICAgICAsIG1fdmlzaXRlZExpbmtTdG9yZSgqV1RGOjptb3ZlKHBh
Z2VDb25maWd1cmF0aW9uLnZpc2l0ZWRMaW5rU3RvcmUpKQogICAgICwgbV9zZXNzaW9uSUQoU2Vz
c2lvbklEOjpkZWZhdWx0U2Vzc2lvbklEKCkpCkBAIC0yMTQsOCArMjE0LDggQEAgUGFnZTo6UGFn
ZShQYWdlQ29uZmlndXJhdGlvbiYgcGFnZUNvbmZpZ3VyYXRpb24pCiAgICAgCiAgICAgc2V0VGlt
ZXJUaHJvdHRsaW5nRW5hYmxlZChtX3ZpZXdTdGF0ZSAmIFZpZXdTdGF0ZTo6SXNWaXN1YWxseUlk
bGUpOwogCi0gICAgaWYgKG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKQotICAgICAgICBtX3N0
b3JhZ2VOYW1lc3BhY2VQcm92aWRlci0+YWRkUGFnZSgqdGhpcyk7CisgICAgbV9zdG9yYWdlTmFt
ZXNwYWNlUHJvdmlkZXItPmFkZFBhZ2UoKnRoaXMpOworCiAgICAgaWYgKG1fdXNlckNvbnRlbnRD
b250cm9sbGVyKQogICAgICAgICBtX3VzZXJDb250ZW50Q29udHJvbGxlci0+YWRkUGFnZSgqdGhp
cyk7CiAKQEAgLTI3MSw4ICsyNzEsOCBAQCBQYWdlOjp+UGFnZSgpCiAgICAgcGFnZUNvdW50ZXIu
ZGVjcmVtZW50KCk7CiAjZW5kaWYKIAotICAgIGlmIChtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRl
cikKLSAgICAgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXItPnJlbW92ZVBhZ2UoKnRoaXMp
OworICAgIG1fc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyLT5yZW1vdmVQYWdlKCp0aGlzKTsKKwog
ICAgIGlmIChtX3VzZXJDb250ZW50Q29udHJvbGxlcikKICAgICAgICAgbV91c2VyQ29udGVudENv
bnRyb2xsZXItPnJlbW92ZVBhZ2UoKnRoaXMpOwogICAgIG1fdmlzaXRlZExpbmtTdG9yZS0+cmVt
b3ZlUGFnZSgqdGhpcyk7CkBAIC0xMDkwLDEyICsxMDkwLDggQEAgdm9pZCBQYWdlOjpzZXREZWJ1
Z2dlcihKU0M6OkRlYnVnZ2VyKiBkZWJ1Z2dlcikKIAogU3RvcmFnZU5hbWVzcGFjZSogUGFnZTo6
c2Vzc2lvblN0b3JhZ2UoYm9vbCBvcHRpb25hbENyZWF0ZSkKIHsKLSAgICBpZiAoIW1fc2Vzc2lv
blN0b3JhZ2UgJiYgb3B0aW9uYWxDcmVhdGUpIHsKLSAgICAgICAgaWYgKG1fc3RvcmFnZU5hbWVz
cGFjZVByb3ZpZGVyKQotICAgICAgICAgICAgbV9zZXNzaW9uU3RvcmFnZSA9IG1fc3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyLT5jcmVhdGVTZXNzaW9uU3RvcmFnZU5hbWVzcGFjZSgqdGhpcywgbV9z
ZXR0aW5ncy0+c2Vzc2lvblN0b3JhZ2VRdW90YSgpKTsKLSAgICAgICAgZWxzZQotICAgICAgICAg
ICAgbV9zZXNzaW9uU3RvcmFnZSA9IFN0b3JhZ2VOYW1lc3BhY2U6OnNlc3Npb25TdG9yYWdlTmFt
ZXNwYWNlKHRoaXMpOwotICAgIH0KKyAgICBpZiAoIW1fc2Vzc2lvblN0b3JhZ2UgJiYgb3B0aW9u
YWxDcmVhdGUpCisgICAgICAgIG1fc2Vzc2lvblN0b3JhZ2UgPSBtX3N0b3JhZ2VOYW1lc3BhY2VQ
cm92aWRlci0+Y3JlYXRlU2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2UoKnRoaXMsIG1fc2V0dGluZ3Mt
PnNlc3Npb25TdG9yYWdlUXVvdGEoKSk7CiAKICAgICByZXR1cm4gbV9zZXNzaW9uU3RvcmFnZS5n
ZXQoKTsKIH0KQEAgLTE2NTEsOSArMTY0Nyw3IEBAIHZvaWQgUGFnZTo6c2V0VXNlckNvbnRlbnRD
b250cm9sbGVyKFVzZXJDb250ZW50Q29udHJvbGxlciogdXNlckNvbnRlbnRDb250cm9sbGVyCiAK
IHZvaWQgUGFnZTo6c2V0U3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKFBhc3NSZWY8U3RvcmFnZU5h
bWVzcGFjZVByb3ZpZGVyPiBzdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIpCiB7Ci0gICAgaWYgKG1f
c3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKQotICAgICAgICBtX3N0b3JhZ2VOYW1lc3BhY2VQcm92
aWRlci0+cmVtb3ZlUGFnZSgqdGhpcyk7Ci0KKyAgICBtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRl
ci0+cmVtb3ZlUGFnZSgqdGhpcyk7CiAgICAgbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIgPSBX
VEY6Om1vdmUoc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKTsKICAgICBtX3N0b3JhZ2VOYW1lc3Bh
Y2VQcm92aWRlci0+YWRkUGFnZSgqdGhpcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BhZ2UvUGFnZS5oIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKaW5kZXggOWFjYzQ4OTIw
MTE5Y2YxMDRkYWY2NmM2ZWE3NzM1MTUxZWEzOTFmZC4uNWYzOGNhMjM1OTQxZWU2ZDk3MmM4MjA4
YjY2ZDQ1MWRkZGUwMjM2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgK
KysrIGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlLmgKQEAgLTQwMiw3ICs0MDIsNyBAQCBwdWJs
aWM6CiAgICAgdm9pZCBzZXRMYXN0U3BhdGlhbE5hdmlnYXRpb25DYW5kaWRhdGVDb3VudCh1bnNp
Z25lZCBjb3VudCkgeyBtX2xhc3RTcGF0aWFsTmF2aWdhdGlvbkNhbmRpZGF0ZXNDb3VudCA9IGNv
dW50OyB9CiAgICAgdW5zaWduZWQgbGFzdFNwYXRpYWxOYXZpZ2F0aW9uQ2FuZGlkYXRlQ291bnQo
KSBjb25zdCB7IHJldHVybiBtX2xhc3RTcGF0aWFsTmF2aWdhdGlvbkNhbmRpZGF0ZXNDb3VudDsg
fQogCi0gICAgU3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKiBzdG9yYWdlTmFtZXNwYWNlUHJvdmlk
ZXIoKSB7IHJldHVybiBtX3N0b3JhZ2VOYW1lc3BhY2VQcm92aWRlci5nZXQoKTsgfQorICAgIFN0
b3JhZ2VOYW1lc3BhY2VQcm92aWRlciYgc3RvcmFnZU5hbWVzcGFjZVByb3ZpZGVyKCkgeyByZXR1
cm4gbV9zdG9yYWdlTmFtZXNwYWNlUHJvdmlkZXIuZ2V0KCk7IH0KICAgICB2b2lkIHNldFN0b3Jh
Z2VOYW1lc3BhY2VQcm92aWRlcihQYXNzUmVmPFN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcj4pOwog
CiAgICAgVXNlckNvbnRlbnRDb250cm9sbGVyKiB1c2VyQ29udGVudENvbnRyb2xsZXIoKSB7IHJl
dHVybiBtX3VzZXJDb250ZW50Q29udHJvbGxlci5nZXQoKTsgfQpAQCAtNTczLDcgKzU3Myw3IEBA
IHByaXZhdGU6CiAgICAgdW5zaWduZWQgbV9sYXN0U3BhdGlhbE5hdmlnYXRpb25DYW5kaWRhdGVz
Q291bnQ7CiAgICAgdW5zaWduZWQgbV9mcmFtZXNIYW5kbGluZ0JlZm9yZVVubG9hZEV2ZW50Owog
Ci0gICAgUmVmUHRyPFN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcj4gbV9zdG9yYWdlTmFtZXNwYWNl
UHJvdmlkZXI7CisgICAgUmVmPFN0b3JhZ2VOYW1lc3BhY2VQcm92aWRlcj4gbV9zdG9yYWdlTmFt
ZXNwYWNlUHJvdmlkZXI7CiAgICAgUmVmUHRyPFVzZXJDb250ZW50Q29udHJvbGxlcj4gbV91c2Vy
Q29udGVudENvbnRyb2xsZXI7CiAgICAgUmVmPFZpc2l0ZWRMaW5rU3RvcmU+IG1fdmlzaXRlZExp
bmtTdG9yZTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlR3JvdXAuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGFnZS9QYWdlR3JvdXAuY3BwCmluZGV4IDQ1ZWVkMDg4OGZlOTAz
YWNkNDkxNGZkNjRmZjMxNGM5YTkzMWUwMzUuLjA4NmI0MGU2NTJkMDJhMjMwYTBiMWY5NWVhMjFk
M2UzZjE2MWE3MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BhZ2UvUGFnZUdyb3VwLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL1BhZ2VHcm91cC5jcHAKQEAgLTE2NiwyMCArMTY2
LDEyIEBAIHZvaWQgUGFnZUdyb3VwOjpyZW1vdmVQYWdlKFBhZ2UmIHBhZ2UpCiAKIFN0b3JhZ2VO
YW1lc3BhY2UqIFBhZ2VHcm91cDo6bG9jYWxTdG9yYWdlKCkKIHsKLSAgICBpZiAoIW1fbG9jYWxT
dG9yYWdlKQotICAgICAgICBtX2xvY2FsU3RvcmFnZSA9IFN0b3JhZ2VOYW1lc3BhY2U6OmxvY2Fs
U3RvcmFnZU5hbWVzcGFjZSh0aGlzKTsKLQogICAgIHJldHVybiBtX2xvY2FsU3RvcmFnZS5nZXQo
KTsKIH0KIAotU3RvcmFnZU5hbWVzcGFjZSogUGFnZUdyb3VwOjp0cmFuc2llbnRMb2NhbFN0b3Jh
Z2UoU2VjdXJpdHlPcmlnaW4qIHRvcE9yaWdpbikKK1N0b3JhZ2VOYW1lc3BhY2UqIFBhZ2VHcm91
cDo6dHJhbnNpZW50TG9jYWxTdG9yYWdlKFNlY3VyaXR5T3JpZ2luKikKIHsKLSAgICBhdXRvIHJl
c3VsdCA9IG1fdHJhbnNpZW50TG9jYWxTdG9yYWdlTWFwLmFkZCh0b3BPcmlnaW4sIG51bGxwdHIp
OwotCi0gICAgaWYgKHJlc3VsdC5pc05ld0VudHJ5KQotICAgICAgICByZXN1bHQuaXRlcmF0b3It
PnZhbHVlID0gU3RvcmFnZU5hbWVzcGFjZTo6dHJhbnNpZW50TG9jYWxTdG9yYWdlTmFtZXNwYWNl
KHRoaXMsIHRvcE9yaWdpbik7Ci0KLSAgICByZXR1cm4gcmVzdWx0Lml0ZXJhdG9yLT52YWx1ZS5n
ZXQoKTsKKyAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAogI2lmIEVOQUJMRShWSURFT19UUkFDSykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1BsYXRmb3JtU3RyYXRlZ2llcy5o
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggZDkx
NjRmMTM1NjBkYjY0ZDdiN2YzNmM0MzMyYmI2ZWJhNmIwY2MxYi4uMGFjYmE4OTg0NzkwOTJjOGU0
OTMwYjE5ZWY5ZjkwNDg2ODU4Y2FkNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUGxh
dGZvcm1TdHJhdGVnaWVzLmgKQEAgLTM0LDcgKzM0LDYgQEAgY2xhc3MgTG9hZGVyU3RyYXRlZ3k7
CiBjbGFzcyBQYXN0ZWJvYXJkU3RyYXRlZ3k7CiBjbGFzcyBQbHVnaW5TdHJhdGVneTsKIGNsYXNz
IFNoYXJlZFdvcmtlclN0cmF0ZWd5OwotY2xhc3MgU3RvcmFnZVN0cmF0ZWd5OwogCiBjbGFzcyBQ
bGF0Zm9ybVN0cmF0ZWdpZXMgewogcHVibGljOgpAQCAtODAsMTMgKzc5LDYgQEAgcHVibGljOgog
ICAgICAgICByZXR1cm4gbV9zaGFyZWRXb3JrZXJTdHJhdGVneTsKICAgICB9CiAKLSAgICBTdG9y
YWdlU3RyYXRlZ3kqIHN0b3JhZ2VTdHJhdGVneSgpCi0gICAgewotICAgICAgICBpZiAoIW1fc3Rv
cmFnZVN0cmF0ZWd5KQotICAgICAgICAgICAgbV9zdG9yYWdlU3RyYXRlZ3kgPSBjcmVhdGVTdG9y
YWdlU3RyYXRlZ3koKTsKLSAgICAgICAgcmV0dXJuIG1fc3RvcmFnZVN0cmF0ZWd5OwotICAgIH0K
LQogcHJvdGVjdGVkOgogICAgIFBsYXRmb3JtU3RyYXRlZ2llcygpCiAgICAgICAgIDogbV9jb29r
aWVzU3RyYXRlZ3kobnVsbHB0cikKQEAgLTk1LDcgKzg3LDYgQEAgcHJvdGVjdGVkOgogICAgICAg
ICAsIG1fcGFzdGVib2FyZFN0cmF0ZWd5KG51bGxwdHIpCiAgICAgICAgICwgbV9wbHVnaW5TdHJh
dGVneShudWxscHRyKQogICAgICAgICAsIG1fc2hhcmVkV29ya2VyU3RyYXRlZ3kobnVsbHB0cikK
LSAgICAgICAgLCBtX3N0b3JhZ2VTdHJhdGVneShudWxscHRyKQogICAgIHsKICAgICB9CiAKQEAg
LTExMCw3ICsxMDEsNiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgUGFzdGVib2FyZFN0cmF0ZWd5
KiBjcmVhdGVQYXN0ZWJvYXJkU3RyYXRlZ3koKSA9IDA7CiAgICAgdmlydHVhbCBQbHVnaW5TdHJh
dGVneSogY3JlYXRlUGx1Z2luU3RyYXRlZ3koKSA9IDA7CiAgICAgdmlydHVhbCBTaGFyZWRXb3Jr
ZXJTdHJhdGVneSogY3JlYXRlU2hhcmVkV29ya2VyU3RyYXRlZ3koKSA9IDA7Ci0gICAgdmlydHVh
bCBTdG9yYWdlU3RyYXRlZ3kqIGNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpID0gMDsKIAogICAgIENv
b2tpZXNTdHJhdGVneSogbV9jb29raWVzU3RyYXRlZ3k7CiAgICAgRGF0YWJhc2VTdHJhdGVneSog
bV9kYXRhYmFzZVN0cmF0ZWd5OwpAQCAtMTE4LDcgKzEwOCw2IEBAIHByaXZhdGU6CiAgICAgUGFz
dGVib2FyZFN0cmF0ZWd5KiBtX3Bhc3RlYm9hcmRTdHJhdGVneTsKICAgICBQbHVnaW5TdHJhdGVn
eSogbV9wbHVnaW5TdHJhdGVneTsKICAgICBTaGFyZWRXb3JrZXJTdHJhdGVneSogbV9zaGFyZWRX
b3JrZXJTdHJhdGVneTsKLSAgICBTdG9yYWdlU3RyYXRlZ3kqIG1fc3RvcmFnZVN0cmF0ZWd5Owog
fTsKIAogUGxhdGZvcm1TdHJhdGVnaWVzKiBwbGF0Zm9ybVN0cmF0ZWdpZXMoKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZS5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2UuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAyYmJiZWRjNzllMmMwNGJmMzA0N2JmZTA2NzAxMDdmZDA3ZGFhYWE5Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZS5jcHAKKysrIC9kZXYvbnVsbApAQCAtMSw0OSArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA4IEFwcGxlIEluYy4gQWxsIFJpZ2h0cyBSZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIlN0b3JhZ2VOYW1lc3BhY2UuaCIKLQotI2luY2x1ZGUg
IlBsYXRmb3JtU3RyYXRlZ2llcy5oIgotI2luY2x1ZGUgIlN0b3JhZ2VTdHJhdGVneS5oIgotCi1u
YW1lc3BhY2UgV2ViQ29yZSB7Ci0KLVBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gU3RvcmFn
ZU5hbWVzcGFjZTo6bG9jYWxTdG9yYWdlTmFtZXNwYWNlKFBhZ2VHcm91cCogcGFnZUdyb3VwKQot
ewotICAgIHJldHVybiBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+c3RvcmFnZVN0cmF0ZWd5KCktPmxv
Y2FsU3RvcmFnZU5hbWVzcGFjZShwYWdlR3JvdXApOwotfQotCi1QYXNzUmVmUHRyPFN0b3JhZ2VO
YW1lc3BhY2U+IFN0b3JhZ2VOYW1lc3BhY2U6OnRyYW5zaWVudExvY2FsU3RvcmFnZU5hbWVzcGFj
ZShQYWdlR3JvdXAqIHBhZ2VHcm91cCwgU2VjdXJpdHlPcmlnaW4qIHNlY3VyaXR5T3JpZ2luKQot
ewotICAgIHJldHVybiBwbGF0Zm9ybVN0cmF0ZWdpZXMoKS0+c3RvcmFnZVN0cmF0ZWd5KCktPnRy
YW5zaWVudExvY2FsU3RvcmFnZU5hbWVzcGFjZShwYWdlR3JvdXAsIHNlY3VyaXR5T3JpZ2luKTsK
LX0KLQotUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlTmFtZXNwYWNlOjpzZXNz
aW9uU3RvcmFnZU5hbWVzcGFjZShQYWdlKiBwYWdlKQotewotICAgIHJldHVybiBwbGF0Zm9ybVN0
cmF0ZWdpZXMoKS0+c3RvcmFnZVN0cmF0ZWd5KCktPnNlc3Npb25TdG9yYWdlTmFtZXNwYWNlKHBh
Z2UpOwotfQotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9zdG9yYWdlL1N0b3JhZ2VOYW1lc3BhY2UuaCBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2Uv
U3RvcmFnZU5hbWVzcGFjZS5oCmluZGV4IDFhZWY5ZTZmZWZkMzA4MzdhN2ZjMWMwYzRiYzMxNDA0
ZWVjMGY4N2QuLjgyMDA4NjJhZWJmNDQyMTBlNDcxZTk2YmIzMjU2OGE3ZjczMThhOWEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZS5oCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZU5hbWVzcGFjZS5oCkBAIC0zOSwxMCArMzksNiBA
QCBjbGFzcyBTdG9yYWdlQXJlYTsKIAogY2xhc3MgU3RvcmFnZU5hbWVzcGFjZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPFN0b3JhZ2VOYW1lc3BhY2U+IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1Jl
ZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBsb2NhbFN0b3JhZ2VOYW1lc3BhY2UoUGFnZUdyb3VwKik7
Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gdHJhbnNpZW50TG9jYWxT
dG9yYWdlTmFtZXNwYWNlKFBhZ2VHcm91cCosIFNlY3VyaXR5T3JpZ2luKik7Ci0gICAgc3RhdGlj
IFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gc2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2UoUGFn
ZSopOwotCiAgICAgdmlydHVhbCB+U3RvcmFnZU5hbWVzcGFjZSgpIHsgfQogICAgIHZpcnR1YWwg
UGFzc1JlZlB0cjxTdG9yYWdlQXJlYT4gc3RvcmFnZUFyZWEoUGFzc1JlZlB0cjxTZWN1cml0eU9y
aWdpbj4pID0gMDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8U3RvcmFnZU5hbWVzcGFjZT4gY29w
eShQYWdlKiBuZXdQYWdlKSA9IDA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L1N0b3JhZ2VTdHJhdGVneS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VTdHJh
dGVneS5jcHAKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg4Yjg0ZjQxNzc5MjUwNWRh
MTdiNjUxOGZhZTExOWZhZWIzN2RlMDIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9TdG9yYWdlU3RyYXRlZ3kuY3Bw
CisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
MyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24g
YW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBt
b2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNv
bmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNv
ZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVk
aXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5
cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xs
b3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVy
IG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBg
QVMgSVMnJwotICogQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklC
VVRPUlMKLSAqIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
IFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5F
U1MKLSAqIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0Yg
TElBQklMSVRZLCBXSEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVCAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBP
RgotICogVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJj
b25maWcuaCIKLSNpbmNsdWRlICJTdG9yYWdlU3RyYXRlZ3kuaCIKLQotI2luY2x1ZGUgIlN0b3Jh
Z2VOYW1lc3BhY2VJbXBsLmgiCi0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotUGFzc1JlZlB0cjxT
dG9yYWdlTmFtZXNwYWNlPiBTdG9yYWdlU3RyYXRlZ3k6OmxvY2FsU3RvcmFnZU5hbWVzcGFjZShQ
YWdlR3JvdXAqIHBhZ2VHcm91cCkKLXsKLSAgICByZXR1cm4gU3RvcmFnZU5hbWVzcGFjZUltcGw6
OmxvY2FsU3RvcmFnZU5hbWVzcGFjZShwYWdlR3JvdXApOwotfQotCi1QYXNzUmVmUHRyPFN0b3Jh
Z2VOYW1lc3BhY2U+IFN0b3JhZ2VTdHJhdGVneTo6c2Vzc2lvblN0b3JhZ2VOYW1lc3BhY2UoUGFn
ZSogcGFnZSkKLXsKLSAgICByZXR1cm4gU3RvcmFnZU5hbWVzcGFjZUltcGw6OnNlc3Npb25TdG9y
YWdlTmFtZXNwYWNlKHBhZ2UpOwotfQotCi1QYXNzUmVmUHRyPFN0b3JhZ2VOYW1lc3BhY2U+IFN0
b3JhZ2VTdHJhdGVneTo6dHJhbnNpZW50TG9jYWxTdG9yYWdlTmFtZXNwYWNlKFBhZ2VHcm91cCog
cGFnZUdyb3VwLCBTZWN1cml0eU9yaWdpbiogc2VjdXJpdHlPcmlnaW4pCi17Ci0gICAgcmV0dXJu
IFN0b3JhZ2VOYW1lc3BhY2VJbXBsOjp0cmFuc2llbnRMb2NhbFN0b3JhZ2VOYW1lc3BhY2UocGFn
ZUdyb3VwLCBzZWN1cml0eU9yaWdpbik7Ci19Ci0KLX0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvU3RvcmFnZVN0cmF0ZWd5LmggYi9Tb3Vy
Y2UvV2ViQ29yZS9zdG9yYWdlL1N0b3JhZ2VTdHJhdGVneS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwOWM0MzQ5YmQzZWZjOWUwZmVjZTU2OThkZjgyYjYzNDFjNDdlMDE3Li4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3N0b3JhZ2UvU3RvcmFnZVN0cmF0ZWd5LmgKKysrIC9kZXYvbnVsbApAQCAtMSw1MiArMCwwIEBA
Ci0vKgotICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElO
Qy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRI
RSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxM
IEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElS
RUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09O
U0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YKLSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENB
VVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRS
QUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpCi0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBE
QU1BR0UuCi0gKi8KLQotI2lmbmRlZiBTdG9yYWdlU3RyYXRlZ3lfaAotI2RlZmluZSBTdG9yYWdl
U3RyYXRlZ3lfaAotCi0jaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4KLQotbmFtZXNwYWNlIFdlYkNv
cmUgewotCi1jbGFzcyBQYWdlOwotY2xhc3MgUGFnZUdyb3VwOwotY2xhc3MgU2VjdXJpdHlPcmln
aW47Ci1jbGFzcyBTdG9yYWdlTmFtZXNwYWNlOwotCi1jbGFzcyBTdG9yYWdlU3RyYXRlZ3kgewot
cHVibGljOgotICAgIFdFQkNPUkVfRVhQT1JUIHZpcnR1YWwgUGFzc1JlZlB0cjxTdG9yYWdlTmFt
ZXNwYWNlPiBsb2NhbFN0b3JhZ2VOYW1lc3BhY2UoUGFnZUdyb3VwKik7Ci0gICAgV0VCQ09SRV9F
WFBPUlQgdmlydHVhbCBQYXNzUmVmUHRyPFN0b3JhZ2VOYW1lc3BhY2U+IHRyYW5zaWVudExvY2Fs
U3RvcmFnZU5hbWVzcGFjZShQYWdlR3JvdXAqLCBTZWN1cml0eU9yaWdpbiopOwotICAgIFdFQkNP
UkVfRVhQT1JUIHZpcnR1YWwgUGFzc1JlZlB0cjxTdG9yYWdlTmFtZXNwYWNlPiBzZXNzaW9uU3Rv
cmFnZU5hbWVzcGFjZShQYWdlKik7Ci0KLXByb3RlY3RlZDoKLSAgICB2aXJ0dWFsIH5TdG9yYWdl
U3RyYXRlZ3koKQotICAgIHsKLSAgICB9Ci19OwotCi19IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0K
LSNlbmRpZiAvLyBTdG9yYWdlU3RyYXRlZ3lfaApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmggYi9Tb3VyY2UvV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCBjNmVjNDM3
OTAzNzczYjI2NWZkMGMwM2NiM2FhOTI0NWJjZTEzZWY2Li4wZmUxMzJhZGY5NTA1MjA4ZjRiYjA5
NDdhMzEzM2UzZTdjM2I3YjllIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaApAQCAtMzMsMTIgKzMzLDExIEBA
CiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVN0cmF0ZWdpZXMuaD4KICNpbmNsdWRlIDxXZWJD
b3JlL1BsdWdpblN0cmF0ZWd5Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9TaGFyZWRXb3JrZXJTdHJh
dGVneS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvU3RvcmFnZVN0cmF0ZWd5Lmg+CiAKIHN0cnVjdCBQ
YXN0ZWJvYXJkSW1hZ2U7CiBzdHJ1Y3QgUGFzdGVib2FyZFdlYkNvbnRlbnQ7CiAKLWNsYXNzIFdl
YlBsYXRmb3JtU3RyYXRlZ2llcyA6IHB1YmxpYyBXZWJDb3JlOjpQbGF0Zm9ybVN0cmF0ZWdpZXMs
IHByaXZhdGUgV2ViQ29yZTo6Q29va2llc1N0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6OkRhdGFi
YXNlU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6TG9hZGVyU3RyYXRlZ3ksIHByaXZhdGUgV2Vi
Q29yZTo6UGFzdGVib2FyZFN0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6OlBsdWdpblN0cmF0ZWd5
LCBwcml2YXRlIFdlYkNvcmU6OlNoYXJlZFdvcmtlclN0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6
OlN0b3JhZ2VTdHJhdGVneSB7CitjbGFzcyBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXMgOiBwdWJsaWMg
V2ViQ29yZTo6UGxhdGZvcm1TdHJhdGVnaWVzLCBwcml2YXRlIFdlYkNvcmU6OkNvb2tpZXNTdHJh
dGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpEYXRhYmFzZVN0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6
OkxvYWRlclN0cmF0ZWd5LCBwcml2YXRlIFdlYkNvcmU6OlBhc3RlYm9hcmRTdHJhdGVneSwgcHJp
dmF0ZSBXZWJDb3JlOjpQbHVnaW5TdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpTaGFyZWRXb3Jr
ZXJTdHJhdGVneSB7CiBwdWJsaWM6CiAgICAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZUlmTmVjZXNz
YXJ5KCk7CiAgICAgCkBAIC01Miw3ICs1MSw2IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBXZWJD
b3JlOjpQYXN0ZWJvYXJkU3RyYXRlZ3kqIGNyZWF0ZVBhc3RlYm9hcmRTdHJhdGVneSgpIG92ZXJy
aWRlOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6UGx1Z2luU3RyYXRlZ3kqIGNyZWF0ZVBsdWdpblN0
cmF0ZWd5KCkgb3ZlcnJpZGU7CiAgICAgdmlydHVhbCBXZWJDb3JlOjpTaGFyZWRXb3JrZXJTdHJh
dGVneSogY3JlYXRlU2hhcmVkV29ya2VyU3RyYXRlZ3koKSBvdmVycmlkZTsKLSAgICB2aXJ0dWFs
IFdlYkNvcmU6OlN0b3JhZ2VTdHJhdGVneSogY3JlYXRlU3RvcmFnZVN0cmF0ZWd5KCkgb3ZlcnJp
ZGU7CiAKICAgICAvLyBXZWJDb3JlOjpDb29raWVzU3RyYXRlZ3kKICAgICB2aXJ0dWFsIFN0cmlu
ZyBjb29raWVzRm9yRE9NKGNvbnN0IFdlYkNvcmU6Ok5ldHdvcmtTdG9yYWdlU2Vzc2lvbiYsIGNv
bnN0IFdlYkNvcmU6OlVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgV2ViQ29yZTo6VVJMJikgb3ZlcnJp
ZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0
Zm9ybVN0cmF0ZWdpZXMubW0gYi9Tb3VyY2UvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQ
bGF0Zm9ybVN0cmF0ZWdpZXMubW0KaW5kZXggZjE2OGU3NzEyNDczNmM2MDVhNTQ5MmEwODdlNWUw
NGFjNTM4YzJhYi4uNTQxNzc5NTFiNjcwZmUzMTUwY2FjNmJkMmYwNDdiZTI3MTViYjI1YyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJh
dGVnaWVzLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRm
b3JtU3RyYXRlZ2llcy5tbQpAQCAtODUsMTEgKzg1LDYgQEAgU2hhcmVkV29ya2VyU3RyYXRlZ3kq
IFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU2hhcmVkV29ya2VyU3RyYXRlZ3koKQogICAg
IHJldHVybiB0aGlzOwogfQogCi1TdG9yYWdlU3RyYXRlZ3kqIFdlYlBsYXRmb3JtU3RyYXRlZ2ll
czo6Y3JlYXRlU3RvcmFnZVN0cmF0ZWd5KCkKLXsKLSAgICByZXR1cm4gdGhpczsKLX0KLQogU3Ry
aW5nIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y29va2llc0ZvckRPTShjb25zdCBOZXR3b3JrU3Rv
cmFnZVNlc3Npb24mIHNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwgY29uc3QgVVJMJiB1
cmwpCiB7CiAgICAgcmV0dXJuIFdlYkNvcmU6OmNvb2tpZXNGb3JET00oc2Vzc2lvbiwgZmlyc3RQ
YXJ0eSwgdXJsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0
L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IDc2NTNiNzNiYjM1YzY3YTc3ZmE3
ZDMxZjI4MDgzMWY0OGFhZDUwZjIuLjFiMzYxYjBhNjZiMjhjMTc1MmE0MTc5YTBmYWU2MGJhNjBk
NTlkNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBs
YXRmb3JtU3RyYXRlZ2llcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcApAQCAtNzcsMTEgKzc3LDYgQEAgU2hhcmVkV29y
a2VyU3RyYXRlZ3kqIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU2hhcmVkV29ya2VyU3Ry
YXRlZ3koKQogICAgIHJldHVybiB0aGlzOwogfQogCi1TdG9yYWdlU3RyYXRlZ3kqIFdlYlBsYXRm
b3JtU3RyYXRlZ2llczo6Y3JlYXRlU3RvcmFnZVN0cmF0ZWd5KCkKLXsKLSAgICByZXR1cm4gdGhp
czsKLX0KLQogU3RyaW5nIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y29va2llc0ZvckRPTShjb25z
dCBOZXR3b3JrU3RvcmFnZVNlc3Npb24mIHNlc3Npb24sIGNvbnN0IFVSTCYgZmlyc3RQYXJ0eSwg
Y29uc3QgVVJMJiB1cmwpCiB7CiAgICAgcmV0dXJuIFdlYkNvcmU6OmNvb2tpZXNGb3JET00oc2Vz
c2lvbiwgZmlyc3RQYXJ0eSwgdXJsKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdC93aW4v
V2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKaW5kZXggMmI5NDRkNGFjMmUx
NGExODg2NzdjNWRmNWU1ZGI1ZTIzNzFlNmQ5OS4uODdhNTk2OThmMTEyZjBkZjc0NGZjNTdkYjUy
NTdmNTM2NzA1MmY0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC93aW4vV2ViQ29yZVN1cHBv
cnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKKysrIGIvU291cmNlL1dlYktpdC93aW4vV2ViQ29y
ZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgKQEAgLTMyLDkgKzMyLDggQEAKICNpbmNs
dWRlIDxXZWJDb3JlL1BsYXRmb3JtU3RyYXRlZ2llcy5oPgogI2luY2x1ZGUgPFdlYkNvcmUvUGx1
Z2luU3RyYXRlZ3kuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1NoYXJlZFdvcmtlclN0cmF0ZWd5Lmg+
Ci0jaW5jbHVkZSA8V2ViQ29yZS9TdG9yYWdlU3RyYXRlZ3kuaD4KIAotY2xhc3MgV2ViUGxhdGZv
cm1TdHJhdGVnaWVzIDogcHVibGljIFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llcywgcHJpdmF0
ZSBXZWJDb3JlOjpDb29raWVzU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6RGF0YWJhc2VTdHJh
dGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpMb2FkZXJTdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpQ
bHVnaW5TdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpTaGFyZWRXb3JrZXJTdHJhdGVneSwgcHJp
dmF0ZSBXZWJDb3JlOjpTdG9yYWdlU3RyYXRlZ3kgeworY2xhc3MgV2ViUGxhdGZvcm1TdHJhdGVn
aWVzIDogcHVibGljIFdlYkNvcmU6OlBsYXRmb3JtU3RyYXRlZ2llcywgcHJpdmF0ZSBXZWJDb3Jl
OjpDb29raWVzU3RyYXRlZ3ksIHByaXZhdGUgV2ViQ29yZTo6RGF0YWJhc2VTdHJhdGVneSwgcHJp
dmF0ZSBXZWJDb3JlOjpMb2FkZXJTdHJhdGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpQbHVnaW5TdHJh
dGVneSwgcHJpdmF0ZSBXZWJDb3JlOjpTaGFyZWRXb3JrZXJTdHJhdGVneSB7CiBwdWJsaWM6CiAg
ICAgc3RhdGljIHZvaWQgaW5pdGlhbGl6ZSgpOwogICAgIApAQCAtNDgsNyArNDcsNiBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgV2ViQ29yZTo6UGFzdGVib2FyZFN0cmF0ZWd5KiBjcmVhdGVQYXN0
ZWJvYXJkU3RyYXRlZ3koKTsKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlBsdWdpblN0cmF0ZWd5KiBj
cmVhdGVQbHVnaW5TdHJhdGVneSgpOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6U2hhcmVkV29ya2Vy
U3RyYXRlZ3kqIGNyZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZWd5KCk7Ci0gICAgdmlydHVhbCBXZWJD
b3JlOjpTdG9yYWdlU3RyYXRlZ3kqIGNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpOwogCiAgICAgLy8g
V2ViQ29yZTo6Q29va2llc1N0cmF0ZWd5CiAgICAgdmlydHVhbCBTdHJpbmcgY29va2llc0ZvckRP
TShjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mLCBjb25zdCBXZWJDb3JlOjpV
UkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlVSTCYpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXMu
Y3BwIGIvU291cmNlL1dlYktpdDIvTmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9y
bVN0cmF0ZWdpZXMuY3BwCmluZGV4IDU1ZDhhOTk0YWIzNTM5MmQ0ZDI4ODhiZDc5Y2RiZTYyODVh
OTJmMTguLmUyZDg4YTJhM2FlNWZkZDRmOTI3N2E4NjM0MDliMTgyYWUwZDljZGIgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1T
dHJhdGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJvY2Vzcy9OZXR3b3Jr
UHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTY5LDExICs2OSw2IEBAIFNoYXJlZFdv
cmtlclN0cmF0ZWd5KiBOZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU2hh
cmVkV29ya2VyU3RyYXRlCiAgICAgcmV0dXJuIDA7CiB9CiAKLVN0b3JhZ2VTdHJhdGVneSogTmV0
d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpCi17
Ci0gICAgcmV0dXJuIDA7Ci19Ci0KIFJlc291cmNlTG9hZFNjaGVkdWxlciogTmV0d29ya1Byb2Nl
c3NQbGF0Zm9ybVN0cmF0ZWdpZXM6OnJlc291cmNlTG9hZFNjaGVkdWxlcigpCiB7CiAgICAgQVNT
RVJUX05PVF9SRUFDSEVEKCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3b3JrUHJv
Y2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oIGIvU291cmNlL1dlYktpdDIv
TmV0d29ya1Byb2Nlc3MvTmV0d29ya1Byb2Nlc3NQbGF0Zm9ybVN0cmF0ZWdpZXMuaAppbmRleCA2
MGJlNjE1OGNlYTFiZGQ4YmIwZWNjZGQ0NmIzZWQwOWI4MTVmZmI5Li5jN2ViMzRmODhhNzMwNzQ4
ODYxYzQ2ZTA0MWY3Mjc4OTBhYjY0MWU5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9OZXR3
b3JrUHJvY2Vzcy9OZXR3b3JrUHJvY2Vzc1BsYXRmb3JtU3RyYXRlZ2llcy5oCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL05ldHdvcmtQcm9jZXNzL05ldHdvcmtQcm9jZXNzUGxhdGZvcm1TdHJhdGVnaWVz
LmgKQEAgLTQzLDcgKzQzLDYgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlBhc3Rl
Ym9hcmRTdHJhdGVneSogY3JlYXRlUGFzdGVib2FyZFN0cmF0ZWd5KCkgb3ZlcnJpZGU7CiAgICAg
dmlydHVhbCBXZWJDb3JlOjpQbHVnaW5TdHJhdGVneSogY3JlYXRlUGx1Z2luU3RyYXRlZ3koKSBv
dmVycmlkZTsKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlNoYXJlZFdvcmtlclN0cmF0ZWd5KiBjcmVh
dGVTaGFyZWRXb3JrZXJTdHJhdGVneSgpIG92ZXJyaWRlOwotICAgIHZpcnR1YWwgV2ViQ29yZTo6
U3RvcmFnZVN0cmF0ZWd5KiBjcmVhdGVTdG9yYWdlU3RyYXRlZ3koKSBvdmVycmlkZTsKIAogICAg
IC8vIFdlYkNvcmU6OkxvYWRlclN0cmF0ZWd5CiAgICAgdmlydHVhbCBXZWJDb3JlOjpSZXNvdXJj
ZUxvYWRTY2hlZHVsZXIqIHJlc291cmNlTG9hZFNjaGVkdWxlcigpIG92ZXJyaWRlOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9y
bVN0cmF0ZWdpZXMuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuY3BwCmluZGV4IGRjOTZmMzgwNDkwYmRlNjJjMGVlZDgz
NGY4YWQ5ZGViNzlhY2JjNjguLjc2ZWZiYmJmZWYxYjc1MWExZWUzOTA5Zjk4MDliNDBkZDU3OTVj
YmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViUGxhdGZvcm1TdHJhdGVnaWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3RyYXRlZ2llcy5jcHAKQEAgLTExNSwxMiArMTE1
LDYgQEAgU2hhcmVkV29ya2VyU3RyYXRlZ3kqIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRl
U2hhcmVkV29ya2VyU3RyYXRlZ3koKQogICAgIHJldHVybiB0aGlzOwogfQogCi1TdG9yYWdlU3Ry
YXRlZ3kqIFdlYlBsYXRmb3JtU3RyYXRlZ2llczo6Y3JlYXRlU3RvcmFnZVN0cmF0ZWd5KCkKLXsK
LSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gbnVsbHB0cjsKLX0KLQogLy8g
Q29va2llc1N0cmF0ZWd5CiAKIFN0cmluZyBXZWJQbGF0Zm9ybVN0cmF0ZWdpZXM6OmNvb2tpZXNG
b3JET00oY29uc3QgTmV0d29ya1N0b3JhZ2VTZXNzaW9uJiBzZXNzaW9uLCBjb25zdCBVUkwmIGZp
cnN0UGFydHksIGNvbnN0IFVSTCYgdXJsKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaCBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUGxhdGZvcm1TdHJhdGVnaWVzLmgK
aW5kZXggZmI3NzhjMDkyMzQyNjUxMTU3OWVmYzRkZTNmZmQ5YWQwM2MzMWRkMS4uNjY5NmVhM2Nl
MzAwMWFmYWJjZmIzZmIyNmQyMmYwOTQ4MGFjMjE4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQbGF0Zm9ybVN0cmF0ZWdpZXMuaAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBsYXRmb3JtU3Ry
YXRlZ2llcy5oCkBAIC0zMyw3ICszMyw2IEBACiAjaW5jbHVkZSA8V2ViQ29yZS9QbGF0Zm9ybVN0
cmF0ZWdpZXMuaD4KICNpbmNsdWRlIDxXZWJDb3JlL1BsdWdpblN0cmF0ZWd5Lmg+CiAjaW5jbHVk
ZSA8V2ViQ29yZS9TaGFyZWRXb3JrZXJTdHJhdGVneS5oPgotI2luY2x1ZGUgPFdlYkNvcmUvU3Rv
cmFnZVN0cmF0ZWd5Lmg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CiAKIG5hbWVz
cGFjZSBXZWJLaXQgewpAQCAtNTMsNyArNTIsNiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgV2Vi
Q29yZTo6UGFzdGVib2FyZFN0cmF0ZWd5KiBjcmVhdGVQYXN0ZWJvYXJkU3RyYXRlZ3koKSBvdmVy
cmlkZTsKICAgICB2aXJ0dWFsIFdlYkNvcmU6OlBsdWdpblN0cmF0ZWd5KiBjcmVhdGVQbHVnaW5T
dHJhdGVneSgpIG92ZXJyaWRlOwogICAgIHZpcnR1YWwgV2ViQ29yZTo6U2hhcmVkV29ya2VyU3Ry
YXRlZ3kqIGNyZWF0ZVNoYXJlZFdvcmtlclN0cmF0ZWd5KCkgb3ZlcnJpZGU7Ci0gICAgdmlydHVh
bCBXZWJDb3JlOjpTdG9yYWdlU3RyYXRlZ3kqIGNyZWF0ZVN0b3JhZ2VTdHJhdGVneSgpIG92ZXJy
aWRlOwogCiAgICAgLy8gV2ViQ29yZTo6Q29va2llc1N0cmF0ZWd5CiAgICAgdmlydHVhbCBTdHJp
bmcgY29va2llc0ZvckRPTShjb25zdCBXZWJDb3JlOjpOZXR3b3JrU3RvcmFnZVNlc3Npb24mLCBj
b25zdCBXZWJDb3JlOjpVUkwmIGZpcnN0UGFydHksIGNvbnN0IFdlYkNvcmU6OlVSTCYpIG92ZXJy
aWRlOwo=
</data>
<flag name="review"
          id="267945"
          type_id="1"
          status="+"
          setter="koivisto"
    />
          </attachment>
      

    </bug>

</bugzilla>