<?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>144078</bug_id>
          
          <creation_ts>2015-04-22 16:17:42 -0700</creation_ts>
          <short_desc>[iOS] WebKit services should inherit environment variables for home</short_desc>
          <delta_ts>2015-04-23 14:16:20 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alexey Proskuryakov">ap</reporter>
          <assigned_to name="Alexey Proskuryakov">ap</assigned_to>
          <cc>andersca</cc>
    
    <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mitz</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1087632</commentid>
    <comment_count>0</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-22 16:17:42 -0700</bug_when>
    <thetext>rdar://problem/20571678</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087635</commentid>
    <comment_count>1</comment_count>
      <attachid>251380</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-22 16:21:42 -0700</bug_when>
    <thetext>Created attachment 251380
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087663</commentid>
    <comment_count>2</comment_count>
      <attachid>251380</attachid>
    <who name="">mitz</who>
    <bug_when>2015-04-22 17:59:06 -0700</bug_when>
    <thetext>Comment on attachment 251380
proposed fix

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

&gt; Source/WebKit2/UIProcess/Launcher/mac/ProcessLauncherMac.mm:229
&gt; +    if (const char* environmentHOME = getenv(&quot;HOME&quot;))
&gt; +        xpc_dictionary_set_string(initializationMessage.get(), &quot;HOME&quot;, environmentHOME);
&gt; +    if (const char* environmentCFFIXED_USER_HOME = getenv(&quot;CFFIXED_USER_HOME&quot;))
&gt; +        xpc_dictionary_set_string(initializationMessage.get(), &quot;CFFIXED_USER_HOME&quot;, environmentCFFIXED_USER_HOME);
&gt; +    if (const char* environmentTMPDIR = getenv(&quot;TMPDIR&quot;))
&gt; +        xpc_dictionary_set_string(initializationMessage.get(), &quot;TMPDIR&quot;, environmentTMPDIR);

Since we share ownership of the bootstrap dictionary with Core Foundation, we should consider using keys that won’t clash with anything that framework may choose to use. I suggest WebKitEnvironmentVariableHOME etc or a WebKitEnvironment dictionary with three key-value pairs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087664</commentid>
    <comment_count>3</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-04-22 18:00:34 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; a WebKitEnvironment dictionary with three key-value pairs.

This would be nice because we won’t need to duplicate the knowledge of which variables we care about on both sides.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087668</commentid>
    <comment_count>4</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-22 18:06:45 -0700</bug_when>
    <thetext>I don&apos;t know if it&apos;s a practical concern that someone is going to put something else into HOME.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087683</commentid>
    <comment_count>5</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-22 19:01:34 -0700</bug_when>
    <thetext>The way I look into this is that it should be clear what the dictionary holds, and it doesn&apos;t hold &quot;WebKit environment variables&quot;. I could see something like a Container dictionary with the three values, however that wouldn&apos;t address your concern.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087686</commentid>
    <comment_count>6</comment_count>
    <who name="">mitz</who>
    <bug_when>2015-04-22 19:08:10 -0700</bug_when>
    <thetext>I had two concerns: potential namespace collisions and the duplication of the list of variables. If you post a patch that addresses only the duplication, I&apos;ll consider it an improvement. I won&apos;t let the first concern stop me from reviewing such a patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087891</commentid>
    <comment_count>7</comment_count>
      <attachid>251457</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-23 11:14:50 -0700</bug_when>
    <thetext>Created attachment 251457
proposed fix</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087917</commentid>
    <comment_count>8</comment_count>
      <attachid>251457</attachid>
    <who name="">mitz</who>
    <bug_when>2015-04-23 12:09:04 -0700</bug_when>
    <thetext>Comment on attachment 251457
proposed fix

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

Seems to be failing to build without the internal SDK, because xpc_copy_bootstrap is not defined.

&gt; Source/WebCore/platform/spi/cf/CFBundleSPI.h:34
&gt; +#include &lt;wtf/spi/darwin/XPCSPI.h&gt;

What are we using from this below?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087927</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-23 12:30:39 -0700</bug_when>
    <thetext>We use xpc_object_t.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087934</commentid>
    <comment_count>10</comment_count>
      <attachid>251470</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-23 12:34:12 -0700</bug_when>
    <thetext>Created attachment 251470
proposed fix

With another iOS open source build fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087962</commentid>
    <comment_count>11</comment_count>
      <attachid>251477</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-23 13:23:39 -0700</bug_when>
    <thetext>Created attachment 251477
proposed fix

More SPIs for open source build...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087963</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-04-23 13:26:22 -0700</bug_when>
    <thetext>Attachment 251477 did not pass style-queue:


ERROR: Source/WTF/wtf/spi/darwin/XPCSPI.h:102:  The parameter name &quot;applier&quot; adds no information, so it should be removed.  [readability/parameter_name] [5]
Total errors found: 1 in 8 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1087976</commentid>
    <comment_count>13</comment_count>
      <attachid>251477</attachid>
    <who name="">mitz</who>
    <bug_when>2015-04-23 13:38:31 -0700</bug_when>
    <thetext>Comment on attachment 251477
proposed fix

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

&gt; Source/WebCore/WebCore.xcodeproj/project.pbxproj:16447
&gt;  				65086DA719AC1719009AF46B /* CFLocaleSPI.h */,
&gt; +				E10A39E11AE84E7100A29AE3 /* CFBundleSPI.h */,

These seem to be in the wrong order.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1088000</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-04-23 14:16:20 -0700</bug_when>
    <thetext>Committed &lt;http://trac.webkit.org/r183209&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251380</attachid>
            <date>2015-04-22 16:21:42 -0700</date>
            <delta_ts>2015-04-23 11:14:50 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>InheritHome.txt</filename>
            <type>text/plain</type>
            <size>10918</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzE1MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE1LTA0LTIyICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIFdlYktpdCBzZXJ2
aWNlcyBzaG91bGQgaW5oZXJpdCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIGhvbWUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDA3OAorICAgICAg
ICByZGFyOi8vcHJvYmxlbS8yMDU3MTY3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZGVkIGFuIFNQSSBoZWFkZXIgZm9yIGEgZHJpdmUtYnkgZml4
LgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAg
ICAqIHBsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oOiBBZGRlZC4KKwogMjAxNS0wNC0yMiAg
QnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBDb250ZXh0IG1l
bnUgZG9lc24ndCBhY2NvdW50IGZvciBzZWxlY3Rpb24gc2VtYW50aWNzCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lv
biAxODI5MzkpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTU5ODMsNiArNTk4Myw3IEBACiAJCUUwRkVGMzcyQjQ3
QzUzRUFDMUMxRkJFRSAvKiBKU0V2ZW50U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUwRkVGMzcxQjQ3QzUzRUFDMUMxRkJFRSAvKiBKU0V2
ZW50U291cmNlLmNwcCAqLzsgfTsKIAkJRTEwNzQwMEQwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVz
c2FnZUNoYW5uZWwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICov
OyB9OwogCQlFMTA3NDAwRTBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwNzQwMEMwRTc3
QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuaCAqLzsgfTsKKwkJRTEwQTM5RTIxQUU4
NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVT
UEkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlF
MTBCOTM3QzBCNzNDMDBBMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMEI5MzdCMEI3M0Mw
MEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwogCQlFMTBCOTND
MzBCNzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjkzQzIwQjczQzI5MTAw
M0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmNwcCAqLzsgfTsKIAkJRTEwQjlCNkMw
Qjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjlCNkEwQjc0NzU5OTAwM0VEODkw
IC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwpAQCAtMTM1NzIsNiArMTM1NzMsNyBA
QAogCQlFMEZFRjM3MUI0N0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50U291cmNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVz
c2FnZUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNN
ZXNzYWdlQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxMDc0MDBD
MEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTTWVzc2FnZUNoYW5uZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTEwQTM5RTExQUU4NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENGQnVuZGxlU1BJLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUUxMEI5MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRo
TlNSZXNvbHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbVhQ
YXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOTNDMjBC
NzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOUI2QTBCNzQ3NTk5MDAzRUQ4OTAgLyog
TmF0aXZlWFBhdGhOU1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MTY0NDIsNiArMTY0NDQsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgK
IAkJCQk2NTA4NkRBNzE5QUMxNzE5MDA5QUY0NkIgLyogQ0ZMb2NhbGVTUEkuaCAqLywKKwkJCQlF
MTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVTUEkuaCAqLywKIAkJCQlDRTgyNDVF
RjE5QjY3MUJBMDBBQzAxMjIgLyogQ0ZOZXR3b3JrQ29ubmVjdGlvbkNhY2hlU1BJLmggKi8sCiAJ
CQkJQ0UxMjUyNUExQTFDMDE4MjAwODY0NDgwIC8qIENGTmV0d29ya1NQSS5oICovLAogCQkJCTQ0
NDlBNDA0MUE5NjRCMDAwMEI2NEFENSAvKiBDb3JlTWVkaWFTUEkuaCAqLywKQEAgLTI3MDkxLDYg
KzI3MDk0LDcgQEAKIAkJCQkyRTQzNDY1MTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyT2JqZWN0
UHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNkUyOUE2MTAyRkE5NjIwMDdGQzE0RSAvKiBX
b3JrZXJSZXBvcnRpbmdQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NTMwRjU0NkE4
MjAwQjBGMUJBIC8qIFdvcmtlclJ1bkxvb3AuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxMEEzOUUy
MUFFODRFNzEwMEEyOUFFMyAvKiBDRkJ1bmRsZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM4
MjA4OTkxNDdEMzVGOTAwMTBCQzA2IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRTFBNjQzRjIwRUMwOTcyNTAwNzc5NjY4IC8qIFdvcmtlclNjcmlwdENvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUYzNDc0MkU5MTM0MzYzNTAwMDUzMUJDMiAvKiBXb3Jr
ZXJTY3JpcHREZWJ1Z1NlcnZlci5oIGluIEhlYWRlcnMgKi8sCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAkocmV2aXNpb24gMCkKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsNDAgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAor
ICovCisKKyNpZm5kZWYgQ0ZCdW5kbGVTUElfaAorI2RlZmluZSBDRkJ1bmRsZVNQSV9oCisKKyNp
bmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorI2luY2x1ZGUgPHhwYy94
cGMuaD4KKworI2lmIFVTRShBUFBMRV9JTlRFUk5BTF9TREspCisjaW1wb3J0IDxDb3JlRm91bmRh
dGlvbi9DRlByaXYuaD4KKyNlbmRpZgorCitleHRlcm4gIkMiIHsKK3ZvaWQgX0NGQnVuZGxlU2V0
dXBYUENCb290c3RyYXAoeHBjX29iamVjdF90IGJvb3RzdHJhcCk7Cit9CisKKyNlbmRpZgpJbmRl
eDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQy
L0NoYW5nZUxvZwkocmV2aXNpb24gMTgzMTQ4KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUtMDQtMjIgIEFsZXhleSBQcm9z
a3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lPU10gV2ViS2l0IHNlcnZpY2Vz
IHNob3VsZCBpbmhlcml0IGVudmlyb25tZW50IHZhcmlhYmxlcyBmb3IgaG9tZQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTQ0MDc4CisgICAgICAgIHJk
YXI6Ly9wcm9ibGVtLzIwNTcxNjc4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgUGFzcyBjdXJyZW50IGVudmlyb25tZW50IHZhcmlhYmxlcyBhcyBYUEMg
Ym9vdHN0cmFwLiBBbHNvIHdoaWxlIGF0IGl0LCBtYWRlCisgICAgICAgIF9DRkJ1bmRsZVNldHVw
WFBDQm9vdHN0cmFwIG5vdCBzb2Z0IGxpbmtlZC4KKworICAgICAgICAqIFNoYXJlZC9FbnRyeVBv
aW50VXRpbGl0aWVzL21hYy9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tOgorICAgICAgICAo
bWFpbik6CisgICAgICAgICogVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJN
YWMubW06CisgICAgICAgIChXZWJLaXQ6OmNvbm5lY3RUb1NlcnZpY2UpOgorCiAyMDE1LTA0LTIy
ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgogCiAgICAgICAgIFVucmV2aWV3
ZWQgYnVpbGQgZml4IGFmdGVyIHIxODMxMzYuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
RW50cnlQb2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9YUENTZXJ2aWNlTWFpbi5tbQo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9tYWMv
WFBDU2VydmljZS9YUENTZXJ2aWNlTWFpbi5tbQkocmV2aXNpb24gMTgyOTM5KQorKysgU291cmNl
L1dlYktpdDIvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvbWFjL1hQQ1NlcnZpY2UvWFBDU2Vy
dmljZU1haW4ubW0JKHdvcmtpbmcgY29weSkKQEAgLTc3LDYgKzc3LDE2IEBAIHVzaW5nIG5hbWVz
cGFjZSBXZWJLaXQ7CiAKIGludCBtYWluKGludCBhcmdjLCBjaGFyKiogYXJndikKIHsKKyNpZiBQ
TEFURk9STShJT1MpCisgICAgYXV0byBib290c3RyYXAgPSBhZG9wdE9TT2JqZWN0KHhwY19jb3B5
X2Jvb3RzdHJhcCgpKTsKKyAgICBpZiAoY29uc3QgY2hhciogZW52aXJvbm1lbnRIT01FID0geHBj
X2RpY3Rpb25hcnlfZ2V0X3N0cmluZyhib290c3RyYXAuZ2V0KCksICJIT01FIikpCisgICAgICAg
IHNldGVudigiSE9NRSIsIGVudmlyb25tZW50SE9NRSwgMSk7CisgICAgaWYgKGNvbnN0IGNoYXIq
IGVudmlyb25tZW50Q0ZGSVhFRF9VU0VSX0hPTUUgPSB4cGNfZGljdGlvbmFyeV9nZXRfc3RyaW5n
KGJvb3RzdHJhcC5nZXQoKSwgIkNGRklYRURfVVNFUl9IT01FIikpCisgICAgICAgIHNldGVudigi
Q0ZGSVhFRF9VU0VSX0hPTUUiLCBlbnZpcm9ubWVudENGRklYRURfVVNFUl9IT01FLCAxKTsKKyAg
ICBpZiAoY29uc3QgY2hhciogZW52aXJvbm1lbnRUTVBESVIgPSB4cGNfZGljdGlvbmFyeV9nZXRf
c3RyaW5nKGJvb3RzdHJhcC5nZXQoKSwgIlRNUERJUiIpKQorICAgICAgICBzZXRlbnYoIlRNUERJ
UiIsIGVudmlyb25tZW50VE1QRElSLCAxKTsKKyNlbmRpZgorCiAgICAgeHBjX21haW4oWFBDU2Vy
dmljZUV2ZW50SGFuZGxlcik7CiAgICAgcmV0dXJuIDA7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hl
ck1hYy5tbQkocmV2aXNpb24gMTgyOTM5KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xh
dW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYg
KzI4LDcgQEAKIAogI2ltcG9ydCAiRHluYW1pY0xpbmtlckVudmlyb25tZW50RXh0cmFjdG9yLmgi
CiAjaW1wb3J0ICJFbnZpcm9ubWVudFZhcmlhYmxlcy5oIgorI2ltcG9ydCA8V2ViQ29yZS9DRkJ1
bmRsZVNQSS5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZXJ2ZXJzU1BJLmg+CiAjaW1wb3J0IDxXZWJD
b3JlL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1dlYkNvcmVOU1N0cmluZ0V4dHJh
cy5oPgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNpbXBvcnQgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNp
bXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi0jaWYgUExBVEZPUk0oSU9TKSB8fCBfX01B
Q19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49IDEwMTAwMAotLy8gRklYTUU6IFNvZnQgbGlu
a2luZyBpcyB0ZW1wb3JhcnksIG1ha2UgdGhpcyBpbnRvIGEgcmVndWxhciBmdW5jdGlvbiBjYWxs
IG9uY2UgdGhpcyBmdW5jdGlvbiBpcyBhdmFpbGFibGUgZXZlcnl3aGVyZSB3ZSBuZWVkLgotU09G
VF9MSU5LX0ZSQU1FV09SSyhDb3JlRm91bmRhdGlvbikKLVNPRlRfTElOS19PUFRJT05BTChDb3Jl
Rm91bmRhdGlvbiwgX0NGQnVuZGxlU2V0dXBYUENCb290c3RyYXAsIHZvaWQsIHVudXNlZCwgKHhw
Y19vYmplY3RfdCkpCi0jZW5kaWYKLQogbmFtZXNwYWNlIFdlYktpdCB7CiAKIG5hbWVzcGFjZSB7
CkBAIC0yMjIsMTEgKzIxNywxOCBAQCBzdGF0aWMgdm9pZCBjb25uZWN0VG9TZXJ2aWNlKGNvbnN0
IFByb2NlCiAgICAgLy8gMS4gV2hlbiB0aGUgYXBwbGljYXRpb24gYW5kIHN5c3RlbSBmcmFtZXdv
cmtzIHNpbXBseSBoYXZlIGRpZmZlcmVudCBsb2NhbGl6ZWQgcmVzb3VyY2VzIGF2YWlsYWJsZSwg
d2Ugc2hvdWxkIG1hdGNoIHRoZSBhcHBsaWNhdGlvbi4KICAgICAvLyAxLjEuIEFuIGltcG9ydGFu
dCBjYXNlIGlzIFdlYktpdFRlc3RSdW5uZXIsIHdoZXJlIHdlIHNob3VsZCB1c2UgRW5nbGlzaCBs
b2NhbGl6YXRpb25zIGZvciBhbGwgc3lzdGVtIGZyYW1ld29ya3MuCiAgICAgLy8gMi4gV2hlbiBB
cHBsZUxhbmd1YWdlcyBpcyBwYXNzZWQgYXMgY29tbWFuZCBsaW5lIGFyZ3VtZW50IGZvciBVSSBw
cm9jZXNzLCBvciBzZXQgaW4gaXRzIHByZWZlcmVuY2VzLCB3ZSBzaG91bGQgcmVzcGVjdCBpdCBp
biBjaGlsZCBwcm9jZXNzZXMuCi0gICAgaWYgKF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRy
KCkpIHsKLSAgICAgICAgYXV0byBpbml0aWFsaXphdGlvbk1lc3NhZ2UgPSBhZG9wdE9TT2JqZWN0
KHhwY19kaWN0aW9uYXJ5X2NyZWF0ZShudWxscHRyLCBudWxscHRyLCAwKSk7Ci0gICAgICAgIF9D
RkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRyKCkoaW5pdGlhbGl6YXRpb25NZXNzYWdlLmdldCgp
KTsKLSAgICAgICAgeHBjX2Nvbm5lY3Rpb25fc2V0X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgp
LCBpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCkpOwotICAgIH0KKyAgICBhdXRvIGluaXRpYWxp
emF0aW9uTWVzc2FnZSA9IGFkb3B0T1NPYmplY3QoeHBjX2RpY3Rpb25hcnlfY3JlYXRlKG51bGxw
dHIsIG51bGxwdHIsIDApKTsKKyAgICBfQ0ZCdW5kbGVTZXR1cFhQQ0Jvb3RzdHJhcChpbml0aWFs
aXphdGlvbk1lc3NhZ2UuZ2V0KCkpOworI2lmIFBMQVRGT1JNKElPUykKKyAgICAvLyBDbGllbnRz
IHRoYXQgc2V0IHRoZXNlIGVudmlyb25tZW50IHZhcmlhYmxlcyBleHBsaWNpdGx5IGRvIG5vdCBo
YXZlIHRoZSB2YWx1ZXMgYXV0b21hdGljYWxseSBmb3J3YXJkZWQgYnkgbGlieHBjLgorICAgIGlm
IChjb25zdCBjaGFyKiBlbnZpcm9ubWVudEhPTUUgPSBnZXRlbnYoIkhPTUUiKSkKKyAgICAgICAg
eHBjX2RpY3Rpb25hcnlfc2V0X3N0cmluZyhpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCksICJI
T01FIiwgZW52aXJvbm1lbnRIT01FKTsKKyAgICBpZiAoY29uc3QgY2hhciogZW52aXJvbm1lbnRD
RkZJWEVEX1VTRVJfSE9NRSA9IGdldGVudigiQ0ZGSVhFRF9VU0VSX0hPTUUiKSkKKyAgICAgICAg
eHBjX2RpY3Rpb25hcnlfc2V0X3N0cmluZyhpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCksICJD
RkZJWEVEX1VTRVJfSE9NRSIsIGVudmlyb25tZW50Q0ZGSVhFRF9VU0VSX0hPTUUpOworICAgIGlm
IChjb25zdCBjaGFyKiBlbnZpcm9ubWVudFRNUERJUiA9IGdldGVudigiVE1QRElSIikpCisgICAg
ICAgIHhwY19kaWN0aW9uYXJ5X3NldF9zdHJpbmcoaW5pdGlhbGl6YXRpb25NZXNzYWdlLmdldCgp
LCAiVE1QRElSIiwgZW52aXJvbm1lbnRUTVBESVIpOworI2VuZGlmCisgICAgeHBjX2Nvbm5lY3Rp
b25fc2V0X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgpLCBpbml0aWFsaXphdGlvbk1lc3NhZ2Uu
Z2V0KCkpOwogI2VuZGlmCiAKICAgICAvLyBYUEMgcmVxdWlyZXMgaGF2aW5nIGFuIGV2ZW50IGhh
bmRsZXIsIGV2ZW4gaWYgaXQgaXMgbm90IHVzZWQuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251457</attachid>
            <date>2015-04-23 11:14:50 -0700</date>
            <delta_ts>2015-04-23 12:34:12 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>InheritHome.txt</filename>
            <type>text/plain</type>
            <size>11032</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzE1MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE1LTA0LTIyICBBbGV4ZXkg
UHJvc2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIFdlYktpdCBzZXJ2
aWNlcyBzaG91bGQgaW5oZXJpdCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIGhvbWUKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDA3OAorICAgICAg
ICByZGFyOi8vcHJvYmxlbS8yMDU3MTY3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZGVkIGFuIFNQSSBoZWFkZXIgZm9yIGEgZHJpdmUtYnkgZml4
LgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAg
ICAqIHBsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oOiBBZGRlZC4KKwogMjAxNS0wNC0yMiAg
QnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBDb250ZXh0IG1l
bnUgZG9lc24ndCBhY2NvdW50IGZvciBzZWxlY3Rpb24gc2VtYW50aWNzCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lv
biAxODI5MzkpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTU5ODMsNiArNTk4Myw3IEBACiAJCUUwRkVGMzcyQjQ3
QzUzRUFDMUMxRkJFRSAvKiBKU0V2ZW50U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUwRkVGMzcxQjQ3QzUzRUFDMUMxRkJFRSAvKiBKU0V2
ZW50U291cmNlLmNwcCAqLzsgfTsKIAkJRTEwNzQwMEQwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVz
c2FnZUNoYW5uZWwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICov
OyB9OwogCQlFMTA3NDAwRTBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwNzQwMEMwRTc3
QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuaCAqLzsgfTsKKwkJRTEwQTM5RTIxQUU4
NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSBFMTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVT
UEkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlF
MTBCOTM3QzBCNzNDMDBBMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMEI5MzdCMEI3M0Mw
MEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwogCQlFMTBCOTND
MzBCNzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjkzQzIwQjczQzI5MTAw
M0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmNwcCAqLzsgfTsKIAkJRTEwQjlCNkMw
Qjc0NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjlCNkEwQjc0NzU5OTAwM0VEODkw
IC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwpAQCAtMTM1NzIsNiArMTM1NzMsNyBA
QAogCQlFMEZFRjM3MUI0N0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50U291cmNlLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVz
c2FnZUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNN
ZXNzYWdlQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxMDc0MDBD
MEU3N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTTWVzc2FnZUNoYW5uZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJRTEwQTM5RTExQUU4NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENGQnVuZGxlU1BJLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCUUxMEI5MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRo
TlNSZXNvbHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbVhQ
YXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOTNDMjBC
NzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOUI2QTBCNzQ3NTk5MDAzRUQ4OTAgLyog
TmF0aXZlWFBhdGhOU1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmls
ZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9
IE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAt
MTY0NDIsNiArMTY0NDQsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgK
IAkJCQk2NTA4NkRBNzE5QUMxNzE5MDA5QUY0NkIgLyogQ0ZMb2NhbGVTUEkuaCAqLywKKwkJCQlF
MTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVTUEkuaCAqLywKIAkJCQlDRTgyNDVF
RjE5QjY3MUJBMDBBQzAxMjIgLyogQ0ZOZXR3b3JrQ29ubmVjdGlvbkNhY2hlU1BJLmggKi8sCiAJ
CQkJQ0UxMjUyNUExQTFDMDE4MjAwODY0NDgwIC8qIENGTmV0d29ya1NQSS5oICovLAogCQkJCTQ0
NDlBNDA0MUE5NjRCMDAwMEI2NEFENSAvKiBDb3JlTWVkaWFTUEkuaCAqLywKQEAgLTI3MDkxLDYg
KzI3MDk0LDcgQEAKIAkJCQkyRTQzNDY1MTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyT2JqZWN0
UHJveHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNkUyOUE2MTAyRkE5NjIwMDdGQzE0RSAvKiBX
b3JrZXJSZXBvcnRpbmdQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NTMwRjU0NkE4
MjAwQjBGMUJBIC8qIFdvcmtlclJ1bkxvb3AuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxMEEzOUUy
MUFFODRFNzEwMEEyOUFFMyAvKiBDRkJ1bmRsZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM4
MjA4OTkxNDdEMzVGOTAwMTBCQzA2IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRTFBNjQzRjIwRUMwOTcyNTAwNzc5NjY4IC8qIFdvcmtlclNjcmlwdENvbnRyb2xs
ZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCUYzNDc0MkU5MTM0MzYzNTAwMDUzMUJDMiAvKiBXb3Jr
ZXJTY3JpcHREZWJ1Z1NlcnZlci5oIGluIEhlYWRlcnMgKi8sCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAkocmV2aXNpb24gMCkKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oCSh3b3JraW5nIGNvcHkpCkBA
IC0wLDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiAgQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAor
ICovCisKKyNpZm5kZWYgQ0ZCdW5kbGVTUElfaAorI2RlZmluZSBDRkJ1bmRsZVNQSV9oCisKKyNp
bmNsdWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorCisjaWYgVVNFKEFQUExF
X0lOVEVSTkFMX1NESykKKyNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NGUHJpdi5oPgorI2Vsc2UK
KyNpbmNsdWRlIDx3dGYvc3BpL2Rhcndpbi9YUENTUEkuaD4KKyNlbmRpZgorCitleHRlcm4gIkMi
IHsKK3ZvaWQgX0NGQnVuZGxlU2V0dXBYUENCb290c3RyYXAoeHBjX29iamVjdF90IGJvb3RzdHJh
cCk7Cit9CisKKyNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gMTgzMTQ4KQorKysgU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIw
MTUtMDQtMjIgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAg
W2lPU10gV2ViS2l0IHNlcnZpY2VzIHNob3VsZCBpbmhlcml0IGVudmlyb25tZW50IHZhcmlhYmxl
cyBmb3IgaG9tZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTQ0MDc4CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzIwNTcxNjc4CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUGFzcyBjdXJyZW50IGVudmlyb25t
ZW50IHZhcmlhYmxlcyBhcyBYUEMgYm9vdHN0cmFwLiBBbHNvIHdoaWxlIGF0IGl0LCBtYWRlCisg
ICAgICAgIF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwIG5vdCBzb2Z0IGxpbmtlZC4KKworICAg
ICAgICAqIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL21hYy9YUENTZXJ2aWNlL1hQQ1NlcnZp
Y2VNYWluLm1tOgorICAgICAgICAobWFpbik6CisgICAgICAgICogVUlQcm9jZXNzL0xhdW5jaGVy
L21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMubW06CisgICAgICAgIChXZWJLaXQ6OmNvbm5lY3RUb1Nl
cnZpY2UpOgorCiAyMDE1LTA0LTIyICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29t
PgogCiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGFmdGVyIHIxODMxMzYuCkluZGV4OiBT
b3VyY2UvV2ViS2l0Mi9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9Y
UENTZXJ2aWNlTWFpbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRW50
cnlQb2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9YUENTZXJ2aWNlTWFpbi5tbQkocmV2aXNp
b24gMTgyOTM5KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMv
bWFjL1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0JKHdvcmtpbmcgY29weSkKQEAgLTc3LDYg
Kzc3LDE1IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIGludCBtYWluKGludCBhcmdjLCBj
aGFyKiogYXJndikKIHsKKyNpZiBQTEFURk9STShJT1MpCisgICAgYXV0byBib290c3RyYXAgPSBh
ZG9wdE9TT2JqZWN0KHhwY19jb3B5X2Jvb3RzdHJhcCgpKTsKKyAgICBhdXRvIGNvbnRhaW5lckVu
dmlyb25tZW50VmFyaWFibGVzID0geHBjX2RpY3Rpb25hcnlfZ2V0X3ZhbHVlKGJvb3RzdHJhcC5n
ZXQoKSwgIkNvbnRhaW5lckVudmlyb25tZW50VmFyaWFibGVzIik7CisgICAgeHBjX2RpY3Rpb25h
cnlfYXBwbHkoY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMsIF4oY29uc3QgY2hhciAqa2V5
LCB4cGNfb2JqZWN0X3QgdmFsdWUpIHsKKyAgICAgICAgc2V0ZW52KGtleSwgeHBjX3N0cmluZ19n
ZXRfc3RyaW5nX3B0cih2YWx1ZSksIDEpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9KTsK
KyNlbmRpZgorCiAgICAgeHBjX21haW4oWFBDU2VydmljZUV2ZW50SGFuZGxlcik7CiAgICAgcmV0
dXJuIDA7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1By
b2Nlc3NMYXVuY2hlck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQkocmV2aXNpb24gMTgyOTM5KQor
KysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJN
YWMubW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2ltcG9ydCAiRHluYW1p
Y0xpbmtlckVudmlyb25tZW50RXh0cmFjdG9yLmgiCiAjaW1wb3J0ICJFbnZpcm9ubWVudFZhcmlh
Ymxlcy5oIgorI2ltcG9ydCA8V2ViQ29yZS9DRkJ1bmRsZVNQSS5oPgogI2ltcG9ydCA8V2ViQ29y
ZS9TZXJ2ZXJzU1BJLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0
IDxXZWJDb3JlL1dlYkNvcmVOU1N0cmluZ0V4dHJhcy5oPgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNp
bXBvcnQgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5o
PgogCi0jaWYgUExBVEZPUk0oSU9TKSB8fCBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVE
ID49IDEwMTAwMAotLy8gRklYTUU6IFNvZnQgbGlua2luZyBpcyB0ZW1wb3JhcnksIG1ha2UgdGhp
cyBpbnRvIGEgcmVndWxhciBmdW5jdGlvbiBjYWxsIG9uY2UgdGhpcyBmdW5jdGlvbiBpcyBhdmFp
bGFibGUgZXZlcnl3aGVyZSB3ZSBuZWVkLgotU09GVF9MSU5LX0ZSQU1FV09SSyhDb3JlRm91bmRh
dGlvbikKLVNPRlRfTElOS19PUFRJT05BTChDb3JlRm91bmRhdGlvbiwgX0NGQnVuZGxlU2V0dXBY
UENCb290c3RyYXAsIHZvaWQsIHVudXNlZCwgKHhwY19vYmplY3RfdCkpCi0jZW5kaWYKLQogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKIG5hbWVzcGFjZSB7CkBAIC0yMjIsMTEgKzIxNywyMCBAQCBzdGF0
aWMgdm9pZCBjb25uZWN0VG9TZXJ2aWNlKGNvbnN0IFByb2NlCiAgICAgLy8gMS4gV2hlbiB0aGUg
YXBwbGljYXRpb24gYW5kIHN5c3RlbSBmcmFtZXdvcmtzIHNpbXBseSBoYXZlIGRpZmZlcmVudCBs
b2NhbGl6ZWQgcmVzb3VyY2VzIGF2YWlsYWJsZSwgd2Ugc2hvdWxkIG1hdGNoIHRoZSBhcHBsaWNh
dGlvbi4KICAgICAvLyAxLjEuIEFuIGltcG9ydGFudCBjYXNlIGlzIFdlYktpdFRlc3RSdW5uZXIs
IHdoZXJlIHdlIHNob3VsZCB1c2UgRW5nbGlzaCBsb2NhbGl6YXRpb25zIGZvciBhbGwgc3lzdGVt
IGZyYW1ld29ya3MuCiAgICAgLy8gMi4gV2hlbiBBcHBsZUxhbmd1YWdlcyBpcyBwYXNzZWQgYXMg
Y29tbWFuZCBsaW5lIGFyZ3VtZW50IGZvciBVSSBwcm9jZXNzLCBvciBzZXQgaW4gaXRzIHByZWZl
cmVuY2VzLCB3ZSBzaG91bGQgcmVzcGVjdCBpdCBpbiBjaGlsZCBwcm9jZXNzZXMuCi0gICAgaWYg
KF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRyKCkpIHsKLSAgICAgICAgYXV0byBpbml0aWFs
aXphdGlvbk1lc3NhZ2UgPSBhZG9wdE9TT2JqZWN0KHhwY19kaWN0aW9uYXJ5X2NyZWF0ZShudWxs
cHRyLCBudWxscHRyLCAwKSk7Ci0gICAgICAgIF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRy
KCkoaW5pdGlhbGl6YXRpb25NZXNzYWdlLmdldCgpKTsKLSAgICAgICAgeHBjX2Nvbm5lY3Rpb25f
c2V0X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgpLCBpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0
KCkpOwotICAgIH0KKyAgICBhdXRvIGluaXRpYWxpemF0aW9uTWVzc2FnZSA9IGFkb3B0T1NPYmpl
Y3QoeHBjX2RpY3Rpb25hcnlfY3JlYXRlKG51bGxwdHIsIG51bGxwdHIsIDApKTsKKyAgICBfQ0ZC
dW5kbGVTZXR1cFhQQ0Jvb3RzdHJhcChpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCkpOworI2lm
IFBMQVRGT1JNKElPUykKKyAgICAvLyBDbGllbnRzIHRoYXQgc2V0IHRoZXNlIGVudmlyb25tZW50
IHZhcmlhYmxlcyBleHBsaWNpdGx5IGRvIG5vdCBoYXZlIHRoZSB2YWx1ZXMgYXV0b21hdGljYWxs
eSBmb3J3YXJkZWQgYnkgbGlieHBjLgorICAgIGF1dG8gY29udGFpbmVyRW52aXJvbm1lbnRWYXJp
YWJsZXMgPSBhZG9wdE9TT2JqZWN0KHhwY19kaWN0aW9uYXJ5X2NyZWF0ZShudWxscHRyLCBudWxs
cHRyLCAwKSk7CisgICAgaWYgKGNvbnN0IGNoYXIqIGVudmlyb25tZW50SE9NRSA9IGdldGVudigi
SE9NRSIpKQorICAgICAgICB4cGNfZGljdGlvbmFyeV9zZXRfc3RyaW5nKGNvbnRhaW5lckVudmly
b25tZW50VmFyaWFibGVzLmdldCgpLCAiSE9NRSIsIGVudmlyb25tZW50SE9NRSk7CisgICAgaWYg
KGNvbnN0IGNoYXIqIGVudmlyb25tZW50Q0ZGSVhFRF9VU0VSX0hPTUUgPSBnZXRlbnYoIkNGRklY
RURfVVNFUl9IT01FIikpCisgICAgICAgIHhwY19kaWN0aW9uYXJ5X3NldF9zdHJpbmcoY29udGFp
bmVyRW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCksICJDRkZJWEVEX1VTRVJfSE9NRSIsIGVudmly
b25tZW50Q0ZGSVhFRF9VU0VSX0hPTUUpOworICAgIGlmIChjb25zdCBjaGFyKiBlbnZpcm9ubWVu
dFRNUERJUiA9IGdldGVudigiVE1QRElSIikpCisgICAgICAgIHhwY19kaWN0aW9uYXJ5X3NldF9z
dHJpbmcoY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCksICJUTVBESVIiLCBlbnZp
cm9ubWVudFRNUERJUik7CisgICAgeHBjX2RpY3Rpb25hcnlfc2V0X3ZhbHVlKGluaXRpYWxpemF0
aW9uTWVzc2FnZS5nZXQoKSwgIkNvbnRhaW5lckVudmlyb25tZW50VmFyaWFibGVzIiwgY29udGFp
bmVyRW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCkpOworI2VuZGlmCisgICAgeHBjX2Nvbm5lY3Rp
b25fc2V0X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgpLCBpbml0aWFsaXphdGlvbk1lc3NhZ2Uu
Z2V0KCkpOwogI2VuZGlmCiAKICAgICAvLyBYUEMgcmVxdWlyZXMgaGF2aW5nIGFuIGV2ZW50IGhh
bmRsZXIsIGV2ZW4gaWYgaXQgaXMgbm90IHVzZWQuCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251470</attachid>
            <date>2015-04-23 12:34:12 -0700</date>
            <delta_ts>2015-04-23 13:23:39 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>InheritHome.txt</filename>
            <type>text/plain</type>
            <size>12249</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxODMyMDEpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA0LTIzICBBbGV4ZXkgUHJvc2t1cnlha292
ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIFdlYktpdCBzZXJ2aWNlcyBzaG91bGQg
aW5oZXJpdCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIGhvbWUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDA3OAorICAgICAgICByZGFyOi8vcHJv
YmxlbS8yMDU3MTY3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogd3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg6IEFkZGVkIHhwY19jb3B5X2Jvb3RzdHJh
cC4KKwogMjAxNS0wNC0yMyAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFwcGxlLmNvbT4KIAog
ICAgICAgICBVbmRvIHRoZSBXVEYgcGFydCBvZiB0aGUgcHJldmlvdXMgYnVpbGQgZml4LCB3ZSBk
b24ndCB1c2UgcHJpdmF0ZSBoZWFkZXJzIGluIFdURi4KSW5kZXg6IFNvdXJjZS9XVEYvd3RmL3Nw
aS9kYXJ3aW4vWFBDU1BJLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dURi93dGYvc3BpL2Rhcndp
bi9YUENTUEkuaAkocmV2aXNpb24gMTgzMTI2KQorKysgU291cmNlL1dURi93dGYvc3BpL2Rhcndp
bi9YUENTUEkuaAkod29ya2luZyBjb3B5KQpAQCAtMTQyLDYgKzE0Miw3IEBAIEVYVEVSTl9DIHZv
aWQgeHBjX2RpY3Rpb25hcnlfc2V0X21hY2hfc2UKIAogI2lmIFBMQVRGT1JNKElPUykgfHwgX19N
QUNfT1NfWF9WRVJTSU9OX01JTl9SRVFVSVJFRCA+PSAxMDEwMDAKIEVYVEVSTl9DIHZvaWQgeHBj
X2Nvbm5lY3Rpb25fc2V0X2Jvb3RzdHJhcCh4cGNfY29ubmVjdGlvbl90LCB4cGNfb2JqZWN0X3Qg
Ym9vdHN0cmFwKTsKK0VYVEVSTl9DIHhwY19vYmplY3RfdCB4cGNfY29weV9ib290c3RyYXAodm9p
ZCk7CiAjZW5kaWYKIAogI2lmICFkZWZpbmVkKHhwY19yZXRhaW4pICYmIE9TX09CSkVDVF9VU0Vf
T0JKQ19SRVRBSU5fUkVMRUFTRQpJbmRleDogU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTgzMTUyKQorKysg
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAK
KzIwMTUtMDQtMjIgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAg
ICAgW2lPU10gV2ViS2l0IHNlcnZpY2VzIHNob3VsZCBpbmhlcml0IGVudmlyb25tZW50IHZhcmlh
YmxlcyBmb3IgaG9tZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ0MDc4CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzIwNTcxNjc4CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkZWQgYW4gU1BJIGhlYWRl
ciBmb3IgYSBkcml2ZS1ieSBmaXguCisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2o6CisgICAgICAgICogcGxhdGZvcm0vc3BpL2NmL0NGQnVuZGxlU1BJLmg6IEFk
ZGVkLgorCiAyMDE1LTA0LTIyICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIENvbnRleHQgbWVudSBkb2Vzbid0IGFjY291bnQgZm9yIHNlbGVjdGlvbiBzZW1h
bnRpY3MKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oJKHJldmlzaW9uIDE4MjkzOSkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtNTk4Myw2ICs1OTgz
LDcgQEAKIAkJRTBGRUYzNzJCNDdDNTNFQUMxQzFGQkVFIC8qIEpTRXZlbnRTb3VyY2UuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTBGRUYzNzFCNDdD
NTNFQUMxQzFGQkVFIC8qIEpTRXZlbnRTb3VyY2UuY3BwICovOyB9OwogCQlFMTA3NDAwRDBFNzdC
REMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTA3NDAwQjBFNzdCREMwMDAzM0FGMjQgLyogSlNN
ZXNzYWdlQ2hhbm5lbC5jcHAgKi87IH07CiAJCUUxMDc0MDBFMEU3N0JEQzAwMDMzQUYyNCAvKiBK
U01lc3NhZ2VDaGFubmVsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSBFMTA3NDAwQzBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5oICov
OyB9OworCQlFMTBBMzlFMjFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVTUEkuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMEEzOUUxMUFFODRFNzEw
MEEyOUFFMyAvKiBDRkJ1bmRsZVNQSS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFBy
aXZhdGUsICk7IH07IH07CiAJCUUxMEI5MzdDMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQ
YXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gRTEwQjkzN0IwQjczQzAwQTAwM0VEODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVy
LmggKi87IH07CiAJCUUxMEI5M0MzMEI3M0MyOTEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNS
ZXNvbHZlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBFMTBCOTNDMjBCNzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3Bw
ICovOyB9OwogCQlFMTBCOUI2QzBCNzQ3NTk5MDAzRUQ4OTAgLyogTmF0aXZlWFBhdGhOU1Jlc29s
dmVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBFMTBC
OUI2QTBCNzQ3NTk5MDAzRUQ4OTAgLyogTmF0aXZlWFBhdGhOU1Jlc29sdmVyLmggKi87IH07CkBA
IC0xMzU3Miw2ICsxMzU3Myw3IEBACiAJCUUwRkVGMzcxQjQ3QzUzRUFDMUMxRkJFRSAvKiBKU0V2
ZW50U291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRXZl
bnRTb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTA3NDAwQjBFNzdC
REMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBKU01lc3NhZ2VDaGFubmVsLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJRTEwNzQwMEMwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNNZXNzYWdlQ2hhbm5lbC5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlFMTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyog
Q0ZCdW5kbGVTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQ0ZCdW5kbGVT
UEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTEwQjkzN0IwQjczQzAwQTAwM0VE
ODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCUUxMEI5M0MyMEI3M0MyOTEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNv
bHZlci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0N1c3RvbVhQ
YXRoTlNSZXNvbHZlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxMEI5QjZB
MEI3NDc1OTkwMDNFRDg5MCAvKiBOYXRpdmVYUGF0aE5TUmVzb2x2ZXIuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBwYXRoID0gTmF0aXZlWFBhdGhOU1Jlc29sdmVyLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CkBAIC0xNjQ0Miw2ICsxNjQ0NCw3IEBACiAJCQlpc2EgPSBQQlhHcm91
cDsKIAkJCWNoaWxkcmVuID0gKAogCQkJCTY1MDg2REE3MTlBQzE3MTkwMDlBRjQ2QiAvKiBDRkxv
Y2FsZVNQSS5oICovLAorCQkJCUUxMEEzOUUxMUFFODRFNzEwMEEyOUFFMyAvKiBDRkJ1bmRsZVNQ
SS5oICovLAogCQkJCUNFODI0NUVGMTlCNjcxQkEwMEFDMDEyMiAvKiBDRk5ldHdvcmtDb25uZWN0
aW9uQ2FjaGVTUEkuaCAqLywKIAkJCQlDRTEyNTI1QTFBMUMwMTgyMDA4NjQ0ODAgLyogQ0ZOZXR3
b3JrU1BJLmggKi8sCiAJCQkJNDQ0OUE0MDQxQTk2NEIwMDAwQjY0QUQ1IC8qIENvcmVNZWRpYVNQ
SS5oICovLApAQCAtMjcwOTEsNiArMjcwOTQsNyBAQAogCQkJCTJFNDM0NjUxMEY1NDZBODIwMEIw
RjFCQSAvKiBXb3JrZXJPYmplY3RQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNDE2RTI5QTYx
MDJGQTk2MjAwN0ZDMTRFIC8qIFdvcmtlclJlcG9ydGluZ1Byb3h5LmggaW4gSGVhZGVycyAqLywK
IAkJCQkyRTQzNDY1MzBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyUnVuTG9vcC5oIGluIEhlYWRl
cnMgKi8sCisJCQkJRTEwQTM5RTIxQUU4NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggaW4g
SGVhZGVycyAqLywKIAkJCQlGMzgyMDg5OTE0N0QzNUY5MDAxMEJDMDYgLyogV29ya2VyUnVudGlt
ZUFnZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlFMUE2NDNGMjBFQzA5NzI1MDA3Nzk2NjggLyog
V29ya2VyU2NyaXB0Q29udHJvbGxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM0NzQyRTkxMzQz
NjM1MDAwNTMxQkMyIC8qIFdvcmtlclNjcmlwdERlYnVnU2VydmVyLmggaW4gSGVhZGVycyAqLywK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oCShy
ZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vc3BpL2NmL0NGQnVuZGxlU1BJ
LmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw0MSBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxNSBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0
aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAor
ICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2lu
ZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJj
ZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIu
IFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBv
dGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRI
SVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQor
ICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElO
IE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBDRkJ1bmRsZVNQSV9oCisjZGVmaW5l
IENGQnVuZGxlU1BJX2gKKworI2luY2x1ZGUgPENvcmVGb3VuZGF0aW9uL0NvcmVGb3VuZGF0aW9u
Lmg+CisKKyNpZiBVU0UoQVBQTEVfSU5URVJOQUxfU0RLKQorI2ltcG9ydCA8Q29yZUZvdW5kYXRp
b24vQ0ZQcml2Lmg+CisjZWxzZQorI2luY2x1ZGUgPHd0Zi9zcGkvZGFyd2luL1hQQ1NQSS5oPgor
I2VuZGlmCisKK2V4dGVybiAiQyIgewordm9pZCBfQ0ZCdW5kbGVTZXR1cFhQQ0Jvb3RzdHJhcCh4
cGNfb2JqZWN0X3QgYm9vdHN0cmFwKTsKK30KKworI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCShyZXZp
c2lvbiAxODMxNDgpCisrKyBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkK
QEAgLTEsMyArMSwxOSBAQAorMjAxNS0wNC0yMiAgQWxleGV5IFByb3NrdXJ5YWtvdiAgPGFwQGFw
cGxlLmNvbT4KKworICAgICAgICBbaU9TXSBXZWJLaXQgc2VydmljZXMgc2hvdWxkIGluaGVyaXQg
ZW52aXJvbm1lbnQgdmFyaWFibGVzIGZvciBob21lCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDQwNzgKKyAgICAgICAgcmRhcjovL3Byb2JsZW0vMjA1
NzE2NzgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBQ
YXNzIGN1cnJlbnQgZW52aXJvbm1lbnQgdmFyaWFibGVzIGFzIFhQQyBib290c3RyYXAuIEFsc28g
d2hpbGUgYXQgaXQsIG1hZGUKKyAgICAgICAgX0NGQnVuZGxlU2V0dXBYUENCb290c3RyYXAgbm90
IHNvZnQgbGlua2VkLgorCisgICAgICAgICogU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvbWFj
L1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW06CisgICAgICAgIChtYWluKToKKyAgICAgICAg
KiBVSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbToKKyAgICAgICAg
KFdlYktpdDo6Y29ubmVjdFRvU2VydmljZSk6CisKIDIwMTUtMDQtMjIgIEJyZW50IEZ1bGdoYW0g
IDxiZnVsZ2hhbUBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCBidWlsZCBmaXggYWZ0
ZXIgcjE4MzEzNi4KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0
aWVzL21hYy9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VNYWluLm1tCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL21hYy9YUENTZXJ2aWNlL1hQQ1Nl
cnZpY2VNYWluLm1tCShyZXZpc2lvbiAxODI5MzkpCisrKyBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
RW50cnlQb2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9YUENTZXJ2aWNlTWFpbi5tbQkod29y
a2luZyBjb3B5KQpAQCAtNzcsNiArNzcsMTUgQEAgdXNpbmcgbmFtZXNwYWNlIFdlYktpdDsKIAog
aW50IG1haW4oaW50IGFyZ2MsIGNoYXIqKiBhcmd2KQogeworI2lmIFBMQVRGT1JNKElPUykKKyAg
ICBhdXRvIGJvb3RzdHJhcCA9IGFkb3B0T1NPYmplY3QoeHBjX2NvcHlfYm9vdHN0cmFwKCkpOwor
ICAgIGF1dG8gY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMgPSB4cGNfZGljdGlvbmFyeV9n
ZXRfdmFsdWUoYm9vdHN0cmFwLmdldCgpLCAiQ29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMi
KTsKKyAgICB4cGNfZGljdGlvbmFyeV9hcHBseShjb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxl
cywgXihjb25zdCBjaGFyICprZXksIHhwY19vYmplY3RfdCB2YWx1ZSkgeworICAgICAgICBzZXRl
bnYoa2V5LCB4cGNfc3RyaW5nX2dldF9zdHJpbmdfcHRyKHZhbHVlKSwgMSk7CisgICAgICAgIHJl
dHVybiB0cnVlOworICAgIH0pOworI2VuZGlmCisKICAgICB4cGNfbWFpbihYUENTZXJ2aWNlRXZl
bnRIYW5kbGVyKTsKICAgICByZXR1cm4gMDsKIH0KSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9MYXVuY2hlci9tYWMvUHJvY2Vzc0xhdW5jaGVyTWFjLm1tCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9tYWMvUHJvY2Vzc0xhdW5jaGVyTWFjLm1t
CShyZXZpc2lvbiAxODI5MzkpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIv
bWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQkod29ya2luZyBjb3B5KQpAQCAtMjgsNiArMjgsNyBA
QAogCiAjaW1wb3J0ICJEeW5hbWljTGlua2VyRW52aXJvbm1lbnRFeHRyYWN0b3IuaCIKICNpbXBv
cnQgIkVudmlyb25tZW50VmFyaWFibGVzLmgiCisjaW1wb3J0IDxXZWJDb3JlL0NGQnVuZGxlU1BJ
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlcnZlcnNTUEkuaD4KICNpbXBvcnQgPFdlYkNvcmUvU29m
dExpbmtpbmcuaD4KICNpbXBvcnQgPFdlYkNvcmUvV2ViQ29yZU5TU3RyaW5nRXh0cmFzLmg+CkBA
IC00NSwxMiArNDYsNiBAQAogI2ltcG9ydCA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2ltcG9ydCA8
d3RmL3RleHQvV1RGU3RyaW5nLmg+CiAKLSNpZiBQTEFURk9STShJT1MpIHx8IF9fTUFDX09TX1hf
VkVSU0lPTl9NSU5fUkVRVUlSRUQgPj0gMTAxMDAwCi0vLyBGSVhNRTogU29mdCBsaW5raW5nIGlz
IHRlbXBvcmFyeSwgbWFrZSB0aGlzIGludG8gYSByZWd1bGFyIGZ1bmN0aW9uIGNhbGwgb25jZSB0
aGlzIGZ1bmN0aW9uIGlzIGF2YWlsYWJsZSBldmVyeXdoZXJlIHdlIG5lZWQuCi1TT0ZUX0xJTktf
RlJBTUVXT1JLKENvcmVGb3VuZGF0aW9uKQotU09GVF9MSU5LX09QVElPTkFMKENvcmVGb3VuZGF0
aW9uLCBfQ0ZCdW5kbGVTZXR1cFhQQ0Jvb3RzdHJhcCwgdm9pZCwgdW51c2VkLCAoeHBjX29iamVj
dF90KSkKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViS2l0IHsKIAogbmFtZXNwYWNlIHsKQEAgLTIy
MiwxMSArMjE3LDIwIEBAIHN0YXRpYyB2b2lkIGNvbm5lY3RUb1NlcnZpY2UoY29uc3QgUHJvY2UK
ICAgICAvLyAxLiBXaGVuIHRoZSBhcHBsaWNhdGlvbiBhbmQgc3lzdGVtIGZyYW1ld29ya3Mgc2lt
cGx5IGhhdmUgZGlmZmVyZW50IGxvY2FsaXplZCByZXNvdXJjZXMgYXZhaWxhYmxlLCB3ZSBzaG91
bGQgbWF0Y2ggdGhlIGFwcGxpY2F0aW9uLgogICAgIC8vIDEuMS4gQW4gaW1wb3J0YW50IGNhc2Ug
aXMgV2ViS2l0VGVzdFJ1bm5lciwgd2hlcmUgd2Ugc2hvdWxkIHVzZSBFbmdsaXNoIGxvY2FsaXph
dGlvbnMgZm9yIGFsbCBzeXN0ZW0gZnJhbWV3b3Jrcy4KICAgICAvLyAyLiBXaGVuIEFwcGxlTGFu
Z3VhZ2VzIGlzIHBhc3NlZCBhcyBjb21tYW5kIGxpbmUgYXJndW1lbnQgZm9yIFVJIHByb2Nlc3Ms
IG9yIHNldCBpbiBpdHMgcHJlZmVyZW5jZXMsIHdlIHNob3VsZCByZXNwZWN0IGl0IGluIGNoaWxk
IHByb2Nlc3Nlcy4KLSAgICBpZiAoX0NGQnVuZGxlU2V0dXBYUENCb290c3RyYXBQdHIoKSkgewot
ICAgICAgICBhdXRvIGluaXRpYWxpemF0aW9uTWVzc2FnZSA9IGFkb3B0T1NPYmplY3QoeHBjX2Rp
Y3Rpb25hcnlfY3JlYXRlKG51bGxwdHIsIG51bGxwdHIsIDApKTsKLSAgICAgICAgX0NGQnVuZGxl
U2V0dXBYUENCb290c3RyYXBQdHIoKShpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCkpOwotICAg
ICAgICB4cGNfY29ubmVjdGlvbl9zZXRfYm9vdHN0cmFwKGNvbm5lY3Rpb24uZ2V0KCksIGluaXRp
YWxpemF0aW9uTWVzc2FnZS5nZXQoKSk7Ci0gICAgfQorICAgIGF1dG8gaW5pdGlhbGl6YXRpb25N
ZXNzYWdlID0gYWRvcHRPU09iamVjdCh4cGNfZGljdGlvbmFyeV9jcmVhdGUobnVsbHB0ciwgbnVs
bHB0ciwgMCkpOworICAgIF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwKGluaXRpYWxpemF0aW9u
TWVzc2FnZS5nZXQoKSk7CisjaWYgUExBVEZPUk0oSU9TKQorICAgIC8vIENsaWVudHMgdGhhdCBz
ZXQgdGhlc2UgZW52aXJvbm1lbnQgdmFyaWFibGVzIGV4cGxpY2l0bHkgZG8gbm90IGhhdmUgdGhl
IHZhbHVlcyBhdXRvbWF0aWNhbGx5IGZvcndhcmRlZCBieSBsaWJ4cGMuCisgICAgYXV0byBjb250
YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcyA9IGFkb3B0T1NPYmplY3QoeHBjX2RpY3Rpb25hcnlf
Y3JlYXRlKG51bGxwdHIsIG51bGxwdHIsIDApKTsKKyAgICBpZiAoY29uc3QgY2hhciogZW52aXJv
bm1lbnRIT01FID0gZ2V0ZW52KCJIT01FIikpCisgICAgICAgIHhwY19kaWN0aW9uYXJ5X3NldF9z
dHJpbmcoY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCksICJIT01FIiwgZW52aXJv
bm1lbnRIT01FKTsKKyAgICBpZiAoY29uc3QgY2hhciogZW52aXJvbm1lbnRDRkZJWEVEX1VTRVJf
SE9NRSA9IGdldGVudigiQ0ZGSVhFRF9VU0VSX0hPTUUiKSkKKyAgICAgICAgeHBjX2RpY3Rpb25h
cnlfc2V0X3N0cmluZyhjb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcy5nZXQoKSwgIkNGRklY
RURfVVNFUl9IT01FIiwgZW52aXJvbm1lbnRDRkZJWEVEX1VTRVJfSE9NRSk7CisgICAgaWYgKGNv
bnN0IGNoYXIqIGVudmlyb25tZW50VE1QRElSID0gZ2V0ZW52KCJUTVBESVIiKSkKKyAgICAgICAg
eHBjX2RpY3Rpb25hcnlfc2V0X3N0cmluZyhjb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcy5n
ZXQoKSwgIlRNUERJUiIsIGVudmlyb25tZW50VE1QRElSKTsKKyAgICB4cGNfZGljdGlvbmFyeV9z
ZXRfdmFsdWUoaW5pdGlhbGl6YXRpb25NZXNzYWdlLmdldCgpLCAiQ29udGFpbmVyRW52aXJvbm1l
bnRWYXJpYWJsZXMiLCBjb250YWluZXJFbnZpcm9ubWVudFZhcmlhYmxlcy5nZXQoKSk7CisjZW5k
aWYKKyAgICB4cGNfY29ubmVjdGlvbl9zZXRfYm9vdHN0cmFwKGNvbm5lY3Rpb24uZ2V0KCksIGlu
aXRpYWxpemF0aW9uTWVzc2FnZS5nZXQoKSk7CiAjZW5kaWYKIAogICAgIC8vIFhQQyByZXF1aXJl
cyBoYXZpbmcgYW4gZXZlbnQgaGFuZGxlciwgZXZlbiBpZiBpdCBpcyBub3QgdXNlZC4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>251477</attachid>
            <date>2015-04-23 13:23:39 -0700</date>
            <delta_ts>2015-04-23 13:38:31 -0700</delta_ts>
            <desc>proposed fix</desc>
            <filename>InheritHome.txt</filename>
            <type>text/plain</type>
            <size>13024</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAxODMyMDEpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE1LTA0LTIzICBBbGV4ZXkgUHJvc2t1cnlha292
ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIFdlYktpdCBzZXJ2aWNlcyBzaG91bGQg
aW5oZXJpdCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIGhvbWUKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDA3OAorICAgICAgICByZGFyOi8vcHJv
YmxlbS8yMDU3MTY3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogd3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmg6IEFkZGVkIHhwY19jb3B5X2Jvb3RzdHJh
cCBhbmQgeHBjX2RpY3Rpb25hcnlfYXBwbHkuCisKIDIwMTUtMDQtMjMgIEFsZXhleSBQcm9za3Vy
eWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgVW5kbyB0aGUgV1RGIHBhcnQgb2YgdGhl
IHByZXZpb3VzIGJ1aWxkIGZpeCwgd2UgZG9uJ3QgdXNlIHByaXZhdGUgaGVhZGVycyBpbiBXVEYu
CkluZGV4OiBTb3VyY2UvV1RGL3d0Zi9zcGkvZGFyd2luL1hQQ1NQSS5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmgJKHJldmlzaW9uIDE4MzEyNikKKysr
IFNvdXJjZS9XVEYvd3RmL3NwaS9kYXJ3aW4vWFBDU1BJLmgJKHdvcmtpbmcgY29weSkKQEAgLTU4
LDYgKzU4LDcgQEAgdHlwZWRlZiBjb25zdCBzdHJ1Y3QgX3hwY190eXBlX3MqIHhwY190eQogCiAj
aWYgQ09NUElMRVJfU1VQUE9SVFMoQkxPQ0tTKQogdHlwZWRlZiBib29sICheeHBjX2FycmF5X2Fw
cGxpZXJfdCkoc2l6ZV90IGluZGV4LCB4cGNfb2JqZWN0X3QpOwordHlwZWRlZiBib29sICheeHBj
X2RpY3Rpb25hcnlfYXBwbGllcl90KShjb25zdCBjaGFyICprZXksIHhwY19vYmplY3RfdCB2YWx1
ZSk7CiB0eXBlZGVmIHZvaWQgKF54cGNfaGFuZGxlcl90KSh4cGNfb2JqZWN0X3QpOwogI2VuZGlm
CiAKQEAgLTk4LDYgKzk5LDcgQEAgRVhURVJOX0MgY29uc3Qgc3RydWN0IF94cGNfdHlwZV9zIF94
cGNfdAogRVhURVJOX0MgeHBjX29iamVjdF90IHhwY19hcnJheV9jcmVhdGUoY29uc3QgeHBjX29i
amVjdF90Kiwgc2l6ZV90IGNvdW50KTsKICNpZiBDT01QSUxFUl9TVVBQT1JUUyhCTE9DS1MpCiBF
WFRFUk5fQyBib29sIHhwY19hcnJheV9hcHBseSh4cGNfb2JqZWN0X3QsIHhwY19hcnJheV9hcHBs
aWVyX3QpOworRVhURVJOX0MgYm9vbCB4cGNfZGljdGlvbmFyeV9hcHBseSh4cGNfb2JqZWN0X3Qg
eGRpY3QsIHhwY19kaWN0aW9uYXJ5X2FwcGxpZXJfdCBhcHBsaWVyKTsKICNlbmRpZgogRVhURVJO
X0Mgc2l6ZV90IHhwY19hcnJheV9nZXRfY291bnQoeHBjX29iamVjdF90KTsKIEVYVEVSTl9DIGNv
bnN0IGNoYXIqIHhwY19hcnJheV9nZXRfc3RyaW5nKHhwY19vYmplY3RfdCwgc2l6ZV90IGluZGV4
KTsKQEAgLTE0Miw2ICsxNDQsNyBAQCBFWFRFUk5fQyB2b2lkIHhwY19kaWN0aW9uYXJ5X3NldF9t
YWNoX3NlCiAKICNpZiBQTEFURk9STShJT1MpIHx8IF9fTUFDX09TX1hfVkVSU0lPTl9NSU5fUkVR
VUlSRUQgPj0gMTAxMDAwCiBFWFRFUk5fQyB2b2lkIHhwY19jb25uZWN0aW9uX3NldF9ib290c3Ry
YXAoeHBjX2Nvbm5lY3Rpb25fdCwgeHBjX29iamVjdF90IGJvb3RzdHJhcCk7CitFWFRFUk5fQyB4
cGNfb2JqZWN0X3QgeHBjX2NvcHlfYm9vdHN0cmFwKHZvaWQpOwogI2VuZGlmCiAKICNpZiAhZGVm
aW5lZCh4cGNfcmV0YWluKSAmJiBPU19PQkpFQ1RfVVNFX09CSkNfUkVUQUlOX1JFTEVBU0UKSW5k
ZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE4MzE1MikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
Zwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE1LTA0LTIyICBBbGV4ZXkgUHJv
c2t1cnlha292ICA8YXBAYXBwbGUuY29tPgorCisgICAgICAgIFtpT1NdIFdlYktpdCBzZXJ2aWNl
cyBzaG91bGQgaW5oZXJpdCBlbnZpcm9ubWVudCB2YXJpYWJsZXMgZm9yIGhvbWUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0NDA3OAorICAgICAgICBy
ZGFyOi8vcHJvYmxlbS8yMDU3MTY3OAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEFkZGVkIGFuIFNQSSBoZWFkZXIgZm9yIGEgZHJpdmUtYnkgZml4Lgor
CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAq
IHBsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oOiBBZGRlZC4KKwogMjAxNS0wNC0yMiAgQnJl
bnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KIAogICAgICAgICBDb250ZXh0IG1lbnUg
ZG9lc24ndCBhY2NvdW50IGZvciBzZWxlY3Rpb24gc2VtYW50aWNzCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAx
ODI5MzkpCisrKyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2oJKHdvcmtpbmcgY29weSkKQEAgLTU5ODMsNiArNTk4Myw3IEBACiAJCUUwRkVGMzcyQjQ3QzUz
RUFDMUMxRkJFRSAvKiBKU0V2ZW50U291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUwRkVGMzcxQjQ3QzUzRUFDMUMxRkJFRSAvKiBKU0V2ZW50
U291cmNlLmNwcCAqLzsgfTsKIAkJRTEwNzQwMEQwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2Fn
ZUNoYW5uZWwuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuY3BwICovOyB9
OwogCQlFMTA3NDAwRTBFNzdCREMwMDAzM0FGMjQgLyogSlNNZXNzYWdlQ2hhbm5lbC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwNzQwMEMwRTc3QkRD
MDAwMzNBRjI0IC8qIEpTTWVzc2FnZUNoYW5uZWwuaCAqLzsgfTsKKwkJRTEwQTM5RTIxQUU4NEU3
MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSBFMTBBMzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVTUEku
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlFMTBC
OTM3QzBCNzNDMDBBMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEUxMEI5MzdCMEI3M0MwMEEw
MDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwogCQlFMTBCOTNDMzBC
NzNDMjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjkzQzIwQjczQzI5MTAwM0VE
ODkwIC8qIEpTQ3VzdG9tWFBhdGhOU1Jlc29sdmVyLmNwcCAqLzsgfTsKIAkJRTEwQjlCNkMwQjc0
NzU5OTAwM0VEODkwIC8qIE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gRTEwQjlCNkEwQjc0NzU5OTAwM0VEODkwIC8q
IE5hdGl2ZVhQYXRoTlNSZXNvbHZlci5oICovOyB9OwpAQCAtMTM1NzIsNiArMTM1NzMsNyBAQAog
CQlFMEZFRjM3MUI0N0M1M0VBQzFDMUZCRUUgLyogSlNFdmVudFNvdXJjZS5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU0V2ZW50U291cmNlLmNwcDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRTEwNzQwMEIwRTc3QkRDMDAwMzNBRjI0IC8qIEpTTWVzc2Fn
ZUNoYW5uZWwuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNNZXNz
YWdlQ2hhbm5lbC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCUUxMDc0MDBDMEU3
N0JEQzAwMDMzQUYyNCAvKiBKU01lc3NhZ2VDaGFubmVsLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IEpTTWVzc2FnZUNoYW5uZWwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJRTEwQTM5RTExQUU4NEU3MTAwQTI5QUUzIC8qIENGQnVuZGxlU1BJLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENGQnVuZGxlU1BJLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCUUxMEI5MzdCMEI3M0MwMEEwMDNFRDg5MCAvKiBKU0N1c3RvbVhQYXRoTlNS
ZXNvbHZlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0N1c3RvbVhQYXRo
TlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOTNDMjBCNzND
MjkxMDAzRUQ4OTAgLyogSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNDdXN0b21YUGF0aE5TUmVzb2x2ZXIuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlFMTBCOUI2QTBCNzQ3NTk5MDAzRUQ4OTAgLyogTmF0
aXZlWFBhdGhOU1Jlc29sdmVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE5h
dGl2ZVhQYXRoTlNSZXNvbHZlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY0
NDIsNiArMTY0NDQsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJ
CQk2NTA4NkRBNzE5QUMxNzE5MDA5QUY0NkIgLyogQ0ZMb2NhbGVTUEkuaCAqLywKKwkJCQlFMTBB
MzlFMTFBRTg0RTcxMDBBMjlBRTMgLyogQ0ZCdW5kbGVTUEkuaCAqLywKIAkJCQlDRTgyNDVFRjE5
QjY3MUJBMDBBQzAxMjIgLyogQ0ZOZXR3b3JrQ29ubmVjdGlvbkNhY2hlU1BJLmggKi8sCiAJCQkJ
Q0UxMjUyNUExQTFDMDE4MjAwODY0NDgwIC8qIENGTmV0d29ya1NQSS5oICovLAogCQkJCTQ0NDlB
NDA0MUE5NjRCMDAwMEI2NEFENSAvKiBDb3JlTWVkaWFTUEkuaCAqLywKQEAgLTI3MDkxLDYgKzI3
MDk0LDcgQEAKIAkJCQkyRTQzNDY1MTBGNTQ2QTgyMDBCMEYxQkEgLyogV29ya2VyT2JqZWN0UHJv
eHkuaCBpbiBIZWFkZXJzICovLAogCQkJCTQxNkUyOUE2MTAyRkE5NjIwMDdGQzE0RSAvKiBXb3Jr
ZXJSZXBvcnRpbmdQcm94eS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMkU0MzQ2NTMwRjU0NkE4MjAw
QjBGMUJBIC8qIFdvcmtlclJ1bkxvb3AuaCBpbiBIZWFkZXJzICovLAorCQkJCUUxMEEzOUUyMUFF
ODRFNzEwMEEyOUFFMyAvKiBDRkJ1bmRsZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjM4MjA4
OTkxNDdEMzVGOTAwMTBCQzA2IC8qIFdvcmtlclJ1bnRpbWVBZ2VudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJRTFBNjQzRjIwRUMwOTcyNTAwNzc5NjY4IC8qIFdvcmtlclNjcmlwdENvbnRyb2xsZXIu
aCBpbiBIZWFkZXJzICovLAogCQkJCUYzNDc0MkU5MTM0MzYzNTAwMDUzMUJDMiAvKiBXb3JrZXJT
Y3JpcHREZWJ1Z1NlcnZlci5oIGluIEhlYWRlcnMgKi8sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9zcGkvY2YvQ0ZCdW5kbGVTUEkuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3NwaS9jZi9DRkJ1bmRsZVNQSS5oCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsNDEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTUgQXBwbGUgSW5jLiAgQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VM
QVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJ
TkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICov
CisKKyNpZm5kZWYgQ0ZCdW5kbGVTUElfaAorI2RlZmluZSBDRkJ1bmRsZVNQSV9oCisKKyNpbmNs
dWRlIDxDb3JlRm91bmRhdGlvbi9Db3JlRm91bmRhdGlvbi5oPgorCisjaWYgVVNFKEFQUExFX0lO
VEVSTkFMX1NESykKKyNpbXBvcnQgPENvcmVGb3VuZGF0aW9uL0NGUHJpdi5oPgorI2Vsc2UKKyNp
bmNsdWRlIDx3dGYvc3BpL2Rhcndpbi9YUENTUEkuaD4KKyNlbmRpZgorCitleHRlcm4gIkMiIHsK
K3ZvaWQgX0NGQnVuZGxlU2V0dXBYUENCb290c3RyYXAoeHBjX29iamVjdF90IGJvb3RzdHJhcCk7
Cit9CisKKyNlbmRpZgpJbmRleDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gMTgzMTQ4KQorKysgU291cmNl
L1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTUt
MDQtMjIgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CisKKyAgICAgICAgW2lP
U10gV2ViS2l0IHNlcnZpY2VzIHNob3VsZCBpbmhlcml0IGVudmlyb25tZW50IHZhcmlhYmxlcyBm
b3IgaG9tZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MTQ0MDc4CisgICAgICAgIHJkYXI6Ly9wcm9ibGVtLzIwNTcxNjc4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgUGFzcyBjdXJyZW50IGVudmlyb25tZW50
IHZhcmlhYmxlcyBhcyBYUEMgYm9vdHN0cmFwLiBBbHNvIHdoaWxlIGF0IGl0LCBtYWRlCisgICAg
ICAgIF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwIG5vdCBzb2Z0IGxpbmtlZC4KKworICAgICAg
ICAqIFNoYXJlZC9FbnRyeVBvaW50VXRpbGl0aWVzL21hYy9YUENTZXJ2aWNlL1hQQ1NlcnZpY2VN
YWluLm1tOgorICAgICAgICAobWFpbik6CisgICAgICAgICogVUlQcm9jZXNzL0xhdW5jaGVyL21h
Yy9Qcm9jZXNzTGF1bmNoZXJNYWMubW06CisgICAgICAgIChXZWJLaXQ6OmNvbm5lY3RUb1NlcnZp
Y2UpOgorCiAyMDE1LTA0LTIyICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgog
CiAgICAgICAgIFVucmV2aWV3ZWQgYnVpbGQgZml4IGFmdGVyIHIxODMxMzYuCkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvRW50cnlQb2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9YUENT
ZXJ2aWNlTWFpbi5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9TaGFyZWQvRW50cnlQ
b2ludFV0aWxpdGllcy9tYWMvWFBDU2VydmljZS9YUENTZXJ2aWNlTWFpbi5tbQkocmV2aXNpb24g
MTgyOTM5KQorKysgU291cmNlL1dlYktpdDIvU2hhcmVkL0VudHJ5UG9pbnRVdGlsaXRpZXMvbWFj
L1hQQ1NlcnZpY2UvWFBDU2VydmljZU1haW4ubW0JKHdvcmtpbmcgY29weSkKQEAgLTc3LDYgKzc3
LDE1IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7CiAKIGludCBtYWluKGludCBhcmdjLCBjaGFy
KiogYXJndikKIHsKKyNpZiBQTEFURk9STShJT1MpCisgICAgYXV0byBib290c3RyYXAgPSBhZG9w
dE9TT2JqZWN0KHhwY19jb3B5X2Jvb3RzdHJhcCgpKTsKKyAgICBhdXRvIGNvbnRhaW5lckVudmly
b25tZW50VmFyaWFibGVzID0geHBjX2RpY3Rpb25hcnlfZ2V0X3ZhbHVlKGJvb3RzdHJhcC5nZXQo
KSwgIkNvbnRhaW5lckVudmlyb25tZW50VmFyaWFibGVzIik7CisgICAgeHBjX2RpY3Rpb25hcnlf
YXBwbHkoY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMsIF4oY29uc3QgY2hhciAqa2V5LCB4
cGNfb2JqZWN0X3QgdmFsdWUpIHsKKyAgICAgICAgc2V0ZW52KGtleSwgeHBjX3N0cmluZ19nZXRf
c3RyaW5nX3B0cih2YWx1ZSksIDEpOworICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICB9KTsKKyNl
bmRpZgorCiAgICAgeHBjX21haW4oWFBDU2VydmljZUV2ZW50SGFuZGxlcik7CiAgICAgcmV0dXJu
IDA7CiB9CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvbWFjL1Byb2Nl
c3NMYXVuY2hlck1hYy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
TGF1bmNoZXIvbWFjL1Byb2Nlc3NMYXVuY2hlck1hYy5tbQkocmV2aXNpb24gMTgyOTM5KQorKysg
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9jZXNzTGF1bmNoZXJNYWMu
bW0JKHdvcmtpbmcgY29weSkKQEAgLTI4LDYgKzI4LDcgQEAKIAogI2ltcG9ydCAiRHluYW1pY0xp
bmtlckVudmlyb25tZW50RXh0cmFjdG9yLmgiCiAjaW1wb3J0ICJFbnZpcm9ubWVudFZhcmlhYmxl
cy5oIgorI2ltcG9ydCA8V2ViQ29yZS9DRkJ1bmRsZVNQSS5oPgogI2ltcG9ydCA8V2ViQ29yZS9T
ZXJ2ZXJzU1BJLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NvZnRMaW5raW5nLmg+CiAjaW1wb3J0IDxX
ZWJDb3JlL1dlYkNvcmVOU1N0cmluZ0V4dHJhcy5oPgpAQCAtNDUsMTIgKzQ2LDYgQEAKICNpbXBv
cnQgPHd0Zi90ZXh0L0NTdHJpbmcuaD4KICNpbXBvcnQgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgog
Ci0jaWYgUExBVEZPUk0oSU9TKSB8fCBfX01BQ19PU19YX1ZFUlNJT05fTUlOX1JFUVVJUkVEID49
IDEwMTAwMAotLy8gRklYTUU6IFNvZnQgbGlua2luZyBpcyB0ZW1wb3JhcnksIG1ha2UgdGhpcyBp
bnRvIGEgcmVndWxhciBmdW5jdGlvbiBjYWxsIG9uY2UgdGhpcyBmdW5jdGlvbiBpcyBhdmFpbGFi
bGUgZXZlcnl3aGVyZSB3ZSBuZWVkLgotU09GVF9MSU5LX0ZSQU1FV09SSyhDb3JlRm91bmRhdGlv
bikKLVNPRlRfTElOS19PUFRJT05BTChDb3JlRm91bmRhdGlvbiwgX0NGQnVuZGxlU2V0dXBYUENC
b290c3RyYXAsIHZvaWQsIHVudXNlZCwgKHhwY19vYmplY3RfdCkpCi0jZW5kaWYKLQogbmFtZXNw
YWNlIFdlYktpdCB7CiAKIG5hbWVzcGFjZSB7CkBAIC0yMjIsMTEgKzIxNywyMCBAQCBzdGF0aWMg
dm9pZCBjb25uZWN0VG9TZXJ2aWNlKGNvbnN0IFByb2NlCiAgICAgLy8gMS4gV2hlbiB0aGUgYXBw
bGljYXRpb24gYW5kIHN5c3RlbSBmcmFtZXdvcmtzIHNpbXBseSBoYXZlIGRpZmZlcmVudCBsb2Nh
bGl6ZWQgcmVzb3VyY2VzIGF2YWlsYWJsZSwgd2Ugc2hvdWxkIG1hdGNoIHRoZSBhcHBsaWNhdGlv
bi4KICAgICAvLyAxLjEuIEFuIGltcG9ydGFudCBjYXNlIGlzIFdlYktpdFRlc3RSdW5uZXIsIHdo
ZXJlIHdlIHNob3VsZCB1c2UgRW5nbGlzaCBsb2NhbGl6YXRpb25zIGZvciBhbGwgc3lzdGVtIGZy
YW1ld29ya3MuCiAgICAgLy8gMi4gV2hlbiBBcHBsZUxhbmd1YWdlcyBpcyBwYXNzZWQgYXMgY29t
bWFuZCBsaW5lIGFyZ3VtZW50IGZvciBVSSBwcm9jZXNzLCBvciBzZXQgaW4gaXRzIHByZWZlcmVu
Y2VzLCB3ZSBzaG91bGQgcmVzcGVjdCBpdCBpbiBjaGlsZCBwcm9jZXNzZXMuCi0gICAgaWYgKF9D
RkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRyKCkpIHsKLSAgICAgICAgYXV0byBpbml0aWFsaXph
dGlvbk1lc3NhZ2UgPSBhZG9wdE9TT2JqZWN0KHhwY19kaWN0aW9uYXJ5X2NyZWF0ZShudWxscHRy
LCBudWxscHRyLCAwKSk7Ci0gICAgICAgIF9DRkJ1bmRsZVNldHVwWFBDQm9vdHN0cmFwUHRyKCko
aW5pdGlhbGl6YXRpb25NZXNzYWdlLmdldCgpKTsKLSAgICAgICAgeHBjX2Nvbm5lY3Rpb25fc2V0
X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgpLCBpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCkp
OwotICAgIH0KKyAgICBhdXRvIGluaXRpYWxpemF0aW9uTWVzc2FnZSA9IGFkb3B0T1NPYmplY3Qo
eHBjX2RpY3Rpb25hcnlfY3JlYXRlKG51bGxwdHIsIG51bGxwdHIsIDApKTsKKyAgICBfQ0ZCdW5k
bGVTZXR1cFhQQ0Jvb3RzdHJhcChpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0KCkpOworI2lmIFBM
QVRGT1JNKElPUykKKyAgICAvLyBDbGllbnRzIHRoYXQgc2V0IHRoZXNlIGVudmlyb25tZW50IHZh
cmlhYmxlcyBleHBsaWNpdGx5IGRvIG5vdCBoYXZlIHRoZSB2YWx1ZXMgYXV0b21hdGljYWxseSBm
b3J3YXJkZWQgYnkgbGlieHBjLgorICAgIGF1dG8gY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJs
ZXMgPSBhZG9wdE9TT2JqZWN0KHhwY19kaWN0aW9uYXJ5X2NyZWF0ZShudWxscHRyLCBudWxscHRy
LCAwKSk7CisgICAgaWYgKGNvbnN0IGNoYXIqIGVudmlyb25tZW50SE9NRSA9IGdldGVudigiSE9N
RSIpKQorICAgICAgICB4cGNfZGljdGlvbmFyeV9zZXRfc3RyaW5nKGNvbnRhaW5lckVudmlyb25t
ZW50VmFyaWFibGVzLmdldCgpLCAiSE9NRSIsIGVudmlyb25tZW50SE9NRSk7CisgICAgaWYgKGNv
bnN0IGNoYXIqIGVudmlyb25tZW50Q0ZGSVhFRF9VU0VSX0hPTUUgPSBnZXRlbnYoIkNGRklYRURf
VVNFUl9IT01FIikpCisgICAgICAgIHhwY19kaWN0aW9uYXJ5X3NldF9zdHJpbmcoY29udGFpbmVy
RW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCksICJDRkZJWEVEX1VTRVJfSE9NRSIsIGVudmlyb25t
ZW50Q0ZGSVhFRF9VU0VSX0hPTUUpOworICAgIGlmIChjb25zdCBjaGFyKiBlbnZpcm9ubWVudFRN
UERJUiA9IGdldGVudigiVE1QRElSIikpCisgICAgICAgIHhwY19kaWN0aW9uYXJ5X3NldF9zdHJp
bmcoY29udGFpbmVyRW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCksICJUTVBESVIiLCBlbnZpcm9u
bWVudFRNUERJUik7CisgICAgeHBjX2RpY3Rpb25hcnlfc2V0X3ZhbHVlKGluaXRpYWxpemF0aW9u
TWVzc2FnZS5nZXQoKSwgIkNvbnRhaW5lckVudmlyb25tZW50VmFyaWFibGVzIiwgY29udGFpbmVy
RW52aXJvbm1lbnRWYXJpYWJsZXMuZ2V0KCkpOworI2VuZGlmCisgICAgeHBjX2Nvbm5lY3Rpb25f
c2V0X2Jvb3RzdHJhcChjb25uZWN0aW9uLmdldCgpLCBpbml0aWFsaXphdGlvbk1lc3NhZ2UuZ2V0
KCkpOwogI2VuZGlmCiAKICAgICAvLyBYUEMgcmVxdWlyZXMgaGF2aW5nIGFuIGV2ZW50IGhhbmRs
ZXIsIGV2ZW4gaWYgaXQgaXMgbm90IHVzZWQuCg==
</data>
<flag name="review"
          id="276265"
          type_id="1"
          status="+"
          setter="mitz"
    />
          </attachment>
      

    </bug>

</bugzilla>