<?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>183508</bug_id>
          
          <creation_ts>2018-03-09 02:43:44 -0800</creation_ts>
          <short_desc>Use alignas instead of compiler-specific attributes</short_desc>
          <delta_ts>2018-04-10 20:26:44 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>aperez</cc>
    
    <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>youennf</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1405120</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-03-09 02:43:44 -0800</bug_when>
    <thetext>Use alignas instead of compiler-specific attributes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1405122</commentid>
    <comment_count>1</comment_count>
      <attachid>335408</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-03-09 02:46:32 -0800</bug_when>
    <thetext>Created attachment 335408
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1405128</commentid>
    <comment_count>2</comment_count>
      <attachid>335411</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-03-09 02:58:01 -0800</bug_when>
    <thetext>Created attachment 335411
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1405130</commentid>
    <comment_count>3</comment_count>
      <attachid>335413</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-03-09 03:14:04 -0800</bug_when>
    <thetext>Created attachment 335413
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1405144</commentid>
    <comment_count>4</comment_count>
      <attachid>335419</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-03-09 04:20:24 -0800</bug_when>
    <thetext>Created attachment 335419
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412749</commentid>
    <comment_count>5</comment_count>
      <attachid>335419</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-04-08 13:46:23 -0700</bug_when>
    <thetext>Comment on attachment 335419
Patch

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

r=me

&gt; Source/JavaScriptCore/jit/JIT.h:172
&gt; +    // performance fluctuations. Try forcing alignment in an attempt to stabalize this.

nit: /stabalize/stabilize/.  I know this came from an old comment, but might as well fix it.

&gt; Source/WTF/wtf/Gigacage.cpp:35
&gt; +alignas(void*) char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];

This disagrees with the bmalloc definition which has it as alignas(GIGACAGE_BASE_PTRS_SIZE).  Unless you have a reason to not do so, let&apos;s make it consistent with the bmalloc one.

&gt; Source/WTF/wtf/Gigacage.h:37
&gt; +alignas(void*) extern WTF_EXPORTDATA char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412756</commentid>
    <comment_count>6</comment_count>
      <attachid>335419</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 14:18:43 -0700</bug_when>
    <thetext>Comment on attachment 335419
Patch

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

&gt;&gt; Source/JavaScriptCore/jit/JIT.h:172
&gt;&gt; +    // performance fluctuations. Try forcing alignment in an attempt to stabalize this.
&gt; 
&gt; nit: /stabalize/stabilize/.  I know this came from an old comment, but might as well fix it.

Nice, fixed.

&gt;&gt; Source/WTF/wtf/Gigacage.cpp:35
&gt;&gt; +alignas(void*) char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];
&gt; 
&gt; This disagrees with the bmalloc definition which has it as alignas(GIGACAGE_BASE_PTRS_SIZE).  Unless you have a reason to not do so, let&apos;s make it consistent with the bmalloc one.

OK, changed.

&gt;&gt; Source/WTF/wtf/Gigacage.h:37
&gt;&gt; +alignas(void*) extern WTF_EXPORTDATA char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];
&gt; 
&gt; Ditto.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412757</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 14:30:08 -0700</bug_when>
    <thetext>Committed r230380: &lt;https://trac.webkit.org/changeset/230380&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412758</commentid>
    <comment_count>8</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-04-08 14:31:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/39267802&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412759</commentid>
    <comment_count>9</comment_count>
      <attachid>335419</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 14:36:54 -0700</bug_when>
    <thetext>Comment on attachment 335419
Patch

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

&gt;&gt;&gt; Source/WTF/wtf/Gigacage.cpp:35
&gt;&gt;&gt; +alignas(void*) char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];
&gt;&gt; 
&gt;&gt; This disagrees with the bmalloc definition which has it as alignas(GIGACAGE_BASE_PTRS_SIZE).  Unless you have a reason to not do so, let&apos;s make it consistent with the bmalloc one.
&gt; 
&gt; OK, changed.

I&apos;ve reverted this part to void* since some of the compilers do not support such a large alignment.
Here, what we want is pointer size alignment.

&gt;&gt;&gt; Source/WTF/wtf/Gigacage.h:37
&gt;&gt;&gt; +alignas(void*) extern WTF_EXPORTDATA char g_gigacageBasePtrs[GIGACAGE_BASE_PTRS_SIZE];
&gt;&gt; 
&gt;&gt; Ditto.
&gt; 
&gt; Fixed.

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412760</commentid>
    <comment_count>10</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 14:38:29 -0700</bug_when>
    <thetext>Committed r230381: &lt;https://trac.webkit.org/changeset/230381&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412810</commentid>
    <comment_count>11</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 21:55:28 -0700</bug_when>
    <thetext>Committed r230388: &lt;https://trac.webkit.org/changeset/230388&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412811</commentid>
    <comment_count>12</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 22:02:33 -0700</bug_when>
    <thetext>Hmmm, we enabled warnings on MSVC, which easily leads to build failures.
I&apos;ll just disable JIT alignas for MSVC.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412812</commentid>
    <comment_count>13</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 22:06:19 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412813</commentid>
    <comment_count>14</comment_count>
      <attachid>337481</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-08 22:06:21 -0700</bug_when>
    <thetext>Created attachment 337481
Patch

Attempt to fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412850</commentid>
    <comment_count>15</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2018-04-09 04:28:06 -0700</bug_when>
    <thetext>Committed r230403: &lt;https://trac.webkit.org/changeset/230403&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412947</commentid>
    <comment_count>16</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-04-09 12:03:28 -0700</bug_when>
    <thetext>Reopening to attach new patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412948</commentid>
    <comment_count>17</comment_count>
      <attachid>337517</attachid>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-04-09 12:03:29 -0700</bug_when>
    <thetext>Created attachment 337517
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1412951</commentid>
    <comment_count>18</comment_count>
    <who name="youenn fablet">youennf</who>
    <bug_when>2018-04-09 12:04:18 -0700</bug_when>
    <thetext>Wrong bug id</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1413540</commentid>
    <comment_count>19</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-04-10 20:26:44 -0700</bug_when>
    <thetext>*** Bug 183617 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>335408</attachid>
            <date>2018-03-09 02:46:32 -0800</date>
            <delta_ts>2018-03-09 02:57:59 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180309194631.patch</filename>
            <type>text/plain</type>
            <size>13575</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI5NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
ZTJhMDYyZjM4MTJjZTg0ZDM3YTgxNDVhYWJkYWE2NmNlMGJmMzczLi5iODkxOWNjNGQxZGI3N2Nh
MjQ0NDY5MDM0ODk5ZDA5YmZmNjUyMjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAxOC0wMy0wOSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmlj
IGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBDKysxMSBhbGlnbmFzIHNwZWNpZmllci4gSXQgaXMgcG9ydGFibGUgY29tcGFyZWQg
dG8gY29tcGlsZXItc3BlY2lmaWMgYWxpZ25lZCBhdHRyaWJ1dGVzLgorCisgICAgICAgICogaGVh
cC9SZWdpc3RlclN0YXRlLmg6CisgICAgICAgICogaml0L0pJVC5oOgorICAgICAgICAoSlNDOjpK
SVQ6OmNvbXBpbGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVHZXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZUdldEJ5VmFsV2l0aENhY2hl
ZElkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlUHV0QnlWYWwpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVEaXJlY3RQdXRCeVZhbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlSGFzSW5kZXhlZFByb3BlcnR5KTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6SklUOjphcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0dXJuVHlwZSk6IERlbGV0ZWQuCisgICAg
ICAgIChKU0M6OkpJVDo6ZXhjZXB0aW9uQ2hlY2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpK
SVQ6OmV4Y2VwdGlvbkNoZWNrV2l0aENhbGxGcmFtZVJvbGxiYWNrKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6SklUOjplbWl0SW50MzJMb2FkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklU
OjplbWl0SW50MzJHZXRCeVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdElu
dDMyUHV0QnlWYWwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXREb3VibGVQdXRC
eVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdENvbnRpZ3VvdXNQdXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdFN0b3JlQ2VsbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Z2V0U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpKSVQ6OmxpbmtTbG93Q2FzZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6bGlua0R1
bW15U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmxpbmtBbGxTbG93Q2Fz
ZXMpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb24pOiBEZWxldGVk
LgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25XaXRoUHJvZmlsZSk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y2FsbE9wZXJhdGlvbldpdGhSZXN1bHQpOiBEZWxldGVkLgor
ICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25Ob0V4Y2VwdGlvbkNoZWNrKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYWxsT3BlcmF0aW9uV2l0aENhbGxGcmFtZVJvbGxiYWNr
T25FeGNlcHRpb24pOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRFbnRlck9wdGlt
aXphdGlvbkNoZWNrKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpzYW1wbGVDb2RlQmxv
Y2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbkJlT3B0aW1pemVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYW5CZU9wdGltaXplZE9ySW5saW5lZCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6c2hvdWxkRW1pdFByb2ZpbGluZyk6IERlbGV0ZWQuCisgICAg
ICAgICogcnVudGltZS9WTS5oOgorCiAyMDE4LTAzLTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgU2FmYXJpIG5vdCBoYW5kbGluZyB1bmRlZmluZWQgZ2xvYmFs
IHZhcmlhYmxlcyB3aXRoIHNhbWUgbmFtZSBhcyBlbGVtZW50IElkIGNvcnJlY3RseS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXgg
ZjY1ZWY3N2EyM2MyMmZjYjNmMzg0NmZjMDY3ZmY2MTFmYmNiZDYxNi4uZDg0YjZiYjE2OGYxNDE2
NjYyNzgwOWRkZTg2NjA1YTZkNWUwYzY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wMy0w
OSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2Ug
YWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGZvciBn
X2dpZ2FjYWdlQmFzZVB0ci4gV2UgYWxzbyBhZGQgcmVpbnRlcnByZXRfY2FzdCB0byBmaXgKKyAg
ICAgICAgY29tcGlsZSBlcnJvcnMgaW4gQVJNdjcgYW5kIE1JUFMgSlNDT25seSBwb3J0cy4KKwor
ICAgICAgICAqIHd0Zi9HaWdhY2FnZS5jcHA6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmg6Cisg
ICAgICAgIChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjI5MzU0IGFuZCByMjI5MzY0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI0OWZjYmIyZGI4NDg3ZGZh
MmQ3NWMxNGFkOGM1YTllNzg1ZTQyMjEuLmY1MjE4NTRjNDRmNmU1NTA4NGFhMDNhYTE3Yzc5NTVh
MTI0NTI4NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxOC0wMy0wOSAgWXVzdWtl
IFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBp
bnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2Fy
bS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uaDoKKyAgICAgICAgKFdlYkNvcmU6OkZF
TGlnaHRpbmc6OnBsYXRmb3JtQXBwbHlOZW9uKToKKyAgICAgICAgVXNlIGFsaWduYXMgaW5zdGVh
ZCBvZiBhbGlnbmVkLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9U
cmFuc2Zvcm1hdGlvbk1hdHJpeC5oOgorICAgICAgICBBbHdheXMgdXNlIGFsaWduZWQgTWF0cml4
NCB0eXBlLgorCiAyMDE4LTAzLTA4ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNv
bT4KIAogICAgICAgICBBZGQgYmFzaWMgc3luY2hyb25pemF0aW9uIGNhcGFiaWxpdHkgdG8gTmlj
b3NpYTo6QnVmZmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvYm1hbGxvYy9DaGFuZ2VMb2cKaW5kZXggMTk2OTZkZWViMTNlNmRmOGYyNmZjNjE2MTZiMzMz
MjJlZGVlOWE1NS4uMmJjZDM2ZDc0ODRmMTIxYWVmYzhhMzk2MTBjNGM3YTE0YjU1MWQ1MSAxMDA2
NDQKLS0tIGEvU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9ibWFsbG9jL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTAzLTA5ICBZdXN1a2UgU3V6dWtpICA8dXRh
dGFuZS50ZWFAZ21haWwuY29tPgorCisgICAgICAgIFVzZSBhbGlnbmFzIGluc3RlYWQgb2YgY29t
cGlsZXItc3BlY2lmaWMgYXR0cmlidXRlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNTA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXNlIGFsaWduYXMgZm9yIGdfZ2lnYWNhZ2VCYXNlUHRyLiBXZSBh
bHNvIGFkZCByZWludGVycHJldF9jYXN0IHRvIGZpeAorICAgICAgICBjb21waWxlIGVycm9ycyBp
biBBUk12NyBhbmQgTUlQUyBKU0NPbmx5IHBvcnRzLgorCisgICAgICAgICogYm1hbGxvYy9HaWdh
Y2FnZS5jcHA6CisgICAgICAgICogYm1hbGxvYy9HaWdhY2FnZS5oOgorICAgICAgICAoR2lnYWNh
Z2U6OmJhc2VQdHJzKToKKwogMjAxOC0wMy0wOCAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUu
Y29tPgogCiAgICAgICAgIGJtYWxsb2MgbXV0ZXggc2hvdWxkIGJlIGFkYXB0aXZlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9SZWdpc3RlclN0YXRlLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9SZWdpc3RlclN0YXRlLmgKaW5kZXggNjAwNWE5MTQzNTcxYjhj
OTZjYmI0OWJmN2QyNmM5Mjg2ZmMzNTU4MC4uZmE0NWY2YjQ0OTIyMGI2ZmMxNTliNmQyNTQ0OGFk
Mjc4NWM3N2U0OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUmVnaXN0
ZXJTdGF0ZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUu
aApAQCAtMTMxLDI1ICsxMzEsMjAgQEAgc3RydWN0IFJlZ2lzdGVyU3RhdGUgewogI2VuZGlmIC8v
ICFPUyhXSU5ET1dTKQogCiAjaWZuZGVmIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUK
LSNpZiBDT01QSUxFUihHQ0NfT1JfQ0xBTkcpCi0jZGVmaW5lIFJFR0lTVEVSX0JVRkZFUl9BTElH
Tk1FTlQgX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKHNpemVvZih2b2lkKikpKSkKLSNlbHNlCi0j
ZGVmaW5lIFJFR0lTVEVSX0JVRkZFUl9BTElHTk1FTlQKLSNlbmRpZgogCi10eXBlZGVmIGptcF9i
dWYgUmVnaXN0ZXJTdGF0ZTsKK3VzaW5nIFJlZ2lzdGVyU3RhdGUgYWxpZ25hcyhzaXplb2Yodm9p
ZCopKSA9IGptcF9idWY7CiAKIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUoKSBp
cyBhIG1hY3JvIHNvIHRoYXQgaXQgaXMgYWx3YXlzICJpbmxpbmVkIiBldmVuIGluIGRlYnVnIGJ1
aWxkcy4KICNpZiBDT01QSUxFUihNU1ZDKQogI3ByYWdtYSB3YXJuaW5nKHB1c2gpCiAjcHJhZ21h
IHdhcm5pbmcoZGlzYWJsZTogNDYxMSkKICNkZWZpbmUgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RF
Ul9TVEFURShyZWdpc3RlcnMpIFwKLSAgICBSZWdpc3RlclN0YXRlIHJlZ2lzdGVycyBSRUdJU1RF
Ul9CVUZGRVJfQUxJR05NRU5UOyBcCisgICAgUmVnaXN0ZXJTdGF0ZSByZWdpc3RlcnM7IFwKICAg
ICBzZXRqbXAocmVnaXN0ZXJzKQogI3ByYWdtYSB3YXJuaW5nKHBvcCkKICNlbHNlCiAjZGVmaW5l
IEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUocmVnaXN0ZXJzKSBcCi0gICAgUmVnaXN0
ZXJTdGF0ZSByZWdpc3RlcnMgUkVHSVNURVJfQlVGRkVSX0FMSUdOTUVOVDsgXAorICAgIFJlZ2lz
dGVyU3RhdGUgcmVnaXN0ZXJzOyBcCiAgICAgc2V0am1wKHJlZ2lzdGVycykKICNlbmRpZgogI2Vu
ZGlmIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VC5oCmluZGV4IDZlYTNhNWI1NTdkMmJjZmQxY2JiMzlkOTdjY2ZiMTcwYTA0NTIxNWIuLmI2MzIx
YjI1MzQ3YjUxOTgzMGZhMzVmNmEzOWU0ODA3ZjhlYmUwNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklULmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVQuaApAQCAtMjcsMTQgKzI3LDYgQEAKIAogI2lmIEVOQUJMRShKSVQpCiAKLS8vIFdlJ3ZlIHJ1
biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNpemUgb2YgdGhlIGNsYXNz
IEpJVCBsZWFkcyB0bwotLy8gcGVyZm9ybWFuY2UgZmx1Y3R1YXRpb25zLiAgVHJ5IGZvcmNpbmcg
YWxpZ25tZW50IGluIGFuIGF0dGVtcHQgdG8gc3RhYmFsaXplIHRoaXMuCi0jaWYgQ09NUElMRVIo
R0NDX09SX0NMQU5HKQotI2RlZmluZSBKSVRfQ0xBU1NfQUxJR05NRU5UIF9fYXR0cmlidXRlX18g
KChhbGlnbmVkICgzMikpKQotI2Vsc2UKLSNkZWZpbmUgSklUX0NMQVNTX0FMSUdOTUVOVAotI2Vu
ZGlmCi0KICNkZWZpbmUgQVNTRVJUX0pJVF9PRkZTRVQoYWN0dWFsLCBleHBlY3RlZCkgQVNTRVJU
X1dJVEhfTUVTU0FHRShhY3R1YWwgPT0gZXhwZWN0ZWQsICJKSVQgT2Zmc2V0IFwiJXNcIiBzaG91
bGQgYmUgJWQsIG5vdCAlZC5cbiIsICNleHBlY3RlZCwgc3RhdGljX2Nhc3Q8aW50PihleHBlY3Rl
ZCksIHN0YXRpY19jYXN0PGludD4oYWN0dWFsKSk7CiAKICNpbmNsdWRlICJDb2RlQmxvY2suaCIK
QEAgLTE3Niw3ICsxNjgsOSBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHZvaWQgY3RpUGF0Y2hD
YWxsQnlSZXR1cm5BZGRyZXNzKFJldHVybkFkZHJlc3NQdHIsIEZ1bmN0aW9uUHRyIG5ld0NhbGxl
ZUZ1bmN0aW9uKTsKIAotICAgIGNsYXNzIEpJVCA6IHByaXZhdGUgSlNJbnRlcmZhY2VKSVQgewor
ICAgIC8vIFdlJ3ZlIHJ1biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNp
emUgb2YgdGhlIGNsYXNzIEpJVCBsZWFkcyB0bworICAgIC8vIHBlcmZvcm1hbmNlIGZsdWN0dWF0
aW9ucy4gVHJ5IGZvcmNpbmcgYWxpZ25tZW50IGluIGFuIGF0dGVtcHQgdG8gc3RhYmFsaXplIHRo
aXMuCisgICAgY2xhc3MgYWxpZ25hcygzMikgSklUIDogcHJpdmF0ZSBKU0ludGVyZmFjZUpJVCB7
CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKSVRTbG93UGF0aENhbGw7CiAgICAgICAgIGZyaWVuZCBj
bGFzcyBKSVRTdHViQ2FsbDsKIApAQCAtODY4LDcgKzg2Miw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICBib29sIG1fc2hvdWxkRW1pdFByb2ZpbGluZzsKICAgICAgICAgYm9vbCBtX3Nob3Vs
ZFVzZUluZGV4TWFza2luZzsKICAgICAgICAgdW5zaWduZWQgbV9sb29wT1NSRW50cnlCeXRlY29k
ZU9mZnNldCB7IDAgfTsKLSAgICB9IEpJVF9DTEFTU19BTElHTk1FTlQ7CisgICAgfTsKIAogfSAv
LyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5oCmluZGV4IDc2ZGIw
NTgyZmFmM2EyNmIxNTY3ZjI5ODQ5NWI2ODFmODhmNWJkMzEuLmZhOTdkY2UxMGZlNmQzMWFjYjg3
OWMwNTdjMjhhZjMzNDIyOGIyYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaApAQCAt
MjMzLDcgKzIzMyw3IEBAIHN0cnVjdCBTY3JhdGNoQnVmZmVyIHsKICAgICAgICAgZG91YmxlIHBh
ZDsgLy8gTWFrZSBzdXJlIG1fYnVmZmVyIGlzIGRvdWJsZSBhbGlnbmVkLgogICAgIH0gdTsKICNp
ZiBDUFUoTUlQUykgJiYgKGRlZmluZWQgV1RGX01JUFNfQVJDSF9SRVYgJiYgV1RGX01JUFNfQVJD
SF9SRVYgPT0gMikKLSAgICB2b2lkKiBtX2J1ZmZlclswXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVk
KDgpKSk7CisgICAgYWxpZ25hcyg4KSB2b2lkKiBtX2J1ZmZlclswXTsKICNlbHNlCiAgICAgdm9p
ZCogbV9idWZmZXJbMF07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0dpZ2Fj
YWdlLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAppbmRleCAyZGQ0NWRlOGQ3NTMw
OGE4NDc1ZGI0OWIzZWMwYmU0YmZjOGE0NTAyLi4wZjZlN2NmODI1NTEzZmRmYTQ4OTliNDVhZTQ5
MmIwZDg3ZWZhMTRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5jcHAKKysr
IGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKICNpZiBk
ZWZpbmVkKFVTRV9TWVNURU1fTUFMTE9DKSAmJiBVU0VfU1lTVEVNX01BTExPQwogCi1jaGFyIGdf
Z2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV07CithbGlnbmFzKEdJR0FD
QUdFX0JBU0VfUFRSU19TSVpFKSBjaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNF
X1BUUlNfU0laRV07CiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL0dpZ2FjYWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCmluZGV4IDFi
NDg0ZDZhZTQwYWJlMmQ4MWUxZGY2NjExYTY2M2E0NGU5ZjExMjYuLmVjM2VjNGI4ZGUzYWJhMDQx
N2E5NmZkNDA2Y2I0ZjZmODJiNWVlZjggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0dpZ2Fj
YWdlLmgKKysrIGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuaApAQCAtMzQsNyArMzQsNyBAQAog
I2RlZmluZSBHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSA4MTkyCiAKIGV4dGVybiAiQyIgewotZXh0
ZXJuIFdURl9FWFBPUlREQVRBIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFXTsKK2V4dGVybiBXVEZfRVhQT1JUREFUQSBhbGlnbmFzKEdJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFKSBjaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0la
RV07CiB9CiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7CkBAIC05NCw3ICs5NCw3IEBAIEFMV0FZU19J
TkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJzLCBLaW5kIGtpbmQpCiAKIEFM
V0FZU19JTkxJTkUgQmFzZVB0cnMmIGJhc2VQdHJzKCkKIHsKLSAgICByZXR1cm4gKnJlaW50ZXJw
cmV0X2Nhc3Q8QmFzZVB0cnMqPihnX2dpZ2FjYWdlQmFzZVB0cnMpOworICAgIHJldHVybiAqcmVp
bnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGdfZ2lnYWNh
Z2VCYXNlUHRycykpOwogfQogCiBBTFdBWVNfSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEtpbmQga2lu
ZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0v
ZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uY3BwCmluZGV4IGZlNDRjNjI3NWE0
MmNmMThjZjVhN2RmNzlhZGIxZTkwMzdjZGU4ZWEuLjczZTMyYjg0ZGRlYjE0OTBiYzRiY2U4ZjY3
YWNlNTMzYjkyZDg1MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmNwcApA
QCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyAgIEFMUEhBWF9RIEFMUEhB
WV9RIFJFTUFQWF9EIFJFTUFQWV9ECiAKIAotc3RhdGljIHNob3J0IHNfRkVMaWdodGluZ0NvbnN0
YW50c0Zvck5lb25bXSBfX2F0dHJpYnV0ZV9fKChfX2FsaWduZWRfXygxNikpKSA9IHsKK3N0YXRp
YyBhbGlnbmFzKDE2KSBzaG9ydCBzX0ZFTGlnaHRpbmdDb25zdGFudHNGb3JOZW9uW10gPSB7CiAg
ICAgLy8gQWxwaGEgY29lZmZpY2llbnRzLgogICAgIC0yLCAxLCAwLCAtMSwgMiwgMSwgMCwgLTEs
CiAgICAgMCwgLTEsIC0yLCAtMSwgMCwgMSwgMiwgMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRp
bmdORU9OLmgKaW5kZXggYWJiMzJlNTU2YTY0ZjgyNDQwMjhmYmJlNWIyZjFjMDg3NjMzYTg5YS4u
NDJhZjkyMjM3NGJkNjhhNDc0Y2U4YTZlMmZkNjZkYTdmYTVmM2VjMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdO
RU9OLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0
ZXJzL0ZFTGlnaHRpbmdORU9OLmgKQEAgLTk1LDcgKzk1LDcgQEAgdm9pZCBuZW9uRHJhd0xpZ2h0
aW5nKEZFTGlnaHRpbmdQYWludGluZ0RhdGFGb3JOZW9uKik7CiAKIGlubGluZSB2b2lkIEZFTGln
aHRpbmc6OnBsYXRmb3JtQXBwbHlOZW9uKGNvbnN0IExpZ2h0aW5nRGF0YSYgZGF0YSwgY29uc3Qg
TGlnaHRTb3VyY2U6OlBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQogewotICAgIEZFTGlnaHRp
bmdGbG9hdEFyZ3VtZW50c0Zvck5lb24gZmxvYXRBcmd1bWVudHMgX19hdHRyaWJ1dGVfXygoX19h
bGlnbmVkX18oMTYpKSk7CisgICAgYWxpZ25hcygxNikgRkVMaWdodGluZ0Zsb2F0QXJndW1lbnRz
Rm9yTmVvbiBmbG9hdEFyZ3VtZW50czsKICAgICBGRUxpZ2h0aW5nUGFpbnRpbmdEYXRhRm9yTmVv
biBuZW9uRGF0YSA9IHsKICAgICAgICAgZGF0YS5waXhlbHMtPmRhdGEoKSwKICAgICAgICAgMSwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
VHJhbnNmb3JtYXRpb25NYXRyaXguaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RyYW5zZm9ybXMvVHJhbnNmb3JtYXRpb25NYXRyaXguaAppbmRleCBlODMyYmE5YWYxM2EyZTIy
M2YxMWUxNmYwNzhmNDA1OTgwNDQyYzljLi4yNjhiYjFlZGZiM2IzOGFkYjFkY2I4ZGE0MzhmZDI3
MjJiMzk1NzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5oCkBAIC03Miwx
NSArNzIsNyBAQCBjbGFzcyBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB7CiAgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAKLSNpZiAoUExBVEZPUk0oSU9TKSAmJiBDUFUoQVJNX1RI
VU1CMikpIHx8IGRlZmluZWQoVFJBTlNGT1JNQVRJT05fTUFUUklYX1VTRV9YODZfNjRfU1NFMikK
LSNpZiBDT01QSUxFUihNU1ZDKQotICAgIF9fZGVjbHNwZWMoYWxpZ24oMTYpKSB0eXBlZGVmIGRv
dWJsZSBNYXRyaXg0WzRdWzRdOwotI2Vsc2UKLSAgICB0eXBlZGVmIGRvdWJsZSBNYXRyaXg0WzRd
WzRdIF9fYXR0cmlidXRlX18oKGFsaWduZWQgKDE2KSkpOwotI2VuZGlmCi0jZWxzZQotICAgIHR5
cGVkZWYgZG91YmxlIE1hdHJpeDRbNF1bNF07Ci0jZW5kaWYKKyAgICB1c2luZyBNYXRyaXg0IGFs
aWduYXMoMTYpID0gZG91YmxlWzRdWzRdOwogCiAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSB7
IG1ha2VJZGVudGl0eSgpOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgVHJhbnNmb3JtYXRpb25NYXRy
aXgoY29uc3QgQWZmaW5lVHJhbnNmb3JtJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9i
bWFsbG9jL0dpZ2FjYWdlLmNwcCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3Bw
CmluZGV4IDAwOTA2OTk2M2E0ZTc5MjU1ODM3ZWU0YjE1YmVmMjM3OGNlNTBiZjYuLmQ1YWUyZTdl
MzdjYWM2MTgxNTBjNWZhNTJhMzg2NTJiMTY1Y2ZlZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9ibWFs
bG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwCisrKyBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2ln
YWNhZ2UuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAvLyBJZiB0aGlzIHdlcmUgbGVzcyB0aGFuIDMy
R0IsIHRob3NlIE9PQiBhY2Nlc3NlcyBjb3VsZCByZWFjaCBvdXRzaWRlIG9mIHRoZSBjYWdlLgog
I2RlZmluZSBHSUdBQ0FHRV9SVU5XQVkgKDMybGx1ICogMTAyNCAqIDEwMjQgKiAxMDI0KQogCi1j
aGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV0gX19hdHRyaWJ1
dGVfXygoYWxpZ25lZChHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkpKTsKK2FsaWduYXMoR0lHQUNB
R0VfQkFTRV9QVFJTX1NJWkUpIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFXTsKIAogdXNpbmcgbmFtZXNwYWNlIGJtYWxsb2M7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuaCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2Mv
R2lnYWNhZ2UuaAppbmRleCBiZWYzYWY1ZDUzYWQ1OGQ1YjlhMmM3ZThlMzhmNzVkNWRkMGU2OGVl
Li45MGU5NmViMWYwMTZiNTY1ZWIwOTQyNWQ0YmViMDk5YTI2MWUwYTg0IDEwMDY0NAotLS0gYS9T
b3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmgKKysrIGIvU291cmNlL2JtYWxsb2MvYm1h
bGxvYy9HaWdhY2FnZS5oCkBAIC02OCw3ICs2OCw3IEBAIHN0YXRpY19hc3NlcnQoYm1hbGxvYzo6
aXNQb3dlck9mVHdvKFNUUklOR19HSUdBQ0FHRV9TSVpFKSwgIiIpOwogI2RlZmluZSBHSUdBQ0FH
RV9CQVNFX1BUUlNfU0laRSA0MDk2CiAjZW5kaWYKIAotZXh0ZXJuICJDIiBCRVhQT1JUIGNoYXIg
Z19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXSBfX2F0dHJpYnV0ZV9f
KChhbGlnbmVkKEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSkpOworZXh0ZXJuICJDIiBCRVhQT1JU
IGFsaWduYXMoR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkUpIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJz
W0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXTsKIAogbmFtZXNwYWNlIEdpZ2FjYWdlIHsKIApAQCAt
MTMzLDcgKzEzMyw3IEBAIEJJTkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJz
LCBLaW5kIGtpbmQpCiAKIEJJTkxJTkUgQmFzZVB0cnMmIGJhc2VQdHJzKCkKIHsKLSAgICByZXR1
cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8QmFzZVB0cnMqPihnX2dpZ2FjYWdlQmFzZVB0cnMpOworICAg
IHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KHJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCo+KGdfZ2lnYWNhZ2VCYXNlUHRycykpOwogfQogCiBCSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEtp
bmQga2luZCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>335411</attachid>
            <date>2018-03-09 02:58:01 -0800</date>
            <delta_ts>2018-03-09 03:14:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180309195800.patch</filename>
            <type>text/plain</type>
            <size>13575</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI5NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
ZTJhMDYyZjM4MTJjZTg0ZDM3YTgxNDVhYWJkYWE2NmNlMGJmMzczLi5iODkxOWNjNGQxZGI3N2Nh
MjQ0NDY5MDM0ODk5ZDA5YmZmNjUyMjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAxOC0wMy0wOSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmlj
IGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBDKysxMSBhbGlnbmFzIHNwZWNpZmllci4gSXQgaXMgcG9ydGFibGUgY29tcGFyZWQg
dG8gY29tcGlsZXItc3BlY2lmaWMgYWxpZ25lZCBhdHRyaWJ1dGVzLgorCisgICAgICAgICogaGVh
cC9SZWdpc3RlclN0YXRlLmg6CisgICAgICAgICogaml0L0pJVC5oOgorICAgICAgICAoSlNDOjpK
SVQ6OmNvbXBpbGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVHZXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZUdldEJ5VmFsV2l0aENhY2hl
ZElkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlUHV0QnlWYWwpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVEaXJlY3RQdXRCeVZhbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlSGFzSW5kZXhlZFByb3BlcnR5KTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6SklUOjphcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0dXJuVHlwZSk6IERlbGV0ZWQuCisgICAg
ICAgIChKU0M6OkpJVDo6ZXhjZXB0aW9uQ2hlY2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpK
SVQ6OmV4Y2VwdGlvbkNoZWNrV2l0aENhbGxGcmFtZVJvbGxiYWNrKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6SklUOjplbWl0SW50MzJMb2FkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklU
OjplbWl0SW50MzJHZXRCeVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdElu
dDMyUHV0QnlWYWwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXREb3VibGVQdXRC
eVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdENvbnRpZ3VvdXNQdXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdFN0b3JlQ2VsbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Z2V0U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpKSVQ6OmxpbmtTbG93Q2FzZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6bGlua0R1
bW15U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmxpbmtBbGxTbG93Q2Fz
ZXMpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb24pOiBEZWxldGVk
LgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25XaXRoUHJvZmlsZSk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y2FsbE9wZXJhdGlvbldpdGhSZXN1bHQpOiBEZWxldGVkLgor
ICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25Ob0V4Y2VwdGlvbkNoZWNrKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYWxsT3BlcmF0aW9uV2l0aENhbGxGcmFtZVJvbGxiYWNr
T25FeGNlcHRpb24pOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRFbnRlck9wdGlt
aXphdGlvbkNoZWNrKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpzYW1wbGVDb2RlQmxv
Y2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbkJlT3B0aW1pemVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYW5CZU9wdGltaXplZE9ySW5saW5lZCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6c2hvdWxkRW1pdFByb2ZpbGluZyk6IERlbGV0ZWQuCisgICAg
ICAgICogcnVudGltZS9WTS5oOgorCiAyMDE4LTAzLTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgU2FmYXJpIG5vdCBoYW5kbGluZyB1bmRlZmluZWQgZ2xvYmFs
IHZhcmlhYmxlcyB3aXRoIHNhbWUgbmFtZSBhcyBlbGVtZW50IElkIGNvcnJlY3RseS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXgg
ZjY1ZWY3N2EyM2MyMmZjYjNmMzg0NmZjMDY3ZmY2MTFmYmNiZDYxNi4uZDg0YjZiYjE2OGYxNDE2
NjYyNzgwOWRkZTg2NjA1YTZkNWUwYzY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wMy0w
OSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2Ug
YWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGZvciBn
X2dpZ2FjYWdlQmFzZVB0ci4gV2UgYWxzbyBhZGQgcmVpbnRlcnByZXRfY2FzdCB0byBmaXgKKyAg
ICAgICAgY29tcGlsZSBlcnJvcnMgaW4gQVJNdjcgYW5kIE1JUFMgSlNDT25seSBwb3J0cy4KKwor
ICAgICAgICAqIHd0Zi9HaWdhY2FnZS5jcHA6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmg6Cisg
ICAgICAgIChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjI5MzU0IGFuZCByMjI5MzY0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI0OWZjYmIyZGI4NDg3ZGZh
MmQ3NWMxNGFkOGM1YTllNzg1ZTQyMjEuLmY1MjE4NTRjNDRmNmU1NTA4NGFhMDNhYTE3Yzc5NTVh
MTI0NTI4NjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxOC0wMy0wOSAgWXVzdWtl
IFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBp
bnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2Fy
bS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uaDoKKyAgICAgICAgKFdlYkNvcmU6OkZF
TGlnaHRpbmc6OnBsYXRmb3JtQXBwbHlOZW9uKToKKyAgICAgICAgVXNlIGFsaWduYXMgaW5zdGVh
ZCBvZiBhbGlnbmVkLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9U
cmFuc2Zvcm1hdGlvbk1hdHJpeC5oOgorICAgICAgICBBbHdheXMgdXNlIGFsaWduZWQgTWF0cml4
NCB0eXBlLgorCiAyMDE4LTAzLTA4ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNv
bT4KIAogICAgICAgICBBZGQgYmFzaWMgc3luY2hyb25pemF0aW9uIGNhcGFiaWxpdHkgdG8gTmlj
b3NpYTo6QnVmZmVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cgYi9Tb3Vy
Y2UvYm1hbGxvYy9DaGFuZ2VMb2cKaW5kZXggMTk2OTZkZWViMTNlNmRmOGYyNmZjNjE2MTZiMzMz
MjJlZGVlOWE1NS4uMmJjZDM2ZDc0ODRmMTIxYWVmYzhhMzk2MTBjNGM3YTE0YjU1MWQ1MSAxMDA2
NDQKLS0tIGEvU291cmNlL2JtYWxsb2MvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9ibWFsbG9jL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDE4LTAzLTA5ICBZdXN1a2UgU3V6dWtpICA8dXRh
dGFuZS50ZWFAZ21haWwuY29tPgorCisgICAgICAgIFVzZSBhbGlnbmFzIGluc3RlYWQgb2YgY29t
cGlsZXItc3BlY2lmaWMgYXR0cmlidXRlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNTA4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgVXNlIGFsaWduYXMgZm9yIGdfZ2lnYWNhZ2VCYXNlUHRyLiBXZSBh
bHNvIGFkZCByZWludGVycHJldF9jYXN0IHRvIGZpeAorICAgICAgICBjb21waWxlIGVycm9ycyBp
biBBUk12NyBhbmQgTUlQUyBKU0NPbmx5IHBvcnRzLgorCisgICAgICAgICogYm1hbGxvYy9HaWdh
Y2FnZS5jcHA6CisgICAgICAgICogYm1hbGxvYy9HaWdhY2FnZS5oOgorICAgICAgICAoR2lnYWNh
Z2U6OmJhc2VQdHJzKToKKwogMjAxOC0wMy0wOCAgRmlsaXAgUGl6bG8gIDxmcGl6bG9AYXBwbGUu
Y29tPgogCiAgICAgICAgIGJtYWxsb2MgbXV0ZXggc2hvdWxkIGJlIGFkYXB0aXZlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9SZWdpc3RlclN0YXRlLmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvaGVhcC9SZWdpc3RlclN0YXRlLmgKaW5kZXggNjAwNWE5MTQzNTcxYjhj
OTZjYmI0OWJmN2QyNmM5Mjg2ZmMzNTU4MC4uZmE0NWY2YjQ0OTIyMGI2ZmMxNTliNmQyNTQ0OGFk
Mjc4NWM3N2U0OCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUmVnaXN0
ZXJTdGF0ZS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUu
aApAQCAtMTMxLDI1ICsxMzEsMjAgQEAgc3RydWN0IFJlZ2lzdGVyU3RhdGUgewogI2VuZGlmIC8v
ICFPUyhXSU5ET1dTKQogCiAjaWZuZGVmIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUK
LSNpZiBDT01QSUxFUihHQ0NfT1JfQ0xBTkcpCi0jZGVmaW5lIFJFR0lTVEVSX0JVRkZFUl9BTElH
Tk1FTlQgX19hdHRyaWJ1dGVfXyAoKGFsaWduZWQgKHNpemVvZih2b2lkKikpKSkKLSNlbHNlCi0j
ZGVmaW5lIFJFR0lTVEVSX0JVRkZFUl9BTElHTk1FTlQKLSNlbmRpZgogCi10eXBlZGVmIGptcF9i
dWYgUmVnaXN0ZXJTdGF0ZTsKK3VzaW5nIFJlZ2lzdGVyU3RhdGUgYWxpZ25hcyhzaXplb2Yodm9p
ZCopKSA9IGptcF9idWY7CiAKIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUoKSBp
cyBhIG1hY3JvIHNvIHRoYXQgaXQgaXMgYWx3YXlzICJpbmxpbmVkIiBldmVuIGluIGRlYnVnIGJ1
aWxkcy4KICNpZiBDT01QSUxFUihNU1ZDKQogI3ByYWdtYSB3YXJuaW5nKHB1c2gpCiAjcHJhZ21h
IHdhcm5pbmcoZGlzYWJsZTogNDYxMSkKICNkZWZpbmUgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RF
Ul9TVEFURShyZWdpc3RlcnMpIFwKLSAgICBSZWdpc3RlclN0YXRlIHJlZ2lzdGVycyBSRUdJU1RF
Ul9CVUZGRVJfQUxJR05NRU5UOyBcCisgICAgUmVnaXN0ZXJTdGF0ZSByZWdpc3RlcnM7IFwKICAg
ICBzZXRqbXAocmVnaXN0ZXJzKQogI3ByYWdtYSB3YXJuaW5nKHBvcCkKICNlbHNlCiAjZGVmaW5l
IEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUocmVnaXN0ZXJzKSBcCi0gICAgUmVnaXN0
ZXJTdGF0ZSByZWdpc3RlcnMgUkVHSVNURVJfQlVGRkVSX0FMSUdOTUVOVDsgXAorICAgIFJlZ2lz
dGVyU3RhdGUgcmVnaXN0ZXJzOyBcCiAgICAgc2V0am1wKHJlZ2lzdGVycykKICNlbmRpZgogI2Vu
ZGlmIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJ
VC5oCmluZGV4IDZlYTNhNWI1NTdkMmJjZmQxY2JiMzlkOTdjY2ZiMTcwYTA0NTIxNWIuLmI2MzIx
YjI1MzQ3YjUxOTgzMGZhMzVmNmEzOWU0ODA3ZjhlYmUwNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklULmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9K
SVQuaApAQCAtMjcsMTQgKzI3LDYgQEAKIAogI2lmIEVOQUJMRShKSVQpCiAKLS8vIFdlJ3ZlIHJ1
biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNpemUgb2YgdGhlIGNsYXNz
IEpJVCBsZWFkcyB0bwotLy8gcGVyZm9ybWFuY2UgZmx1Y3R1YXRpb25zLiAgVHJ5IGZvcmNpbmcg
YWxpZ25tZW50IGluIGFuIGF0dGVtcHQgdG8gc3RhYmFsaXplIHRoaXMuCi0jaWYgQ09NUElMRVIo
R0NDX09SX0NMQU5HKQotI2RlZmluZSBKSVRfQ0xBU1NfQUxJR05NRU5UIF9fYXR0cmlidXRlX18g
KChhbGlnbmVkICgzMikpKQotI2Vsc2UKLSNkZWZpbmUgSklUX0NMQVNTX0FMSUdOTUVOVAotI2Vu
ZGlmCi0KICNkZWZpbmUgQVNTRVJUX0pJVF9PRkZTRVQoYWN0dWFsLCBleHBlY3RlZCkgQVNTRVJU
X1dJVEhfTUVTU0FHRShhY3R1YWwgPT0gZXhwZWN0ZWQsICJKSVQgT2Zmc2V0IFwiJXNcIiBzaG91
bGQgYmUgJWQsIG5vdCAlZC5cbiIsICNleHBlY3RlZCwgc3RhdGljX2Nhc3Q8aW50PihleHBlY3Rl
ZCksIHN0YXRpY19jYXN0PGludD4oYWN0dWFsKSk7CiAKICNpbmNsdWRlICJDb2RlQmxvY2suaCIK
QEAgLTE3Niw3ICsxNjgsOSBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAgIHZvaWQgY3RpUGF0Y2hD
YWxsQnlSZXR1cm5BZGRyZXNzKFJldHVybkFkZHJlc3NQdHIsIEZ1bmN0aW9uUHRyIG5ld0NhbGxl
ZUZ1bmN0aW9uKTsKIAotICAgIGNsYXNzIEpJVCA6IHByaXZhdGUgSlNJbnRlcmZhY2VKSVQgewor
ICAgIC8vIFdlJ3ZlIHJ1biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNp
emUgb2YgdGhlIGNsYXNzIEpJVCBsZWFkcyB0bworICAgIC8vIHBlcmZvcm1hbmNlIGZsdWN0dWF0
aW9ucy4gVHJ5IGZvcmNpbmcgYWxpZ25tZW50IGluIGFuIGF0dGVtcHQgdG8gc3RhYmFsaXplIHRo
aXMuCisgICAgY2xhc3MgYWxpZ25hcygzMikgSklUIDogcHJpdmF0ZSBKU0ludGVyZmFjZUpJVCB7
CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKSVRTbG93UGF0aENhbGw7CiAgICAgICAgIGZyaWVuZCBj
bGFzcyBKSVRTdHViQ2FsbDsKIApAQCAtODY4LDcgKzg2Miw3IEBAIG5hbWVzcGFjZSBKU0Mgewog
ICAgICAgICBib29sIG1fc2hvdWxkRW1pdFByb2ZpbGluZzsKICAgICAgICAgYm9vbCBtX3Nob3Vs
ZFVzZUluZGV4TWFza2luZzsKICAgICAgICAgdW5zaWduZWQgbV9sb29wT1NSRW50cnlCeXRlY29k
ZU9mZnNldCB7IDAgfTsKLSAgICB9IEpJVF9DTEFTU19BTElHTk1FTlQ7CisgICAgfTsKIAogfSAv
LyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50
aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5oCmluZGV4IDc2ZGIw
NTgyZmFmM2EyNmIxNTY3ZjI5ODQ5NWI2ODFmODhmNWJkMzEuLmZhOTdkY2UxMGZlNmQzMWFjYjg3
OWMwNTdjMjhhZjMzNDIyOGIyYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9y
dW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvVk0uaApAQCAt
MjMzLDcgKzIzMyw3IEBAIHN0cnVjdCBTY3JhdGNoQnVmZmVyIHsKICAgICAgICAgZG91YmxlIHBh
ZDsgLy8gTWFrZSBzdXJlIG1fYnVmZmVyIGlzIGRvdWJsZSBhbGlnbmVkLgogICAgIH0gdTsKICNp
ZiBDUFUoTUlQUykgJiYgKGRlZmluZWQgV1RGX01JUFNfQVJDSF9SRVYgJiYgV1RGX01JUFNfQVJD
SF9SRVYgPT0gMikKLSAgICB2b2lkKiBtX2J1ZmZlclswXSBfX2F0dHJpYnV0ZV9fKChhbGlnbmVk
KDgpKSk7CisgICAgYWxpZ25hcyg4KSB2b2lkKiBtX2J1ZmZlclswXTsKICNlbHNlCiAgICAgdm9p
ZCogbV9idWZmZXJbMF07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL0dpZ2Fj
YWdlLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAppbmRleCAyZGQ0NWRlOGQ3NTMw
OGE4NDc1ZGI0OWIzZWMwYmU0YmZjOGE0NTAyLi4wZjZlN2NmODI1NTEzZmRmYTQ4OTliNDVhZTQ5
MmIwZDg3ZWZhMTRhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5jcHAKKysr
IGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuY3BwCkBAIC0zMiw3ICszMiw3IEBACiAKICNpZiBk
ZWZpbmVkKFVTRV9TWVNURU1fTUFMTE9DKSAmJiBVU0VfU1lTVEVNX01BTExPQwogCi1jaGFyIGdf
Z2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV07CithbGlnbmFzKEdJR0FD
QUdFX0JBU0VfUFRSU19TSVpFKSBjaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNF
X1BUUlNfU0laRV07CiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL0dpZ2FjYWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCmluZGV4IDFi
NDg0ZDZhZTQwYWJlMmQ4MWUxZGY2NjExYTY2M2E0NGU5ZjExMjYuLjc3Yzk1YzRlNzVmNTA5ZjZm
M2I3NTJmOTFjZmZkOWQ2M2ZlMGJlYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0dpZ2Fj
YWdlLmgKKysrIGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuaApAQCAtMzQsNyArMzQsNyBAQAog
I2RlZmluZSBHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSA4MTkyCiAKIGV4dGVybiAiQyIgewotZXh0
ZXJuIFdURl9FWFBPUlREQVRBIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFXTsKK2FsaWduYXMoR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkUpIGV4dGVybiBXVEZf
RVhQT1JUREFUQSBjaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0la
RV07CiB9CiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7CkBAIC05NCw3ICs5NCw3IEBAIEFMV0FZU19J
TkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJzLCBLaW5kIGtpbmQpCiAKIEFM
V0FZU19JTkxJTkUgQmFzZVB0cnMmIGJhc2VQdHJzKCkKIHsKLSAgICByZXR1cm4gKnJlaW50ZXJw
cmV0X2Nhc3Q8QmFzZVB0cnMqPihnX2dpZ2FjYWdlQmFzZVB0cnMpOworICAgIHJldHVybiAqcmVp
bnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGdfZ2lnYWNh
Z2VCYXNlUHRycykpOwogfQogCiBBTFdBWVNfSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEtpbmQga2lu
ZCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0v
ZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uY3BwCmluZGV4IGZlNDRjNjI3NWE0
MmNmMThjZjVhN2RmNzlhZGIxZTkwMzdjZGU4ZWEuLjczZTMyYjg0ZGRlYjE0OTBiYzRiY2U4ZjY3
YWNlNTMzYjkyZDg1MmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmNwcApA
QCAtMzUsNyArMzUsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAvLyAgIEFMUEhBWF9RIEFMUEhB
WV9RIFJFTUFQWF9EIFJFTUFQWV9ECiAKIAotc3RhdGljIHNob3J0IHNfRkVMaWdodGluZ0NvbnN0
YW50c0Zvck5lb25bXSBfX2F0dHJpYnV0ZV9fKChfX2FsaWduZWRfXygxNikpKSA9IHsKK3N0YXRp
YyBhbGlnbmFzKDE2KSBzaG9ydCBzX0ZFTGlnaHRpbmdDb25zdGFudHNGb3JOZW9uW10gPSB7CiAg
ICAgLy8gQWxwaGEgY29lZmZpY2llbnRzLgogICAgIC0yLCAxLCAwLCAtMSwgMiwgMSwgMCwgLTEs
CiAgICAgMCwgLTEsIC0yLCAtMSwgMCwgMSwgMiwgMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRp
bmdORU9OLmgKaW5kZXggYWJiMzJlNTU2YTY0ZjgyNDQwMjhmYmJlNWIyZjFjMDg3NjMzYTg5YS4u
NDJhZjkyMjM3NGJkNjhhNDc0Y2U4YTZlMmZkNjZkYTdmYTVmM2VjMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdO
RU9OLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0
ZXJzL0ZFTGlnaHRpbmdORU9OLmgKQEAgLTk1LDcgKzk1LDcgQEAgdm9pZCBuZW9uRHJhd0xpZ2h0
aW5nKEZFTGlnaHRpbmdQYWludGluZ0RhdGFGb3JOZW9uKik7CiAKIGlubGluZSB2b2lkIEZFTGln
aHRpbmc6OnBsYXRmb3JtQXBwbHlOZW9uKGNvbnN0IExpZ2h0aW5nRGF0YSYgZGF0YSwgY29uc3Qg
TGlnaHRTb3VyY2U6OlBhaW50aW5nRGF0YSYgcGFpbnRpbmdEYXRhKQogewotICAgIEZFTGlnaHRp
bmdGbG9hdEFyZ3VtZW50c0Zvck5lb24gZmxvYXRBcmd1bWVudHMgX19hdHRyaWJ1dGVfXygoX19h
bGlnbmVkX18oMTYpKSk7CisgICAgYWxpZ25hcygxNikgRkVMaWdodGluZ0Zsb2F0QXJndW1lbnRz
Rm9yTmVvbiBmbG9hdEFyZ3VtZW50czsKICAgICBGRUxpZ2h0aW5nUGFpbnRpbmdEYXRhRm9yTmVv
biBuZW9uRGF0YSA9IHsKICAgICAgICAgZGF0YS5waXhlbHMtPmRhdGEoKSwKICAgICAgICAgMSwK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL3RyYW5zZm9ybXMv
VHJhbnNmb3JtYXRpb25NYXRyaXguaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L3RyYW5zZm9ybXMvVHJhbnNmb3JtYXRpb25NYXRyaXguaAppbmRleCBlODMyYmE5YWYxM2EyZTIy
M2YxMWUxNmYwNzhmNDA1OTgwNDQyYzljLi4yNjhiYjFlZGZiM2IzOGFkYjFkY2I4ZGE0MzhmZDI3
MjJiMzk1NzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy90
cmFuc2Zvcm1zL1RyYW5zZm9ybWF0aW9uTWF0cml4LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvdHJhbnNmb3Jtcy9UcmFuc2Zvcm1hdGlvbk1hdHJpeC5oCkBAIC03Miwx
NSArNzIsNyBAQCBjbGFzcyBUcmFuc2Zvcm1hdGlvbk1hdHJpeCB7CiAgICAgV1RGX01BS0VfRkFT
VF9BTExPQ0FURUQ7CiBwdWJsaWM6CiAKLSNpZiAoUExBVEZPUk0oSU9TKSAmJiBDUFUoQVJNX1RI
VU1CMikpIHx8IGRlZmluZWQoVFJBTlNGT1JNQVRJT05fTUFUUklYX1VTRV9YODZfNjRfU1NFMikK
LSNpZiBDT01QSUxFUihNU1ZDKQotICAgIF9fZGVjbHNwZWMoYWxpZ24oMTYpKSB0eXBlZGVmIGRv
dWJsZSBNYXRyaXg0WzRdWzRdOwotI2Vsc2UKLSAgICB0eXBlZGVmIGRvdWJsZSBNYXRyaXg0WzRd
WzRdIF9fYXR0cmlidXRlX18oKGFsaWduZWQgKDE2KSkpOwotI2VuZGlmCi0jZWxzZQotICAgIHR5
cGVkZWYgZG91YmxlIE1hdHJpeDRbNF1bNF07Ci0jZW5kaWYKKyAgICB1c2luZyBNYXRyaXg0IGFs
aWduYXMoMTYpID0gZG91YmxlWzRdWzRdOwogCiAgICAgVHJhbnNmb3JtYXRpb25NYXRyaXgoKSB7
IG1ha2VJZGVudGl0eSgpOyB9CiAgICAgV0VCQ09SRV9FWFBPUlQgVHJhbnNmb3JtYXRpb25NYXRy
aXgoY29uc3QgQWZmaW5lVHJhbnNmb3JtJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxvYy9i
bWFsbG9jL0dpZ2FjYWdlLmNwcCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3Bw
CmluZGV4IDAwOTA2OTk2M2E0ZTc5MjU1ODM3ZWU0YjE1YmVmMjM3OGNlNTBiZjYuLmQ1YWUyZTdl
MzdjYWM2MTgxNTBjNWZhNTJhMzg2NTJiMTY1Y2ZlZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9ibWFs
bG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwCisrKyBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2ln
YWNhZ2UuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAvLyBJZiB0aGlzIHdlcmUgbGVzcyB0aGFuIDMy
R0IsIHRob3NlIE9PQiBhY2Nlc3NlcyBjb3VsZCByZWFjaCBvdXRzaWRlIG9mIHRoZSBjYWdlLgog
I2RlZmluZSBHSUdBQ0FHRV9SVU5XQVkgKDMybGx1ICogMTAyNCAqIDEwMjQgKiAxMDI0KQogCi1j
aGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV0gX19hdHRyaWJ1
dGVfXygoYWxpZ25lZChHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkpKTsKK2FsaWduYXMoR0lHQUNB
R0VfQkFTRV9QVFJTX1NJWkUpIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0Vf
UFRSU19TSVpFXTsKIAogdXNpbmcgbmFtZXNwYWNlIGJtYWxsb2M7CiAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuaCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2Mv
R2lnYWNhZ2UuaAppbmRleCBiZWYzYWY1ZDUzYWQ1OGQ1YjlhMmM3ZThlMzhmNzVkNWRkMGU2OGVl
Li4zOGFiZjZjZDliNWYxM2I5NmNjZjIwZGE1N2QyMTE0YjkzMjEzZmNkIDEwMDY0NAotLS0gYS9T
b3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmgKKysrIGIvU291cmNlL2JtYWxsb2MvYm1h
bGxvYy9HaWdhY2FnZS5oCkBAIC02OCw3ICs2OCw3IEBAIHN0YXRpY19hc3NlcnQoYm1hbGxvYzo6
aXNQb3dlck9mVHdvKFNUUklOR19HSUdBQ0FHRV9TSVpFKSwgIiIpOwogI2RlZmluZSBHSUdBQ0FH
RV9CQVNFX1BUUlNfU0laRSA0MDk2CiAjZW5kaWYKIAotZXh0ZXJuICJDIiBCRVhQT1JUIGNoYXIg
Z19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXSBfX2F0dHJpYnV0ZV9f
KChhbGlnbmVkKEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSkpOworZXh0ZXJuICJDIiBhbGlnbmFz
KEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSBCRVhQT1JUIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJz
W0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXTsKIAogbmFtZXNwYWNlIEdpZ2FjYWdlIHsKIApAQCAt
MTMzLDcgKzEzMyw3IEBAIEJJTkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQdHJz
LCBLaW5kIGtpbmQpCiAKIEJJTkxJTkUgQmFzZVB0cnMmIGJhc2VQdHJzKCkKIHsKLSAgICByZXR1
cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8QmFzZVB0cnMqPihnX2dpZ2FjYWdlQmFzZVB0cnMpOworICAg
IHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KHJlaW50ZXJwcmV0X2Nhc3Q8dm9p
ZCo+KGdfZ2lnYWNhZ2VCYXNlUHRycykpOwogfQogCiBCSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEtp
bmQga2luZCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>335413</attachid>
            <date>2018-03-09 03:14:04 -0800</date>
            <delta_ts>2018-03-09 04:20:21 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180309201403.patch</filename>
            <type>text/plain</type>
            <size>12552</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI5NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
ZTJhMDYyZjM4MTJjZTg0ZDM3YTgxNDVhYWJkYWE2NmNlMGJmMzczLi5iODkxOWNjNGQxZGI3N2Nh
MjQ0NDY5MDM0ODk5ZDA5YmZmNjUyMjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAxOC0wMy0wOSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmlj
IGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBDKysxMSBhbGlnbmFzIHNwZWNpZmllci4gSXQgaXMgcG9ydGFibGUgY29tcGFyZWQg
dG8gY29tcGlsZXItc3BlY2lmaWMgYWxpZ25lZCBhdHRyaWJ1dGVzLgorCisgICAgICAgICogaGVh
cC9SZWdpc3RlclN0YXRlLmg6CisgICAgICAgICogaml0L0pJVC5oOgorICAgICAgICAoSlNDOjpK
SVQ6OmNvbXBpbGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVHZXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZUdldEJ5VmFsV2l0aENhY2hl
ZElkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlUHV0QnlWYWwpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVEaXJlY3RQdXRCeVZhbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlSGFzSW5kZXhlZFByb3BlcnR5KTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6SklUOjphcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0dXJuVHlwZSk6IERlbGV0ZWQuCisgICAg
ICAgIChKU0M6OkpJVDo6ZXhjZXB0aW9uQ2hlY2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpK
SVQ6OmV4Y2VwdGlvbkNoZWNrV2l0aENhbGxGcmFtZVJvbGxiYWNrKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6SklUOjplbWl0SW50MzJMb2FkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklU
OjplbWl0SW50MzJHZXRCeVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdElu
dDMyUHV0QnlWYWwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXREb3VibGVQdXRC
eVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdENvbnRpZ3VvdXNQdXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdFN0b3JlQ2VsbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Z2V0U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpKSVQ6OmxpbmtTbG93Q2FzZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6bGlua0R1
bW15U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmxpbmtBbGxTbG93Q2Fz
ZXMpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb24pOiBEZWxldGVk
LgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25XaXRoUHJvZmlsZSk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y2FsbE9wZXJhdGlvbldpdGhSZXN1bHQpOiBEZWxldGVkLgor
ICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25Ob0V4Y2VwdGlvbkNoZWNrKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYWxsT3BlcmF0aW9uV2l0aENhbGxGcmFtZVJvbGxiYWNr
T25FeGNlcHRpb24pOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRFbnRlck9wdGlt
aXphdGlvbkNoZWNrKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpzYW1wbGVDb2RlQmxv
Y2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbkJlT3B0aW1pemVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYW5CZU9wdGltaXplZE9ySW5saW5lZCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6c2hvdWxkRW1pdFByb2ZpbGluZyk6IERlbGV0ZWQuCisgICAg
ICAgICogcnVudGltZS9WTS5oOgorCiAyMDE4LTAzLTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgU2FmYXJpIG5vdCBoYW5kbGluZyB1bmRlZmluZWQgZ2xvYmFs
IHZhcmlhYmxlcyB3aXRoIHNhbWUgbmFtZSBhcyBlbGVtZW50IElkIGNvcnJlY3RseS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXgg
ZjY1ZWY3N2EyM2MyMmZjYjNmMzg0NmZjMDY3ZmY2MTFmYmNiZDYxNi4uZDg0YjZiYjE2OGYxNDE2
NjYyNzgwOWRkZTg2NjA1YTZkNWUwYzY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wMy0w
OSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2Ug
YWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGZvciBn
X2dpZ2FjYWdlQmFzZVB0ci4gV2UgYWxzbyBhZGQgcmVpbnRlcnByZXRfY2FzdCB0byBmaXgKKyAg
ICAgICAgY29tcGlsZSBlcnJvcnMgaW4gQVJNdjcgYW5kIE1JUFMgSlNDT25seSBwb3J0cy4KKwor
ICAgICAgICAqIHd0Zi9HaWdhY2FnZS5jcHA6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmg6Cisg
ICAgICAgIChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjI5MzU0IGFuZCByMjI5MzY0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI0OWZjYmIyZGI4NDg3ZGZh
MmQ3NWMxNGFkOGM1YTllNzg1ZTQyMjEuLjQ3YmVmNDAzZTI3YzVlNTBkYjM0MjBjNDcxNThmYWIw
NDFhYTEwYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0wMy0wOSAgWXVzdWtl
IFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBp
bnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGluc3RlYWQgb2YgYWxp
Z25lZC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0
ZXJzL0ZFTGlnaHRpbmdORU9OLmg6CisgICAgICAgIChXZWJDb3JlOjpGRUxpZ2h0aW5nOjpwbGF0
Zm9ybUFwcGx5TmVvbik6CisKIDIwMTgtMDMtMDggIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0Bp
Z2FsaWEuY29tPgogCiAgICAgICAgIEFkZCBiYXNpYyBzeW5jaHJvbml6YXRpb24gY2FwYWJpbGl0
eSB0byBOaWNvc2lhOjpCdWZmZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxv
ZyBiL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZwppbmRleCAxOTY5NmRlZWIxM2U2ZGY4ZjI2ZmM2
MTYxNmIzMzMyMmVkZWU5YTU1Li4yYmNkMzZkNzQ4NGYxMjFhZWZjOGEzOTYxMGM0YzdhMTRiNTUx
ZDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL2Jt
YWxsb2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTgtMDMtMDkgIFl1c3VrZSBTdXp1
a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKKyAgICAgICAgVXNlIGFsaWduYXMgaW5zdGVh
ZCBvZiBjb21waWxlci1zcGVjaWZpYyBhdHRyaWJ1dGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODM1MDgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgYWxpZ25hcyBmb3IgZ19naWdhY2FnZUJhc2VQ
dHIuIFdlIGFsc28gYWRkIHJlaW50ZXJwcmV0X2Nhc3QgdG8gZml4CisgICAgICAgIGNvbXBpbGUg
ZXJyb3JzIGluIEFSTXY3IGFuZCBNSVBTIEpTQ09ubHkgcG9ydHMuCisKKyAgICAgICAgKiBibWFs
bG9jL0dpZ2FjYWdlLmNwcDoKKyAgICAgICAgKiBibWFsbG9jL0dpZ2FjYWdlLmg6CisgICAgICAg
IChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBGaWxpcCBQaXpsbyAgPGZwaXps
b0BhcHBsZS5jb20+CiAKICAgICAgICAgYm1hbGxvYyBtdXRleCBzaG91bGQgYmUgYWRhcHRpdmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUuaAppbmRleCA2MDA1YTkx
NDM1NzFiOGM5NmNiYjQ5YmY3ZDI2YzkyODZmYzM1NTgwLi5hYTcyZmQ1ODQ1YjRlZjdjNGYxZjE4
ZDBkMmNkNjliZDQzMWUzOWExIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9SZWdpc3RlclN0YXRlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUmVnaXN0
ZXJTdGF0ZS5oCkBAIC0xMzEsMjUgKzEzMSwyMCBAQCBzdHJ1Y3QgUmVnaXN0ZXJTdGF0ZSB7CiAj
ZW5kaWYgLy8gIU9TKFdJTkRPV1MpCiAKICNpZm5kZWYgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RF
Ul9TVEFURQotI2lmIENPTVBJTEVSKEdDQ19PUl9DTEFORykKLSNkZWZpbmUgUkVHSVNURVJfQlVG
RkVSX0FMSUdOTUVOVCBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoc2l6ZW9mKHZvaWQqKSkpKQot
I2Vsc2UKLSNkZWZpbmUgUkVHSVNURVJfQlVGRkVSX0FMSUdOTUVOVAotI2VuZGlmCiAKLXR5cGVk
ZWYgam1wX2J1ZiBSZWdpc3RlclN0YXRlOwordXNpbmcgUmVnaXN0ZXJTdGF0ZSA9IGptcF9idWY7
CiAKIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUoKSBpcyBhIG1hY3JvIHNvIHRo
YXQgaXQgaXMgYWx3YXlzICJpbmxpbmVkIiBldmVuIGluIGRlYnVnIGJ1aWxkcy4KICNpZiBDT01Q
SUxFUihNU1ZDKQogI3ByYWdtYSB3YXJuaW5nKHB1c2gpCiAjcHJhZ21hIHdhcm5pbmcoZGlzYWJs
ZTogNDYxMSkKICNkZWZpbmUgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RFUl9TVEFURShyZWdpc3Rl
cnMpIFwKLSAgICBSZWdpc3RlclN0YXRlIHJlZ2lzdGVycyBSRUdJU1RFUl9CVUZGRVJfQUxJR05N
RU5UOyBcCisgICAgYWxpZ25hcyhzaXplb2Yodm9pZCopKSBSZWdpc3RlclN0YXRlIHJlZ2lzdGVy
czsgXAogICAgIHNldGptcChyZWdpc3RlcnMpCiAjcHJhZ21hIHdhcm5pbmcocG9wKQogI2Vsc2UK
ICNkZWZpbmUgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RFUl9TVEFURShyZWdpc3RlcnMpIFwKLSAg
ICBSZWdpc3RlclN0YXRlIHJlZ2lzdGVycyBSRUdJU1RFUl9CVUZGRVJfQUxJR05NRU5UOyBcCisg
ICAgYWxpZ25hcyhzaXplb2Yodm9pZCopKSBSZWdpc3RlclN0YXRlIHJlZ2lzdGVyczsgXAogICAg
IHNldGptcChyZWdpc3RlcnMpCiAjZW5kaWYKICNlbmRpZiAvLyBBTExPQ0FURV9BTkRfR0VUX1JF
R0lTVEVSX1NUQVRFCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaAppbmRleCA2ZWEzYTViNTU3ZDJiY2Zk
MWNiYjM5ZDk3Y2NmYjE3MGEwNDUyMTViLi5iNjMyMWIyNTM0N2I1MTk4MzBmYTM1ZjZhMzllNDgw
N2Y4ZWJlMDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKQEAgLTI3LDE0ICsyNyw2IEBACiAK
ICNpZiBFTkFCTEUoSklUKQogCi0vLyBXZSd2ZSBydW4gaW50byBzb21lIHByb2JsZW1zIHdoZXJl
IGNoYW5naW5nIHRoZSBzaXplIG9mIHRoZSBjbGFzcyBKSVQgbGVhZHMgdG8KLS8vIHBlcmZvcm1h
bmNlIGZsdWN0dWF0aW9ucy4gIFRyeSBmb3JjaW5nIGFsaWdubWVudCBpbiBhbiBhdHRlbXB0IHRv
IHN0YWJhbGl6ZSB0aGlzLgotI2lmIENPTVBJTEVSKEdDQ19PUl9DTEFORykKLSNkZWZpbmUgSklU
X0NMQVNTX0FMSUdOTUVOVCBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoMzIpKSkKLSNlbHNlCi0j
ZGVmaW5lIEpJVF9DTEFTU19BTElHTk1FTlQKLSNlbmRpZgotCiAjZGVmaW5lIEFTU0VSVF9KSVRf
T0ZGU0VUKGFjdHVhbCwgZXhwZWN0ZWQpIEFTU0VSVF9XSVRIX01FU1NBR0UoYWN0dWFsID09IGV4
cGVjdGVkLCAiSklUIE9mZnNldCBcIiVzXCIgc2hvdWxkIGJlICVkLCBub3QgJWQuXG4iLCAjZXhw
ZWN0ZWQsIHN0YXRpY19jYXN0PGludD4oZXhwZWN0ZWQpLCBzdGF0aWNfY2FzdDxpbnQ+KGFjdHVh
bCkpOwogCiAjaW5jbHVkZSAiQ29kZUJsb2NrLmgiCkBAIC0xNzYsNyArMTY4LDkgQEAgbmFtZXNw
YWNlIEpTQyB7CiAKICAgICB2b2lkIGN0aVBhdGNoQ2FsbEJ5UmV0dXJuQWRkcmVzcyhSZXR1cm5B
ZGRyZXNzUHRyLCBGdW5jdGlvblB0ciBuZXdDYWxsZWVGdW5jdGlvbik7CiAKLSAgICBjbGFzcyBK
SVQgOiBwcml2YXRlIEpTSW50ZXJmYWNlSklUIHsKKyAgICAvLyBXZSd2ZSBydW4gaW50byBzb21l
IHByb2JsZW1zIHdoZXJlIGNoYW5naW5nIHRoZSBzaXplIG9mIHRoZSBjbGFzcyBKSVQgbGVhZHMg
dG8KKyAgICAvLyBwZXJmb3JtYW5jZSBmbHVjdHVhdGlvbnMuIFRyeSBmb3JjaW5nIGFsaWdubWVu
dCBpbiBhbiBhdHRlbXB0IHRvIHN0YWJhbGl6ZSB0aGlzLgorICAgIGNsYXNzIGFsaWduYXMoMzIp
IEpJVCA6IHByaXZhdGUgSlNJbnRlcmZhY2VKSVQgewogICAgICAgICBmcmllbmQgY2xhc3MgSklU
U2xvd1BhdGhDYWxsOwogICAgICAgICBmcmllbmQgY2xhc3MgSklUU3R1YkNhbGw7CiAKQEAgLTg2
OCw3ICs4NjIsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgYm9vbCBtX3Nob3VsZEVtaXRQ
cm9maWxpbmc7CiAgICAgICAgIGJvb2wgbV9zaG91bGRVc2VJbmRleE1hc2tpbmc7CiAgICAgICAg
IHVuc2lnbmVkIG1fbG9vcE9TUkVudHJ5Qnl0ZWNvZGVPZmZzZXQgeyAwIH07Ci0gICAgfSBKSVRf
Q0xBU1NfQUxJR05NRU5UOworICAgIH07CiAKIH0gLy8gbmFtZXNwYWNlIEpTQwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5oIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3J1bnRpbWUvVk0uaAppbmRleCA3NmRiMDU4MmZhZjNhMjZiMTU2N2YyOTg0OTViNjgx
Zjg4ZjViZDMxLi5mYTk3ZGNlMTBmZTZkMzFhY2I4NzljMDU3YzI4YWYzMzQyMjhiMmM3IDEwMDY0
NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9WTS5oCisrKyBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgKQEAgLTIzMyw3ICsyMzMsNyBAQCBzdHJ1Y3QgU2Ny
YXRjaEJ1ZmZlciB7CiAgICAgICAgIGRvdWJsZSBwYWQ7IC8vIE1ha2Ugc3VyZSBtX2J1ZmZlciBp
cyBkb3VibGUgYWxpZ25lZC4KICAgICB9IHU7CiAjaWYgQ1BVKE1JUFMpICYmIChkZWZpbmVkIFdU
Rl9NSVBTX0FSQ0hfUkVWICYmIFdURl9NSVBTX0FSQ0hfUkVWID09IDIpCi0gICAgdm9pZCogbV9i
dWZmZXJbMF0gX19hdHRyaWJ1dGVfXygoYWxpZ25lZCg4KSkpOworICAgIGFsaWduYXMoOCkgdm9p
ZCogbV9idWZmZXJbMF07CiAjZWxzZQogICAgIHZvaWQqIG1fYnVmZmVyWzBdOwogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9H
aWdhY2FnZS5jcHAKaW5kZXggMmRkNDVkZThkNzUzMDhhODQ3NWRiNDliM2VjMGJlNGJmYzhhNDUw
Mi4uMGY2ZTdjZjgyNTUxM2ZkZmE0ODk5YjQ1YWU0OTJiMGQ4N2VmYTE0YSAxMDA2NDQKLS0tIGEv
U291cmNlL1dURi93dGYvR2lnYWNhZ2UuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL0dpZ2FjYWdl
LmNwcApAQCAtMzIsNyArMzIsNyBAQAogCiAjaWYgZGVmaW5lZChVU0VfU1lTVEVNX01BTExPQykg
JiYgVVNFX1NZU1RFTV9NQUxMT0MKIAotY2hhciBnX2dpZ2FjYWdlQmFzZVB0cnNbR0lHQUNBR0Vf
QkFTRV9QVFJTX1NJWkVdOworYWxpZ25hcyhHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkgY2hhciBn
X2dpZ2FjYWdlQmFzZVB0cnNbR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkVdOwogCiBuYW1lc3BhY2Ug
R2lnYWNhZ2UgewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oIGIvU291
cmNlL1dURi93dGYvR2lnYWNhZ2UuaAppbmRleCAxYjQ4NGQ2YWU0MGFiZTJkODFlMWRmNjYxMWE2
NjNhNDRlOWYxMTI2Li43N2M5NWM0ZTc1ZjUwOWY2ZjNiNzUyZjkxY2ZmZDlkNjNmZTBiZWI1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCisrKyBiL1NvdXJjZS9XVEYvd3Rm
L0dpZ2FjYWdlLmgKQEAgLTM0LDcgKzM0LDcgQEAKICNkZWZpbmUgR0lHQUNBR0VfQkFTRV9QVFJT
X1NJWkUgODE5MgogCiBleHRlcm4gIkMiIHsKLWV4dGVybiBXVEZfRVhQT1JUREFUQSBjaGFyIGdf
Z2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV07CithbGlnbmFzKEdJR0FD
QUdFX0JBU0VfUFRSU19TSVpFKSBleHRlcm4gV1RGX0VYUE9SVERBVEEgY2hhciBnX2dpZ2FjYWdl
QmFzZVB0cnNbR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkVdOwogfQogCiBuYW1lc3BhY2UgR2lnYWNh
Z2UgewpAQCAtOTQsNyArOTQsNyBAQCBBTFdBWVNfSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEJhc2VQ
dHJzJiBiYXNlUHRycywgS2luZCBraW5kKQogCiBBTFdBWVNfSU5MSU5FIEJhc2VQdHJzJiBiYXNl
UHRycygpCiB7Ci0gICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PEJhc2VQdHJzKj4oZ19naWdh
Y2FnZUJhc2VQdHJzKTsKKyAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8QmFzZVB0cnMqPihy
ZWludGVycHJldF9jYXN0PHZvaWQqPihnX2dpZ2FjYWdlQmFzZVB0cnMpKTsKIH0KIAogQUxXQVlT
X0lOTElORSB2b2lkKiYgYmFzZVB0cihLaW5kIGtpbmQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGln
aHRpbmdORU9OLmNwcAppbmRleCBmZTQ0YzYyNzVhNDJjZjE4Y2Y1YTdkZjc5YWRiMWU5MDM3Y2Rl
OGVhLi43M2UzMmI4NGRkZWIxNDkwYmM0YmNlOGY2N2FjZTUzM2I5MmQ4NTJlIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jcHUvYXJtL2ZpbHRlcnMvRkVMaWdo
dGluZ05FT04uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9h
cm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5jcHAKQEAgLTM1LDcgKzM1LDcgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogLy8gICBBTFBIQVhfUSBBTFBIQVlfUSBSRU1BUFhfRCBSRU1BUFlfRAogCiAK
LXN0YXRpYyBzaG9ydCBzX0ZFTGlnaHRpbmdDb25zdGFudHNGb3JOZW9uW10gX19hdHRyaWJ1dGVf
XygoX19hbGlnbmVkX18oMTYpKSkgPSB7CitzdGF0aWMgYWxpZ25hcygxNikgc2hvcnQgc19GRUxp
Z2h0aW5nQ29uc3RhbnRzRm9yTmVvbltdID0gewogICAgIC8vIEFscGhhIGNvZWZmaWNpZW50cy4K
ICAgICAtMiwgMSwgMCwgLTEsIDIsIDEsIDAsIC0xLAogICAgIDAsIC0xLCAtMiwgLTEsIDAsIDEs
IDIsIDEsCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jcHUv
YXJtL2ZpbHRlcnMvRkVMaWdodGluZ05FT04uaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oCmluZGV4IGFiYjMyZTU1NmE2
NGY4MjQ0MDI4ZmJiZTViMmYxYzA4NzYzM2E4OWEuLjQyYWY5MjIzNzRiZDY4YTQ3NGNlOGE2ZTJm
ZDY2ZGE3ZmE1ZjNlYzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oCkBAIC05
NSw3ICs5NSw3IEBAIHZvaWQgbmVvbkRyYXdMaWdodGluZyhGRUxpZ2h0aW5nUGFpbnRpbmdEYXRh
Rm9yTmVvbiopOwogCiBpbmxpbmUgdm9pZCBGRUxpZ2h0aW5nOjpwbGF0Zm9ybUFwcGx5TmVvbihj
b25zdCBMaWdodGluZ0RhdGEmIGRhdGEsIGNvbnN0IExpZ2h0U291cmNlOjpQYWludGluZ0RhdGEm
IHBhaW50aW5nRGF0YSkKIHsKLSAgICBGRUxpZ2h0aW5nRmxvYXRBcmd1bWVudHNGb3JOZW9uIGZs
b2F0QXJndW1lbnRzIF9fYXR0cmlidXRlX18oKF9fYWxpZ25lZF9fKDE2KSkpOworICAgIGFsaWdu
YXMoMTYpIEZFTGlnaHRpbmdGbG9hdEFyZ3VtZW50c0Zvck5lb24gZmxvYXRBcmd1bWVudHM7CiAg
ICAgRkVMaWdodGluZ1BhaW50aW5nRGF0YUZvck5lb24gbmVvbkRhdGEgPSB7CiAgICAgICAgIGRh
dGEucGl4ZWxzLT5kYXRhKCksCiAgICAgICAgIDEsCmRpZmYgLS1naXQgYS9Tb3VyY2UvYm1hbGxv
Yy9ibWFsbG9jL0dpZ2FjYWdlLmNwcCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2Uu
Y3BwCmluZGV4IDAwOTA2OTk2M2E0ZTc5MjU1ODM3ZWU0YjE1YmVmMjM3OGNlNTBiZjYuLmQ1YWUy
ZTdlMzdjYWM2MTgxNTBjNWZhNTJhMzg2NTJiMTY1Y2ZlZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9i
bWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwCisrKyBiL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2Mv
R2lnYWNhZ2UuY3BwCkBAIC00Miw3ICs0Miw3IEBACiAvLyBJZiB0aGlzIHdlcmUgbGVzcyB0aGFu
IDMyR0IsIHRob3NlIE9PQiBhY2Nlc3NlcyBjb3VsZCByZWFjaCBvdXRzaWRlIG9mIHRoZSBjYWdl
LgogI2RlZmluZSBHSUdBQ0FHRV9SVU5XQVkgKDMybGx1ICogMTAyNCAqIDEwMjQgKiAxMDI0KQog
Ci1jaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV0gX19hdHRy
aWJ1dGVfXygoYWxpZ25lZChHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkpKTsKK2FsaWduYXMoR0lH
QUNBR0VfQkFTRV9QVFJTX1NJWkUpIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JB
U0VfUFRSU19TSVpFXTsKIAogdXNpbmcgbmFtZXNwYWNlIGJtYWxsb2M7CiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuaCBiL1NvdXJjZS9ibWFsbG9jL2JtYWxs
b2MvR2lnYWNhZ2UuaAppbmRleCBiZWYzYWY1ZDUzYWQ1OGQ1YjlhMmM3ZThlMzhmNzVkNWRkMGU2
OGVlLi4zOGFiZjZjZDliNWYxM2I5NmNjZjIwZGE1N2QyMTE0YjkzMjEzZmNkIDEwMDY0NAotLS0g
YS9Tb3VyY2UvYm1hbGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmgKKysrIGIvU291cmNlL2JtYWxsb2Mv
Ym1hbGxvYy9HaWdhY2FnZS5oCkBAIC02OCw3ICs2OCw3IEBAIHN0YXRpY19hc3NlcnQoYm1hbGxv
Yzo6aXNQb3dlck9mVHdvKFNUUklOR19HSUdBQ0FHRV9TSVpFKSwgIiIpOwogI2RlZmluZSBHSUdB
Q0FHRV9CQVNFX1BUUlNfU0laRSA0MDk2CiAjZW5kaWYKIAotZXh0ZXJuICJDIiBCRVhQT1JUIGNo
YXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXSBfX2F0dHJpYnV0
ZV9fKChhbGlnbmVkKEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSkpOworZXh0ZXJuICJDIiBhbGln
bmFzKEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSBCRVhQT1JUIGNoYXIgZ19naWdhY2FnZUJhc2VQ
dHJzW0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXTsKIAogbmFtZXNwYWNlIEdpZ2FjYWdlIHsKIApA
QCAtMTMzLDcgKzEzMyw3IEBAIEJJTkxJTkUgdm9pZComIGJhc2VQdHIoQmFzZVB0cnMmIGJhc2VQ
dHJzLCBLaW5kIGtpbmQpCiAKIEJJTkxJTkUgQmFzZVB0cnMmIGJhc2VQdHJzKCkKIHsKLSAgICBy
ZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8QmFzZVB0cnMqPihnX2dpZ2FjYWdlQmFzZVB0cnMpOwor
ICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KHJlaW50ZXJwcmV0X2Nhc3Q8
dm9pZCo+KGdfZ2lnYWNhZ2VCYXNlUHRycykpOwogfQogCiBCSU5MSU5FIHZvaWQqJiBiYXNlUHRy
KEtpbmQga2luZCkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>335419</attachid>
            <date>2018-03-09 04:20:24 -0800</date>
            <delta_ts>2018-04-09 12:03:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180309212022.patch</filename>
            <type>text/plain</type>
            <size>12500</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI5NDU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA0
ZTJhMDYyZjM4MTJjZTg0ZDM3YTgxNDVhYWJkYWE2NmNlMGJmMzczLi5iODkxOWNjNGQxZGI3N2Nh
MjQ0NDY5MDM0ODk5ZDA5YmZmNjUyMjJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSw0NyBAQAorMjAxOC0wMy0wOSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmlj
IGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVzZSBDKysxMSBhbGlnbmFzIHNwZWNpZmllci4gSXQgaXMgcG9ydGFibGUgY29tcGFyZWQg
dG8gY29tcGlsZXItc3BlY2lmaWMgYWxpZ25lZCBhdHRyaWJ1dGVzLgorCisgICAgICAgICogaGVh
cC9SZWdpc3RlclN0YXRlLmg6CisgICAgICAgICogaml0L0pJVC5oOgorICAgICAgICAoSlNDOjpK
SVQ6OmNvbXBpbGUpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVHZXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZUdldEJ5VmFsV2l0aENhY2hl
ZElkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlUHV0QnlWYWwpOiBEZWxl
dGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNvbXBpbGVEaXJlY3RQdXRCeVZhbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y29tcGlsZVB1dEJ5VmFsV2l0aENhY2hlZElkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjb21waWxlSGFzSW5kZXhlZFByb3BlcnR5KTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsKTogRGVsZXRlZC4KKyAgICAgICAgKEpT
Qzo6SklUOjphcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0dXJuVHlwZSk6IERlbGV0ZWQuCisgICAg
ICAgIChKU0M6OkpJVDo6ZXhjZXB0aW9uQ2hlY2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpK
SVQ6OmV4Y2VwdGlvbkNoZWNrV2l0aENhbGxGcmFtZVJvbGxiYWNrKTogRGVsZXRlZC4KKyAgICAg
ICAgKEpTQzo6SklUOjplbWl0SW50MzJMb2FkKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklU
OjplbWl0SW50MzJHZXRCeVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdElu
dDMyUHV0QnlWYWwpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXREb3VibGVQdXRC
eVZhbCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdENvbnRpZ3VvdXNQdXRCeVZh
bCk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6ZW1pdFN0b3JlQ2VsbCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Z2V0U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlND
OjpKSVQ6OmxpbmtTbG93Q2FzZSk6IERlbGV0ZWQuCisgICAgICAgIChKU0M6OkpJVDo6bGlua0R1
bW15U2xvd0Nhc2UpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmxpbmtBbGxTbG93Q2Fz
ZXMpOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb24pOiBEZWxldGVk
LgorICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25XaXRoUHJvZmlsZSk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6Y2FsbE9wZXJhdGlvbldpdGhSZXN1bHQpOiBEZWxldGVkLgor
ICAgICAgICAoSlNDOjpKSVQ6OmNhbGxPcGVyYXRpb25Ob0V4Y2VwdGlvbkNoZWNrKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYWxsT3BlcmF0aW9uV2l0aENhbGxGcmFtZVJvbGxiYWNr
T25FeGNlcHRpb24pOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmVtaXRFbnRlck9wdGlt
aXphdGlvbkNoZWNrKTogRGVsZXRlZC4KKyAgICAgICAgKEpTQzo6SklUOjpzYW1wbGVDb2RlQmxv
Y2spOiBEZWxldGVkLgorICAgICAgICAoSlNDOjpKSVQ6OmNhbkJlT3B0aW1pemVkKTogRGVsZXRl
ZC4KKyAgICAgICAgKEpTQzo6SklUOjpjYW5CZU9wdGltaXplZE9ySW5saW5lZCk6IERlbGV0ZWQu
CisgICAgICAgIChKU0M6OkpJVDo6c2hvdWxkRW1pdFByb2ZpbGluZyk6IERlbGV0ZWQuCisgICAg
ICAgICogcnVudGltZS9WTS5oOgorCiAyMDE4LTAzLTA4ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgU2FmYXJpIG5vdCBoYW5kbGluZyB1bmRlZmluZWQgZ2xvYmFs
IHZhcmlhYmxlcyB3aXRoIHNhbWUgbmFtZSBhcyBlbGVtZW50IElkIGNvcnJlY3RseS4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXgg
ZjY1ZWY3N2EyM2MyMmZjYjNmMzg0NmZjMDY3ZmY2MTFmYmNiZDYxNi4uZDg0YjZiYjE2OGYxNDE2
NjYyNzgwOWRkZTg2NjA1YTZkNWUwYzY2ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VM
b2cKKysrIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxOC0wMy0w
OSAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2Ug
YWxpZ25hcyBpbnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGZvciBn
X2dpZ2FjYWdlQmFzZVB0ci4gV2UgYWxzbyBhZGQgcmVpbnRlcnByZXRfY2FzdCB0byBmaXgKKyAg
ICAgICAgY29tcGlsZSBlcnJvcnMgaW4gQVJNdjcgYW5kIE1JUFMgSlNDT25seSBwb3J0cy4KKwor
ICAgICAgICAqIHd0Zi9HaWdhY2FnZS5jcHA6CisgICAgICAgICogd3RmL0dpZ2FjYWdlLmg6Cisg
ICAgICAgIChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBDb21taXQgUXVldWUg
IDxjb21taXQtcXVldWVAd2Via2l0Lm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLCByb2xsaW5n
IG91dCByMjI5MzU0IGFuZCByMjI5MzY0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGI0OWZjYmIyZGI4NDg3ZGZh
MmQ3NWMxNGFkOGM1YTllNzg1ZTQyMjEuLjQ3YmVmNDAzZTI3YzVlNTBkYjM0MjBjNDcxNThmYWIw
NDFhYTEwYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAxOC0wMy0wOSAgWXVzdWtl
IFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KKworICAgICAgICBVc2UgYWxpZ25hcyBp
bnN0ZWFkIG9mIGNvbXBpbGVyLXNwZWNpZmljIGF0dHJpYnV0ZXMKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBhbGlnbmFzIGluc3RlYWQgb2YgYWxp
Z25lZC4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxp
Z2h0aW5nTkVPTi5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0
ZXJzL0ZFTGlnaHRpbmdORU9OLmg6CisgICAgICAgIChXZWJDb3JlOjpGRUxpZ2h0aW5nOjpwbGF0
Zm9ybUFwcGx5TmVvbik6CisKIDIwMTgtMDMtMDggIFphbiBEb2JlcnNlayAgPHpkb2JlcnNla0Bp
Z2FsaWEuY29tPgogCiAgICAgICAgIEFkZCBiYXNpYyBzeW5jaHJvbml6YXRpb24gY2FwYWJpbGl0
eSB0byBOaWNvc2lhOjpCdWZmZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxv
ZyBiL1NvdXJjZS9ibWFsbG9jL0NoYW5nZUxvZwppbmRleCAxOTY5NmRlZWIxM2U2ZGY4ZjI2ZmM2
MTYxNmIzMzMyMmVkZWU5YTU1Li4yYmNkMzZkNzQ4NGYxMjFhZWZjOGEzOTYxMGM0YzdhMTRiNTUx
ZDUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvYm1hbGxvYy9DaGFuZ2VMb2cKKysrIGIvU291cmNlL2Jt
YWxsb2MvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMTgtMDMtMDkgIFl1c3VrZSBTdXp1
a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CisKKyAgICAgICAgVXNlIGFsaWduYXMgaW5zdGVh
ZCBvZiBjb21waWxlci1zcGVjaWZpYyBhdHRyaWJ1dGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODM1MDgKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVc2UgYWxpZ25hcyBmb3IgZ19naWdhY2FnZUJhc2VQ
dHIuIFdlIGFsc28gYWRkIHJlaW50ZXJwcmV0X2Nhc3QgdG8gZml4CisgICAgICAgIGNvbXBpbGUg
ZXJyb3JzIGluIEFSTXY3IGFuZCBNSVBTIEpTQ09ubHkgcG9ydHMuCisKKyAgICAgICAgKiBibWFs
bG9jL0dpZ2FjYWdlLmNwcDoKKyAgICAgICAgKiBibWFsbG9jL0dpZ2FjYWdlLmg6CisgICAgICAg
IChHaWdhY2FnZTo6YmFzZVB0cnMpOgorCiAyMDE4LTAzLTA4ICBGaWxpcCBQaXpsbyAgPGZwaXps
b0BhcHBsZS5jb20+CiAKICAgICAgICAgYm1hbGxvYyBtdXRleCBzaG91bGQgYmUgYWRhcHRpdmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUuaCBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1JlZ2lzdGVyU3RhdGUuaAppbmRleCA2MDA1YTkx
NDM1NzFiOGM5NmNiYjQ5YmY3ZDI2YzkyODZmYzM1NTgwLi4zNzUxZWIxNjQxNGQ3NDE3OGQ1YWQx
ODc3ZGNhNGZhZTJiMmE5ZGNhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVh
cC9SZWdpc3RlclN0YXRlLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvUmVnaXN0
ZXJTdGF0ZS5oCkBAIC0xMzEsMjUgKzEzMSwyMCBAQCBzdHJ1Y3QgUmVnaXN0ZXJTdGF0ZSB7CiAj
ZW5kaWYgLy8gIU9TKFdJTkRPV1MpCiAKICNpZm5kZWYgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RF
Ul9TVEFURQotI2lmIENPTVBJTEVSKEdDQ19PUl9DTEFORykKLSNkZWZpbmUgUkVHSVNURVJfQlVG
RkVSX0FMSUdOTUVOVCBfX2F0dHJpYnV0ZV9fICgoYWxpZ25lZCAoc2l6ZW9mKHZvaWQqKSkpKQot
I2Vsc2UKLSNkZWZpbmUgUkVHSVNURVJfQlVGRkVSX0FMSUdOTUVOVAotI2VuZGlmCiAKLXR5cGVk
ZWYgam1wX2J1ZiBSZWdpc3RlclN0YXRlOwordXNpbmcgUmVnaXN0ZXJTdGF0ZSA9IGptcF9idWY7
CiAKIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUoKSBpcyBhIG1hY3JvIHNvIHRo
YXQgaXQgaXMgYWx3YXlzICJpbmxpbmVkIiBldmVuIGluIGRlYnVnIGJ1aWxkcy4KICNpZiBDT01Q
SUxFUihNU1ZDKQogI3ByYWdtYSB3YXJuaW5nKHB1c2gpCiAjcHJhZ21hIHdhcm5pbmcoZGlzYWJs
ZTogNDYxMSkKICNkZWZpbmUgQUxMT0NBVEVfQU5EX0dFVF9SRUdJU1RFUl9TVEFURShyZWdpc3Rl
cnMpIFwKLSAgICBSZWdpc3RlclN0YXRlIHJlZ2lzdGVycyBSRUdJU1RFUl9CVUZGRVJfQUxJR05N
RU5UOyBcCisgICAgYWxpZ25hcyh2b2lkKikgUmVnaXN0ZXJTdGF0ZSByZWdpc3RlcnM7IFwKICAg
ICBzZXRqbXAocmVnaXN0ZXJzKQogI3ByYWdtYSB3YXJuaW5nKHBvcCkKICNlbHNlCiAjZGVmaW5l
IEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUocmVnaXN0ZXJzKSBcCi0gICAgUmVnaXN0
ZXJTdGF0ZSByZWdpc3RlcnMgUkVHSVNURVJfQlVGRkVSX0FMSUdOTUVOVDsgXAorICAgIGFsaWdu
YXModm9pZCopIFJlZ2lzdGVyU3RhdGUgcmVnaXN0ZXJzOyBcCiAgICAgc2V0am1wKHJlZ2lzdGVy
cykKICNlbmRpZgogI2VuZGlmIC8vIEFMTE9DQVRFX0FORF9HRVRfUkVHSVNURVJfU1RBVEUKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggYi9Tb3VyY2UvSmF2YVNj
cmlwdENvcmUvaml0L0pJVC5oCmluZGV4IDZlYTNhNWI1NTdkMmJjZmQxY2JiMzlkOTdjY2ZiMTcw
YTA0NTIxNWIuLmI2MzIxYjI1MzQ3YjUxOTgzMGZhMzVmNmEzOWU0ODA3ZjhlYmUwNTYgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9KSVQuaApAQCAtMjcsMTQgKzI3LDYgQEAKIAogI2lmIEVOQUJMRShKSVQp
CiAKLS8vIFdlJ3ZlIHJ1biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNp
emUgb2YgdGhlIGNsYXNzIEpJVCBsZWFkcyB0bwotLy8gcGVyZm9ybWFuY2UgZmx1Y3R1YXRpb25z
LiAgVHJ5IGZvcmNpbmcgYWxpZ25tZW50IGluIGFuIGF0dGVtcHQgdG8gc3RhYmFsaXplIHRoaXMu
Ci0jaWYgQ09NUElMRVIoR0NDX09SX0NMQU5HKQotI2RlZmluZSBKSVRfQ0xBU1NfQUxJR05NRU5U
IF9fYXR0cmlidXRlX18gKChhbGlnbmVkICgzMikpKQotI2Vsc2UKLSNkZWZpbmUgSklUX0NMQVNT
X0FMSUdOTUVOVAotI2VuZGlmCi0KICNkZWZpbmUgQVNTRVJUX0pJVF9PRkZTRVQoYWN0dWFsLCBl
eHBlY3RlZCkgQVNTRVJUX1dJVEhfTUVTU0FHRShhY3R1YWwgPT0gZXhwZWN0ZWQsICJKSVQgT2Zm
c2V0IFwiJXNcIiBzaG91bGQgYmUgJWQsIG5vdCAlZC5cbiIsICNleHBlY3RlZCwgc3RhdGljX2Nh
c3Q8aW50PihleHBlY3RlZCksIHN0YXRpY19jYXN0PGludD4oYWN0dWFsKSk7CiAKICNpbmNsdWRl
ICJDb2RlQmxvY2suaCIKQEAgLTE3Niw3ICsxNjgsOSBAQCBuYW1lc3BhY2UgSlNDIHsKIAogICAg
IHZvaWQgY3RpUGF0Y2hDYWxsQnlSZXR1cm5BZGRyZXNzKFJldHVybkFkZHJlc3NQdHIsIEZ1bmN0
aW9uUHRyIG5ld0NhbGxlZUZ1bmN0aW9uKTsKIAotICAgIGNsYXNzIEpJVCA6IHByaXZhdGUgSlNJ
bnRlcmZhY2VKSVQgeworICAgIC8vIFdlJ3ZlIHJ1biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUg
Y2hhbmdpbmcgdGhlIHNpemUgb2YgdGhlIGNsYXNzIEpJVCBsZWFkcyB0bworICAgIC8vIHBlcmZv
cm1hbmNlIGZsdWN0dWF0aW9ucy4gVHJ5IGZvcmNpbmcgYWxpZ25tZW50IGluIGFuIGF0dGVtcHQg
dG8gc3RhYmFsaXplIHRoaXMuCisgICAgY2xhc3MgYWxpZ25hcygzMikgSklUIDogcHJpdmF0ZSBK
U0ludGVyZmFjZUpJVCB7CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKSVRTbG93UGF0aENhbGw7CiAg
ICAgICAgIGZyaWVuZCBjbGFzcyBKSVRTdHViQ2FsbDsKIApAQCAtODY4LDcgKzg2Miw3IEBAIG5h
bWVzcGFjZSBKU0MgewogICAgICAgICBib29sIG1fc2hvdWxkRW1pdFByb2ZpbGluZzsKICAgICAg
ICAgYm9vbCBtX3Nob3VsZFVzZUluZGV4TWFza2luZzsKICAgICAgICAgdW5zaWduZWQgbV9sb29w
T1NSRW50cnlCeXRlY29kZU9mZnNldCB7IDAgfTsKLSAgICB9IEpJVF9DTEFTU19BTElHTk1FTlQ7
CisgICAgfTsKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS9ydW50aW1lL1ZNLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9W
TS5oCmluZGV4IDc2ZGIwNTgyZmFmM2EyNmIxNTY3ZjI5ODQ5NWI2ODFmODhmNWJkMzEuLmZhOTdk
Y2UxMGZlNmQzMWFjYjg3OWMwNTdjMjhhZjMzNDIyOGIyYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9ydW50aW1lL1ZNLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1
bnRpbWUvVk0uaApAQCAtMjMzLDcgKzIzMyw3IEBAIHN0cnVjdCBTY3JhdGNoQnVmZmVyIHsKICAg
ICAgICAgZG91YmxlIHBhZDsgLy8gTWFrZSBzdXJlIG1fYnVmZmVyIGlzIGRvdWJsZSBhbGlnbmVk
LgogICAgIH0gdTsKICNpZiBDUFUoTUlQUykgJiYgKGRlZmluZWQgV1RGX01JUFNfQVJDSF9SRVYg
JiYgV1RGX01JUFNfQVJDSF9SRVYgPT0gMikKLSAgICB2b2lkKiBtX2J1ZmZlclswXSBfX2F0dHJp
YnV0ZV9fKChhbGlnbmVkKDgpKSk7CisgICAgYWxpZ25hcyg4KSB2b2lkKiBtX2J1ZmZlclswXTsK
ICNlbHNlCiAgICAgdm9pZCogbV9idWZmZXJbMF07CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0dpZ2FjYWdlLmNwcAppbmRl
eCAyZGQ0NWRlOGQ3NTMwOGE4NDc1ZGI0OWIzZWMwYmU0YmZjOGE0NTAyLi4xNzJiMWNiYjM3NWVl
OGIxYmIxZTMxZDAzYTlhOTdlMjgxM2ZkOTY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9H
aWdhY2FnZS5jcHAKKysrIGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuY3BwCkBAIC0zMiw3ICsz
Miw3IEBACiAKICNpZiBkZWZpbmVkKFVTRV9TWVNURU1fTUFMTE9DKSAmJiBVU0VfU1lTVEVNX01B
TExPQwogCi1jaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV07
CithbGlnbmFzKHZvaWQqKSBjaGFyIGdfZ2lnYWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BU
UlNfU0laRV07CiAKIG5hbWVzcGFjZSBHaWdhY2FnZSB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL0dpZ2FjYWdlLmggYi9Tb3VyY2UvV1RGL3d0Zi9HaWdhY2FnZS5oCmluZGV4IDFiNDg0
ZDZhZTQwYWJlMmQ4MWUxZGY2NjExYTY2M2E0NGU5ZjExMjYuLjM2YjM5YTU3Yzc5MWI2ZDBlNDRk
NzYwZWZjNTFiMzFlZjI0MGExMjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0dpZ2FjYWdl
LmgKKysrIGIvU291cmNlL1dURi93dGYvR2lnYWNhZ2UuaApAQCAtMzQsNyArMzQsNyBAQAogI2Rl
ZmluZSBHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSA4MTkyCiAKIGV4dGVybiAiQyIgewotZXh0ZXJu
IFdURl9FWFBPUlREQVRBIGNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0VfUFRS
U19TSVpFXTsKK2FsaWduYXModm9pZCopIGV4dGVybiBXVEZfRVhQT1JUREFUQSBjaGFyIGdfZ2ln
YWNhZ2VCYXNlUHRyc1tHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRV07CiB9CiAKIG5hbWVzcGFjZSBH
aWdhY2FnZSB7CkBAIC05NCw3ICs5NCw3IEBAIEFMV0FZU19JTkxJTkUgdm9pZComIGJhc2VQdHIo
QmFzZVB0cnMmIGJhc2VQdHJzLCBLaW5kIGtpbmQpCiAKIEFMV0FZU19JTkxJTkUgQmFzZVB0cnMm
IGJhc2VQdHJzKCkKIHsKLSAgICByZXR1cm4gKnJlaW50ZXJwcmV0X2Nhc3Q8QmFzZVB0cnMqPihn
X2dpZ2FjYWdlQmFzZVB0cnMpOworICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDxCYXNlUHRy
cyo+KHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGdfZ2lnYWNhZ2VCYXNlUHRycykpOwogfQogCiBB
TFdBWVNfSU5MSU5FIHZvaWQqJiBiYXNlUHRyKEtpbmQga2luZCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVP
Ti5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jcHUvYXJtL2ZpbHRlcnMv
RkVMaWdodGluZ05FT04uY3BwCmluZGV4IGZlNDRjNjI3NWE0MmNmMThjZjVhN2RmNzlhZGIxZTkw
MzdjZGU4ZWEuLjczZTMyYjg0ZGRlYjE0OTBiYzRiY2U4ZjY3YWNlNTMzYjkyZDg1MmUgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NwdS9hcm0vZmlsdGVycy9G
RUxpZ2h0aW5nTkVPTi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmNwcApAQCAtMzUsNyArMzUsNyBAQCBuYW1l
c3BhY2UgV2ViQ29yZSB7CiAvLyAgIEFMUEhBWF9RIEFMUEhBWV9RIFJFTUFQWF9EIFJFTUFQWV9E
CiAKIAotc3RhdGljIHNob3J0IHNfRkVMaWdodGluZ0NvbnN0YW50c0Zvck5lb25bXSBfX2F0dHJp
YnV0ZV9fKChfX2FsaWduZWRfXygxNikpKSA9IHsKK3N0YXRpYyBhbGlnbmFzKDE2KSBzaG9ydCBz
X0ZFTGlnaHRpbmdDb25zdGFudHNGb3JOZW9uW10gPSB7CiAgICAgLy8gQWxwaGEgY29lZmZpY2ll
bnRzLgogICAgIC0yLCAxLCAwLCAtMSwgMiwgMSwgMCwgLTEsCiAgICAgMCwgLTEsIC0yLCAtMSwg
MCwgMSwgMiwgMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NwdS9hcm0vZmlsdGVycy9GRUxpZ2h0aW5nTkVPTi5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmgKaW5kZXggYWJiMzJl
NTU2YTY0ZjgyNDQwMjhmYmJlNWIyZjFjMDg3NjMzYTg5YS4uNDJhZjkyMjM3NGJkNjhhNDc0Y2U4
YTZlMmZkNjZkYTdmYTVmM2VjMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmgKKysrIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3B1L2FybS9maWx0ZXJzL0ZFTGlnaHRpbmdORU9OLmgK
QEAgLTk1LDcgKzk1LDcgQEAgdm9pZCBuZW9uRHJhd0xpZ2h0aW5nKEZFTGlnaHRpbmdQYWludGlu
Z0RhdGFGb3JOZW9uKik7CiAKIGlubGluZSB2b2lkIEZFTGlnaHRpbmc6OnBsYXRmb3JtQXBwbHlO
ZW9uKGNvbnN0IExpZ2h0aW5nRGF0YSYgZGF0YSwgY29uc3QgTGlnaHRTb3VyY2U6OlBhaW50aW5n
RGF0YSYgcGFpbnRpbmdEYXRhKQogewotICAgIEZFTGlnaHRpbmdGbG9hdEFyZ3VtZW50c0Zvck5l
b24gZmxvYXRBcmd1bWVudHMgX19hdHRyaWJ1dGVfXygoX19hbGlnbmVkX18oMTYpKSk7CisgICAg
YWxpZ25hcygxNikgRkVMaWdodGluZ0Zsb2F0QXJndW1lbnRzRm9yTmVvbiBmbG9hdEFyZ3VtZW50
czsKICAgICBGRUxpZ2h0aW5nUGFpbnRpbmdEYXRhRm9yTmVvbiBuZW9uRGF0YSA9IHsKICAgICAg
ICAgZGF0YS5waXhlbHMtPmRhdGEoKSwKICAgICAgICAgMSwKZGlmZiAtLWdpdCBhL1NvdXJjZS9i
bWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuY3BwIGIvU291cmNlL2JtYWxsb2MvYm1hbGxvYy9HaWdh
Y2FnZS5jcHAKaW5kZXggMDA5MDY5OTYzYTRlNzkyNTU4MzdlZTRiMTViZWYyMzc4Y2U1MGJmNi4u
ZDVhZTJlN2UzN2NhYzYxODE1MGM1ZmE1MmEzODY1MmIxNjVjZmVlMyAxMDA2NDQKLS0tIGEvU291
cmNlL2JtYWxsb2MvYm1hbGxvYy9HaWdhY2FnZS5jcHAKKysrIGIvU291cmNlL2JtYWxsb2MvYm1h
bGxvYy9HaWdhY2FnZS5jcHAKQEAgLTQyLDcgKzQyLDcgQEAKIC8vIElmIHRoaXMgd2VyZSBsZXNz
IHRoYW4gMzJHQiwgdGhvc2UgT09CIGFjY2Vzc2VzIGNvdWxkIHJlYWNoIG91dHNpZGUgb2YgdGhl
IGNhZ2UuCiAjZGVmaW5lIEdJR0FDQUdFX1JVTldBWSAoMzJsbHUgKiAxMDI0ICogMTAyNCAqIDEw
MjQpCiAKLWNoYXIgZ19naWdhY2FnZUJhc2VQdHJzW0dJR0FDQUdFX0JBU0VfUFRSU19TSVpFXSBf
X2F0dHJpYnV0ZV9fKChhbGlnbmVkKEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFKSkpOworYWxpZ25h
cyhHSUdBQ0FHRV9CQVNFX1BUUlNfU0laRSkgY2hhciBnX2dpZ2FjYWdlQmFzZVB0cnNbR0lHQUNB
R0VfQkFTRV9QVFJTX1NJWkVdOwogCiB1c2luZyBuYW1lc3BhY2UgYm1hbGxvYzsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL2JtYWxsb2MvYm1hbGxvYy9HaWdhY2FnZS5oIGIvU291cmNlL2JtYWxsb2Mv
Ym1hbGxvYy9HaWdhY2FnZS5oCmluZGV4IGJlZjNhZjVkNTNhZDU4ZDViOWEyYzdlOGUzOGY3NWQ1
ZGQwZTY4ZWUuLjM4YWJmNmNkOWI1ZjEzYjk2Y2NmMjBkYTU3ZDIxMTRiOTMyMTNmY2QgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9ibWFsbG9jL2JtYWxsb2MvR2lnYWNhZ2UuaAorKysgYi9Tb3VyY2UvYm1h
bGxvYy9ibWFsbG9jL0dpZ2FjYWdlLmgKQEAgLTY4LDcgKzY4LDcgQEAgc3RhdGljX2Fzc2VydChi
bWFsbG9jOjppc1Bvd2VyT2ZUd28oU1RSSU5HX0dJR0FDQUdFX1NJWkUpLCAiIik7CiAjZGVmaW5l
IEdJR0FDQUdFX0JBU0VfUFRSU19TSVpFIDQwOTYKICNlbmRpZgogCi1leHRlcm4gIkMiIEJFWFBP
UlQgY2hhciBnX2dpZ2FjYWdlQmFzZVB0cnNbR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkVdIF9fYXR0
cmlidXRlX18oKGFsaWduZWQoR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkUpKSk7CitleHRlcm4gIkMi
IGFsaWduYXMoR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkUpIEJFWFBPUlQgY2hhciBnX2dpZ2FjYWdl
QmFzZVB0cnNbR0lHQUNBR0VfQkFTRV9QVFJTX1NJWkVdOwogCiBuYW1lc3BhY2UgR2lnYWNhZ2Ug
ewogCkBAIC0xMzMsNyArMTMzLDcgQEAgQklOTElORSB2b2lkKiYgYmFzZVB0cihCYXNlUHRycyYg
YmFzZVB0cnMsIEtpbmQga2luZCkKIAogQklOTElORSBCYXNlUHRycyYgYmFzZVB0cnMoKQogewot
ICAgIHJldHVybiAqcmVpbnRlcnByZXRfY2FzdDxCYXNlUHRycyo+KGdfZ2lnYWNhZ2VCYXNlUHRy
cyk7CisgICAgcmV0dXJuICpyZWludGVycHJldF9jYXN0PEJhc2VQdHJzKj4ocmVpbnRlcnByZXRf
Y2FzdDx2b2lkKj4oZ19naWdhY2FnZUJhc2VQdHJzKSk7CiB9CiAKIEJJTkxJTkUgdm9pZComIGJh
c2VQdHIoS2luZCBraW5kKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>337481</attachid>
            <date>2018-04-08 22:06:21 -0700</date>
            <delta_ts>2018-04-09 12:04:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180409140620.patch</filename>
            <type>text/plain</type>
            <size>2274</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMwMzg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
M2IyNmU1ZjRjNzVkMWUzZGVlNzcxYjg4MWFjNTQ1MzA1Zjg4NzRlLi4yYTFlODc4YWY5YzQ5MGEx
ZjY2NDNhMmZhZWExZTE5ZDVjYmE5OGI5IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMCBAQAorMjAxOC0wNC0wOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCBhdHRlbXB0IHRvIGZpeCBXaW5kb3dzIGJ1aWxk
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODM1MDgK
KworICAgICAgICAqIGppdC9KSVQuaDoKKwogMjAxOC0wNC0wOCAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXggZm9y
IFdpbmRvd3MgYnkgc3VwcHJlc3NpbmcgcGFkZGluZyB3YXJuaW5nIGZvciBKSVQKZGlmZiAtLWdp
dCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmggYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvaml0L0pJVC5oCmluZGV4IDcxZjg3M2IxM2NjNmY4MWNlNTAwMGI1ZDkzMGMwYTAxZTEwY2Fk
MTUuLjhmZGJiM2JlNzYxNTg4MWViZTNkOGUyODNjYjkyNzQ1NzllOWMzYTAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2ppdC9KSVQuaApAQCAtMjcsNiArMjcsMTQgQEAKIAogI2lmIEVOQUJMRShKSVQpCiAKKy8v
IFdlJ3ZlIHJ1biBpbnRvIHNvbWUgcHJvYmxlbXMgd2hlcmUgY2hhbmdpbmcgdGhlIHNpemUgb2Yg
dGhlIGNsYXNzIEpJVCBsZWFkcyB0bworLy8gcGVyZm9ybWFuY2UgZmx1Y3R1YXRpb25zLiBUcnkg
Zm9yY2luZyBhbGlnbm1lbnQgaW4gYW4gYXR0ZW1wdCB0byBzdGFiaWxpemUgdGhpcy4KKyNpZiBD
T01QSUxFUihHQ0NfT1JfQ0xBTkcpCisjZGVmaW5lIEpJVF9DTEFTU19BTElHTk1FTlQgYWxpZ25h
cygzMikKKyNlbHNlCisjZGVmaW5lIEpJVF9DTEFTU19BTElHTk1FTlQKKyNlbmRpZgorCiAjZGVm
aW5lIEFTU0VSVF9KSVRfT0ZGU0VUKGFjdHVhbCwgZXhwZWN0ZWQpIEFTU0VSVF9XSVRIX01FU1NB
R0UoYWN0dWFsID09IGV4cGVjdGVkLCAiSklUIE9mZnNldCBcIiVzXCIgc2hvdWxkIGJlICVkLCBu
b3QgJWQuXG4iLCAjZXhwZWN0ZWQsIHN0YXRpY19jYXN0PGludD4oZXhwZWN0ZWQpLCBzdGF0aWNf
Y2FzdDxpbnQ+KGFjdHVhbCkpOwogCiAjaW5jbHVkZSAiQ29kZUJsb2NrLmgiCkBAIC0xNjgsMTMg
KzE3Niw3IEBAIG5hbWVzcGFjZSBKU0MgewogCiAgICAgdm9pZCBjdGlQYXRjaENhbGxCeVJldHVy
bkFkZHJlc3MoUmV0dXJuQWRkcmVzc1B0ciwgRnVuY3Rpb25QdHIgbmV3Q2FsbGVlRnVuY3Rpb24p
OwogCi0gICAgLy8gV2UndmUgcnVuIGludG8gc29tZSBwcm9ibGVtcyB3aGVyZSBjaGFuZ2luZyB0
aGUgc2l6ZSBvZiB0aGUgY2xhc3MgSklUIGxlYWRzIHRvCi0gICAgLy8gcGVyZm9ybWFuY2UgZmx1
Y3R1YXRpb25zLiBUcnkgZm9yY2luZyBhbGlnbm1lbnQgaW4gYW4gYXR0ZW1wdCB0byBzdGFiaWxp
emUgdGhpcy4KLSNpZiBDT01QSUxFUihNU1ZDKQotI3ByYWdtYSB3YXJuaW5nKHB1c2gpCi0jcHJh
Z21hIHdhcm5pbmcoZGlzYWJsZTogNDMyNCkgLy8gRGlzYWJsZSAic3RydWN0dXJlIHdhcyBwYWRk
ZWQgZHVlIHRvIGFsaWdubWVudCBzcGVjaWZpZXIiIHdhcm5pbmcKLSNlbmRpZgotICAgIGNsYXNz
IGFsaWduYXMoMzIpIEpJVCA6IHByaXZhdGUgSlNJbnRlcmZhY2VKSVQgeworICAgIGNsYXNzIEpJ
VF9DTEFTU19BTElHTk1FTlQgSklUIDogcHJpdmF0ZSBKU0ludGVyZmFjZUpJVCB7CiAgICAgICAg
IGZyaWVuZCBjbGFzcyBKSVRTbG93UGF0aENhbGw7CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKSVRT
dHViQ2FsbDsKIApAQCAtOTQ3LDkgKzk0OSw2IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICBi
b29sIG1fc2hvdWxkVXNlSW5kZXhNYXNraW5nOwogICAgICAgICB1bnNpZ25lZCBtX2xvb3BPU1JF
bnRyeUJ5dGVjb2RlT2Zmc2V0IHsgMCB9OwogICAgIH07Ci0jaWYgQ09NUElMRVIoTVNWQykKLSNw
cmFnbWEgd2FybmluZyhwb3ApCi0jZW5kaWYKIAogfSAvLyBuYW1lc3BhY2UgSlNDCiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>337517</attachid>
            <date>2018-04-09 12:03:29 -0700</date>
            <delta_ts>2018-04-09 12:03:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-183508-20180409120328.patch</filename>
            <type>text/plain</type>
            <size>19983</size>
            <attacher name="youenn fablet">youennf</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjMwMzg4CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
MjBjMTJjMWQyNDZmOTBjMjM4N2EwMzBlYjM4ZWEzYzlhZWI4YThjLi44M2IyNmU1ZjRjNzVkMWUz
ZGVlNzcxYjg4MWFjNTQ1MzA1Zjg4NzRlIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMCBAQAorMjAxOC0wNC0wOCAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWls
LmNvbT4KKworICAgICAgICBVbnJldmlld2VkLCBidWlsZCBmaXggZm9yIFdpbmRvd3MgYnkgc3Vw
cHJlc3NpbmcgcGFkZGluZyB3YXJuaW5nIGZvciBKSVQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4MzUwOAorCisgICAgICAgICogaml0L0pJVC5oOgor
CiAyMDE4LTA0LTA4ICBZdXN1a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCiAg
ICAgICAgIFVzZSBhbGlnbmFzIGluc3RlYWQgb2YgY29tcGlsZXItc3BlY2lmaWMgYXR0cmlidXRl
cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nCmluZGV4IDRhNjc1MzU0MGU0ZDI5MmFhODQwZDU0Mzk4MGFlZGI2MTYwYWU2MDMu
LjQwNzYzMWQyYzhhZmVmZjRjMDk3NDc0OTYwZDcwYThlYzIwNGFhZWUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAg
LTEsMyArMSwyNSBAQAorMjAxOC0wNC0wOSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5j
b20+CisKKyAgICAgICAgTWFrZSBQbHVnaW5EYXRhIGNhY2hlIGl0cyB3ZWIgdmlzaWJsZSBwbHVn
aW5zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xODQ0
MjEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBCdWZm
ZXIgdmlzaWJsZSBwbHVnaW5zIHVudGlsIHRoZSBwYWdlIFVSTCBjaGFuZ2VzLgorICAgICAgICBG
b3IgdGhhdCBwdXJwb3NlLCB3ZSBub3cgc3RvcmUgdGhlIHZpc2libGUgcGx1Z2lucyBhbmQgdGhl
IFVSTCBpdCB3YXMgY29tcHV0ZWQgZnJvbSBpbiBQbHVnaW5EYXRhLgorCisgICAgICAgIFVwZGF0
ZSBwbHVnaW4gaW5mbyBwcm92aWRlciBBUEkgdG8gcGFzcyB0aGUgVVJMIHVzZWQgdG8gY2hlY2sg
Zm9yIHBsdWdpbiB2aXNpYmlsaXR5LgorCisgICAgICAgIE5vIG9ic2VydmFibGUgY2hhbmdlIG9m
IGJlaGF2aW9yLgorCisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5jcHA6CisgICAgICAg
ICogcGx1Z2lucy9QbHVnaW5EYXRhLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpbkRhdGE6
OndlYlZpc2libGVQbHVnaW5zIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OlBsdWdpbkRhdGE6
OnB1YmxpY2x5VmlzaWJsZVBsdWdpbnMgY29uc3QpOgorICAgICAgICAoV2ViQ29yZTo6UGx1Z2lu
RGF0YTo6c3VwcG9ydHNNaW1lVHlwZSBjb25zdCk6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5E
YXRhLmg6CisgICAgICAgICogcGx1Z2lucy9QbHVnaW5JbmZvUHJvdmlkZXIuaDoKKwogMjAxOC0w
NC0wOCAgRnVqaWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAg
ICBbQ01ha2VdIFdlYktpdCBzaG91bGQgbGluayB0byBXZWJDb3JlIGFzIGEgUFJJVkFURSBsaWJy
YXJ5IGlmIFdlYkNvcmUgaXMgYSBzdGF0aWMgbGlicmFyeQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwppbmRleCAxY2RiYTQ1ZDkz
MDIyMmMwY2YyOTlmNzhlODk0Y2Q4ODExM2JmNTEwLi5lN2I4YTZjYmMwN2RlYTgzOTU2ZGEwYjE3
MGNhZGVhNzYzNWE4YzA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDE4LTA0LTA5ICBZ
b3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KKworICAgICAgICBNYWtlIFBsdWdpbkRh
dGEgY2FjaGUgaXRzIHdlYiB2aXNpYmxlIHBsdWdpbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4NDQyMQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlbmFtZSBtZXRob2RzLgorICAgICAgICBQYXNzIGFu
IFVSTCBpbnN0ZWFkIG9mIHJlbHlpbmcgb24gUGFnZSBVUkwgYXMgdGhlIHBhZ2UgVVJMCisgICAg
ICAgIG1pZ2h0IG5vdCBhbHdheXMgYmUgdGhlIFVSTCB3ZSB3YW50IHRvIGNoZWNrIGFnYWluc3Qg
cGx1Z2lucy4KKyAgICAgICAgSW4gcGFydGljdWxhciB3aGVuIG5hdmlnYXRpb24gaXMgb24tZ29p
bmcsIHdlIHdhbnQgdG8gY2hlY2sgdGhlCisgICAgICAgIHBsdWdpbnMgYWdhaW5zdCB0aGUgYmVp
bmcgbmF2aWdhdGVkIFVSTC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lucy9XZWJQbHVn
aW5JbmZvUHJvdmlkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQbHVnaW5JbmZvUHJvdmlk
ZXI6OnBsdWdpbkluZm8pOgorICAgICAgICAoV2ViS2l0OjpXZWJQbHVnaW5JbmZvUHJvdmlkZXI6
OndlYlZpc2libGVQbHVnaW5JbmZvKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvV2Vi
UGx1Z2luSW5mb1Byb3ZpZGVyLmg6CisKIDIwMTgtMDQtMDggIEZ1amlpIEhpcm9ub3JpICA8SGly
b25vcmkuRnVqaWlAc29ueS5jb20+CiAKICAgICAgICAgW0NNYWtlXSBXZWJLaXQgc2hvdWxkIGxp
bmsgdG8gV2ViQ29yZSBhcyBhIFBSSVZBVEUgbGlicmFyeSBpZiBXZWJDb3JlIGlzIGEgc3RhdGlj
IGxpYnJhcnkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL0NoYW5nZUxvZwppbmRleCBjNzBmOTY2NGU5YTY1MDNl
NWFmNGRmN2NjNzBiYzFkNjNkMzc3Njc0Li5hMzdmMzIxMTIxMjQyZDkxMzhkY2Y3YjVkNGM2Y2Qw
ZTUwMDAzMDVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdExlZ2FjeS9tYWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMTgtMDQtMDkgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAg
IE1ha2UgUGx1Z2luRGF0YSBjYWNoZSBpdHMgd2ViIHZpc2libGUgcGx1Z2lucworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTg0NDIxCisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJQbHVnaW5JbmZvUHJvdmlkZXIuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbHVn
aW5JbmZvUHJvdmlkZXIubW06CisgICAgICAgIChXZWJQbHVnaW5JbmZvUHJvdmlkZXI6OnBsdWdp
bkluZm8pOgorICAgICAgICAoV2ViUGx1Z2luSW5mb1Byb3ZpZGVyOjp3ZWJWaXNpYmxlUGx1Z2lu
SW5mbyk6CisKIDIwMTgtMDQtMDUgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5j
b20+CiAKICAgICAgICAgW1dURl0gUmVtb3ZlIFN0YXRpY0xvY2sKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL0No
YW5nZUxvZwppbmRleCBhNmE3NWVjYjJlZjdkMzRmOGZlYThhZDdlNjI3YTZkZjg1MjhhYjEyLi5i
MDYwMTJmODIxM2M2MWEzNWExMzA1ZGZkMTM3MjkxZTAxZDBlMTUzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0TGVnYWN5L3dpbi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93
aW4vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTgtMDQtMDkgIFlvdWVubiBGYWJsZXQg
IDx5b3Vlbm5AYXBwbGUuY29tPgorCisgICAgICAgIE1ha2UgUGx1Z2luRGF0YSBjYWNoZSBpdHMg
d2ViIHZpc2libGUgcGx1Z2lucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTg0NDIxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJQbHVnaW5JbmZvUHJvdmlkZXIuY3BwOgor
ICAgICAgICAoV2ViUGx1Z2luSW5mb1Byb3ZpZGVyOjpwbHVnaW5JbmZvKToKKyAgICAgICAgKFdl
YlBsdWdpbkluZm9Qcm92aWRlcjo6d2ViVmlzaWJsZVBsdWdpbkluZm8pOgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oOgorCiAyMDE4LTA0LTA1ICBZdXN1
a2UgU3V6dWtpICA8dXRhdGFuZS50ZWFAZ21haWwuY29tPgogCiAgICAgICAgIFtXVEZdIFJlbW92
ZSBTdGF0aWNMb2NrCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5o
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaAppbmRleCA1ZTZmNTU4MmMwOTVkODg0
YjU3MWYwMTAyNDMwYzdiNzIyZWMxMGRjLi43MWY4NzNiMTNjYzZmODFjZTUwMDBiNWQ5MzBjMGEw
MWUxMGNhZDE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5oCisr
KyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKQEAgLTE3MCw2ICsxNzAsMTAgQEAg
bmFtZXNwYWNlIEpTQyB7CiAKICAgICAvLyBXZSd2ZSBydW4gaW50byBzb21lIHByb2JsZW1zIHdo
ZXJlIGNoYW5naW5nIHRoZSBzaXplIG9mIHRoZSBjbGFzcyBKSVQgbGVhZHMgdG8KICAgICAvLyBw
ZXJmb3JtYW5jZSBmbHVjdHVhdGlvbnMuIFRyeSBmb3JjaW5nIGFsaWdubWVudCBpbiBhbiBhdHRl
bXB0IHRvIHN0YWJpbGl6ZSB0aGlzLgorI2lmIENPTVBJTEVSKE1TVkMpCisjcHJhZ21hIHdhcm5p
bmcocHVzaCkKKyNwcmFnbWEgd2FybmluZyhkaXNhYmxlOiA0MzI0KSAvLyBEaXNhYmxlICJzdHJ1
Y3R1cmUgd2FzIHBhZGRlZCBkdWUgdG8gYWxpZ25tZW50IHNwZWNpZmllciIgd2FybmluZworI2Vu
ZGlmCiAgICAgY2xhc3MgYWxpZ25hcygzMikgSklUIDogcHJpdmF0ZSBKU0ludGVyZmFjZUpJVCB7
CiAgICAgICAgIGZyaWVuZCBjbGFzcyBKSVRTbG93UGF0aENhbGw7CiAgICAgICAgIGZyaWVuZCBj
bGFzcyBKSVRTdHViQ2FsbDsKQEAgLTk0Myw2ICs5NDcsOSBAQCBuYW1lc3BhY2UgSlNDIHsKICAg
ICAgICAgYm9vbCBtX3Nob3VsZFVzZUluZGV4TWFza2luZzsKICAgICAgICAgdW5zaWduZWQgbV9s
b29wT1NSRW50cnlCeXRlY29kZU9mZnNldCB7IDAgfTsKICAgICB9OworI2lmIENPTVBJTEVSKE1T
VkMpCisjcHJhZ21hIHdhcm5pbmcocG9wKQorI2VuZGlmCiAKIH0gLy8gbmFtZXNwYWNlIEpTQwog
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCmluZGV4IDFlZDNjYjE0MWFiMzc0
MWQzMGEwOGEzNmVlZjUyNGU1ZDBhZWYwZjguLmZmZGZhZmFhNDNlMzNkNzhiNDA5NzQ1Y2M2ZmQx
YTdkMDRhZGNmNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVu
dHMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuY3BwCkBAIC0z
MjUsOCArMzI1LDggQEAgY2xhc3MgRW1wdHlQYXltZW50Q29vcmRpbmF0b3JDbGllbnQgZmluYWwg
OiBwdWJsaWMgUGF5bWVudENvb3JkaW5hdG9yQ2xpZW50IHsKIAogY2xhc3MgRW1wdHlQbHVnaW5J
bmZvUHJvdmlkZXIgZmluYWwgOiBwdWJsaWMgUGx1Z2luSW5mb1Byb3ZpZGVyIHsKICAgICB2b2lk
IHJlZnJlc2hQbHVnaW5zKCkgZmluYWwgeyB9OwotICAgIHZvaWQgZ2V0UGx1Z2luSW5mbyhQYWdl
JiwgVmVjdG9yPFBsdWdpbkluZm8+Jiwgc3RkOjpvcHRpb25hbDxWZWN0b3I8U3VwcG9ydGVkUGx1
Z2luTmFtZT4+JikgZmluYWwgeyB9Ci0gICAgdm9pZCBnZXRXZWJWaXNpYmxlUGx1Z2luSW5mbyhQ
YWdlJiwgVmVjdG9yPFBsdWdpbkluZm8+JikgZmluYWwgeyB9CisgICAgVmVjdG9yPFBsdWdpbklu
Zm8+IHBsdWdpbkluZm8oUGFnZSYsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRlZFBsdWdp
bk5hbWU+PiYpIGZpbmFsIHsgcmV0dXJuIHsgfTsgfQorICAgIFZlY3RvcjxQbHVnaW5JbmZvPiB3
ZWJWaXNpYmxlUGx1Z2luSW5mbyhQYWdlJiwgY29uc3QgVVJMJikgZmluYWwgeyByZXR1cm4geyB9
OyB9CiB9OwogCiBjbGFzcyBFbXB0eVBvcHVwTWVudSA6IHB1YmxpYyBQb3B1cE1lbnUgewpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5EYXRhLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsdWdpbnMvUGx1Z2luRGF0YS5jcHAKaW5kZXggZDNiYzA2YWFhZjhiZTJkNmI0OGVk
MTA5NTVlYTJkMjUwMGJlYjdlYS4uYTlhNWEwMzllODZiYjNiYmI0Y2NmMDQ3MTM2OTFmZmQzOWMy
YzhiOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5EYXRhLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbHVnaW5zL1BsdWdpbkRhdGEuY3BwCkBAIC0yNCw2ICsyNCw3
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiUGx1Z2luRGF0YS5oIgogCisjaW5j
bHVkZSAiRG9jdW1lbnQuaCIKICNpbmNsdWRlICJMb2NhbGl6ZWRTdHJpbmdzLmgiCiAjaW5jbHVk
ZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsdWdpbkluZm9Qcm92aWRlci5oIgpAQCAtMzYsMTEgKzM3
LDE4IEBAIFBsdWdpbkRhdGE6OlBsdWdpbkRhdGEoUGFnZSYgcGFnZSkKICAgICBpbml0UGx1Z2lu
cygpOwogfQogCi1WZWN0b3I8UGx1Z2luSW5mbz4gUGx1Z2luRGF0YTo6d2ViVmlzaWJsZVBsdWdp
bnMoKSBjb25zdAorY29uc3QgVmVjdG9yPFBsdWdpbkluZm8+JiBQbHVnaW5EYXRhOjp3ZWJWaXNp
YmxlUGx1Z2lucygpIGNvbnN0CiB7Ci0gICAgVmVjdG9yPFBsdWdpbkluZm8+IHBsdWdpbnM7Ci0g
ICAgbV9wYWdlLnBsdWdpbkluZm9Qcm92aWRlcigpLmdldFdlYlZpc2libGVQbHVnaW5JbmZvKG1f
cGFnZSwgcGx1Z2lucyk7Ci0gICAgcmV0dXJuIHBsdWdpbnM7CisgICAgYXV0byBkb2N1bWVudFVS
TCA9IG1fcGFnZS5tYWluRnJhbWUoKS5kb2N1bWVudCgpID8gbV9wYWdlLm1haW5GcmFtZSgpLmRv
Y3VtZW50KCktPnVybCgpIDogVVJMIHsgfTsKKyAgICBpZiAoIWRvY3VtZW50VVJMLmlzTnVsbCgp
ICYmICFwcm90b2NvbEhvc3RBbmRQb3J0QXJlRXF1YWwobV9wYWdlVVJMLCBkb2N1bWVudFVSTCkp
IHsKKyAgICAgICAgbV9wYWdlVVJMID0gV1RGTW92ZShkb2N1bWVudFVSTCk7CisgICAgICAgIG1f
dmlzaWJsZVBsdWdpbnMgPSB7IH07CisgICAgfQorCisgICAgaWYgKG1fdmlzaWJsZVBsdWdpbnMu
aXNFbXB0eSgpKQorICAgICAgICBtX3Zpc2libGVQbHVnaW5zID0gbV9wYWdlLnBsdWdpbkluZm9Q
cm92aWRlcigpLndlYlZpc2libGVQbHVnaW5JbmZvKG1fcGFnZSwgbV9wYWdlVVJMKTsKKworICAg
IHJldHVybiBtX3Zpc2libGVQbHVnaW5zOwogfQogCiAjaWYgUExBVEZPUk0oQ09DT0EpCkBAIC03
MywxNyArODEsMTQgQEAgc3RhdGljIGJvb2wgc2hvdWxkQmVQdWJsaWNseVZpc2libGUoY29uc3Qg
UGx1Z2luSW5mbyYgcGx1Z2luKQogCiBWZWN0b3I8UGx1Z2luSW5mbz4gUGx1Z2luRGF0YTo6cHVi
bGljbHlWaXNpYmxlUGx1Z2lucygpIGNvbnN0CiB7CisgICAgYXV0byBwbHVnaW5zID0gd2ViVmlz
aWJsZVBsdWdpbnMoKTsKKwogICAgIGlmIChtX3BhZ2Uuc2hvd0FsbFBsdWdpbnMoKSkKLSAgICAg
ICAgcmV0dXJuIHdlYlZpc2libGVQbHVnaW5zKCk7CisgICAgICAgIHJldHVybiBwbHVnaW5zOwog
ICAgIAotICAgIFZlY3RvcjxQbHVnaW5JbmZvPiBhbGxQbHVnaW5zOwotICAgIG1fcGFnZS5wbHVn
aW5JbmZvUHJvdmlkZXIoKS5nZXRXZWJWaXNpYmxlUGx1Z2luSW5mbyhtX3BhZ2UsIGFsbFBsdWdp
bnMpOwotCi0gICAgVmVjdG9yPFBsdWdpbkluZm8+IHBsdWdpbnM7Ci0gICAgZm9yIChhdXRvJiYg
cGx1Z2luIDogYWxsUGx1Z2lucykgewotICAgICAgICBpZiAoc2hvdWxkQmVQdWJsaWNseVZpc2li
bGUocGx1Z2luKSkKLSAgICAgICAgICAgIHBsdWdpbnMuYXBwZW5kKFdURk1vdmUocGx1Z2luKSk7
Ci0gICAgfQorICAgIHBsdWdpbnMucmVtb3ZlQWxsTWF0Y2hpbmcoW10oYXV0byYgcGx1Z2luKSB7
CisgICAgICAgIHJldHVybiAhc2hvdWxkQmVQdWJsaWNseVZpc2libGUocGx1Z2luKTsKKyAgICB9
KTsKIAogICAgIHN0ZDo6c29ydChwbHVnaW5zLmJlZ2luKCksIHBsdWdpbnMuZW5kKCksIFtdKGNv
bnN0IFBsdWdpbkluZm8mIGEsIGNvbnN0IFBsdWdpbkluZm8mIGIpIHsKICAgICAgICAgcmV0dXJu
IGNvZGVQb2ludENvbXBhcmVMZXNzVGhhbihhLm5hbWUsIGIubmFtZSk7CkBAIC0xNzQsNyArMTc5
LDcgQEAgdm9pZCBQbHVnaW5EYXRhOjppbml0UGx1Z2lucygpCiB7CiAgICAgQVNTRVJUKG1fcGx1
Z2lucy5pc0VtcHR5KCkpOwogCi0gICAgbV9wYWdlLnBsdWdpbkluZm9Qcm92aWRlcigpLmdldFBs
dWdpbkluZm8obV9wYWdlLCBtX3BsdWdpbnMsIG1fc3VwcG9ydGVkUGx1Z2luTmFtZXMpOworICAg
IG1fcGx1Z2lucyA9IG1fcGFnZS5wbHVnaW5JbmZvUHJvdmlkZXIoKS5wbHVnaW5JbmZvKG1fcGFn
ZSwgbV9zdXBwb3J0ZWRQbHVnaW5OYW1lcyk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luRGF0YS5oIGIvU291cmNl
L1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5EYXRhLmgKaW5kZXggYTlhOWZmZjBkNzg3ZWMxMGYyY2M3
NGU5MThhZmY5NjAwYTI3MjhiYy4uNWFhZjZlZjA3NTI0MzBkYTM3MWNjNTcxMTZmNzMwZDhiZDI3
N2Q0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5EYXRhLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5EYXRhLmgKQEAgLTEwMiw3ICsxMDIsNyBA
QCBwdWJsaWM6CiAgICAgc3RhdGljIFJlZjxQbHVnaW5EYXRhPiBjcmVhdGUoUGFnZSYgcGFnZSkg
eyByZXR1cm4gYWRvcHRSZWYoKm5ldyBQbHVnaW5EYXRhKHBhZ2UpKTsgfQogCiAgICAgY29uc3Qg
VmVjdG9yPFBsdWdpbkluZm8+JiBwbHVnaW5zKCkgY29uc3QgeyByZXR1cm4gbV9wbHVnaW5zOyB9
Ci0gICAgVmVjdG9yPFBsdWdpbkluZm8+IHdlYlZpc2libGVQbHVnaW5zKCkgY29uc3Q7CisgICAg
Y29uc3QgVmVjdG9yPFBsdWdpbkluZm8+JiB3ZWJWaXNpYmxlUGx1Z2lucygpIGNvbnN0OwogICAg
IFZlY3RvcjxQbHVnaW5JbmZvPiBwdWJsaWNseVZpc2libGVQbHVnaW5zKCkgY29uc3Q7CiAgICAg
V0VCQ09SRV9FWFBPUlQgdm9pZCBnZXRXZWJWaXNpYmxlTWltZXNBbmRQbHVnaW5JbmRpY2VzKFZl
Y3RvcjxNaW1lQ2xhc3NJbmZvPiYsIFZlY3RvcjxzaXplX3Q+JikgY29uc3Q7CiAKQEAgLTEyNyw2
ICsxMjcsOSBAQCBwcm90ZWN0ZWQ6CiAgICAgUGFnZSYgbV9wYWdlOwogICAgIFZlY3RvcjxQbHVn
aW5JbmZvPiBtX3BsdWdpbnM7CiAgICAgc3RkOjpvcHRpb25hbDxWZWN0b3I8U3VwcG9ydGVkUGx1
Z2luTmFtZT4+IG1fc3VwcG9ydGVkUGx1Z2luTmFtZXM7CisKKyAgICBtdXRhYmxlIFVSTCBtX3Bh
Z2VVUkw7CisgICAgbXV0YWJsZSBWZWN0b3I8UGx1Z2luSW5mbz4gbV92aXNpYmxlUGx1Z2luczsK
IH07CiAKIGlubGluZSBib29sIGlzU3VwcG9ydGVkUGx1Z2luKGNvbnN0IFZlY3RvcjxTdXBwb3J0
ZWRQbHVnaW5OYW1lPiYgcGx1Z2luTmFtZXMsIGNvbnN0IFVSTCYgcGFnZVVSTCwgY29uc3QgU3Ry
aW5nJiBwbHVnaW5OYW1lKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGx1Z2lucy9QbHVn
aW5JbmZvUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsdWdpbnMvUGx1Z2luSW5mb1Byb3Zp
ZGVyLmgKaW5kZXggYjAzY2QyZTIzZmQwNGZiMmQxZmMyZDE0NzhkMGNmZGE1NWJiNTQxMi4uMDcy
ZjA4M2M1NjRkMGM0YWRhNjFmODc0MDE4ZDM5NmJlNzY1ZjdiMCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGx1Z2lucy9QbHVnaW5JbmZvUHJvdmlkZXIuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbHVnaW5zL1BsdWdpbkluZm9Qcm92aWRlci5oCkBAIC0zOSw4ICszOSw4IEBAIHB1YmxpYzoK
ICAgICB2b2lkIGFkZFBhZ2UoUGFnZSYpOwogICAgIHZvaWQgcmVtb3ZlUGFnZShQYWdlJik7CiAK
LSAgICB2aXJ0dWFsIHZvaWQgZ2V0UGx1Z2luSW5mbyhQYWdlJiwgVmVjdG9yPFBsdWdpbkluZm8+
Jiwgc3RkOjpvcHRpb25hbDxWZWN0b3I8U3VwcG9ydGVkUGx1Z2luTmFtZT4+JikgPSAwOwotICAg
IHZpcnR1YWwgdm9pZCBnZXRXZWJWaXNpYmxlUGx1Z2luSW5mbyhQYWdlJiwgVmVjdG9yPFBsdWdp
bkluZm8+JikgPSAwOworICAgIHZpcnR1YWwgVmVjdG9yPFBsdWdpbkluZm8+IHBsdWdpbkluZm8o
UGFnZSYsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRlZFBsdWdpbk5hbWU+PiYpID0gMDsK
KyAgICB2aXJ0dWFsIFZlY3RvcjxQbHVnaW5JbmZvPiB3ZWJWaXNpYmxlUGx1Z2luSW5mbyhQYWdl
JiwgY29uc3QgVVJMJikgPSAwOwogCiBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCByZWZyZXNo
UGx1Z2lucygpID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVn
aW5zL1dlYlBsdWdpbkluZm9Qcm92aWRlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1dlYlByb2Nlc3Mv
UGx1Z2lucy9XZWJQbHVnaW5JbmZvUHJvdmlkZXIuY3BwCmluZGV4IDE4ZjAzMTJlZDJmMWQxNmIw
NTA5ZWY2Y2EyODIyYmE5YWZiNTQyYmQuLjM0N2Y1ODg1N2M1ZDgyY2EwZjk5YWUyMGY3ZjY1ODIw
NWUxNjcyMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1dl
YlBsdWdpbkluZm9Qcm92aWRlci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1Bs
dWdpbnMvV2ViUGx1Z2luSW5mb1Byb3ZpZGVyLmNwcApAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1
ZGUgPFdlYkNvcmUvRnJhbWUuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lTG9hZGVyLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9QYWdlLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9TY2hlbWVSZWdpc3Ry
eS5oPgogI2luY2x1ZGUgPFdlYkNvcmUvU3ViZnJhbWVMb2FkZXIuaD4KICNpbmNsdWRlIDx3dGYv
dGV4dC9TdHJpbmdIYXNoLmg+CiAKQEAgLTk2LDcgKzk3LDcgQEAgdm9pZCBXZWJQbHVnaW5JbmZv
UHJvdmlkZXI6OnJlZnJlc2hQbHVnaW5zKCkKICNlbmRpZgogfQogCi12b2lkIFdlYlBsdWdpbklu
Zm9Qcm92aWRlcjo6Z2V0UGx1Z2luSW5mbyhQYWdlJiBwYWdlLCBWZWN0b3I8UGx1Z2luSW5mbz4m
IHBsdWdpbnMsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRlZFBsdWdpbk5hbWU+PiYgc3Vw
cG9ydGVkUGx1Z2luTmFtZXMpCitWZWN0b3I8UGx1Z2luSW5mbz4gV2ViUGx1Z2luSW5mb1Byb3Zp
ZGVyOjpwbHVnaW5JbmZvKFBhZ2UmIHBhZ2UsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRl
ZFBsdWdpbk5hbWU+PiYgc3VwcG9ydGVkUGx1Z2luTmFtZXMpCiB7CiAjaWYgRU5BQkxFKE5FVFND
QVBFX1BMVUdJTl9BUEkpCiAgICAgcG9wdWxhdGVQbHVnaW5DYWNoZShwYWdlKTsKQEAgLTEwNCwz
NyArMTA1LDI2IEBAIHZvaWQgV2ViUGx1Z2luSW5mb1Byb3ZpZGVyOjpnZXRQbHVnaW5JbmZvKFBh
Z2UmIHBhZ2UsIFZlY3RvcjxQbHVnaW5JbmZvPiYgcGx1Z2luCiAgICAgaWYgKG1fY2FjaGVkU3Vw
cG9ydGVkUGx1Z2luTmFtZXMpCiAgICAgICAgIHN1cHBvcnRlZFBsdWdpbk5hbWVzID0gKm1fY2Fj
aGVkU3VwcG9ydGVkUGx1Z2luTmFtZXM7CiAKLSAgICBpZiAocGFnZS5tYWluRnJhbWUoKS5sb2Fk
ZXIoKS5zdWJmcmFtZUxvYWRlcigpLmFsbG93UGx1Z2lucygpKSB7Ci0gICAgICAgIHBsdWdpbnMg
PSBtX2NhY2hlZFBsdWdpbnM7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBwbHVnaW5z
ID0gbV9jYWNoZWRBcHBsaWNhdGlvblBsdWdpbnM7CisgICAgcmV0dXJuIHBhZ2UubWFpbkZyYW1l
KCkubG9hZGVyKCkuc3ViZnJhbWVMb2FkZXIoKS5hbGxvd1BsdWdpbnMoKSA/IG1fY2FjaGVkUGx1
Z2lucyA6IG1fY2FjaGVkQXBwbGljYXRpb25QbHVnaW5zOwogI2Vsc2UKICAgICBVTlVTRURfUEFS
QU0ocGFnZSk7Ci0gICAgVU5VU0VEX1BBUkFNKHBsdWdpbnMpOworICAgIFVOVVNFRF9QQVJBTShz
dXBwb3J0ZWRQbHVnaW5OYW1lcyk7CisgICAgcmV0dXJuIHsgfTsKICNlbmRpZiAvLyBFTkFCTEUo
TkVUU0NBUEVfUExVR0lOX0FQSSkKIH0KIAotdm9pZCBXZWJQbHVnaW5JbmZvUHJvdmlkZXI6Omdl
dFdlYlZpc2libGVQbHVnaW5JbmZvKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIFZlY3RvcjxXZWJDb3Jl
OjpQbHVnaW5JbmZvPiYgcGx1Z2lucykKK1ZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiBXZWJQ
bHVnaW5JbmZvUHJvdmlkZXI6OndlYlZpc2libGVQbHVnaW5JbmZvKFBhZ2UmIHBhZ2UsIGNvbnN0
IFdlYkNvcmU6OlVSTCYgdXJsKQogewotICAgIEFTU0VSVF9BUkcocGx1Z2lucywgcGx1Z2lucy5p
c0VtcHR5KCkpOwotCiAgICAgc3RkOjpvcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6U3VwcG9ydGVk
UGx1Z2luTmFtZT4+IHN1cHBvcnRlZFBsdWdpbk5hbWVzOwotICAgIGdldFBsdWdpbkluZm8ocGFn
ZSwgcGx1Z2lucywgc3VwcG9ydGVkUGx1Z2luTmFtZXMpOworICAgIGF1dG8gcGx1Z2lucyA9IHBs
dWdpbkluZm8ocGFnZSwgc3VwcG9ydGVkUGx1Z2luTmFtZXMpOwogCi0gICAgYXV0byogZG9jdW1l
bnQgPSBwYWdlLm1haW5GcmFtZSgpLmRvY3VtZW50KCk7Ci0KLSAgICBpZiAoZG9jdW1lbnQgJiYg
c3VwcG9ydGVkUGx1Z2luTmFtZXMpIHsKLSAgICAgICAgcGx1Z2lucy5yZW1vdmVBbGxNYXRjaGlu
ZyhbJl0gKGF1dG8mIHBsdWdpbikgewotICAgICAgICAgICAgcmV0dXJuICFpc1N1cHBvcnRlZFBs
dWdpbigqc3VwcG9ydGVkUGx1Z2luTmFtZXMsIGRvY3VtZW50LT51cmwoKSwgcGx1Z2luLm5hbWUp
OwotICAgICAgICB9KTsKLSAgICB9CisgICAgcGx1Z2lucy5yZW1vdmVBbGxNYXRjaGluZyhbJl0g
KGF1dG8mIHBsdWdpbikgeworICAgICAgICByZXR1cm4gc3VwcG9ydGVkUGx1Z2luTmFtZXMgJiYg
IWlzU3VwcG9ydGVkUGx1Z2luKCpzdXBwb3J0ZWRQbHVnaW5OYW1lcywgdXJsLCBwbHVnaW4ubmFt
ZSk7CisgICAgfSk7CiAKICNpZiBQTEFURk9STShNQUMpCi0gICAgYXV0byogb3JpZ2luID0gZG9j
dW1lbnQgPyAmZG9jdW1lbnQtPnNlY3VyaXR5T3JpZ2luKCk6IG51bGxwdHI7Ci0gICAgaWYgKG9y
aWdpbiAmJiBvcmlnaW4tPmlzTG9jYWwoKSkKLSAgICAgICAgcmV0dXJuOworICAgIGlmIChTY2hl
bWVSZWdpc3RyeTo6c2hvdWxkVHJlYXRVUkxTY2hlbWVBc0xvY2FsKHVybC5wcm90b2NvbCgpLnRv
U3RyaW5nKCkpKQorICAgICAgICByZXR1cm4gcGx1Z2luczsKIAogICAgIGZvciAoaW50MzJfdCBp
ID0gcGx1Z2lucy5zaXplKCkgLSAxOyBpID49IDA7IC0taSkgewogICAgICAgICBhdXRvJiBpbmZv
ID0gcGx1Z2lucy5hdChpKTsKQEAgLTE0Nyw2ICsxMzcsNyBAQCB2b2lkIFdlYlBsdWdpbkluZm9Q
cm92aWRlcjo6Z2V0V2ViVmlzaWJsZVBsdWdpbkluZm8oV2ViQ29yZTo6UGFnZSYgcGFnZSwgVmVj
dG9yPAogICAgICAgICAgICAgcGx1Z2lucy5yZW1vdmUoaSk7CiAgICAgfQogI2VuZGlmCisgICAg
cmV0dXJuIHBsdWdpbnM7CiB9CiAKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViUHJvY2Vzcy9QbHVnaW5zL1dlYlBsdWdpbkluZm9Q
cm92aWRlci5oIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvV2ViUGx1Z2luSW5m
b1Byb3ZpZGVyLmgKaW5kZXggM2Y2NDBmMWQxMjlhZDU5Y2FhYjY5OGNkNWQ1NTA5Y2NmOWRjMDZk
OC4uMmExYmRkMDgyNDY5MjFkYjc0NjVmNGRkMDhmMmQ4Y2RmY2YxMjc2ZCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvV2ViUGx1Z2luSW5mb1Byb3ZpZGVyLmgK
KysrIGIvU291cmNlL1dlYktpdC9XZWJQcm9jZXNzL1BsdWdpbnMvV2ViUGx1Z2luSW5mb1Byb3Zp
ZGVyLmgKQEAgLTQ1LDggKzQ1LDggQEAgcHVibGljOgogcHJpdmF0ZToKICAgICBXZWJQbHVnaW5J
bmZvUHJvdmlkZXIoKTsKIAotICAgIHZvaWQgZ2V0UGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiwg
VmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+Jiwgc3RkOjpvcHRpb25hbDxWZWN0b3I8V2ViQ29y
ZTo6U3VwcG9ydGVkUGx1Z2luTmFtZT4+JikgZmluYWw7Ci0gICAgdm9pZCBnZXRXZWJWaXNpYmxl
UGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiwgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+Jikg
ZmluYWw7CisgICAgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+IHBsdWdpbkluZm8oV2ViQ29y
ZTo6UGFnZSYsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFdlYkNvcmU6OlN1cHBvcnRlZFBsdWdpbk5h
bWU+PiYpIGZpbmFsOworICAgIFZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiB3ZWJWaXNpYmxl
UGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAg
ICAgdm9pZCByZWZyZXNoUGx1Z2lucygpIG92ZXJyaWRlOwogCiAjaWYgRU5BQkxFKE5FVFNDQVBF
X1BMVUdJTl9BUEkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJQbHVnaW5JbmZvUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCmluZGV4IDNlNjk1ZWU3YWNi
YzA0MGVkM2RhNzNhMzNlNWYxMWY5NWUzZTM2MWMuLjgxMzI0NzJiOGIzNWI0ZTAxZWMyNzI5YzE4
YjVlMzRhOGJkYjc0YWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvbWFjL1dlYkNv
cmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdh
Y3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCkBAIC0zNCw4ICsz
NCw4IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICB2b2lkIHJlZnJlc2hQbHVnaW5zKCkgb3Zl
cnJpZGU7Ci0gICAgdm9pZCBnZXRQbHVnaW5JbmZvKFdlYkNvcmU6OlBhZ2UmLCBWZWN0b3I8V2Vi
Q29yZTo6UGx1Z2luSW5mbz4mLCBzdGQ6Om9wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpTdXBwb3J0
ZWRQbHVnaW5OYW1lPj4mKSBmaW5hbDsKLSAgICB2b2lkIGdldFdlYlZpc2libGVQbHVnaW5JbmZv
KFdlYkNvcmU6OlBhZ2UmLCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mKSBmaW5hbDsKKyAg
ICBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4gcGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiwg
c3RkOjpvcHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6U3VwcG9ydGVkUGx1Z2luTmFtZT4+JikgZmlu
YWw7CisgICAgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+IHdlYlZpc2libGVQbHVnaW5JbmZv
KFdlYkNvcmU6OlBhZ2UmLCBjb25zdCBXZWJDb3JlOjpVUkwmKSBmaW5hbDsKIAogICAgIFdlYlBs
dWdpbkluZm9Qcm92aWRlcigpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXRMZWdhY3kv
bWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5tbSBiL1NvdXJjZS9XZWJL
aXRMZWdhY3kvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5tbQppbmRl
eCA5ZDJhN2RiYjRjMjQxNzZhZWU0MmYzY2NmY2M3N2EyNGI2NzNiYmJhLi4yZWRlMTlhZDg4OWZl
MzRiOTE3NTAyMzIwMTdiNWU0Y2I5N2RkYzkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0TGVn
YWN5L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJQbHVnaW5JbmZvUHJvdmlkZXIubW0KKysrIGIvU291
cmNlL1dlYktpdExlZ2FjeS9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViUGx1Z2luSW5mb1Byb3ZpZGVy
Lm1tCkBAIC01NSwyMiArNTUsMjcgQEAgdm9pZCBXZWJQbHVnaW5JbmZvUHJvdmlkZXI6OnJlZnJl
c2hQbHVnaW5zKCkKICAgICBbW1dlYlBsdWdpbkRhdGFiYXNlIHNoYXJlZERhdGFiYXNlSWZFeGlz
dHNdIHJlZnJlc2hdOwogfQogCi12b2lkIFdlYlBsdWdpbkluZm9Qcm92aWRlcjo6Z2V0UGx1Z2lu
SW5mbyhXZWJDb3JlOjpQYWdlJiBwYWdlLCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mIHBs
dWdpbnMsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRlZFBsdWdpbk5hbWU+PiYpCitWZWN0
b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4gV2ViUGx1Z2luSW5mb1Byb3ZpZGVyOjpwbHVnaW5JbmZv
KFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIHN0ZDo6b3B0aW9uYWw8VmVjdG9yPFN1cHBvcnRlZFBsdWdp
bk5hbWU+PiYpCiB7CisgICAgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+IHBsdWdpbnM7CisK
ICAgICBCRUdJTl9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiAKKwogICAgIC8vIFdlYktpdDEgaGFz
IG5vIGFwcGxpY2F0aW9uIHBsdWctaW5zLCBzbyB3ZSBkb24ndCBuZWVkIHRvIGFkZCB0aGVtIGhl
cmUuCiAgICAgaWYgKCFwYWdlLm1haW5GcmFtZSgpLmxvYWRlcigpLnN1YmZyYW1lTG9hZGVyKCku
YWxsb3dQbHVnaW5zKCkpCi0gICAgICAgIHJldHVybjsKKyAgICAgICAgcmV0dXJuIHBsdWdpbnM7
CiAKICAgICBmb3IgKFdlYlBsdWdpblBhY2thZ2UgKnBsdWdpbiBpbiBbV2ViUGx1Z2luRGF0YWJh
c2Ugc2hhcmVkRGF0YWJhc2VdLnBsdWdpbnMpCiAgICAgICAgIHBsdWdpbnMuYXBwZW5kKHBsdWdp
bi5wbHVnaW5JbmZvKTsKIAogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CisKKyAgICBy
ZXR1cm4gcGx1Z2luczsKIH0KIAotdm9pZCBXZWJQbHVnaW5JbmZvUHJvdmlkZXI6OmdldFdlYlZp
c2libGVQbHVnaW5JbmZvKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIFZlY3RvcjxXZWJDb3JlOjpQbHVn
aW5JbmZvPiYgcGx1Z2lucykKK1ZlY3RvcjxXZWJDb3JlOjpQbHVnaW5JbmZvPiBXZWJQbHVnaW5J
bmZvUHJvdmlkZXI6OndlYlZpc2libGVQbHVnaW5JbmZvKFdlYkNvcmU6OlBhZ2UmIHBhZ2UsIGNv
bnN0IFdlYkNvcmU6OlVSTCYpCiB7CiAgICAgc3RkOjpvcHRpb25hbDxWZWN0b3I8U3VwcG9ydGVk
UGx1Z2luTmFtZT4+IHN1cHBvcnRlZFBsdWdpbk5hbWVzOwotICAgIGdldFBsdWdpbkluZm8ocGFn
ZSwgcGx1Z2lucywgc3VwcG9ydGVkUGx1Z2luTmFtZXMpOworICAgIHJldHVybiBwbHVnaW5JbmZv
KHBhZ2UsIHN1cHBvcnRlZFBsdWdpbk5hbWVzKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5jcHAgYi9T
b3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3VwcG9ydC9XZWJQbHVnaW5JbmZvUHJvdmlk
ZXIuY3BwCmluZGV4IGRjOGZhYjY4YTBhNzFhOWYwNTFkZjExNTVhNGMyZDI4ZjUyZmYxZGEuLjE1
OTQyYTgxMjVjMGUyZmQ5YzRmM2QxZDdjMjVkNjExYTg0MGU4MDIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5j
cHAKKysrIGIvU291cmNlL1dlYktpdExlZ2FjeS93aW4vV2ViQ29yZVN1cHBvcnQvV2ViUGx1Z2lu
SW5mb1Byb3ZpZGVyLmNwcApAQCAtNDksOCArNDksOSBAQCB2b2lkIFdlYlBsdWdpbkluZm9Qcm92
aWRlcjo6cmVmcmVzaFBsdWdpbnMoKQogICAgIFBsdWdpbkRhdGFiYXNlOjppbnN0YWxsZWRQbHVn
aW5zKCktPnJlZnJlc2goKTsKIH0KIAotdm9pZCBXZWJQbHVnaW5JbmZvUHJvdmlkZXI6OmdldFBs
dWdpbkluZm8oV2ViQ29yZTo6UGFnZSYgcGFnZSwgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+
JiBvdXRQbHVnaW5zLCBzdGQ6Om9wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpTdXBwb3J0ZWRQbHVn
aW5OYW1lPj4mKQorVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+IFdlYlBsdWdpbkluZm9Qcm92
aWRlcjo6cGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiBwYWdlLCBzdGQ6Om9wdGlvbmFsPFZlY3Rv
cjxXZWJDb3JlOjpTdXBwb3J0ZWRQbHVnaW5OYW1lPj4mKQogeworICAgIFZlY3RvcjxXZWJDb3Jl
OjpQbHVnaW5JbmZvPiBvdXRQbHVnaW5zOwogICAgIGNvbnN0IFZlY3RvcjxQbHVnaW5QYWNrYWdl
Kj4mIHBsdWdpbnMgPSBQbHVnaW5EYXRhYmFzZTo6aW5zdGFsbGVkUGx1Z2lucygpLT5wbHVnaW5z
KCk7CiAKICAgICBvdXRQbHVnaW5zLnJlc2l6ZShwbHVnaW5zLnNpemUoKSk7CkBAIC04MCwxMCAr
ODEsMTEgQEAgdm9pZCBXZWJQbHVnaW5JbmZvUHJvdmlkZXI6OmdldFBsdWdpbkluZm8oV2ViQ29y
ZTo6UGFnZSYgcGFnZSwgVmVjdG9yPFdlYkNvcmU6OlAKIAogICAgICAgICBvdXRQbHVnaW5zW2ld
ID0gaW5mbzsKICAgICB9CisgICAgcmV0dXJuIG91dFBsdWdpbnM7CiB9CiAKLXZvaWQgV2ViUGx1
Z2luSW5mb1Byb3ZpZGVyOjpnZXRXZWJWaXNpYmxlUGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiBw
YWdlLCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mIHBsdWdpbnMpCitWZWN0b3I8V2ViQ29y
ZTo6UGx1Z2luSW5mbz4gV2ViUGx1Z2luSW5mb1Byb3ZpZGVyOjp3ZWJWaXNpYmxlUGx1Z2luSW5m
byhXZWJDb3JlOjpQYWdlJiBwYWdlLCBjb25zdCBXZWJDb3JlOjpVUkwmKQogewogICAgIHN0ZDo6
b3B0aW9uYWw8VmVjdG9yPFdlYkNvcmU6OlN1cHBvcnRlZFBsdWdpbk5hbWU+PiBzdXBwb3J0ZWRQ
bHVnaW5OYW1lczsKLSAgICBnZXRQbHVnaW5JbmZvKHBhZ2UsIHBsdWdpbnMsIHN1cHBvcnRlZFBs
dWdpbk5hbWVzKTsKKyAgICByZXR1cm4gcGx1Z2luSW5mbyhwYWdlLCBzdXBwb3J0ZWRQbHVnaW5O
YW1lcyk7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0TGVnYWN5L3dpbi9XZWJDb3JlU3Vw
cG9ydC9XZWJQbHVnaW5JbmZvUHJvdmlkZXIuaCBiL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dl
YkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCmluZGV4IGU3MzI1Y2FjM2UzNWFj
N2E1NmQ2YzcwYzc4MmY5YzQ0YTcwOGUyZWEuLjExOTYxNWFhY2U1YmRkNzMyMTNhZmVmYmZjNzhi
YWI3YmQ3MTg3ZTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXRMZWdhY3kvd2luL1dlYkNvcmVT
dXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCisrKyBiL1NvdXJjZS9XZWJLaXRMZWdhY3kv
d2luL1dlYkNvcmVTdXBwb3J0L1dlYlBsdWdpbkluZm9Qcm92aWRlci5oCkBAIC0zNiw4ICszNiw4
IEBAIHB1YmxpYzoKIAogcHJpdmF0ZToKICAgICB2b2lkIHJlZnJlc2hQbHVnaW5zKCkgZmluYWw7
Ci0gICAgdm9pZCBnZXRQbHVnaW5JbmZvKFdlYkNvcmU6OlBhZ2UmLCBWZWN0b3I8V2ViQ29yZTo6
UGx1Z2luSW5mbz4mLCBzdGQ6Om9wdGlvbmFsPFZlY3RvcjxXZWJDb3JlOjpTdXBwb3J0ZWRQbHVn
aW5OYW1lPj4mKSBmaW5hbDsKLSAgICB2b2lkIGdldFdlYlZpc2libGVQbHVnaW5JbmZvKFdlYkNv
cmU6OlBhZ2UmLCBWZWN0b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4mKSBmaW5hbDsKKyAgICBWZWN0
b3I8V2ViQ29yZTo6UGx1Z2luSW5mbz4gcGx1Z2luSW5mbyhXZWJDb3JlOjpQYWdlJiwgc3RkOjpv
cHRpb25hbDxWZWN0b3I8V2ViQ29yZTo6U3VwcG9ydGVkUGx1Z2luTmFtZT4+JikgZmluYWw7Cisg
ICAgVmVjdG9yPFdlYkNvcmU6OlBsdWdpbkluZm8+IHdlYlZpc2libGVQbHVnaW5JbmZvKFdlYkNv
cmU6OlBhZ2UmaSwgY29uc3QgV2ViQ29yZTo6VVJMJikgZmluYWw7CiAjaWYgUExBVEZPUk0oTUFD
KQogICAgIHZvaWQgc2V0UGx1Z2luTG9hZENsaWVudFBvbGljeShXZWJDb3JlOjpQbHVnaW5Mb2Fk
Q2xpZW50UG9saWN5LCBjb25zdCBTdHJpbmcmIGhvc3QsIGNvbnN0IFN0cmluZyYgYnVuZGxlSWRl
bnRpZmllciwgY29uc3QgU3RyaW5nJiB2ZXJzaW9uU3RyaW5nKSBmaW5hbDsKICAgICB2b2lkIGNs
ZWFyUGx1Z2luQ2xpZW50UG9saWNpZXMoKSBmaW5hbDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>