<?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>191854</bug_id>
          
          <creation_ts>2018-11-20 00:02:49 -0800</creation_ts>
          <short_desc>Remove the need for LocalizedStringsWPE.cpp</short_desc>
          <delta_ts>2018-11-20 14:10:27 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Christopher Reid">chris.reid</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>achristensen</cc>
    
    <cc>bfulgham</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>don.olmstead</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1480403</commentid>
    <comment_count>0</comment_count>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 00:02:49 -0800</bug_when>
    <thetext>These functions can be shared between ports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480413</commentid>
    <comment_count>1</comment_count>
      <attachid>355319</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 00:52:09 -0800</bug_when>
    <thetext>Created attachment 355319
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480415</commentid>
    <comment_count>2</comment_count>
      <attachid>355320</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 00:56:03 -0800</bug_when>
    <thetext>Created attachment 355320
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480425</commentid>
    <comment_count>3</comment_count>
      <attachid>355324</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 01:18:52 -0800</bug_when>
    <thetext>Created attachment 355324
rebased patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480430</commentid>
    <comment_count>4</comment_count>
      <attachid>355326</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 01:59:13 -0800</bug_when>
    <thetext>Created attachment 355326
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480433</commentid>
    <comment_count>5</comment_count>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 02:01:53 -0800</bug_when>
    <thetext>I wanted to check with Apple Win if there&apos;s any objection to replacing &quot;Search with Google&quot; to a more generic &quot;Search the Web&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480529</commentid>
    <comment_count>6</comment_count>
      <attachid>355326</attachid>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-20 10:23:24 -0800</bug_when>
    <thetext>Comment on attachment 355326
patch

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

I don&apos;t think it matters for AppleWin since its just used for embedding in apps.

&gt; Source/WebCore/en.lproj/Localizable.strings:602
&gt; -/* Search with Google context menu item */
&gt; -&quot;Search with Google&quot; = &quot;Search with Google&quot;;
&gt; +/* Search the Web context menu item */
&gt; +&quot;Search the Web&quot; = &quot;Search the Web&quot;;

I have a feeling we might want to keep the original and add the new one. I&apos;m not sure how this will affect XCode builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480550</commentid>
    <comment_count>7</comment_count>
      <attachid>355326</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 11:16:23 -0800</bug_when>
    <thetext>Comment on attachment 355326
patch

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

&gt; Source/WebCore/ChangeLog:13
&gt; +        of String::fromUTF8. Move that to LocalizedString.cpp as the default implement

Just noticed this typo, will change implement to implementation before landing

&gt;&gt; Source/WebCore/en.lproj/Localizable.strings:602
&gt;&gt; +&quot;Search the Web&quot; = &quot;Search the Web&quot;;
&gt; 
&gt; I have a feeling we might want to keep the original and add the new one. I&apos;m not sure how this will affect XCode builds.

That string seems to only be used in windows CF ports. COCOA is using the &quot;Search with %@&quot; string. I&apos;m not certain about the NSPerformService(@&quot;Search With Google&quot;, pasteboard); call in WebKitLegacy&apos;s WebView.mm but it looks like it&apos;s only used for invoking a context menu action and not for the context menu text so it doesn&apos;t seem to be doing localization. I&apos;m not familiar enough with NSPerformService to confirm whether that&apos;s true or not. If it is the case, I don&apos;t see much value in keeping the original string around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480561</commentid>
    <comment_count>8</comment_count>
    <who name="Don Olmstead">don.olmstead</who>
    <bug_when>2018-11-20 12:09:32 -0800</bug_when>
    <thetext>(In reply to Christopher Reid from comment #7)
&gt; Comment on attachment 355326 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=355326&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:13
&gt; &gt; +        of String::fromUTF8. Move that to LocalizedString.cpp as the default implement
&gt; 
&gt; Just noticed this typo, will change implement to implementation before
&gt; landing
&gt; 
&gt; &gt;&gt; Source/WebCore/en.lproj/Localizable.strings:602
&gt; &gt;&gt; +&quot;Search the Web&quot; = &quot;Search the Web&quot;;
&gt; &gt; 
&gt; &gt; I have a feeling we might want to keep the original and add the new one. I&apos;m not sure how this will affect XCode builds.
&gt; 
&gt; That string seems to only be used in windows CF ports. COCOA is using the
&gt; &quot;Search with %@&quot; string. I&apos;m not certain about the NSPerformService(@&quot;Search
&gt; With Google&quot;, pasteboard); call in WebKitLegacy&apos;s WebView.mm but it looks
&gt; like it&apos;s only used for invoking a context menu action and not for the
&gt; context menu text so it doesn&apos;t seem to be doing localization. I&apos;m not
&gt; familiar enough with NSPerformService to confirm whether that&apos;s true or not.
&gt; If it is the case, I don&apos;t see much value in keeping the original string
&gt; around.

Ok then I guess this is good to go after you fix your typo.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480584</commentid>
    <comment_count>9</comment_count>
      <attachid>355362</attachid>
    <who name="Christopher Reid">chris.reid</who>
    <bug_when>2018-11-20 13:42:47 -0800</bug_when>
    <thetext>Created attachment 355362
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480588</commentid>
    <comment_count>10</comment_count>
      <attachid>355362</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-20 14:09:30 -0800</bug_when>
    <thetext>Comment on attachment 355362
Patch for landing

Clearing flags on attachment: 355362

Committed r238406: &lt;https://trac.webkit.org/changeset/238406&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480589</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-11-20 14:09:32 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1480590</commentid>
    <comment_count>12</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-11-20 14:10:27 -0800</bug_when>
    <thetext>&lt;rdar://problem/46190457&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355319</attachid>
            <date>2018-11-20 00:52:09 -0800</date>
            <delta_ts>2018-11-20 00:56:03 -0800</delta_ts>
            <desc>patch</desc>
            <filename>191854.diff</filename>
            <type>text/plain</type>
            <size>7182</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1NDBmMDI5MzBjNS4uMGRjOTJhMjQ1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxOC0xMS0yMCAgQ2hyaXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29u
eS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBuZWVkIGZvciBMb2NhbGl6ZWRTdHJpbmdzV1BF
LmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
ODU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
Y2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIENvbnNvbGlkYXRlICJTZWFyY2ggdGhlIFdl
YiIgYXMgdGhlIGRlZmF1bHQgc2VhcmNoIGNvbnRleHQgbWVudSB0ZXh0IG9uIG5vbi1DT0NPQSBw
b3J0cy4KKyAgICAgICAgCisgICAgICAgIEdUSywgV1BFLCBhbmQgbm9uLUNGIFdJTiBhbGwgaGFk
IHRoZSBzYW1lIGRlZmF1bHQgbG9jYWxpemVkU3RyaW5nIGZ1bmN0aW9uCisgICAgICAgIG9mIFN0
cmluZzo6ZnJvbVVURjguIE1vdmUgdGhhdCB0byBMb2NhbGl6ZWRTdHJpbmcuY3BwIGFzIHRoZSBk
ZWZhdWx0IGltcGxlbWVudAorICAgICAgICBmb3IgYWxsIHBvcnRzIG5vdCB1c2luZyBDRi4KKwor
ICAgICAgICAqIGVuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3M6CisgICAgICAgICogcGxhdGZv
cm0vTG9jYWxpemVkU3RyaW5ncy5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL0xvY2FsaXpl
ZFN0cmluZ3NHdGsuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdz
V2luLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS93cGUvTG9jYWxpemVkU3RyaW5nc1dQRS5jcHA6
IFJlbW92ZWQuCisKIDIwMTgtMTEtMDggIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255
LmNvbT4KIAogICAgICAgICBQcm92aWRlIGdlbmVyaWMgaW1wbGVtZW50YXRpb24gb2YgU1NMS2V5
R2VuZXJhdG9yIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ov
TG9jYWxpemFibGUuc3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxl
LnN0cmluZ3MKaW5kZXggMTBhYjIwNGUwMDcuLmFjNzJmMzJkZjMzIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9lbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKQEAgLTU4Niw4ICs1ODYsOCBAQAogLyog
U2VhcmNoIHdpdGggc2VhcmNoIHByb3ZpZGVyIGNvbnRleHQgbWVudSBpdGVtIHdpdGggcHJvdmlk
ZXIgbmFtZSBpbnNlcnRlZCAqLwogIlNlYXJjaCB3aXRoICVAIiA9ICJTZWFyY2ggd2l0aCAlQCI7
CiAKLS8qIFNlYXJjaCB3aXRoIEdvb2dsZSBjb250ZXh0IG1lbnUgaXRlbSAqLwotIlNlYXJjaCB3
aXRoIEdvb2dsZSIgPSAiU2VhcmNoIHdpdGggR29vZ2xlIjsKKy8qIFNlYXJjaCB0aGUgV2ViIGNv
bnRleHQgbWVudSBpdGVtICovCisiU2VhcmNoIHRoZSBXZWIiID0gIlNlYXJjaCB0aGUgV2ViIjsK
IAogLyogVmFsaWRhdGlvbiBtZXNzYWdlIGZvciByZXF1aXJlZCBmaWxlIGlucHV0cyB0aGF0IGhh
dmUgbm8gdmFsdWUgKi8KICJTZWxlY3QgYSBmaWxlIiA9ICJTZWxlY3QgYSBmaWxlIjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKaW5kZXggYmI4M2JmYWE0
MjcuLjViOGRkMjliZDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2Nh
bGl6ZWRTdHJpbmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRT
dHJpbmdzLmNwcApAQCAtNzIsNiArNzIsMTMgQEAgU3RyaW5nIGZvcm1hdExvY2FsaXplZFN0cmlu
ZyhTdHJpbmcgZm9ybWF0LCAuLi4pCiAjZW5kaWYKIH0KIAorI2lmICFVU0UoQ0YpCitTdHJpbmcg
bG9jYWxpemVkU3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKK3sKKyAgICByZXR1cm4gU3RyaW5nOjpm
cm9tVVRGOChrZXksIHN0cmxlbihrZXkpKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKENPTlRF
WFRfTUVOVVMpCiAKIHN0YXRpYyBTdHJpbmcgdHJ1bmNhdGVkU3RyaW5nRm9yTG9va3VwTWVudUl0
ZW0oY29uc3QgU3RyaW5nJiBvcmlnaW5hbCkKQEAgLTQwNiw2ICs0MTMsMTMgQEAgU3RyaW5nIGNv
bnRleHRNZW51SXRlbVRhZ0luc3BlY3RFbGVtZW50KCkKICAgICByZXR1cm4gV0VCX1VJX1NUUklO
R19XSVRIX01ORU1PTklDKCJJbnNwZWN0IEVsZW1lbnQiLCAiSW5zcGVjdCBfRWxlbWVudCIsICJJ
bnNwZWN0IEVsZW1lbnQgY29udGV4dCBtZW51IGl0ZW0iKTsKIH0KIAorI2lmICFQTEFURk9STShD
T0NPQSkKK1N0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQoreworICAgIHJldHVy
biBXRUJfVUlfU1RSSU5HX1dJVEhfTU5FTU9OSUMoIlNlYXJjaCB0aGUgV2ViIiwgIl9TZWFyY2gg
dGhlIFdlYiIsICJTZWFyY2ggdGhlIFdlYiBjb250ZXh0IG1lbnUgaXRlbSIpOworfQorI2VuZGlm
CisKICNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAogI2lmICFQTEFURk9STShJT1Nf
RkFNSUxZKQpAQCAtMTA4Myw0ICsxMDk3LDExIEBAIFN0cmluZyBkYXRlUGlja2VyWWVhckxhYmVs
VGl0bGUoKQogCiAjZW5kaWYKIAorI2lmIFVTRShTT1VQKQorU3RyaW5nIHVuYWNjZXB0YWJsZVRM
U0NlcnRpZmljYXRlKCkKK3sKKyAgICByZXR1cm4gV0VCX1VJX1NUUklORygiVW5hY2NlcHRhYmxl
IFRMUyBjZXJ0aWZpY2F0ZSIsICJUTFMgY2VydGlmaWNhdGUgaXMgdW5hY2NlcHRhYmxlIGVycm9y
Iik7Cit9CisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCmluZGV4IDc1MGVj
ZTM5OWUwLi5lZTc0YjVhYjM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2d0ay9Mb2NhbGl6ZWRTdHJpbmdzR3RrLmNwcApAQCAtMTA4LDExICsxMDgsNiBAQCBTdHJpbmcg
Y29udGV4dE1lbnVJdGVtVGFnSW5wdXRNZXRob2RzKCkKICAgICByZXR1cm4gU3RyaW5nOjpmcm9t
VVRGOChfKCJJbnB1dCBfTWV0aG9kcyIpKTsKIH0KIAotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRh
Z1NlYXJjaFdlYigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoXygiX1NlYXJjaCB0
aGUgV2ViIikpOwotfQotCiBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydExS
TU1hcmsoKQogewogICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KF8oIkxSTSBfTGVmdC10by1y
aWdodCBtYXJrIikpOwpAQCAtMTc2LDE0ICsxNzEsNCBAQCBTdHJpbmcgdmFsaWRhdGlvbk1lc3Nh
Z2VUb29Mb25nVGV4dChpbnQsIGludCBtYXhMZW5ndGgpCiAgICAgcmV0dXJuIFN0cmluZzo6ZnJv
bVVURjgoc3RyaW5nLmdldCgpKTsKIH0KIAotU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmlj
YXRlKCkKLXsKLSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJVbmFjY2VwdGFibGUgVExT
IGNlcnRpZmljYXRlIikpOwotfQotCi1TdHJpbmcgbG9jYWxpemVkU3RyaW5nKGNvbnN0IGNoYXIq
IGtleSkKLXsKLSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXksIHN0cmxlbihrZXkpKTsK
LX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwCmluZGV4IDRiZWZmMzAxYjg1Li4xZTc5
ZTEwODQ3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xvY2FsaXpl
ZFN0cmluZ3NXaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Mb2NhbGl6
ZWRTdHJpbmdzV2luLmNwcApAQCAtNDIsMTEgKzQyLDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIAorI2lmIFVTRShDRikKIFN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5
KQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAKLSNpZiBVU0UoQ0YpCiAgICAgc3Rh
dGljIENGU3RyaW5nUmVmIG5vdEZvdW5kID0gQ0ZTVFIoImxvY2FsaXplZCBzdHJpbmcgbm90IGZv
dW5kIik7CiAKICAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGtleVN0cmluZyA9IGFkb3B0Q0Yo
Q0ZTdHJpbmdDcmVhdGVXaXRoQ1N0cmluZ05vQ29weShOVUxMLCBrZXksIGtDRlN0cmluZ0VuY29k
aW5nVVRGOCwga0NGQWxsb2NhdG9yTnVsbCkpOwpAQCAtNTQsMTYgKzU0LDYgQEAgU3RyaW5nIGxv
Y2FsaXplZFN0cmluZyhjb25zdCBjaGFyKiBrZXkpCiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShy
ZXN1bHQuZ2V0KCkgIT0gbm90Rm91bmQsICJjb3VsZCBub3QgZmluZCBsb2NhbGl6YWJsZSBzdHJp
bmcgJXMgaW4gYnVuZGxlIiwga2V5KTsKIAogICAgIHJldHVybiByZXN1bHQuZ2V0KCk7Ci0jZWxz
ZQotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbG9jYWxpemVkU3RyaW5nKCkgZm9yICFVU0UoQ0Yp
LgotICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotI2VuZGlm
Ci19Ci0KLSNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKLVN0cmluZyBjb250ZXh0TWVudUl0ZW1U
YWdTZWFyY2hXZWIoKQotewotICAgIHJldHVybiBXRUJfVUlfU1RSSU5HKCJTZWFyY2ggd2l0aCBH
b29nbGUiLCAiU2VhcmNoIHdpdGggR29vZ2xlIGNvbnRleHQgbWVudSBpdGVtIik7CiB9CiAjZW5k
aWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0
cmluZ3NXUEUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmlu
Z3NXUEUuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNzYwMTk2OTcxYi4uMDAw
MDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmlu
Z3NXUEUuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdo
dCAoQykgMjAxNCBJZ2FsaWEgUy5MLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0g
KiBhcmUgbWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0
YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9u
cyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIgaW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMg
cHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAq
IEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJ
VFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1F
RC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBC
RSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBF
WEVNUExBUlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5P
VCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJW
SUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRF
UlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwg
V0hFVEhFUiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xV
RElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQg
T0YgVEhFIFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQ
T1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0j
aW5jbHVkZSAiTG9jYWxpemVkU3RyaW5ncy5oIgotCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQu
aCIKLSNpbmNsdWRlIDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotU3RyaW5nIGNvbnRleHRNZW51
SXRlbVRhZ1NlYXJjaFdlYigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoIl9TZWFy
Y2ggdGhlIFdlYiIpOwotfQotCi1TdHJpbmcgdW5hY2NlcHRhYmxlVExTQ2VydGlmaWNhdGUoKQot
ewotICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmlj
YXRlIik7Ci19Ci0KLVN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQotewot
ICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotfQotCi0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355320</attachid>
            <date>2018-11-20 00:56:03 -0800</date>
            <delta_ts>2018-11-20 01:18:52 -0800</delta_ts>
            <desc>patch</desc>
            <filename>191854.diff</filename>
            <type>text/plain</type>
            <size>7629</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA1NDBmMDI5MzBjNS4uMGRjOTJhMjQ1YzYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxOC0xMS0yMCAgQ2hyaXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29u
eS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBuZWVkIGZvciBMb2NhbGl6ZWRTdHJpbmdzV1BF
LmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
ODU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
Y2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIENvbnNvbGlkYXRlICJTZWFyY2ggdGhlIFdl
YiIgYXMgdGhlIGRlZmF1bHQgc2VhcmNoIGNvbnRleHQgbWVudSB0ZXh0IG9uIG5vbi1DT0NPQSBw
b3J0cy4KKyAgICAgICAgCisgICAgICAgIEdUSywgV1BFLCBhbmQgbm9uLUNGIFdJTiBhbGwgaGFk
IHRoZSBzYW1lIGRlZmF1bHQgbG9jYWxpemVkU3RyaW5nIGZ1bmN0aW9uCisgICAgICAgIG9mIFN0
cmluZzo6ZnJvbVVURjguIE1vdmUgdGhhdCB0byBMb2NhbGl6ZWRTdHJpbmcuY3BwIGFzIHRoZSBk
ZWZhdWx0IGltcGxlbWVudAorICAgICAgICBmb3IgYWxsIHBvcnRzIG5vdCB1c2luZyBDRi4KKwor
ICAgICAgICAqIGVuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3M6CisgICAgICAgICogcGxhdGZv
cm0vTG9jYWxpemVkU3RyaW5ncy5jcHA6CisgICAgICAgICogcGxhdGZvcm0vZ3RrL0xvY2FsaXpl
ZFN0cmluZ3NHdGsuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdz
V2luLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS93cGUvTG9jYWxpemVkU3RyaW5nc1dQRS5jcHA6
IFJlbW92ZWQuCisKIDIwMTgtMTEtMDggIERvbiBPbG1zdGVhZCAgPGRvbi5vbG1zdGVhZEBzb255
LmNvbT4KIAogICAgICAgICBQcm92aWRlIGdlbmVyaWMgaW1wbGVtZW50YXRpb24gb2YgU1NMS2V5
R2VuZXJhdG9yIGZ1bmN0aW9ucwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvU291cmNlc1dQ
RS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4dAppbmRleCA1ZTg1MDJmODZlZC4u
ZDc4YTY4NzgyMGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNXUEUudHh0Cisr
KyBiL1NvdXJjZS9XZWJDb3JlL1NvdXJjZXNXUEUudHh0CkBAIC03MSw3ICs3MSw2IEBAIHBsYXRm
b3JtL3VuaXgvTG9nZ2luZ1VuaXguY3BwCiAKIHBsYXRmb3JtL3dwZS9DdXJzb3JXUEUuY3BwCiBw
bGF0Zm9ybS93cGUvRHJhZ0ltYWdlV1BFLmNwcAotcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmlu
Z3NXUEUuY3BwCiBwbGF0Zm9ybS93cGUvUGFzdGVib2FyZFdQRS5jcHAKIHBsYXRmb3JtL3dwZS9Q
bGF0Zm9ybUtleWJvYXJkRXZlbnRXUEUuY3BwCiBwbGF0Zm9ybS93cGUvUGxhdGZvcm1QYXN0ZWJv
YXJkV1BFLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovTG9jYWxpemFi
bGUuc3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MK
aW5kZXggMTBhYjIwNGUwMDcuLmFjNzJmMzJkZjMzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9lbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxw
cm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKQEAgLTU4Niw4ICs1ODYsOCBAQAogLyogU2VhcmNoIHdp
dGggc2VhcmNoIHByb3ZpZGVyIGNvbnRleHQgbWVudSBpdGVtIHdpdGggcHJvdmlkZXIgbmFtZSBp
bnNlcnRlZCAqLwogIlNlYXJjaCB3aXRoICVAIiA9ICJTZWFyY2ggd2l0aCAlQCI7CiAKLS8qIFNl
YXJjaCB3aXRoIEdvb2dsZSBjb250ZXh0IG1lbnUgaXRlbSAqLwotIlNlYXJjaCB3aXRoIEdvb2ds
ZSIgPSAiU2VhcmNoIHdpdGggR29vZ2xlIjsKKy8qIFNlYXJjaCB0aGUgV2ViIGNvbnRleHQgbWVu
dSBpdGVtICovCisiU2VhcmNoIHRoZSBXZWIiID0gIlNlYXJjaCB0aGUgV2ViIjsKIAogLyogVmFs
aWRhdGlvbiBtZXNzYWdlIGZvciByZXF1aXJlZCBmaWxlIGlucHV0cyB0aGF0IGhhdmUgbm8gdmFs
dWUgKi8KICJTZWxlY3QgYSBmaWxlIiA9ICJTZWxlY3QgYSBmaWxlIjsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKaW5kZXggYmI4M2JmYWE0MjcuLjViOGRk
MjliZDM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJp
bmdzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNw
cApAQCAtNzIsNiArNzIsMTMgQEAgU3RyaW5nIGZvcm1hdExvY2FsaXplZFN0cmluZyhTdHJpbmcg
Zm9ybWF0LCAuLi4pCiAjZW5kaWYKIH0KIAorI2lmICFVU0UoQ0YpCitTdHJpbmcgbG9jYWxpemVk
U3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKK3sKKyAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChr
ZXksIHN0cmxlbihrZXkpKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMp
CiAKIHN0YXRpYyBTdHJpbmcgdHJ1bmNhdGVkU3RyaW5nRm9yTG9va3VwTWVudUl0ZW0oY29uc3Qg
U3RyaW5nJiBvcmlnaW5hbCkKQEAgLTQwNiw2ICs0MTMsMTMgQEAgU3RyaW5nIGNvbnRleHRNZW51
SXRlbVRhZ0luc3BlY3RFbGVtZW50KCkKICAgICByZXR1cm4gV0VCX1VJX1NUUklOR19XSVRIX01O
RU1PTklDKCJJbnNwZWN0IEVsZW1lbnQiLCAiSW5zcGVjdCBfRWxlbWVudCIsICJJbnNwZWN0IEVs
ZW1lbnQgY29udGV4dCBtZW51IGl0ZW0iKTsKIH0KIAorI2lmICFQTEFURk9STShDT0NPQSkKK1N0
cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQoreworICAgIHJldHVybiBXRUJfVUlf
U1RSSU5HX1dJVEhfTU5FTU9OSUMoIlNlYXJjaCB0aGUgV2ViIiwgIl9TZWFyY2ggdGhlIFdlYiIs
ICJTZWFyY2ggdGhlIFdlYiBjb250ZXh0IG1lbnUgaXRlbSIpOworfQorI2VuZGlmCisKICNlbmRp
ZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQpA
QCAtMTA4Myw0ICsxMDk3LDExIEBAIFN0cmluZyBkYXRlUGlja2VyWWVhckxhYmVsVGl0bGUoKQog
CiAjZW5kaWYKIAorI2lmIFVTRShTT1VQKQorU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmlj
YXRlKCkKK3sKKyAgICByZXR1cm4gV0VCX1VJX1NUUklORygiVW5hY2NlcHRhYmxlIFRMUyBjZXJ0
aWZpY2F0ZSIsICJUTFMgY2VydGlmaWNhdGUgaXMgdW5hY2NlcHRhYmxlIGVycm9yIik7Cit9Cisj
ZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCmluZGV4IDc1MGVjZTM5OWUwLi5l
ZTc0YjVhYjM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2Fs
aXplZFN0cmluZ3NHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Mb2Nh
bGl6ZWRTdHJpbmdzR3RrLmNwcApAQCAtMTA4LDExICsxMDgsNiBAQCBTdHJpbmcgY29udGV4dE1l
bnVJdGVtVGFnSW5wdXRNZXRob2RzKCkKICAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJJ
bnB1dCBfTWV0aG9kcyIpKTsKIH0KIAotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1NlYXJjaFdl
YigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoXygiX1NlYXJjaCB0aGUgV2ViIikp
OwotfQotCiBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydExSTU1hcmsoKQog
ewogICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KF8oIkxSTSBfTGVmdC10by1yaWdodCBtYXJr
IikpOwpAQCAtMTc2LDE0ICsxNzEsNCBAQCBTdHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2VUb29Mb25n
VGV4dChpbnQsIGludCBtYXhMZW5ndGgpCiAgICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoc3Ry
aW5nLmdldCgpKTsKIH0KIAotU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRlKCkKLXsK
LSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmlj
YXRlIikpOwotfQotCi1TdHJpbmcgbG9jYWxpemVkU3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKLXsK
LSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXksIHN0cmxlbihrZXkpKTsKLX0KLQogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
d2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2lu
L0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwCmluZGV4IDRiZWZmMzAxYjg1Li4xZTc5ZTEwODQ3ZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NX
aW4uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdz
V2luLmNwcApAQCAtNDIsMTEgKzQyLDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lm
IFVTRShDRikKIFN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQogewogICAg
IEFTU0VSVChpc01haW5UaHJlYWQoKSk7CiAKLSNpZiBVU0UoQ0YpCiAgICAgc3RhdGljIENGU3Ry
aW5nUmVmIG5vdEZvdW5kID0gQ0ZTVFIoImxvY2FsaXplZCBzdHJpbmcgbm90IGZvdW5kIik7CiAK
ICAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGtleVN0cmluZyA9IGFkb3B0Q0YoQ0ZTdHJpbmdD
cmVhdGVXaXRoQ1N0cmluZ05vQ29weShOVUxMLCBrZXksIGtDRlN0cmluZ0VuY29kaW5nVVRGOCwg
a0NGQWxsb2NhdG9yTnVsbCkpOwpAQCAtNTQsMTYgKzU0LDYgQEAgU3RyaW5nIGxvY2FsaXplZFN0
cmluZyhjb25zdCBjaGFyKiBrZXkpCiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShyZXN1bHQuZ2V0
KCkgIT0gbm90Rm91bmQsICJjb3VsZCBub3QgZmluZCBsb2NhbGl6YWJsZSBzdHJpbmcgJXMgaW4g
YnVuZGxlIiwga2V5KTsKIAogICAgIHJldHVybiByZXN1bHQuZ2V0KCk7Ci0jZWxzZQotICAgIC8v
IEZJWE1FOiBJbXBsZW1lbnQgbG9jYWxpemVkU3RyaW5nKCkgZm9yICFVU0UoQ0YpLgotICAgIHJl
dHVybiBTdHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotI2VuZGlmCi19Ci0KLSNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKLVN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hX
ZWIoKQotewotICAgIHJldHVybiBXRUJfVUlfU1RSSU5HKCJTZWFyY2ggd2l0aCBHb29nbGUiLCAi
U2VhcmNoIHdpdGggR29vZ2xlIGNvbnRleHQgbWVudSBpdGVtIik7CiB9CiAjZW5kaWYKIApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3Bw
CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNzYwMTk2OTcxYi4uMDAwMDAwMDAwMDAK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3Bw
CisrKyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAx
NCBJZ2FsaWEgUy5MLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0
OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkg
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlks
IE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAi
TG9jYWxpemVkU3RyaW5ncy5oIgotCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKLSNpbmNs
dWRlIDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1Nl
YXJjaFdlYigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoIl9TZWFyY2ggdGhlIFdl
YiIpOwotfQotCi1TdHJpbmcgdW5hY2NlcHRhYmxlVExTQ2VydGlmaWNhdGUoKQotewotICAgIHJl
dHVybiBTdHJpbmc6OmZyb21VVEY4KCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRlIik7Ci19
Ci0KLVN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQotewotICAgIHJldHVy
biBTdHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotfQotCi0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355324</attachid>
            <date>2018-11-20 01:18:52 -0800</date>
            <delta_ts>2018-11-20 01:59:13 -0800</delta_ts>
            <desc>rebased patch</desc>
            <filename>191854-2.diff</filename>
            <type>text/plain</type>
            <size>7626</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiYWVkODc3NzFjMi4uMzk2OTQ3YjYzOWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxOC0xMS0yMCAgQ2hyaXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29u
eS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBuZWVkIGZvciBMb2NhbGl6ZWRTdHJpbmdzV1BF
LmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
ODU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
Y2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIENvbnNvbGlkYXRlICJTZWFyY2ggdGhlIFdl
YiIgYXMgdGhlIGRlZmF1bHQgc2VhcmNoIGNvbnRleHQgbWVudSB0ZXh0IG9uIG5vbi1DT0NPQSBw
b3J0cy4KKworICAgICAgICBHVEssIFdQRSwgYW5kIG5vbi1DRiBXSU4gYWxsIGhhZCB0aGUgc2Ft
ZSBkZWZhdWx0IGxvY2FsaXplZFN0cmluZyBmdW5jdGlvbgorICAgICAgICBvZiBTdHJpbmc6OmZy
b21VVEY4LiBNb3ZlIHRoYXQgdG8gTG9jYWxpemVkU3RyaW5nLmNwcCBhcyB0aGUgZGVmYXVsdCBp
bXBsZW1lbnQKKyAgICAgICAgZm9yIGFsbCBwb3J0cyBub3QgdXNpbmcgQ0YuCisKKyAgICAgICAg
KiBlbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzOgorICAgICAgICAqIHBsYXRmb3JtL0xvY2Fs
aXplZFN0cmluZ3MuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Mb2NhbGl6ZWRTdHJpbmdz
R3RrLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vTG9jYWxpemVkU3RyaW5nc1dpbi5jcHA6
CisgICAgICAgICogcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwOiBSZW1vdmVk
LgorCiAyMDE4LTExLTE5ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT04ocjIzODM1MCkgW2N1cmxdIENlcnRpZmljYXRlSW5mby5o
OiBlcnJvcjogdGVtcGxhdGUgc3BlY2lhbGl6YXRpb24gcmVxdWlyZXMgJ3RlbXBsYXRlPD4nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXNXUEUudHh0CmluZGV4IDc2MjllMzU1MDJmLi4zODFlNTg1YTE3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvU291cmNlc1dQRS50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291
cmNlc1dQRS50eHQKQEAgLTcxLDcgKzcxLDYgQEAgcGxhdGZvcm0vdGV4dC9Mb2NhbGVJQ1UuY3Bw
CiAKIHBsYXRmb3JtL3VuaXgvTG9nZ2luZ1VuaXguY3BwCiAKLXBsYXRmb3JtL3dwZS9Mb2NhbGl6
ZWRTdHJpbmdzV1BFLmNwcAogcGxhdGZvcm0vd3BlL1BsYXRmb3JtU2NyZWVuV1BFLmNwcAogcGxh
dGZvcm0vd3BlL1JlbmRlclRoZW1lV1BFLmNwcAogcGxhdGZvcm0vd3BlL1Njcm9sbGJhclRoZW1l
V1BFLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovTG9jYWxpemFibGUu
c3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKaW5k
ZXggYTQzZmRkNDVlOTQuLjYwMTZkMzBjODlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9l
bi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9q
L0xvY2FsaXphYmxlLnN0cmluZ3MKQEAgLTU5OCw4ICs1OTgsOCBAQAogLyogU2VhcmNoIHdpdGgg
c2VhcmNoIHByb3ZpZGVyIGNvbnRleHQgbWVudSBpdGVtIHdpdGggcHJvdmlkZXIgbmFtZSBpbnNl
cnRlZCAqLwogIlNlYXJjaCB3aXRoICVAIiA9ICJTZWFyY2ggd2l0aCAlQCI7CiAKLS8qIFNlYXJj
aCB3aXRoIEdvb2dsZSBjb250ZXh0IG1lbnUgaXRlbSAqLwotIlNlYXJjaCB3aXRoIEdvb2dsZSIg
PSAiU2VhcmNoIHdpdGggR29vZ2xlIjsKKy8qIFNlYXJjaCB0aGUgV2ViIGNvbnRleHQgbWVudSBp
dGVtICovCisiU2VhcmNoIHRoZSBXZWIiID0gIlNlYXJjaCB0aGUgV2ViIjsKIAogLyogVmFsaWRh
dGlvbiBtZXNzYWdlIGZvciByZXF1aXJlZCBmaWxlIGlucHV0cyB0aGF0IGhhdmUgbm8gdmFsdWUg
Ki8KICJTZWxlY3QgYSBmaWxlIiA9ICJTZWxlY3QgYSBmaWxlIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKaW5kZXggN2Y1NTIwMTE3NzUuLmZhYjg1YjQ4
ZjY0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcApA
QCAtNzIsNiArNzIsMTMgQEAgU3RyaW5nIGZvcm1hdExvY2FsaXplZFN0cmluZyhTdHJpbmcgZm9y
bWF0LCAuLi4pCiAjZW5kaWYKIH0KIAorI2lmICFVU0UoQ0YpCitTdHJpbmcgbG9jYWxpemVkU3Ry
aW5nKGNvbnN0IGNoYXIqIGtleSkKK3sKKyAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXks
IHN0cmxlbihrZXkpKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAK
IHN0YXRpYyBTdHJpbmcgdHJ1bmNhdGVkU3RyaW5nRm9yTG9va3VwTWVudUl0ZW0oY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbCkKQEAgLTQwNiw2ICs0MTMsMTMgQEAgU3RyaW5nIGNvbnRleHRNZW51SXRl
bVRhZ0luc3BlY3RFbGVtZW50KCkKICAgICByZXR1cm4gV0VCX1VJX1NUUklOR19XSVRIX01ORU1P
TklDKCJJbnNwZWN0IEVsZW1lbnQiLCAiSW5zcGVjdCBfRWxlbWVudCIsICJJbnNwZWN0IEVsZW1l
bnQgY29udGV4dCBtZW51IGl0ZW0iKTsKIH0KIAorI2lmICFQTEFURk9STShDT0NPQSkKK1N0cmlu
ZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQoreworICAgIHJldHVybiBXRUJfVUlfU1RS
SU5HX1dJVEhfTU5FTU9OSUMoIlNlYXJjaCB0aGUgV2ViIiwgIl9TZWFyY2ggdGhlIFdlYiIsICJT
ZWFyY2ggdGhlIFdlYiBjb250ZXh0IG1lbnUgaXRlbSIpOworfQorI2VuZGlmCisKICNlbmRpZiAv
LyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQpAQCAt
MTA4Myw0ICsxMDk3LDExIEBAIFN0cmluZyBkYXRlUGlja2VyWWVhckxhYmVsVGl0bGUoKQogCiAj
ZW5kaWYKIAorI2lmIFVTRShTT1VQKQorU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRl
KCkKK3sKKyAgICByZXR1cm4gV0VCX1VJX1NUUklORygiVW5hY2NlcHRhYmxlIFRMUyBjZXJ0aWZp
Y2F0ZSIsICJUTFMgY2VydGlmaWNhdGUgaXMgdW5hY2NlcHRhYmxlIGVycm9yIik7Cit9CisjZW5k
aWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCmluZGV4IDc1MGVjZTM5OWUwLi5lZTc0
YjVhYjM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXpl
ZFN0cmluZ3NHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Mb2NhbGl6
ZWRTdHJpbmdzR3RrLmNwcApAQCAtMTA4LDExICsxMDgsNiBAQCBTdHJpbmcgY29udGV4dE1lbnVJ
dGVtVGFnSW5wdXRNZXRob2RzKCkKICAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJJbnB1
dCBfTWV0aG9kcyIpKTsKIH0KIAotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1NlYXJjaFdlYigp
Ci17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoXygiX1NlYXJjaCB0aGUgV2ViIikpOwot
fQotCiBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydExSTU1hcmsoKQogewog
ICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KF8oIkxSTSBfTGVmdC10by1yaWdodCBtYXJrIikp
OwpAQCAtMTc2LDE0ICsxNzEsNCBAQCBTdHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2VUb29Mb25nVGV4
dChpbnQsIGludCBtYXhMZW5ndGgpCiAgICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoc3RyaW5n
LmdldCgpKTsKIH0KIAotU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRlKCkKLXsKLSAg
ICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRl
IikpOwotfQotCi1TdHJpbmcgbG9jYWxpemVkU3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKLXsKLSAg
ICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXksIHN0cmxlbihrZXkpKTsKLX0KLQogfSAvLyBu
YW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2lu
L0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xv
Y2FsaXplZFN0cmluZ3NXaW4uY3BwCmluZGV4IDRiZWZmMzAxYjg1Li4xZTc5ZTEwODQ3ZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4u
Y3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdzV2lu
LmNwcApAQCAtNDIsMTEgKzQyLDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFVT
RShDRikKIFN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQogewogICAgIEFT
U0VSVChpc01haW5UaHJlYWQoKSk7CiAKLSNpZiBVU0UoQ0YpCiAgICAgc3RhdGljIENGU3RyaW5n
UmVmIG5vdEZvdW5kID0gQ0ZTVFIoImxvY2FsaXplZCBzdHJpbmcgbm90IGZvdW5kIik7CiAKICAg
ICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGtleVN0cmluZyA9IGFkb3B0Q0YoQ0ZTdHJpbmdDcmVh
dGVXaXRoQ1N0cmluZ05vQ29weShOVUxMLCBrZXksIGtDRlN0cmluZ0VuY29kaW5nVVRGOCwga0NG
QWxsb2NhdG9yTnVsbCkpOwpAQCAtNTQsMTYgKzU0LDYgQEAgU3RyaW5nIGxvY2FsaXplZFN0cmlu
Zyhjb25zdCBjaGFyKiBrZXkpCiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShyZXN1bHQuZ2V0KCkg
IT0gbm90Rm91bmQsICJjb3VsZCBub3QgZmluZCBsb2NhbGl6YWJsZSBzdHJpbmcgJXMgaW4gYnVu
ZGxlIiwga2V5KTsKIAogICAgIHJldHVybiByZXN1bHQuZ2V0KCk7Ci0jZWxzZQotICAgIC8vIEZJ
WE1FOiBJbXBsZW1lbnQgbG9jYWxpemVkU3RyaW5nKCkgZm9yICFVU0UoQ0YpLgotICAgIHJldHVy
biBTdHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotI2VuZGlmCi19Ci0KLSNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VUykKLVN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIo
KQotewotICAgIHJldHVybiBXRUJfVUlfU1RSSU5HKCJTZWFyY2ggd2l0aCBHb29nbGUiLCAiU2Vh
cmNoIHdpdGggR29vZ2xlIGNvbnRleHQgbWVudSBpdGVtIik7CiB9CiAjZW5kaWYKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCmRl
bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNzYwMTk2OTcxYi4uMDAwMDAwMDAwMDAKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCisr
KyAvZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBJ
Z2FsaWEgUy5MLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0Ogot
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
Ci0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQ
UkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5F
U1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9S
Ci0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBP
RiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhP
V0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgot
ICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBP
RiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTG9j
YWxpemVkU3RyaW5ncy5oIgotCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKLSNpbmNsdWRl
IDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+
Ci0KLW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1NlYXJj
aFdlYigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoIl9TZWFyY2ggdGhlIFdlYiIp
OwotfQotCi1TdHJpbmcgdW5hY2NlcHRhYmxlVExTQ2VydGlmaWNhdGUoKQotewotICAgIHJldHVy
biBTdHJpbmc6OmZyb21VVEY4KCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRlIik7Ci19Ci0K
LVN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQotewotICAgIHJldHVybiBT
dHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotfQotCi0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355326</attachid>
            <date>2018-11-20 01:59:13 -0800</date>
            <delta_ts>2018-11-20 13:42:43 -0800</delta_ts>
            <desc>patch</desc>
            <filename>191854-3.diff</filename>
            <type>text/plain</type>
            <size>7623</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiYWVkODc3NzFjMi4uMzk2OTQ3YjYzOWUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyNCBAQAorMjAxOC0xMS0yMCAgQ2hyaXN0b3BoZXIgUmVpZCAgPGNocmlzLnJlaWRAc29u
eS5jb20+CisKKyAgICAgICAgUmVtb3ZlIHRoZSBuZWVkIGZvciBMb2NhbGl6ZWRTdHJpbmdzV1BF
LmNwcAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTkx
ODU0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTm8g
Y2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgIENvbnNvbGlkYXRlICJTZWFyY2ggdGhlIFdl
YiIgYXMgdGhlIGRlZmF1bHQgc2VhcmNoIGNvbnRleHQgbWVudSB0ZXh0IG9uIG5vbi1DT0NPQSBw
b3J0cy4KKworICAgICAgICBHVEssIFdQRSwgYW5kIG5vbi1DRiBXSU4gYWxsIGhhZCB0aGUgc2Ft
ZSBkZWZhdWx0IGxvY2FsaXplZFN0cmluZyBmdW5jdGlvbgorICAgICAgICBvZiBTdHJpbmc6OmZy
b21VVEY4LiBNb3ZlIHRoYXQgdG8gTG9jYWxpemVkU3RyaW5nLmNwcCBhcyB0aGUgZGVmYXVsdCBp
bXBsZW1lbnQKKyAgICAgICAgZm9yIGFsbCBwb3J0cyBub3QgdXNpbmcgQ0YuCisKKyAgICAgICAg
KiBlbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzOgorICAgICAgICAqIHBsYXRmb3JtL0xvY2Fs
aXplZFN0cmluZ3MuY3BwOgorICAgICAgICAqIHBsYXRmb3JtL2d0ay9Mb2NhbGl6ZWRTdHJpbmdz
R3RrLmNwcDoKKyAgICAgICAgKiBwbGF0Zm9ybS93aW4vTG9jYWxpemVkU3RyaW5nc1dpbi5jcHA6
CisgICAgICAgICogcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwOiBSZW1vdmVk
LgorCiAyMDE4LTExLTE5ICBGdWppaSBIaXJvbm9yaSAgPEhpcm9ub3JpLkZ1amlpQHNvbnkuY29t
PgogCiAgICAgICAgIFJFR1JFU1NJT04ocjIzODM1MCkgW2N1cmxdIENlcnRpZmljYXRlSW5mby5o
OiBlcnJvcjogdGVtcGxhdGUgc3BlY2lhbGl6YXRpb24gcmVxdWlyZXMgJ3RlbXBsYXRlPD4nCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4dCBiL1NvdXJjZS9XZWJDb3Jl
L1NvdXJjZXNXUEUudHh0CmluZGV4IDc2MjllMzU1MDJmLi4zODFlNTg1YTE3NyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvU291cmNlc1dQRS50eHQKKysrIGIvU291cmNlL1dlYkNvcmUvU291
cmNlc1dQRS50eHQKQEAgLTcxLDcgKzcxLDYgQEAgcGxhdGZvcm0vdGV4dC9Mb2NhbGVJQ1UuY3Bw
CiAKIHBsYXRmb3JtL3VuaXgvTG9nZ2luZ1VuaXguY3BwCiAKLXBsYXRmb3JtL3dwZS9Mb2NhbGl6
ZWRTdHJpbmdzV1BFLmNwcAogcGxhdGZvcm0vd3BlL1BsYXRmb3JtU2NyZWVuV1BFLmNwcAogcGxh
dGZvcm0vd3BlL1JlbmRlclRoZW1lV1BFLmNwcAogcGxhdGZvcm0vd3BlL1Njcm9sbGJhclRoZW1l
V1BFLmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZW4ubHByb2ovTG9jYWxpemFibGUu
c3RyaW5ncyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmluZ3MKaW5k
ZXggYTQzZmRkNDVlOTQuLjYwMTZkMzBjODlhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9l
bi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9q
L0xvY2FsaXphYmxlLnN0cmluZ3MKQEAgLTU5OCw4ICs1OTgsOCBAQAogLyogU2VhcmNoIHdpdGgg
c2VhcmNoIHByb3ZpZGVyIGNvbnRleHQgbWVudSBpdGVtIHdpdGggcHJvdmlkZXIgbmFtZSBpbnNl
cnRlZCAqLwogIlNlYXJjaCB3aXRoICVAIiA9ICJTZWFyY2ggd2l0aCAlQCI7CiAKLS8qIFNlYXJj
aCB3aXRoIEdvb2dsZSBjb250ZXh0IG1lbnUgaXRlbSAqLwotIlNlYXJjaCB3aXRoIEdvb2dsZSIg
PSAiU2VhcmNoIHdpdGggR29vZ2xlIjsKKy8qIFNlYXJjaCB0aGUgV2ViIGNvbnRleHQgbWVudSBp
dGVtICovCisiU2VhcmNoIHRoZSBXZWIiID0gIlNlYXJjaCB0aGUgV2ViIjsKIAogLyogVmFsaWRh
dGlvbiBtZXNzYWdlIGZvciByZXF1aXJlZCBmaWxlIGlucHV0cyB0aGF0IGhhdmUgbm8gdmFsdWUg
Ki8KICJTZWxlY3QgYSBmaWxlIiA9ICJTZWxlY3QgYSBmaWxlIjsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKaW5kZXggN2Y1NTIwMTE3NzUuLmY0MzE4NjA1
ZDE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcApA
QCAtNzIsNiArNzIsMTMgQEAgU3RyaW5nIGZvcm1hdExvY2FsaXplZFN0cmluZyhTdHJpbmcgZm9y
bWF0LCAuLi4pCiAjZW5kaWYKIH0KIAorI2lmICFVU0UoQ0YpCitTdHJpbmcgbG9jYWxpemVkU3Ry
aW5nKGNvbnN0IGNoYXIqIGtleSkKK3sKKyAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXks
IHN0cmxlbihrZXkpKTsKK30KKyNlbmRpZgorCiAjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAK
IHN0YXRpYyBTdHJpbmcgdHJ1bmNhdGVkU3RyaW5nRm9yTG9va3VwTWVudUl0ZW0oY29uc3QgU3Ry
aW5nJiBvcmlnaW5hbCkKQEAgLTQwNiw2ICs0MTMsMTMgQEAgU3RyaW5nIGNvbnRleHRNZW51SXRl
bVRhZ0luc3BlY3RFbGVtZW50KCkKICAgICByZXR1cm4gV0VCX1VJX1NUUklOR19XSVRIX01ORU1P
TklDKCJJbnNwZWN0IEVsZW1lbnQiLCAiSW5zcGVjdCBfRWxlbWVudCIsICJJbnNwZWN0IEVsZW1l
bnQgY29udGV4dCBtZW51IGl0ZW0iKTsKIH0KIAorI2lmICFQTEFURk9STShDT0NPQSkKK1N0cmlu
ZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQoreworICAgIHJldHVybiBXRUJfVUlfU1RS
SU5HX1dJVEhfTU5FTU9OSUMoIlNlYXJjaCB0aGUgV2ViIiwgIl9TZWFyY2ggdGhlIFdlYiIsICJT
ZWFyY2ggdGhlIFdlYiBjb250ZXh0IG1lbnUgaXRlbSIpOworfQorI2VuZGlmCisKICNlbmRpZiAv
LyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAogI2lmICFQTEFURk9STShJT1NfRkFNSUxZKQpAQCAt
MTA4Myw0ICsxMDk3LDExIEBAIFN0cmluZyBkYXRlUGlja2VyWWVhckxhYmVsVGl0bGUoKQogCiAj
ZW5kaWYKIAorI2lmIFVTRShTT1VQKQorU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRl
KCkKK3sKKyAgICByZXR1cm4gV0VCX1VJX1NUUklORygiVW5hY2NlcHRhYmxlIFRMUyBjZXJ0aWZp
Y2F0ZSIsICJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRlIGVycm9yIik7Cit9CisjZW5kaWYK
KwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCmluZGV4IDc1MGVjZTM5OWUwLi5lZTc0YjVh
YjM4YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0
cmluZ3NHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Mb2NhbGl6ZWRT
dHJpbmdzR3RrLmNwcApAQCAtMTA4LDExICsxMDgsNiBAQCBTdHJpbmcgY29udGV4dE1lbnVJdGVt
VGFnSW5wdXRNZXRob2RzKCkKICAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJJbnB1dCBf
TWV0aG9kcyIpKTsKIH0KIAotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1NlYXJjaFdlYigpCi17
Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoXygiX1NlYXJjaCB0aGUgV2ViIikpOwotfQot
CiBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnVW5pY29kZUluc2VydExSTU1hcmsoKQogewogICAg
IHJldHVybiBTdHJpbmc6OmZyb21VVEY4KF8oIkxSTSBfTGVmdC10by1yaWdodCBtYXJrIikpOwpA
QCAtMTc2LDE0ICsxNzEsNCBAQCBTdHJpbmcgdmFsaWRhdGlvbk1lc3NhZ2VUb29Mb25nVGV4dChp
bnQsIGludCBtYXhMZW5ndGgpCiAgICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoc3RyaW5nLmdl
dCgpKTsKIH0KIAotU3RyaW5nIHVuYWNjZXB0YWJsZVRMU0NlcnRpZmljYXRlKCkKLXsKLSAgICBy
ZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChfKCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRlIikp
OwotfQotCi1TdHJpbmcgbG9jYWxpemVkU3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKLXsKLSAgICBy
ZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChrZXksIHN0cmxlbihrZXkpKTsKLX0KLQogfSAvLyBuYW1l
c3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xv
Y2FsaXplZFN0cmluZ3NXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xvY2Fs
aXplZFN0cmluZ3NXaW4uY3BwCmluZGV4IDRiZWZmMzAxYjg1Li4xZTc5ZTEwODQ3ZCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdzV2luLmNw
cApAQCAtNDIsMTEgKzQyLDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFVTRShD
RikKIFN0cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQogewogICAgIEFTU0VS
VChpc01haW5UaHJlYWQoKSk7CiAKLSNpZiBVU0UoQ0YpCiAgICAgc3RhdGljIENGU3RyaW5nUmVm
IG5vdEZvdW5kID0gQ0ZTVFIoImxvY2FsaXplZCBzdHJpbmcgbm90IGZvdW5kIik7CiAKICAgICBS
ZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IGtleVN0cmluZyA9IGFkb3B0Q0YoQ0ZTdHJpbmdDcmVhdGVX
aXRoQ1N0cmluZ05vQ29weShOVUxMLCBrZXksIGtDRlN0cmluZ0VuY29kaW5nVVRGOCwga0NGQWxs
b2NhdG9yTnVsbCkpOwpAQCAtNTQsMTYgKzU0LDYgQEAgU3RyaW5nIGxvY2FsaXplZFN0cmluZyhj
b25zdCBjaGFyKiBrZXkpCiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShyZXN1bHQuZ2V0KCkgIT0g
bm90Rm91bmQsICJjb3VsZCBub3QgZmluZCBsb2NhbGl6YWJsZSBzdHJpbmcgJXMgaW4gYnVuZGxl
Iiwga2V5KTsKIAogICAgIHJldHVybiByZXN1bHQuZ2V0KCk7Ci0jZWxzZQotICAgIC8vIEZJWE1F
OiBJbXBsZW1lbnQgbG9jYWxpemVkU3RyaW5nKCkgZm9yICFVU0UoQ0YpLgotICAgIHJldHVybiBT
dHJpbmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFC
TEUoQ09OVEVYVF9NRU5VUykKLVN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQot
ewotICAgIHJldHVybiBXRUJfVUlfU1RSSU5HKCJTZWFyY2ggd2l0aCBHb29nbGUiLCAiU2VhcmNo
IHdpdGggR29vZ2xlIGNvbnRleHQgbWVudSBpdGVtIik7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCmRlbGV0
ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBhNzYwMTk2OTcxYi4uMDAwMDAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCisrKyAv
ZGV2L251bGwKQEAgLTEsNTEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxNCBJZ2Fs
aWEgUy5MLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUgbWV0OgotICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCi0g
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAot
ICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFCTEUgRk9SIEFO
WSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SCi0g
KiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQ
Uk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBV
U0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJT04pIEhPV0VW
RVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTgotICog
Q09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRSBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJTElUWSBPRiBT
VUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVkZSAiTG9jYWxp
emVkU3RyaW5ncy5oIgotCi0jaW5jbHVkZSAiTm90SW1wbGVtZW50ZWQuaCIKLSNpbmNsdWRlIDx3
dGYvZ2xpYi9HVW5pcXVlUHRyLmg+Ci0jaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+Ci0K
LW5hbWVzcGFjZSBXZWJDb3JlIHsKLQotU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ1NlYXJjaFdl
YigpCi17Ci0gICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoIl9TZWFyY2ggdGhlIFdlYiIpOwot
fQotCi1TdHJpbmcgdW5hY2NlcHRhYmxlVExTQ2VydGlmaWNhdGUoKQotewotICAgIHJldHVybiBT
dHJpbmc6OmZyb21VVEY4KCJVbmFjY2VwdGFibGUgVExTIGNlcnRpZmljYXRlIik7Ci19Ci0KLVN0
cmluZyBsb2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQotewotICAgIHJldHVybiBTdHJp
bmc6OmZyb21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotfQotCi0KLX0K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>355362</attachid>
            <date>2018-11-20 13:42:47 -0800</date>
            <delta_ts>2018-11-20 14:09:30 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-191854-20181120134246.patch</filename>
            <type>text/plain</type>
            <size>8065</size>
            <attacher name="Christopher Reid">chris.reid</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM4MzkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmFlZDg3NzcxYzI4ODcw
OWVmNjIzMThhNjg1ZTFiYjA5NzAyNWM0Zi4uZWE4Y2I3MzBlNjBhMmYxMmY1ZDA1ZjlhZGZhNzdh
ZGFjNzAxYTAxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDE4LTExLTIwICBDaHJp
c3RvcGhlciBSZWlkICA8Y2hyaXMucmVpZEBzb255LmNvbT4KKworICAgICAgICBSZW1vdmUgdGhl
IG5lZWQgZm9yIExvY2FsaXplZFN0cmluZ3NXUEUuY3BwCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTE4NTQKKworICAgICAgICBSZXZpZXdlZCBieSBN
aWNoYWVsIENhdGFuemFyby4KKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IuCisKKyAg
ICAgICAgQ29uc29saWRhdGUgIlNlYXJjaCB0aGUgV2ViIiBhcyB0aGUgZGVmYXVsdCBzZWFyY2gg
Y29udGV4dCBtZW51IHRleHQgb24gbm9uLUNPQ09BIHBvcnRzLgorCisgICAgICAgIEdUSywgV1BF
LCBhbmQgbm9uLUNGIFdJTiBhbGwgaGFkIHRoZSBzYW1lIGRlZmF1bHQgbG9jYWxpemVkU3RyaW5n
IGZ1bmN0aW9uCisgICAgICAgIG9mIFN0cmluZzo6ZnJvbVVURjguIE1vdmUgdGhhdCB0byBMb2Nh
bGl6ZWRTdHJpbmcuY3BwIGFzIHRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uCisgICAgICAgIGZv
ciBhbGwgcG9ydHMgbm90IHVzaW5nIENGLgorCisgICAgICAgICogZW4ubHByb2ovTG9jYWxpemFi
bGUuc3RyaW5nczoKKyAgICAgICAgKiBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmNwcDoKKyAg
ICAgICAgKiBwbGF0Zm9ybS9ndGsvTG9jYWxpemVkU3RyaW5nc0d0ay5jcHA6CisgICAgICAgICog
cGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwOgorICAgICAgICAqIHBsYXRmb3Jt
L3dwZS9Mb2NhbGl6ZWRTdHJpbmdzV1BFLmNwcDogUmVtb3ZlZC4KKwogMjAxOC0xMS0xOSAgRnVq
aWkgSGlyb25vcmkgIDxIaXJvbm9yaS5GdWppaUBzb255LmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OKHIyMzgzNTApIFtjdXJsXSBDZXJ0aWZpY2F0ZUluZm8uaDogZXJyb3I6IHRlbXBsYXRlIHNw
ZWNpYWxpemF0aW9uIHJlcXVpcmVzICd0ZW1wbGF0ZTw+JwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvU291cmNlc1dQRS50eHQgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4dAppbmRl
eCA3NjI5ZTM1NTAyZjM3ODQ0ZjJlMjNmMjlmMTc0MzczYTIxZjI0MjRlLi4zODFlNTg1YTE3NzYx
YTFmNjA3Mzg0MmU0Y2RjNTk1M2UyODczOWVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9T
b3VyY2VzV1BFLnR4dAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzV1BFLnR4dApAQCAtNzEs
NyArNzEsNiBAQCBwbGF0Zm9ybS90ZXh0L0xvY2FsZUlDVS5jcHAKIAogcGxhdGZvcm0vdW5peC9M
b2dnaW5nVW5peC5jcHAKIAotcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCiBw
bGF0Zm9ybS93cGUvUGxhdGZvcm1TY3JlZW5XUEUuY3BwCiBwbGF0Zm9ybS93cGUvUmVuZGVyVGhl
bWVXUEUuY3BwCiBwbGF0Zm9ybS93cGUvU2Nyb2xsYmFyVGhlbWVXUEUuY3BwCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9Mb2NhbGl6YWJsZS5zdHJpbmdzIGIvU291cmNlL1dl
YkNvcmUvZW4ubHByb2ovTG9jYWxpemFibGUuc3RyaW5ncwppbmRleCBhNDNmZGQ0NWU5NDk2OTA5
YjdmYzY3ZGY1Yzc0NjRkMzBkMTRkOWU5Li42MDE2ZDMwYzg5YWVhZGNlZjc5Mjg5NzBmM2IxNDIx
MmQxZmM5MjZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9lbi5scHJvai9Mb2NhbGl6YWJs
ZS5zdHJpbmdzCisrKyBiL1NvdXJjZS9XZWJDb3JlL2VuLmxwcm9qL0xvY2FsaXphYmxlLnN0cmlu
Z3MKQEAgLTU5OCw4ICs1OTgsOCBAQAogLyogU2VhcmNoIHdpdGggc2VhcmNoIHByb3ZpZGVyIGNv
bnRleHQgbWVudSBpdGVtIHdpdGggcHJvdmlkZXIgbmFtZSBpbnNlcnRlZCAqLwogIlNlYXJjaCB3
aXRoICVAIiA9ICJTZWFyY2ggd2l0aCAlQCI7CiAKLS8qIFNlYXJjaCB3aXRoIEdvb2dsZSBjb250
ZXh0IG1lbnUgaXRlbSAqLwotIlNlYXJjaCB3aXRoIEdvb2dsZSIgPSAiU2VhcmNoIHdpdGggR29v
Z2xlIjsKKy8qIFNlYXJjaCB0aGUgV2ViIGNvbnRleHQgbWVudSBpdGVtICovCisiU2VhcmNoIHRo
ZSBXZWIiID0gIlNlYXJjaCB0aGUgV2ViIjsKIAogLyogVmFsaWRhdGlvbiBtZXNzYWdlIGZvciBy
ZXF1aXJlZCBmaWxlIGlucHV0cyB0aGF0IGhhdmUgbm8gdmFsdWUgKi8KICJTZWxlY3QgYSBmaWxl
IiA9ICJTZWxlY3QgYSBmaWxlIjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L0xvY2FsaXplZFN0cmluZ3MuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVk
U3RyaW5ncy5jcHAKaW5kZXggN2Y1NTIwMTE3NzUyMzNkZjBkODRhZjliMWNlZWY5MDlkNjk3YTRh
MS4uZjQzMTg2MDVkMTQwZWI0NTdjOWRkY2I4MzZjNWY1Y2RiMjA0NzI4MyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5jcHAKQEAgLTcyLDYgKzcyLDEzIEBA
IFN0cmluZyBmb3JtYXRMb2NhbGl6ZWRTdHJpbmcoU3RyaW5nIGZvcm1hdCwgLi4uKQogI2VuZGlm
CiB9CiAKKyNpZiAhVVNFKENGKQorU3RyaW5nIGxvY2FsaXplZFN0cmluZyhjb25zdCBjaGFyKiBr
ZXkpCit7CisgICAgcmV0dXJuIFN0cmluZzo6ZnJvbVVURjgoa2V5LCBzdHJsZW4oa2V5KSk7Cit9
CisjZW5kaWYKKwogI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogCiBzdGF0aWMgU3RyaW5nIHRy
dW5jYXRlZFN0cmluZ0Zvckxvb2t1cE1lbnVJdGVtKGNvbnN0IFN0cmluZyYgb3JpZ2luYWwpCkBA
IC00MDYsNiArNDEzLDEzIEBAIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdJbnNwZWN0RWxlbWVu
dCgpCiAgICAgcmV0dXJuIFdFQl9VSV9TVFJJTkdfV0lUSF9NTkVNT05JQygiSW5zcGVjdCBFbGVt
ZW50IiwgIkluc3BlY3QgX0VsZW1lbnQiLCAiSW5zcGVjdCBFbGVtZW50IGNvbnRleHQgbWVudSBp
dGVtIik7CiB9CiAKKyNpZiAhUExBVEZPUk0oQ09DT0EpCitTdHJpbmcgY29udGV4dE1lbnVJdGVt
VGFnU2VhcmNoV2ViKCkKK3sKKyAgICByZXR1cm4gV0VCX1VJX1NUUklOR19XSVRIX01ORU1PTklD
KCJTZWFyY2ggdGhlIFdlYiIsICJfU2VhcmNoIHRoZSBXZWIiLCAiU2VhcmNoIHRoZSBXZWIgY29u
dGV4dCBtZW51IGl0ZW0iKTsKK30KKyNlbmRpZgorCiAjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRf
TUVOVVMpCiAKICNpZiAhUExBVEZPUk0oSU9TX0ZBTUlMWSkKQEAgLTEwODMsNCArMTA5NywxMSBA
QCBTdHJpbmcgZGF0ZVBpY2tlclllYXJMYWJlbFRpdGxlKCkKIAogI2VuZGlmCiAKKyNpZiBVU0Uo
U09VUCkKK1N0cmluZyB1bmFjY2VwdGFibGVUTFNDZXJ0aWZpY2F0ZSgpCit7CisgICAgcmV0dXJu
IFdFQl9VSV9TVFJJTkcoIlVuYWNjZXB0YWJsZSBUTFMgY2VydGlmaWNhdGUiLCAiVW5hY2NlcHRh
YmxlIFRMUyBjZXJ0aWZpY2F0ZSBlcnJvciIpOworfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Mb2NhbGl6
ZWRTdHJpbmdzR3RrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Mb2NhbGl6ZWRT
dHJpbmdzR3RrLmNwcAppbmRleCA3NTBlY2UzOTllMDRjOGQ3ZDk4NDk3MjEwNjc4NWU5ZGVkOGY4
YjZkLi5lZTc0YjVhYjM4YWQ4MTRhZmE4MWEyNTViNjgxZDk2ZWZiOGVlZmYwIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvTG9jYWxpemVkU3RyaW5nc0d0ay5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0xvY2FsaXplZFN0cmluZ3NHdGsuY3BwCkBA
IC0xMDgsMTEgKzEwOCw2IEBAIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdJbnB1dE1ldGhvZHMo
KQogICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4KF8oIklucHV0IF9NZXRob2RzIikpOwogfQog
Ci1TdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnU2VhcmNoV2ViKCkKLXsKLSAgICByZXR1cm4gU3Ry
aW5nOjpmcm9tVVRGOChfKCJfU2VhcmNoIHRoZSBXZWIiKSk7Ci19Ci0KIFN0cmluZyBjb250ZXh0
TWVudUl0ZW1UYWdVbmljb2RlSW5zZXJ0TFJNTWFyaygpCiB7CiAgICAgcmV0dXJuIFN0cmluZzo6
ZnJvbVVURjgoXygiTFJNIF9MZWZ0LXRvLXJpZ2h0IG1hcmsiKSk7CkBAIC0xNzYsMTQgKzE3MSw0
IEBAIFN0cmluZyB2YWxpZGF0aW9uTWVzc2FnZVRvb0xvbmdUZXh0KGludCwgaW50IG1heExlbmd0
aCkKICAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChzdHJpbmcuZ2V0KCkpOwogfQogCi1TdHJp
bmcgdW5hY2NlcHRhYmxlVExTQ2VydGlmaWNhdGUoKQotewotICAgIHJldHVybiBTdHJpbmc6OmZy
b21VVEY4KF8oIlVuYWNjZXB0YWJsZSBUTFMgY2VydGlmaWNhdGUiKSk7Ci19Ci0KLVN0cmluZyBs
b2NhbGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQotewotICAgIHJldHVybiBTdHJpbmc6OmZy
b21VVEY4KGtleSwgc3RybGVuKGtleSkpOwotfQotCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vTG9jYWxpemVkU3RyaW5nc1dp
bi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vTG9jYWxpemVkU3RyaW5nc1dpbi5j
cHAKaW5kZXggNGJlZmYzMDFiODU1Y2Q3OGU2ZDkwMmNhZDc0NDEyZWNkNDNiZTM2Zi4uMWU3OWUx
MDg0N2Q3MGRjYTU0ZjE5MjM5MWM4MTQ1OWMyM2U2YzY4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vd2luL0xvY2FsaXplZFN0cmluZ3NXaW4uY3BwCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3dpbi9Mb2NhbGl6ZWRTdHJpbmdzV2luLmNwcApAQCAtNDIsMTEgKzQy
LDExIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorI2lmIFVTRShDRikKIFN0cmluZyBsb2Nh
bGl6ZWRTdHJpbmcoY29uc3QgY2hhcioga2V5KQogewogICAgIEFTU0VSVChpc01haW5UaHJlYWQo
KSk7CiAKLSNpZiBVU0UoQ0YpCiAgICAgc3RhdGljIENGU3RyaW5nUmVmIG5vdEZvdW5kID0gQ0ZT
VFIoImxvY2FsaXplZCBzdHJpbmcgbm90IGZvdW5kIik7CiAKICAgICBSZXRhaW5QdHI8Q0ZTdHJp
bmdSZWY+IGtleVN0cmluZyA9IGFkb3B0Q0YoQ0ZTdHJpbmdDcmVhdGVXaXRoQ1N0cmluZ05vQ29w
eShOVUxMLCBrZXksIGtDRlN0cmluZ0VuY29kaW5nVVRGOCwga0NGQWxsb2NhdG9yTnVsbCkpOwpA
QCAtNTQsMTYgKzU0LDYgQEAgU3RyaW5nIGxvY2FsaXplZFN0cmluZyhjb25zdCBjaGFyKiBrZXkp
CiAgICAgQVNTRVJUX1dJVEhfTUVTU0FHRShyZXN1bHQuZ2V0KCkgIT0gbm90Rm91bmQsICJjb3Vs
ZCBub3QgZmluZCBsb2NhbGl6YWJsZSBzdHJpbmcgJXMgaW4gYnVuZGxlIiwga2V5KTsKIAogICAg
IHJldHVybiByZXN1bHQuZ2V0KCk7Ci0jZWxzZQotICAgIC8vIEZJWE1FOiBJbXBsZW1lbnQgbG9j
YWxpemVkU3RyaW5nKCkgZm9yICFVU0UoQ0YpLgotICAgIHJldHVybiBTdHJpbmc6OmZyb21VVEY4
KGtleSwgc3RybGVuKGtleSkpOwotI2VuZGlmCi19Ci0KLSNpZiBFTkFCTEUoQ09OVEVYVF9NRU5V
UykKLVN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQotewotICAgIHJldHVybiBX
RUJfVUlfU1RSSU5HKCJTZWFyY2ggd2l0aCBHb29nbGUiLCAiU2VhcmNoIHdpdGggR29vZ2xlIGNv
bnRleHQgbWVudSBpdGVtIik7CiB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vd3BlL0xvY2FsaXplZFN0cmluZ3NXUEUuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCBhNzYwMTk2OTcxYjRiMjg4OTliMTI3MWM1NDZmZDg2ZWMwZTU3ZDUwLi4wMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3dwZS9Mb2NhbGl6ZWRTdHJpbmdzV1BFLmNwcAorKysgL2Rldi9udWxsCkBAIC0x
LDUxICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTQgSWdhbGlhIFMuTC4KLSAqCi0g
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gQU5EIElU
UyBDT05UUklCVVRPUlMgYGBBUyBJUycnCi0gKiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElO
Qy4gT1IgSVRTIENPTlRSSUJVVE9SUwotICogQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUgotICogQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YK
LSAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUwotICogSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4KLSAqIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
Ci0gKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GCi0gKiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0g
Ki8KLQotI2luY2x1ZGUgImNvbmZpZy5oIgotI2luY2x1ZGUgIkxvY2FsaXplZFN0cmluZ3MuaCIK
LQotI2luY2x1ZGUgIk5vdEltcGxlbWVudGVkLmgiCi0jaW5jbHVkZSA8d3RmL2dsaWIvR1VuaXF1
ZVB0ci5oPgotI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgotCi1uYW1lc3BhY2UgV2Vi
Q29yZSB7Ci0KLVN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdTZWFyY2hXZWIoKQotewotICAgIHJl
dHVybiBTdHJpbmc6OmZyb21VVEY4KCJfU2VhcmNoIHRoZSBXZWIiKTsKLX0KLQotU3RyaW5nIHVu
YWNjZXB0YWJsZVRMU0NlcnRpZmljYXRlKCkKLXsKLSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRG
OCgiVW5hY2NlcHRhYmxlIFRMUyBjZXJ0aWZpY2F0ZSIpOwotfQotCi1TdHJpbmcgbG9jYWxpemVk
U3RyaW5nKGNvbnN0IGNoYXIqIGtleSkKLXsKLSAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChr
ZXksIHN0cmxlbihrZXkpKTsKLX0KLQotCi19Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>