<?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>45440</bug_id>
          
          <creation_ts>2010-09-08 23:14:43 -0700</creation_ts>
          <short_desc>[FileSystem] Add File and FileWriter accessor methods in FileEntry</short_desc>
          <delta_ts>2010-09-30 13:39:33 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>42903</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Kinuko Yasuda">kinuko</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dumi</cc>
    
    <cc>ericu</cc>
    
    <cc>fishd</cc>
    
    <cc>jianli</cc>
    
    <cc>michaeln</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>276321</commentid>
    <comment_count>0</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-08 23:14:43 -0700</bug_when>
    <thetext>Add FileEntry.file() and FileEntry.createWrite() methods in FileEntry.
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#the-fileentry-interface

This also requires two new interfaces, FileCallback and FileWriterCallback.
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#idl-def-FileCallback
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html#idl-def-FileWriterCallback</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276323</commentid>
    <comment_count>1</comment_count>
      <attachid>66999</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-08 23:26:38 -0700</bug_when>
    <thetext>Created attachment 66999
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276718</commentid>
    <comment_count>2</comment_count>
      <attachid>66999</attachid>
    <who name="Eric U.">ericu</who>
    <bug_when>2010-09-09 13:45:39 -0700</bug_when>
    <thetext>Comment on attachment 66999
Patch

&gt; diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
&gt; index 0f57413269abc4d3fce9c87aa1427903fd553860..d51bb2ccb621b657a17cc45f41b94b68036fbed4 100644
&gt; --- a/WebCore/GNUmakefile.am
&gt; +++ b/WebCore/GNUmakefile.am
&gt; @@ -3021,10 +3021,14 @@ webcore_built_sources += \
&gt;         DerivedSources/WebCore/JSEntryCallback.h \
&gt;         DerivedSources/WebCore/JSErrorCallback.cpp \
&gt;         DerivedSources/WebCore/JSErrorCallback.h \
&gt; +       DerivedSources/WebCore/JSFileCallback.cpp \
&gt; +       DerivedSources/WebCore/JSFileCallback.h \
&gt;         DerivedSources/WebCore/JSFileEntry.cpp \
&gt;         DerivedSources/WebCore/JSFileEntry.h \
&gt;         DerivedSources/WebCore/JSFileSystemCallback.cpp \
&gt;         DerivedSources/WebCore/JSFileSystemCallback.h \

This needs an if ENABLE_FILE_WRITER guard.

&gt; +       DerivedSources/WebCore/JSFileWriterCallback.cpp \
&gt; +       DerivedSources/WebCore/JSFileWriterCallback.h \
&gt;         DerivedSources/WebCore/JSFlags.cpp \
&gt;         DerivedSources/WebCore/JSFlags.h \
&gt;         DerivedSources/WebCore/JSMetadata.cpp \
&gt; @@ -3048,11 +3052,13 @@ webcore_sources += \
&gt;         WebCore/fileapi/EntryArray.h \
&gt;         WebCore/fileapi/EntryCallback.h \
&gt;         WebCore/fileapi/ErrorCallback.h \
&gt; +       WebCore/fileapi/FileCallback.h \
&gt;         WebCore/fileapi/FileEntry.cpp \
&gt;         WebCore/fileapi/FileEntry.h \
&gt;         WebCore/fileapi/FileSystemCallback.h \
&gt;         WebCore/fileapi/FileSystemCallbacks.cpp \
&gt;         WebCore/fileapi/FileSystemCallbacks.h \

Same here.

&gt; +       WebCore/fileapi/FileWriterCallback.h \
&gt;         WebCore/fileapi/Flags.h \
&gt;         WebCore/fileapi/LocalFileSystem.cpp \
&gt;         WebCore/fileapi/LocalFileSystem.h \
&gt; diff --git a/WebCore/WebCore.gypi b/WebCore/WebCore.gypi
&gt; index c7597946ad0d8997512b89f128a6b9ef7e6220a9..00b6456e912459e10260a0d5f2dbad104dd6fa96 100644
&gt; --- a/WebCore/WebCore.gypi
&gt; +++ b/WebCore/WebCore.gypi
&gt; @@ -96,6 +96,7 @@
&gt;              &apos;fileapi/EntryCallback.idl&apos;,
&gt;              &apos;fileapi/ErrorCallback.idl&apos;,
&gt;              &apos;fileapi/File.idl&apos;,
&gt; +            &apos;fileapi/FileCallback.idl&apos;,
&gt;              &apos;fileapi/FileEntry.idl&apos;,
&gt;              &apos;fileapi/FileError.idl&apos;,
&gt;              &apos;fileapi/FileException.idl&apos;,
&gt; @@ -104,6 +105,7 @@
&gt;              &apos;fileapi/FileReaderSync.idl&apos;,
&gt;              &apos;fileapi/FileSystemCallback.idl&apos;,
&gt;              &apos;fileapi/FileWriter.idl&apos;,
&gt; +            &apos;fileapi/FileWriterCallback.idl&apos;,
&gt;              &apos;fileapi/Flags.idl&apos;,
&gt;              &apos;fileapi/Metadata.idl&apos;,
&gt;              &apos;fileapi/MetadataCallback.idl&apos;,
&gt; @@ -1446,6 +1448,7 @@
&gt;              &apos;fileapi/ErrorCallback.h&apos;,
&gt;              &apos;fileapi/File.cpp&apos;,
&gt;              &apos;fileapi/File.h&apos;,
&gt; +            &apos;fileapi/FileCallback.h&apos;,
&gt;              &apos;fileapi/FileEntry.cpp&apos;,
&gt;              &apos;fileapi/FileEntry.h&apos;,
&gt;              &apos;fileapi/FileError.h&apos;,
&gt; @@ -1466,6 +1469,7 @@
&gt;              &apos;fileapi/FileThreadTask.h&apos;,
&gt;              &apos;fileapi/FileWriter.cpp&apos;,
&gt;              &apos;fileapi/FileWriter.h&apos;,
&gt; +            &apos;fileapi/FileWriterCallback.h&apos;,
&gt;              &apos;fileapi/FileWriterClient.h&apos;,
&gt;              &apos;fileapi/Flags.h&apos;,
&gt;              &apos;fileapi/LocalFileSystem.h&apos;,

&gt; diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
&gt; index ea6e90145a76071ad62bfa0527dca7e89919870e..2310c3bc056abd2215b8f1ccca5d6d4a4eda31df 100644
&gt; --- a/WebCore/WebCore.pro
&gt; +++ b/WebCore/WebCore.pro
&gt; @@ -2621,6 +2621,7 @@ contains(DEFINES, ENABLE_FILE_SYSTEM=1) {
&gt;          fileapi/EntryArray.h \
&gt;          fileapi/EntryCallback.h \
&gt;          fileapi/ErrorCallback.h \
&gt; +        fileapi/FileCallback.h \

Should FileWriterCallback.h go in here too?
Do we need a nested guard for ENABLE_FILE_WRITER=1?

&gt;          fileapi/FileEntry.h \
&gt;          fileapi/FileSystemCallback.h \
&gt;          fileapi/FileSystemCallbacks.h \






&gt; diff --git a/WebCore/fileapi/FileEntry.idl b/WebCore/fileapi/FileEntry.idl
&gt; index af3b8075ae3751d552fe282529e75d1ad5307c62..41b9a918afdefb1dc1953c93ccc17e970348c304 100644
&gt; --- a/WebCore/fileapi/FileEntry.idl
&gt; +++ b/WebCore/fileapi/FileEntry.idl
&gt; @@ -34,5 +34,9 @@ module storage {
&gt;          GenerateNativeConverter,
&gt;          GenerateToJS
&gt;      ] FileEntry : Entry {
&gt; +#if defined(ENABLE_FILE_WRITER) &amp;&amp; ENABLE_FILE_WRITER
&gt; +        void createWriter(in [Callback] FileWriterCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
&gt; +#endif
&gt; +        void file(in [Callback] FileCallback successCallback, in [Optional, Callback] ErrorCallback errorCallback);
&gt;      };
&gt;  }
&gt; diff --git a/WebCore/fileapi/FileWriterCallback.h b/WebCore/fileapi/FileWriterCallback.h
&gt; new file mode 100644
&gt; index 0000000000000000000000000000000000000000..3f9e746fa6e0098b5f8bfb16f4da0d7071e7f3f7
&gt; --- /dev/null
&gt; +++ b/WebCore/fileapi/FileWriterCallback.h
&gt; @@ -0,0 +1,52 @@
&gt; +/*
&gt; + * Copyright (C) 2010 Google Inc. All rights reserved.
&gt; + *
&gt; + * Redistribution and use in source and binary forms, with or without
&gt; + * modification, are permitted provided that the following conditions are
&gt; + * met:
&gt; + *
&gt; + *     * Redistributions of source code must retain the above copyright
&gt; + * notice, this list of conditions and the following disclaimer.
&gt; + *     * Redistributions in binary form must reproduce the above
&gt; + * copyright notice, this list of conditions and the following disclaimer
&gt; + * in the documentation and/or other materials provided with the
&gt; + * distribution.
&gt; + *     * Neither the name of Google Inc. nor the names of its
&gt; + * contributors may be used to endorse or promote products derived from
&gt; + * this software without specific prior written permission.
&gt; + *
&gt; + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
&gt; + * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
&gt; + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
&gt; + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
&gt; + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
&gt; + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
&gt; + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
&gt; + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
&gt; + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
&gt; + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
&gt; + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
&gt; + */
&gt; +
&gt; +#ifndef FileWriterCallback_h
&gt; +#define FileWriterCallback_h
&gt; +
&gt; +#if ENABLE(FILE_SYSTEM)

I think you want to guard on both FILE_WRITER and FILE_SYSTEM here.

&gt; +
&gt; +#include &lt;wtf/RefCounted.h&gt;
&gt; +
&gt; +namespace WebCore {
&gt; +
&gt; +class FileWriter;
&gt; +
&gt; +class FileWriterCallback : public RefCounted&lt;FileWriterCallback&gt; {
&gt; +public:
&gt; +    virtual ~FileWriterCallback() { }
&gt; +    virtual bool handleEvent(FileWriter*) = 0;
&gt; +};
&gt; +
&gt; +} // namespace
&gt; +
&gt; +#endif // ENABLE(FILE_SYSTEM)
&gt; +
&gt; +#endif // FileWriterCallback_h
&gt; diff --git a/WebCore/fileapi/FileWriterCallback.idl b/WebCore/fileapi/FileWriterCallback.idl
&gt; new file mode 100644
&gt; index 0000000000000000000000000000000000000000..ba77891fde3b778b2412cc1f26e5117e655cbac8
&gt; --- /dev/null
&gt; +++ b/WebCore/fileapi/FileWriterCallback.idl
&gt; @@ -0,0 +1,38 @@
&gt; +/*
&gt; + * Copyright (C) 2010 Google Inc. All rights reserved.
&gt; + *
&gt; + * Redistribution and use in source and binary forms, with or without
&gt; + * modification, are permitted provided that the following conditions are
&gt; + * met:
&gt; + *
&gt; + *     * Redistributions of source code must retain the above copyright
&gt; + * notice, this list of conditions and the following disclaimer.
&gt; + *     * Redistributions in binary form must reproduce the above
&gt; + * copyright notice, this list of conditions and the following disclaimer
&gt; + * in the documentation and/or other materials provided with the
&gt; + * distribution.
&gt; + *     * Neither the name of Google Inc. nor the names of its
&gt; + * contributors may be used to endorse or promote products derived from
&gt; + * this software without specific prior written permission.
&gt; + *
&gt; + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
&gt; + * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
&gt; + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
&gt; + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
&gt; + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
&gt; + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
&gt; + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
&gt; + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
&gt; + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
&gt; + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
&gt; + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
&gt; + */
&gt; +
&gt; +module fileapi {
&gt; +    interface [
&gt; +        Conditional=FILE_SYSTEM&amp;FILE_WRITER,
&gt; +        Callback
&gt; +    ] FileWriterCallback {
&gt; +        boolean handleEvent(in FileWriter fileWriter);
&gt; +    };
&gt; +}


I&apos;m reviewing this patch by diffing it against a nearly-identical one [for FileWriterCallback] in my own repo ;&apos;&gt;.
The only thing missing is a new FileWriterCallbacks derived from FileSystemCallbacksBase.  Would that make this CL too big?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276731</commentid>
    <comment_count>3</comment_count>
      <attachid>66999</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-09-09 13:56:26 -0700</bug_when>
    <thetext>Comment on attachment 66999
Patch

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

&gt; WebCore/WebCore.vcproj/WebCore.vcproj:4826
&gt; +				&lt;FileConfiguration
The FileConfiguration parts should not be included because they&apos;re used to exclude the file. I think we still want the file to be included in the build target, though the feature is not enabled for Windows.

&gt; WebCore/fileapi/FileWriterCallback.idl:33
&gt; +        Conditional=FILE_SYSTEM&amp;FILE_WRITER,
This condition &quot;FILE_SYSTEM&amp;FILE_WRITER&quot; seems not to be consistent with &quot;ENABLE(FILE_SYSTEM)&quot; used in FileWriterCallback.h.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276847</commentid>
    <comment_count>4</comment_count>
      <attachid>67117</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-09 16:47:46 -0700</bug_when>
    <thetext>Created attachment 67117
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276855</commentid>
    <comment_count>5</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-09 17:02:55 -0700</bug_when>
    <thetext>Thanks for your review,

I moved all the FileWriterCallback stuff in the ENABLE_FILE_WRITER guard.
They&apos;ll be included in the build target if FILE_WRITER is enabled regardless of FILE_SYSTEM flag, but it has ENABLE guard in the source code too so there should be no problem.  (Also FileWriterCallback itself does not rely on other FILE_SYSTEM files.)

Eric, yeah I was afraid you may have similar code in your env.  Feeling sorry about the duplicated effort.
In this patch I also added FileWriter.cpp and idl in CMakeLists.txt with ENABLE_FILE_WRITER guard -- was that ok?  Let me know if you had intentionally excluded them.

(In reply to comment #2)
&gt; (From update of attachment 66999 [details])
&gt; &gt; diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
&gt; &gt; index 0f57413269abc4d3fce9c87aa1427903fd553860..d51bb2ccb621b657a17cc45f41b94b68036fbed4 100644
&gt; &gt; --- a/WebCore/GNUmakefile.am
&gt; &gt; +++ b/WebCore/GNUmakefile.am
&gt; &gt; @@ -3021,10 +3021,14 @@ webcore_built_sources += \
&gt; 
&gt; This needs an if ENABLE_FILE_WRITER guard.

&gt; &gt; +       DerivedSources/WebCore/JSFileWriterCallback.cpp \
&gt; &gt; +       DerivedSources/WebCore/JSFileWriterCallback.h \
&gt; &gt; +       WebCore/fileapi/FileWriterCallback.h \

Moved these three in the ENABLE_FILE_WRITER guard.

&gt; &gt; diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
&gt; &gt; index ea6e90145a76071ad62bfa0527dca7e89919870e..2310c3bc056abd2215b8f1ccca5d6d4a4eda31df 100644
&gt; &gt; --- a/WebCore/WebCore.pro
&gt; &gt; +++ b/WebCore/WebCore.pro
&gt; &gt; @@ -2621,6 +2621,7 @@ contains(DEFINES, ENABLE_FILE_SYSTEM=1) {
&gt; &gt;          fileapi/EntryArray.h \
&gt; &gt;          fileapi/EntryCallback.h \
&gt; &gt;          fileapi/ErrorCallback.h \
&gt; &gt; +        fileapi/FileCallback.h \
&gt; 
&gt; Should FileWriterCallback.h go in here too?
&gt; Do we need a nested guard for ENABLE_FILE_WRITER=1?

Moved it in a separate (not nested) ENABLE_FILE_WRITER guard.

&gt; &gt; +#if ENABLE(FILE_SYSTEM)
&gt; 
&gt; I think you want to guard on both FILE_WRITER and FILE_SYSTEM here.

Fixed.

(In reply to comment #3)
&gt; (From update of attachment 66999 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=66999&amp;action=prettypatch
&gt; 
&gt; &gt; WebCore/WebCore.vcproj/WebCore.vcproj:4826
&gt; &gt; +				&lt;FileConfiguration
&gt; The FileConfiguration parts should not be included because they&apos;re used to exclude the file. I think we still want the file to be included in the build target, though the feature is not enabled for Windows.

Removed the FileConfiguration parts.  (Maybe I should remove them for other FS stuff too?)

&gt; &gt; WebCore/fileapi/FileWriterCallback.idl:33
&gt; &gt; +        Conditional=FILE_SYSTEM&amp;FILE_WRITER,
&gt; This condition &quot;FILE_SYSTEM&amp;FILE_WRITER&quot; seems not to be consistent with &quot;ENABLE(FILE_SYSTEM)&quot; used in FileWriterCallback.h.

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276863</commentid>
    <comment_count>6</comment_count>
    <who name="Eric U.">ericu</who>
    <bug_when>2010-09-09 17:10:58 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Thanks for your review,
&gt; 
&gt; I moved all the FileWriterCallback stuff in the ENABLE_FILE_WRITER guard.
&gt; They&apos;ll be included in the build target if FILE_WRITER is enabled regardless of FILE_SYSTEM flag, but it has ENABLE guard in the source code too so there should be no problem.  (Also FileWriterCallback itself does not rely on other FILE_SYSTEM files.)

OK.

&gt; Eric, yeah I was afraid you may have similar code in your env.  Feeling sorry about the duplicated effort.

No worries; the overlap is small.  I&apos;ll add in the other bit once this lands.

&gt; In this patch I also added FileWriter.cpp and idl in CMakeLists.txt with ENABLE_FILE_WRITER guard -- was that ok?  Let me know if you had intentionally excluded them.

No, that was just an oversight on my part.  Thanks!

&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 66999 [details] [details])
&gt; &gt; &gt; diff --git a/WebCore/GNUmakefile.am b/WebCore/GNUmakefile.am
&gt; &gt; &gt; index 0f57413269abc4d3fce9c87aa1427903fd553860..d51bb2ccb621b657a17cc45f41b94b68036fbed4 100644
&gt; &gt; &gt; --- a/WebCore/GNUmakefile.am
&gt; &gt; &gt; +++ b/WebCore/GNUmakefile.am
&gt; &gt; &gt; @@ -3021,10 +3021,14 @@ webcore_built_sources += \
&gt; &gt; 
&gt; &gt; This needs an if ENABLE_FILE_WRITER guard.
&gt; 
&gt; &gt; &gt; +       DerivedSources/WebCore/JSFileWriterCallback.cpp \
&gt; &gt; &gt; +       DerivedSources/WebCore/JSFileWriterCallback.h \
&gt; &gt; &gt; +       WebCore/fileapi/FileWriterCallback.h \
&gt; 
&gt; Moved these three in the ENABLE_FILE_WRITER guard.
&gt; 
&gt; &gt; &gt; diff --git a/WebCore/WebCore.pro b/WebCore/WebCore.pro
&gt; &gt; &gt; index ea6e90145a76071ad62bfa0527dca7e89919870e..2310c3bc056abd2215b8f1ccca5d6d4a4eda31df 100644
&gt; &gt; &gt; --- a/WebCore/WebCore.pro
&gt; &gt; &gt; +++ b/WebCore/WebCore.pro
&gt; &gt; &gt; @@ -2621,6 +2621,7 @@ contains(DEFINES, ENABLE_FILE_SYSTEM=1) {
&gt; &gt; &gt;          fileapi/EntryArray.h \
&gt; &gt; &gt;          fileapi/EntryCallback.h \
&gt; &gt; &gt;          fileapi/ErrorCallback.h \
&gt; &gt; &gt; +        fileapi/FileCallback.h \
&gt; &gt; 
&gt; &gt; Should FileWriterCallback.h go in here too?
&gt; &gt; Do we need a nested guard for ENABLE_FILE_WRITER=1?
&gt; 
&gt; Moved it in a separate (not nested) ENABLE_FILE_WRITER guard.
&gt; 
&gt; &gt; &gt; +#if ENABLE(FILE_SYSTEM)
&gt; &gt; 
&gt; &gt; I think you want to guard on both FILE_WRITER and FILE_SYSTEM here.
&gt; 
&gt; Fixed.
&gt; 
&gt; (In reply to comment #3)
&gt; &gt; (From update of attachment 66999 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=66999&amp;action=prettypatch
&gt; &gt; 
&gt; &gt; &gt; WebCore/WebCore.vcproj/WebCore.vcproj:4826
&gt; &gt; &gt; +				&lt;FileConfiguration
&gt; &gt; The FileConfiguration parts should not be included because they&apos;re used to exclude the file. I think we still want the file to be included in the build target, though the feature is not enabled for Windows.
&gt; 
&gt; Removed the FileConfiguration parts.  (Maybe I should remove them for other FS stuff too?)
&gt; 
&gt; &gt; &gt; WebCore/fileapi/FileWriterCallback.idl:33
&gt; &gt; &gt; +        Conditional=FILE_SYSTEM&amp;FILE_WRITER,
&gt; &gt; This condition &quot;FILE_SYSTEM&amp;FILE_WRITER&quot; seems not to be consistent with &quot;ENABLE(FILE_SYSTEM)&quot; used in FileWriterCallback.h.
&gt; 
&gt; Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276864</commentid>
    <comment_count>7</comment_count>
      <attachid>67122</attachid>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-09 17:17:51 -0700</bug_when>
    <thetext>Created attachment 67122
Patch

rebased.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276910</commentid>
    <comment_count>8</comment_count>
      <attachid>67122</attachid>
    <who name="Jian Li">jianli</who>
    <bug_when>2010-09-09 18:21:54 -0700</bug_when>
    <thetext>Comment on attachment 67122
Patch

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

&gt; WebCore/ChangeLog:8
&gt; +        Adding FileEntry.file() and FileEntry.createWrite() methods in FileEntry.
You can remove &quot;FileEntry.&quot; prefix to simplify the sentence. Also, better to have &quot;Added&quot; for &quot;Adding&quot;.

&gt; WebCore/fileapi/FileWriterCallback.idl:39
&gt;  
Extra line at the end of the file?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>276989</commentid>
    <comment_count>9</comment_count>
    <who name="Kinuko Yasuda">kinuko</who>
    <bug_when>2010-09-09 20:46:40 -0700</bug_when>
    <thetext>Committed r67159: &lt;http://trac.webkit.org/changeset/67159&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>66999</attachid>
            <date>2010-09-08 23:26:38 -0700</date>
            <delta_ts>2010-09-09 16:47:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-45440-20100908232637.patch</filename>
            <type>text/plain</type>
            <size>29455</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CmluZGV4IDg4NWQ4MDE2MmU0M2VmZDM1MmZkM2ZjMTU5N2VmZTFlMWVkNTAyMTMuLjQ2MTQx
MWM2NTA3MzU0Nzg2ODhhZDg0OTE3NzcyNGFkYTRjMGU3ODggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTU4NCw4ICsx
NTg0LDEwIEBAIGlmIChFTkFCTEVfRklMRV9TWVNURU0pCiAgICAgICAgIGZpbGVhcGkvRW50cnlB
cnJheS5pZGwKICAgICAgICAgZmlsZWFwaS9FbnRyeUNhbGxiYWNrLmlkbAogICAgICAgICBmaWxl
YXBpL0Vycm9yQ2FsbGJhY2suaWRsCisgICAgICAgIGZpbGVhcGkvRmlsZUNhbGxiYWNrLmlkbAog
ICAgICAgICBmaWxlYXBpL0ZpbGVFbnRyeS5pZGwKICAgICAgICAgZmlsZWFwaS9GaWxlU3lzdGVt
Q2FsbGJhY2suaWRsCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbAogICAg
ICAgICBmaWxlYXBpL0ZsYWdzLmlkbAogICAgICAgICBmaWxlYXBpL01ldGFkYXRhLmlkbAogICAg
ICAgICBmaWxlYXBpL01ldGFkYXRhQ2FsbGJhY2suaWRsCmRpZmYgLS1naXQgYS9XZWJDb3JlL0No
YW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGNiNDEzODcyNDlhNDNiY2UzZjk5M2Nh
OGQ0NWFhMDhkNTYzNGU5MDMuLjIwOGU5MzhlYTllMmUzNGFjMmI1ZTE0YTFmNThkYzdkMjE2M2E2
ZTggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMzQgQEAKKzIwMTAtMDktMDggIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hy
b21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFtGaWxlU3lzdGVtXSBBZGQgRmlsZSBhbmQgRmlsZVdyaXRlciBhY2Nlc3NvciBtZXRob2Rz
IGluIEZpbGVFbnRyeQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9NDU0NDAKKworICAgICAgICBBZGRpbmcgRmlsZUVudHJ5LmZpbGUoKSBhbmQgRmlsZUVu
dHJ5LmNyZWF0ZVdyaXRlKCkgbWV0aG9kcyBpbiBGaWxlRW50cnkuCisgICAgICAgIGh0dHA6Ly9k
ZXYudzMub3JnLzIwMDkvZGFwL2ZpbGUtc3lzdGVtL2ZpbGUtZGlyLXN5cy5odG1sI3RoZS1maWxl
ZW50cnktaW50ZXJmYWNlCisKKyAgICAgICAgTm8gbmV3IHRlc3RzOyB0aGlzIHBhdGNoIGRvZXNu
J3QgaGF2ZSBpbXBsZW1lbnRhdGlvbiB5ZXQuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoK
KyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMu
bWFrZToKKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6
CisgICAgICAgICogV2ViQ29yZS5wcmk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAgICAg
ICogV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qOgorICAgICAgICAqIGZpbGVhcGkvRmlsZUVudHJ5LmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkZpbGVFbnRyeTo6Y3JlYXRlV3JpdGVyKTogQWRkZWQuCisgICAg
ICAgIChXZWJDb3JlOjpGaWxlRW50cnk6OmZpbGUpOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBp
L0ZpbGVFbnRyeS5oOgorICAgICAgICAqIGZpbGVhcGkvRmlsZUVudHJ5LmlkbDoKKyAgICAgICAg
KiBmaWxlYXBpL0ZpbGVDYWxsYmFjay5oOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVD
YWxsYmFjay5pZGw6IEFkZGVkLgorICAgICAgICAqIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNr
Lmg6IEFkZGVkLgorICAgICAgICAqIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbDogQWRk
ZWQuCisKIDIwMTAtMDktMDggIEFuZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJ1YmJlci1zdGFtcGVkIGJ5IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5jcHAgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA4MWY0
MDcwMDFjOTYxYWM0YzYxNjIyYmI4MGFhMTg5NjgwZWVmZThhLi43YTBjMmZkY2U3MTEyNTRhN2Y4
ZWM4ZDA3NTM4YjcxNTY1NTk3OTM4IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
LmNwcAorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcApAQCAtMTA1LDYgKzEwNSw3IEBA
CiAjaW5jbHVkZSAiSlNFdmVudEV4Y2VwdGlvbi5jcHAiCiAjaW5jbHVkZSAiSlNFdmVudFNvdXJj
ZS5jcHAiCiAjaW5jbHVkZSAiSlNGaWxlLmNwcCIKKyNpbmNsdWRlICJKU0ZpbGVDYWxsYmFjay5j
cHAiCiAjaW5jbHVkZSAiSlNGaWxlRW50cnkuY3BwIgogI2luY2x1ZGUgIkpTRmlsZUVycm9yLmNw
cCIKICNpbmNsdWRlICJKU0ZpbGVFeGNlcHRpb24uY3BwIgpAQCAtMTEzLDYgKzExNCw3IEBACiAj
aW5jbHVkZSAiSlNGaWxlUmVhZGVyU3luYy5jcHAiCiAjaW5jbHVkZSAiSlNGaWxlU3lzdGVtQ2Fs
bGJhY2suY3BwIgogI2luY2x1ZGUgIkpTRmlsZVdyaXRlci5jcHAiCisjaW5jbHVkZSAiSlNGaWxl
V3JpdGVyQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUgIkpTRmxhZ3MuY3BwIgogI2luY2x1ZGUgIkpT
R2VvbG9jYXRpb24uY3BwIgogI2luY2x1ZGUgIkpTR2VvcG9zaXRpb24uY3BwIgpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCmluZGV4IDZmZDFjZGVlMTZkZDliNWVkZmM0N2ViM2NlMGMzMWMyYTJlMzNmMjguLmMzN2Vm
YjM0ODFiYThjMDM2NjhiYTE5YTc4MjhhYzEwMWU5ZDdjYzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAg
LTE1MSw2ICsxNTEsNyBAQCBET01fQ0xBU1NFUyA9IFwKICAgICBFdmVudFNvdXJjZSBcCiAgICAg
RXZlbnRUYXJnZXQgXAogICAgIEZpbGUgXAorICAgIEZpbGVDYWxsYmFjayBcCiAgICAgRmlsZUVu
dHJ5IFwKICAgICBGaWxlRXhjZXB0aW9uIFwKICAgICBGaWxlRXJyb3IgXApAQCAtMTU4LDYgKzE1
OSw3IEBAIERPTV9DTEFTU0VTID0gXAogICAgIEZpbGVSZWFkZXIgXAogICAgIEZpbGVSZWFkZXJT
eW5jIFwKICAgICBGaWxlV3JpdGVyIFwKKyAgICBGaWxlV3JpdGVyQ2FsbGJhY2sgXAogICAgIEZp
bGVTeXN0ZW1DYWxsYmFjayBcCiAgICAgRmxhZ3MgXAogICAgIEdlb2xvY2F0aW9uIFwKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmlu
ZGV4IDBmNTc0MTMyNjlhYmM0ZDNmY2U5Yzg3YWExNDI3OTAzZmQ1NTM4NjAuLmQ1MWJiMmNjYjYy
MWI2NTdhMTdjYzQ1ZjQxYjk0YjY4MDM2ZmJlZDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0KKysrIGIvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQpAQCAtMzAyMSwxMCArMzAyMSwx
NCBAQCB3ZWJjb3JlX2J1aWx0X3NvdXJjZXMgKz0gXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNFbnRyeUNhbGxiYWNrLmggXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUv
SlNFcnJvckNhbGxiYWNrLmNwcCBcCiAgICAgICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Vy
cm9yQ2FsbGJhY2suaCBcCisgICAgICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVDYWxs
YmFjay5jcHAgXAorICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlQ2FsbGJhY2su
aCBcCiAgICAgICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVFbnRyeS5jcHAgXAogICAg
ICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlRW50cnkuaCBcCiAgICAgICAgRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVTeXN0ZW1DYWxsYmFjay5jcHAgXAogICAgICAgIERlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlU3lzdGVtQ2FsbGJhY2suaCBcCisgICAgICAgRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVXcml0ZXJDYWxsYmFjay5jcHAgXAorICAgICAgIERlcml2
ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlV3JpdGVyQ2FsbGJhY2suaCBcCiAgICAgICAgRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZsYWdzLmNwcCBcCiAgICAgICAgRGVyaXZlZFNvdXJjZXMvV2Vi
Q29yZS9KU0ZsYWdzLmggXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNNZXRhZGF0
YS5jcHAgXApAQCAtMzA0OCwxMSArMzA1MiwxMyBAQCB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogICAg
ICAgIFdlYkNvcmUvZmlsZWFwaS9FbnRyeUFycmF5LmggXAogICAgICAgIFdlYkNvcmUvZmlsZWFw
aS9FbnRyeUNhbGxiYWNrLmggXAogICAgICAgIFdlYkNvcmUvZmlsZWFwaS9FcnJvckNhbGxiYWNr
LmggXAorICAgICAgIFdlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2suaCBcCiAgICAgICAgV2Vi
Q29yZS9maWxlYXBpL0ZpbGVFbnRyeS5jcHAgXAogICAgICAgIFdlYkNvcmUvZmlsZWFwaS9GaWxl
RW50cnkuaCBcCiAgICAgICAgV2ViQ29yZS9maWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFjay5oIFwK
ICAgICAgICBXZWJDb3JlL2ZpbGVhcGkvRmlsZVN5c3RlbUNhbGxiYWNrcy5jcHAgXAogICAgICAg
IFdlYkNvcmUvZmlsZWFwaS9GaWxlU3lzdGVtQ2FsbGJhY2tzLmggXAorICAgICAgIFdlYkNvcmUv
ZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaCBcCiAgICAgICAgV2ViQ29yZS9maWxlYXBpL0Zs
YWdzLmggXAogICAgICAgIFdlYkNvcmUvZmlsZWFwaS9Mb2NhbEZpbGVTeXN0ZW0uY3BwIFwKICAg
ICAgICBXZWJDb3JlL2ZpbGVhcGkvTG9jYWxGaWxlU3lzdGVtLmggXApkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRleCBjNzU5Nzk0NmFk
MGQ4OTk3NTEyYjg5ZjEyOGE2YjllZjdlNjIyMGE5Li4wMGI2NDU2ZTkxMjQ1OWUxMDI2MGEwZDVm
MmRiYWQxMDRkZDZmYTk2IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaQorKysgYi9X
ZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtOTYsNiArOTYsNyBAQAogICAgICAgICAgICAgJ2ZpbGVh
cGkvRW50cnlDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRXJyb3JDYWxsYmFj
ay5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZS5pZGwnLAorICAgICAgICAgICAgJ2Zp
bGVhcGkvRmlsZUNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlRW50cnku
aWRsJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVFcnJvci5pZGwnLAogICAgICAgICAgICAg
J2ZpbGVhcGkvRmlsZUV4Y2VwdGlvbi5pZGwnLApAQCAtMTA0LDYgKzEwNSw3IEBACiAgICAgICAg
ICAgICAnZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkv
RmlsZVN5c3RlbUNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVy
LmlkbCcsCisgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaWRsJywKICAg
ICAgICAgICAgICdmaWxlYXBpL0ZsYWdzLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9NZXRh
ZGF0YS5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvTWV0YWRhdGFDYWxsYmFjay5pZGwnLApA
QCAtMTQ0Niw2ICsxNDQ4LDcgQEAKICAgICAgICAgICAgICdmaWxlYXBpL0Vycm9yQ2FsbGJhY2su
aCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlLmNwcCcsCiAgICAgICAgICAgICAnZmlsZWFw
aS9GaWxlLmgnLAorICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmgnLAogICAgICAg
ICAgICAgJ2ZpbGVhcGkvRmlsZUVudHJ5LmNwcCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxl
RW50cnkuaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlRXJyb3IuaCcsCkBAIC0xNDY2LDYg
KzE0NjksNyBAQAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVRocmVhZFRhc2suaCcsCiAgICAg
ICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVyLmNwcCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9G
aWxlV3JpdGVyLmgnLAorICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmgn
LAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVdyaXRlckNsaWVudC5oJywKICAgICAgICAgICAg
ICdmaWxlYXBpL0ZsYWdzLmgnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvTG9jYWxGaWxlU3lzdGVt
LmgnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNvcmUvV2ViQ29yZS5w
cmkKaW5kZXggYTRjNjliMTBjMmEwZTY2MGNmNmZiZjcyNmFlM2YzOGUwNmNmMmE5Ny4uMjFhZGMy
YmU1ZGQ5YWJjZjg2OTkxYmQyZmEwNjg4ZWJiMWY1MzY2ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9X
ZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC0xNTgsMTIgKzE1OCwxNCBA
QCBJRExfQklORElOR1MgKz0gXAogICAgIGZpbGVhcGkvRW50cnlDYWxsYmFjay5pZGwgXAogICAg
IGZpbGVhcGkvRXJyb3JDYWxsYmFjay5pZGwgXAogICAgIGZpbGVhcGkvRmlsZS5pZGwgXAotICAg
IGZpbGVhcGkvRmlsZUxpc3QuaWRsIFwKLSAgICBmaWxlYXBpL0ZpbGVSZWFkZXIuaWRsIFwKLSAg
ICBmaWxlYXBpL0ZpbGVXcml0ZXIuaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVDYWxsYmFjay5pZGwg
XAogICAgIGZpbGVhcGkvRmlsZUVudHJ5LmlkbCBcCiAgICAgZmlsZWFwaS9GaWxlRXJyb3IuaWRs
IFwKKyAgICBmaWxlYXBpL0ZpbGVMaXN0LmlkbCBcCiAgICAgZmlsZWFwaS9GaWxlU3lzdGVtQ2Fs
bGJhY2suaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVSZWFkZXIuaWRsIFwKKyAgICBmaWxlYXBpL0Zp
bGVXcml0ZXIuaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5pZGwgXAogICAg
IGZpbGVhcGkvRmxhZ3MuaWRsIFwKICAgICBmaWxlYXBpL01ldGFkYXRhLmlkbCBcCiAgICAgZmls
ZWFwaS9NZXRhZGF0YUNhbGxiYWNrLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUu
cHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCBlYTZlOTAxNDVhNzYwNzFhZDYyYmZhMDUy
N2RjYTdlODk5MTk4NzBlLi4yMzEwYzNiYzA1NmFiZDIyMTViOGYxY2NjYTVkNmQ0YTRlZGEzMWRm
IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5w
cm8KQEAgLTI2MjEsNiArMjYyMSw3IEBAIGNvbnRhaW5zKERFRklORVMsIEVOQUJMRV9GSUxFX1NZ
U1RFTT0xKSB7CiAgICAgICAgIGZpbGVhcGkvRW50cnlBcnJheS5oIFwKICAgICAgICAgZmlsZWFw
aS9FbnRyeUNhbGxiYWNrLmggXAogICAgICAgICBmaWxlYXBpL0Vycm9yQ2FsbGJhY2suaCBcCisg
ICAgICAgIGZpbGVhcGkvRmlsZUNhbGxiYWNrLmggXAogICAgICAgICBmaWxlYXBpL0ZpbGVFbnRy
eS5oIFwKICAgICAgICAgZmlsZWFwaS9GaWxlU3lzdGVtQ2FsbGJhY2suaCBcCiAgICAgICAgIGZp
bGVhcGkvRmlsZVN5c3RlbUNhbGxiYWNrcy5oIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUu
dmNwcm9qCmluZGV4IDA0N2JkNDcyMjZkYTcwMTZkZWQ4NTI5OGQyOTYyZTE4NTYxYThhYWYuLjc4
YWY1MDMzOWQ3YWU0MDk3MjljZjA3MDU0NGE5OTIyYzU4OTA5MzIgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZj
cHJvai9XZWJDb3JlLnZjcHJvagpAQCAtNDgyMSw2ICs0ODIxLDYyIEBACiAJCQkJPg0KIAkJCTwv
RmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxv
YmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNGaWxlQ2FsbGJhY2suY3BwIg0KKwkJ
CQk+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWd8V2luMzIiDQor
CQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQorCQkJ
CQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZpZ3Vy
YXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iUmVsZWFzZXxXaW4z
MiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wN
CisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29u
ZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlOYW1lPSJEZWJ1Z19J
bnRlcm5hbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0K
KwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJ
CQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJCQlO
YW1lPSJEZWJ1Z19DYWlyb3xXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0K
KwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJ
CQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9u
DQorCQkJCQlOYW1lPSJSZWxlYXNlX0NhaXJvfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVp
bGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxl
clRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNv
bmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0FsbHxXaW4zMiINCisJCQkJCUV4Y2x1ZGVk
RnJvbUJ1aWxkPSJ0cnVlIg0KKwkJCQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NM
Q29tcGlsZXJUb29sIg0KKwkJCQkJLz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilc
b2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRmlsZUNhbGxiYWNrLmgiDQorCQkJ
CT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91
dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRmlsZUVycm9yLmNw
cCINCiAJCQkJPg0KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCkBAIC01MTE3LDYgKzUxNzMsNjIg
QEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iJChX
ZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0ZpbGVX
cml0ZXJDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQorCQkJ
CQlOYW1lPSJEZWJ1Z3xXaW4zMiINCisJCQkJCUV4Y2x1ZGVkRnJvbUJ1aWxkPSJ0cnVlIg0KKwkJ
CQkJPg0KKwkJCQkJPFRvb2wNCisJCQkJCQlOYW1lPSJWQ0NMQ29tcGlsZXJUb29sIg0KKwkJCQkJ
Lz4NCisJCQkJPC9GaWxlQ29uZmlndXJhdGlvbj4NCisJCQkJPEZpbGVDb25maWd1cmF0aW9uDQor
CQkJCQlOYW1lPSJSZWxlYXNlfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUi
DQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQor
CQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8RmlsZUNvbmZpZ3VyYXRp
b24NCisJCQkJCU5hbWU9IkRlYnVnX0ludGVybmFsfFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9t
QnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21w
aWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0KKwkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IkRlYnVnX0NhaXJvfFdpbjMyIg0KKwkJCQkJRXhj
bHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8VG9vbA0KKwkJCQkJCU5hbWU9
IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0ZpbGVDb25maWd1cmF0aW9uPg0K
KwkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCisJCQkJCU5hbWU9IlJlbGVhc2VfQ2Fpcm98V2luMzIi
DQorCQkJCQlFeGNsdWRlZEZyb21CdWlsZD0idHJ1ZSINCisJCQkJCT4NCisJCQkJCTxUb29sDQor
CQkJCQkJTmFtZT0iVkNDTENvbXBpbGVyVG9vbCINCisJCQkJCS8+DQorCQkJCTwvRmlsZUNvbmZp
Z3VyYXRpb24+DQorCQkJCTxGaWxlQ29uZmlndXJhdGlvbg0KKwkJCQkJTmFtZT0iRGVidWdfQWxs
fFdpbjMyIg0KKwkJCQkJRXhjbHVkZWRGcm9tQnVpbGQ9InRydWUiDQorCQkJCQk+DQorCQkJCQk8
VG9vbA0KKwkJCQkJCU5hbWU9IlZDQ0xDb21waWxlclRvb2wiDQorCQkJCQkvPg0KKwkJCQk8L0Zp
bGVDb25maWd1cmF0aW9uPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBh
dGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNc
SlNGaWxlV3JpdGVyQ2FsbGJhY2suaCINCisJCQkJPg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0K
IAkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlc
RGVyaXZlZFNvdXJjZXNcSlNGbGFncy5jcHAiDQogCQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0
aW9uDQpAQCAtMzcyMzMsNiArMzczNDUsMTAgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxG
aWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZmlsZWFwaVxGaWxlQ2FsbGJhY2suaCINCisJCQkJ
Pg0KKwkJCTwvRmlsZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGZpbGVhcGlc
RmlsZUVudHJ5LmNwcCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCkBAIC0zNzMxMyw2ICszNzQyOSwx
MCBAQAogCQkJCT4NCiAJCQk8L0ZpbGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIu
LlxmaWxlYXBpXEZpbGVXcml0ZXJDYWxsYmFjay5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJ
CTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iLi5cZmlsZWFwaVxGaWxlV3JpdGVyQ2xpZW50Lmgi
DQogCQkJCT4NCiAJCQk8L0ZpbGU+DQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3Qu
cGJ4cHJvagppbmRleCBhNTI0MzllYjk3YWQyMWQwZDIxNTAxYTQ1ZDVhN2RmZjE1YmEzYzhkLi40
OGM3NjA1NGUwZDMxNjIzOWNkOGJlNmJkZThkNTRlZDMwMzVlMzY3IDEwMDY0NAotLS0gYS9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMjM4MSw2ICsyMzgxLDEyIEBACiAJCTg1
RkYzMTVBMEFBRkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2ZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NUZGMzE1ODBBQUZCRkNCMDAzNzRG
MzggLyogRE9NS2V5Ym9hcmRFdmVudC5oICovOyB9OwogCQk4NUZGMzE1QjBBQUZCRkNCMDAzNzRG
MzggLyogRE9NS2V5Ym9hcmRFdmVudC5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDg1RkYzMTU5MEFBRkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2
ZW50Lm1tICovOyB9OwogCQk4NjI0M0QwMTExQkMzMUY3MDBDQzAwNkEgLyogSlNBcnJheUJ1ZmZl
clZpZXdIZWxwZXIuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDg2MjQzRDAwMTFCQzMxRjcwMENDMDA2QSAvKiBKU0FycmF5QnVmZmVyVmlld0hlbHBlci5o
ICovOyB9OworCQk4OTNDNDdBNzEyMzg5MDhCMDAyQjNEODYgLyogRmlsZUNhbGxiYWNrLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTNDNDdBNTEyMzg5
MDhCMDAyQjNEODYgLyogRmlsZUNhbGxiYWNrLmggKi87IH07CisJCTg5M0M0N0E4MTIzODkwOEIw
MDJCM0Q4NiAvKiBGaWxlV3JpdGVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5M0M0N0E2MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlV3Jp
dGVyQ2FsbGJhY2suaCAqLzsgfTsKKwkJODkzQzQ3QjcxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmls
ZUNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDg5M0M0N0I1MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5jcHAgKi87IH07
CisJCTg5M0M0N0I4MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODkzQzQ3QjYxMjM4QTA5OTAw
MkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmggKi87IH07CisJCTg5M0M0N0JCMTIzOEEwQTkwMDJC
M0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTNDNDdCOTEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxl
V3JpdGVyQ2FsbGJhY2suY3BwICovOyB9OworCQk4OTNDNDdCQzEyMzhBMEE5MDAyQjNEODYgLyog
SlNGaWxlV3JpdGVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDg5M0M0N0JBMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxs
YmFjay5oICovOyB9OwogCQk4OTg3ODU1MjEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0b3J5RW50
cnkuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODk4
Nzg1MzkxMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVjdG9yeUVudHJ5LmNwcCAqLzsgfTsKIAkJODk4
Nzg1NTMxMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVjdG9yeUVudHJ5LmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTg3ODUzQTEyMkNBMDY0MDAzQUFCREEg
LyogRGlyZWN0b3J5RW50cnkuaCAqLzsgfTsKIAkJODk4Nzg1NTQxMjJDQTA2NDAwM0FBQkRBIC8q
IERpcmVjdG9yeVJlYWRlci5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4OTg3ODUzQjEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0b3J5UmVhZGVyLmNw
cCAqLzsgfTsKQEAgLTgyNjYsNiArODI3MiwxMiBAQAogCQk4NUZGMzE1ODBBQUZCRkNCMDAzNzRG
MzggLyogRE9NS2V5Ym9hcmRFdmVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gRE9NS2V5Ym9hcmRFdmVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4NUZG
MzE1OTBBQUZCRkNCMDAzNzRGMzggLyogRE9NS2V5Ym9hcmRFdmVudC5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBET01LZXlib2FyZEV2ZW50Lm1tOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk4NjI0M0QwMDExQkMzMUY3MDBDQzAwNkEgLyogSlNBcnJh
eUJ1ZmZlclZpZXdIZWxwZXIuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNB
cnJheUJ1ZmZlclZpZXdIZWxwZXIuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODkz
QzQ3QTUxMjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBGaWxlQ2FsbGJhY2suaDsgcGF0aCA9IGZpbGVhcGkvRmlsZUNhbGxi
YWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg5M0M0N0E2MTIzODkwOEIwMDJC
M0Q4NiAvKiBGaWxlV3JpdGVyQ2FsbGJhY2suaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBu
YW1lID0gRmlsZVdyaXRlckNhbGxiYWNrLmg7IHBhdGggPSBmaWxlYXBpL0ZpbGVXcml0ZXJDYWxs
YmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4OTNDNDdCNTEyMzhBMDk5MDAy
QjNEODYgLyogSlNGaWxlQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gSlNGaWxlQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4OTNDNDdCNjEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJODkzQzQ3QjkxMjM4QTBBOTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRlckNh
bGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRmlsZVdy
aXRlckNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODkzQzQ3QkEx
MjM4QTBBOTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmlsZVdyaXRlckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTg5ODc4NTM5MTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3RvcnlFbnRy
eS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBEaXJlY3RvcnlFbnRy
eS5jcHA7IHBhdGggPSBmaWxlYXBpL0RpcmVjdG9yeUVudHJ5LmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODk4Nzg1M0ExMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVjdG9yeUVudHJ5
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IERpcmVjdG9yeUVudHJ5Lmg7IHBh
dGggPSBmaWxlYXBpL0RpcmVjdG9yeUVudHJ5Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTg5ODc4NTNCMTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3RvcnlSZWFkZXIuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRGlyZWN0b3J5UmVhZGVyLmNwcDsgcGF0
aCA9IGZpbGVhcGkvRGlyZWN0b3J5UmVhZGVyLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTEzODc4LDYgKzEzODkwLDggQEAKIAkJCQk4OTg3ODU5OTEyMkNBMkE3MDAzQUFCREEg
LyogSlNFcnJvckNhbGxiYWNrLmggKi8sCiAJCQkJQkMwMEYwMTAwRTBBMTg5NTAwRkQwNEUzIC8q
IEpTRmlsZS5jcHAgKi8sCiAJCQkJQkMwMEYwMTEwRTBBMTg5NTAwRkQwNEUzIC8qIEpTRmlsZS5o
ICovLAorCQkJCTg5M0M0N0I1MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5jcHAg
Ki8sCisJCQkJODkzQzQ3QjYxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmggKi8s
CiAJCQkJODk4Nzg1OUExMjJDQTJBNzAwM0FBQkRBIC8qIEpTRmlsZUVudHJ5LmNwcCAqLywKIAkJ
CQk4OTg3ODU5QjEyMkNBMkE3MDAzQUFCREEgLyogSlNGaWxlRW50cnkuaCAqLywKIAkJCQkyRTNC
QzBDODExN0QzRTA4MDBCOTQwOUEgLyogSlNGaWxlRXJyb3IuY3BwICovLApAQCAtMTM4OTQsNiAr
MTM5MDgsOCBAQAogCQkJCTg5ODc4NTlEMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU0ZpbGVTeXN0ZW1D
YWxsYmFjay5oICovLAogCQkJCTQ2REE4NDRCMTIyNEEwNzEwMDYwRDAwNiAvKiBKU0ZpbGVXcml0
ZXIuY3BwICovLAogCQkJCTQ2REE4NDRDMTIyNEEwNzEwMDYwRDAwNiAvKiBKU0ZpbGVXcml0ZXIu
aCAqLywKKwkJCQk4OTNDNDdCOTEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxlV3JpdGVyQ2FsbGJh
Y2suY3BwICovLAorCQkJCTg5M0M0N0JBMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJD
YWxsYmFjay5oICovLAogCQkJCTg5ODc4NTlFMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU0ZsYWdzLmNw
cCAqLywKIAkJCQk4OTg3ODU5RjEyMkNBMkE3MDAzQUFCREEgLyogSlNGbGFncy5oICovLAogCQkJ
CTg5ODc4NUEwMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU01ldGFkYXRhLmNwcCAqLywKQEAgLTE0Mzgw
LDYgKzE0Mzk2LDcgQEAKIAkJCQk4OTg3ODU0NzEyMkNBMDY0MDAzQUFCREEgLyogRXJyb3JDYWxs
YmFjay5oICovLAogCQkJCTk3NkQ2QzYxMTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlLmNwcCAqLywK
IAkJCQk5NzZENkM2MjEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZS5oICovLAorCQkJCTg5M0M0N0E1
MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2FsbGJhY2suaCAqLywKIAkJCQk4OTg3ODU0ODEyMkNB
MDY0MDAzQUFCREEgLyogRmlsZUVudHJ5LmNwcCAqLywKIAkJCQk4OTg3ODU0OTEyMkNBMDY0MDAz
QUFCREEgLyogRmlsZUVudHJ5LmggKi8sCiAJCQkJOTc2RDZDNjQxMjJCOEEzRDAwMUZEMUY3IC8q
IEZpbGVFcnJvci5oICovLApAQCAtMTQ0MDAsNiArMTQ0MTcsNyBAQAogCQkJCTk3NkQ2QzcwMTIy
QjhBM0QwMDFGRDFGNyAvKiBGaWxlVGhyZWFkVGFzay5oICovLAogCQkJCTk3NkQ2QzcxMTIyQjhB
M0QwMDFGRDFGNyAvKiBGaWxlV3JpdGVyLmNwcCAqLywKIAkJCQk5NzZENkM3MjEyMkI4QTNEMDAx
RkQxRjcgLyogRmlsZVdyaXRlci5oICovLAorCQkJCTg5M0M0N0E2MTIzODkwOEIwMDJCM0Q4NiAv
KiBGaWxlV3JpdGVyQ2FsbGJhY2suaCAqLywKIAkJCQk5NzZENkM3NDEyMkI4QTNEMDAxRkQxRjcg
LyogRmlsZVdyaXRlckNsaWVudC5oICovLAogCQkJCTg5ODc4NTREMTIyQ0EwNjQwMDNBQUJEQSAv
KiBGbGFncy5oICovLAogCQkJCTg5ODc4NTRFMTIyQ0EwNjQwMDNBQUJEQSAvKiBMb2NhbEZpbGVT
eXN0ZW0uY3BwICovLApAQCAtMjA0NTcsNiArMjA0NzUsMTAgQEAKIAkJCQk5N0JDODQ5QjEyMzcw
QTRCMDAwQzYxNjEgLyogSFRNTElucHV0U3RyZWFtLmggaW4gSGVhZGVycyAqLywKIAkJCQk5N0JD
ODRBNTEyMzcwREM4MDAwQzYxNjEgLyogVGV4dFZpZXdTb3VyY2VQYXJzZXIuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTk3QkM4NEI0MTIzNzExODAwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTg5M0M0N0E3MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2FsbGJhY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCTg5M0M0N0E4MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlV3Jp
dGVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTg5M0M0N0I4MTIzOEEwOTkwMDJCM0Q4
NiAvKiBKU0ZpbGVDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODkzQzQ3QkMxMjM4QTBB
OTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCSk7
CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTIy
OTIzLDYgKzIyOTQ1LDggQEAKIAkJCQk5N0JDODQ4MzEyMzZGRDkzMDAwQzYxNjEgLyogVGV4dERv
Y3VtZW50UGFyc2VyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTk3QkM4NEE0MTIzNzBEQzgwMDBD
NjE2MSAvKiBUZXh0Vmlld1NvdXJjZVBhcnNlci5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5N0JD
ODRCMzEyMzcxMTgwMDAwQzYxNjEgLyogVGV4dERvY3VtZW50LmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTg5M0M0N0I3MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5jcHAgaW4gU291
cmNlcyAqLywKKwkJCQk4OTNDNDdCQjEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxlV3JpdGVyQ2Fs
bGJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkpOwogCQkJcnVuT25seUZvckRlcGxveW1lbnRQ
b3N0cHJvY2Vzc2luZyA9IDA7CiAJCX07CmRpZmYgLS1naXQgYS9XZWJDb3JlL2ZpbGVhcGkvRmls
ZUNhbGxiYWNrLmggYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
NmY1Y2EzZDE0NTVlYmQ4MWJmZDlhMmUyZWJlOWJlODBlOGRkYjQ0ZgotLS0gL2Rldi9udWxsCisr
KyBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2suaApAQCAtMCwwICsxLDUxIEBACisvKgor
ICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICog
UmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5
cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBt
dXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1
bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRp
c3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9y
IHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNl
IG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhv
dXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMK
KyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBP
UiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRl
ZiBGaWxlQ2FsbGJhY2tfaAorI2RlZmluZSBGaWxlQ2FsbGJhY2tfaAorCisjaWYgRU5BQkxFKEZJ
TEVfU1lTVEVNKQorCisjaW5jbHVkZSAiRmlsZS5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVk
Lmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgRmlsZUNhbGxiYWNrIDogcHVibGlj
IFJlZkNvdW50ZWQ8RmlsZUNhbGxiYWNrPiB7CitwdWJsaWM6CisgICAgdmlydHVhbCB+RmlsZUNh
bGxiYWNrKCkgeyB9CisgICAgdmlydHVhbCBib29sIGhhbmRsZUV2ZW50KEZpbGUqKSA9IDA7Cit9
OworCit9IC8vIG5hbWVzcGFjZQorCisjZW5kaWYgLy8gRU5BQkxFKEZJTEVfU1lTVEVNKQorCisj
ZW5kaWYgLy8gRmlsZUNhbGxiYWNrX2gKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZmlsZWFwaS9GaWxl
Q2FsbGJhY2suaWRsIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5pZGwKbmV3IGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MC4uMGFiODE0ZmVkOWYwOTM0NzI5YTUyM2VjYmU5NTA0MjIzNTYzZDM3ZQotLS0gL2Rldi9udWxs
CisrKyBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2suaWRsCkBAIC0wLDAgKzEsMzggQEAK
Ky8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAg
ICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
IGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBs
aXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhl
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQor
ICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5j
LiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVu
ZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUg
d2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBT
T0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJV
VE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9X
TkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJ
TkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFH
RVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VC
U1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9G
SVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkK
KyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFC
SUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFS
SVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZF
TiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCitt
b2R1bGUgZmlsZWFwaSB7CisgICAgaW50ZXJmYWNlIFsKKyAgICAgICAgQ29uZGl0aW9uYWw9RklM
RV9TWVNURU0sCisgICAgICAgIENhbGxiYWNrCisgICAgXSBGaWxlQ2FsbGJhY2sgeworICAgICAg
ICBib29sZWFuIGhhbmRsZUV2ZW50KGluIEZpbGUgZmlsZSk7CisgICAgfTsKK30KZGlmZiAtLWdp
dCBhL1dlYkNvcmUvZmlsZWFwaS9GaWxlRW50cnkuY3BwIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVF
bnRyeS5jcHAKaW5kZXggZTJhNTgzY2M2OTQ3NTcwYzQ4OWI5OTUwZDAwNGIyODU3ZDMwNzNmZC4u
NDJhZDU5M2E0NTNlMTBlMjlmYzBhYjM4ZDY3N2I0NmQ3NDkzNTgxYyAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVFbnRyeS5jcHAKKysrIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVFbnRy
eS5jcHAKQEAgLTMzLDYgKzMzLDkgQEAKIAogI2lmIEVOQUJMRShGSUxFX1NZU1RFTSkKIAorI2lu
Y2x1ZGUgIkZpbGVDYWxsYmFjay5oIgorI2luY2x1ZGUgIkZpbGVXcml0ZXJDYWxsYmFjay5oIgor
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIEZpbGVFbnRyeTo6RmlsZUVudHJ5KERPTUZpbGVTeXN0
ZW0qIGZpbGVTeXN0ZW0sIGNvbnN0IFN0cmluZyYgZnVsbFBhdGgpCkBAIC00MCw2ICs0MywxOCBA
QCBGaWxlRW50cnk6OkZpbGVFbnRyeShET01GaWxlU3lzdGVtKiBmaWxlU3lzdGVtLCBjb25zdCBT
dHJpbmcmIGZ1bGxQYXRoKQogewogfQogCisjaWYgRU5BQkxFKEZJTEVfV1JJVEVSKQordm9pZCBG
aWxlRW50cnk6OmNyZWF0ZVdyaXRlcihQYXNzUmVmUHRyPEZpbGVXcml0ZXJDYWxsYmFjaz4sIFBh
c3NSZWZQdHI8RXJyb3JDYWxsYmFjaz4pCit7CisgICAgLy8gRklYTUU6IHRvIGJlIGltcGxlbWVu
dGVkLgorfQorI2VuZGlmCisKK3ZvaWQgRmlsZUVudHJ5OjpmaWxlKFBhc3NSZWZQdHI8RmlsZUNh
bGxiYWNrPiwgUGFzc1JlZlB0cjxFcnJvckNhbGxiYWNrPikKK3sKKyAgICAvLyBGSVhNRTogdG8g
YmUgaW1wbGVtZW50ZWQuCit9CisKIH0gLy8gbmFtZXNwYWNlCiAKICNlbmRpZiAvLyBFTkFCTEUo
RklMRV9TWVNURU0pCmRpZmYgLS1naXQgYS9XZWJDb3JlL2ZpbGVhcGkvRmlsZUVudHJ5LmggYi9X
ZWJDb3JlL2ZpbGVhcGkvRmlsZUVudHJ5LmgKaW5kZXggYWJjYzZiYjY2OWZmY2M1MGNiOTU0OWQ5
ODkwNjQxN2IwN2IxYTI2Ni4uOTVkZTMxY2ZhNzM4NmNlODBjYTc4NjNhMDg3OTYxZTE0ZTgxNGZh
ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9maWxlYXBpL0ZpbGVFbnRyeS5oCisrKyBiL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlRW50cnkuaApAQCAtMzgsNiArMzgsOCBAQAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBET01GaWxlU3lzdGVtOworY2xhc3MgRmlsZUNhbGxiYWNrOworY2xhc3MgRmls
ZVdyaXRlckNhbGxiYWNrOwogCiBjbGFzcyBGaWxlRW50cnkgOiBwdWJsaWMgRW50cnkgewogcHVi
bGljOgpAQCAtNDcsNiArNDksMTEgQEAgcHVibGljOgogICAgIH0KICAgICB2aXJ0dWFsIGJvb2wg
aXNGaWxlKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQogCisjaWYgRU5BQkxFKEZJTEVfV1JJVEVS
KQorICAgIHZvaWQgY3JlYXRlV3JpdGVyKFBhc3NSZWZQdHI8RmlsZVdyaXRlckNhbGxiYWNrPiwg
UGFzc1JlZlB0cjxFcnJvckNhbGxiYWNrPiA9IDApOworI2VuZGlmCisgICAgdm9pZCBmaWxlKFBh
c3NSZWZQdHI8RmlsZUNhbGxiYWNrPiwgUGFzc1JlZlB0cjxFcnJvckNhbGxiYWNrPiA9IDApOwor
CiBwcml2YXRlOgogICAgIEZpbGVFbnRyeShET01GaWxlU3lzdGVtKiBmaWxlU3lzdGVtLCBjb25z
dCBTdHJpbmcmIGZ1bGxQYXRoKTsKIH07CmRpZmYgLS1naXQgYS9XZWJDb3JlL2ZpbGVhcGkvRmls
ZUVudHJ5LmlkbCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlRW50cnkuaWRsCmluZGV4IGFmM2I4MDc1
YWUzNzUxZDU1MmZlMjgyNTI5ZTc1ZDFhZDUzMDdjNjIuLjQxYjlhOTE4YWZkZWZiMWRjMTk1M2M5
M2NjYzE3ZTk3MDM0OGMzMDQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZmlsZWFwaS9GaWxlRW50cnku
aWRsCisrKyBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlRW50cnkuaWRsCkBAIC0zNCw1ICszNCw5IEBA
IG1vZHVsZSBzdG9yYWdlIHsKICAgICAgICAgR2VuZXJhdGVOYXRpdmVDb252ZXJ0ZXIsCiAgICAg
ICAgIEdlbmVyYXRlVG9KUwogICAgIF0gRmlsZUVudHJ5IDogRW50cnkgeworI2lmIGRlZmluZWQo
RU5BQkxFX0ZJTEVfV1JJVEVSKSAmJiBFTkFCTEVfRklMRV9XUklURVIKKyAgICAgICAgdm9pZCBj
cmVhdGVXcml0ZXIoaW4gW0NhbGxiYWNrXSBGaWxlV3JpdGVyQ2FsbGJhY2sgc3VjY2Vzc0NhbGxi
YWNrLCBpbiBbT3B0aW9uYWwsIENhbGxiYWNrXSBFcnJvckNhbGxiYWNrIGVycm9yQ2FsbGJhY2sp
OworI2VuZGlmCisgICAgICAgIHZvaWQgZmlsZShpbiBbQ2FsbGJhY2tdIEZpbGVDYWxsYmFjayBz
dWNjZXNzQ2FsbGJhY2ssIGluIFtPcHRpb25hbCwgQ2FsbGJhY2tdIEVycm9yQ2FsbGJhY2sgZXJy
b3JDYWxsYmFjayk7CiAgICAgfTsKIH0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvZmlsZWFwaS9GaWxl
V3JpdGVyQ2FsbGJhY2suaCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi4zZjllNzQ2ZmE2ZTAwOThiNWY4YmZiMTZmNGRhMGQ3MDcxZTdmM2Y3Ci0tLSAv
ZGV2L251bGwKKysrIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5oCkBAIC0w
LDAgKzEsNTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1l
dDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
cgorICogaW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRl
ZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBv
ZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBi
ZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRo
aXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisg
KgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMg
QU5EIENPTlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBX
QVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVE
IFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJU
SUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZ
UklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBE
QVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4KKyAqLworCisjaWZuZGVmIEZpbGVXcml0ZXJDYWxsYmFja19oCisjZGVmaW5lIEZpbGVXcml0
ZXJDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoRklMRV9TWVNURU0pCisKKyNpbmNsdWRlIDx3dGYv
UmVmQ291bnRlZC5oPgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEZpbGVXcml0ZXI7
CisKK2NsYXNzIEZpbGVXcml0ZXJDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVkPEZpbGVXcml0
ZXJDYWxsYmFjaz4geworcHVibGljOgorICAgIHZpcnR1YWwgfkZpbGVXcml0ZXJDYWxsYmFjaygp
IHsgfQorICAgIHZpcnR1YWwgYm9vbCBoYW5kbGVFdmVudChGaWxlV3JpdGVyKikgPSAwOworfTsK
KworfSAvLyBuYW1lc3BhY2UKKworI2VuZGlmIC8vIEVOQUJMRShGSUxFX1NZU1RFTSkKKworI2Vu
ZGlmIC8vIEZpbGVXcml0ZXJDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2ZpbGVhcGkv
RmlsZVdyaXRlckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJh
Y2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmJhNzc4OTFmZGUzYjc3OGIyNDEyY2MxZjI2ZTUxMTdlNjU1Y2Jh
YzgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNr
LmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJ
bmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMg
YXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2Rl
IG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNv
cHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlh
bHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRoZXIg
dGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1
dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZlZCBm
cm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJt
aXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlSSUdI
VCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBU
SEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IK
KyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFM
TCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBB
TlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwg
T1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQg
VE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0Yg
VVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dF
VkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElO
IENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJ
R0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAq
IE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0Yg
U1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGZpbGVhcGkgeworICAgIGludGVyZmFjZSBbCisg
ICAgICAgIENvbmRpdGlvbmFsPUZJTEVfU1lTVEVNJkZJTEVfV1JJVEVSLAorICAgICAgICBDYWxs
YmFjaworICAgIF0gRmlsZVdyaXRlckNhbGxiYWNrIHsKKyAgICAgICAgYm9vbGVhbiBoYW5kbGVF
dmVudChpbiBGaWxlV3JpdGVyIGZpbGVXcml0ZXIpOworICAgIH07Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67117</attachid>
            <date>2010-09-09 16:47:46 -0700</date>
            <delta_ts>2010-09-09 17:17:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-45440-20100909164745.patch</filename>
            <type>text/plain</type>
            <size>26971</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CmluZGV4IDg4NWQ4MDE2MmU0M2VmZDM1MmZkM2ZjMTU5N2VmZTFlMWVkNTAyMTMuLmJhM2Mz
MDlkZTM5MjAwZDEzODYwZGRiNzFmNGI3NGJiOTIxZmRkM2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTk4LDcgKzE5
OCw2IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGZpbGVhcGkvRmlsZS5pZGwKICAgICBm
aWxlYXBpL0ZpbGVMaXN0LmlkbAogICAgIGZpbGVhcGkvRmlsZVJlYWRlci5pZGwKLSAgICBmaWxl
YXBpL0ZpbGVXcml0ZXIuaWRsCiAKICAgICBodG1sL0RhdGFHcmlkQ29sdW1uLmlkbAogICAgIGh0
bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmlkbApAQCAtMTU4NCw2ICsxNTgzLDcgQEAgaWYgKEVOQUJM
RV9GSUxFX1NZU1RFTSkKICAgICAgICAgZmlsZWFwaS9FbnRyeUFycmF5LmlkbAogICAgICAgICBm
aWxlYXBpL0VudHJ5Q2FsbGJhY2suaWRsCiAgICAgICAgIGZpbGVhcGkvRXJyb3JDYWxsYmFjay5p
ZGwKKyAgICAgICAgZmlsZWFwaS9GaWxlQ2FsbGJhY2suaWRsCiAgICAgICAgIGZpbGVhcGkvRmls
ZUVudHJ5LmlkbAogICAgICAgICBmaWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFjay5pZGwKICAgICAg
ICAgZmlsZWFwaS9GbGFncy5pZGwKQEAgLTE1OTIsNiArMTU5MiwxNiBAQCBpZiAoRU5BQkxFX0ZJ
TEVfU1lTVEVNKQogICAgICkKIEVORElGICgpCiAKK2lmIChFTkFCTEVfRklMRV9XUklURVIpCisg
ICAgTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRl
ci5jcHAKKyAgICApCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9JRExfRklMRVMKKyAgICAgICAg
ZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaWRsCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRl
ci5pZGwKKyAgICApCitFTkRJRiAoKQorCiBJRiAoRU5BQkxFX1NWRykKICAgICBMSVNUKEFQUEVO
RCBXZWJDb3JlX1NPVVJDRVMKICAgICAgICAgYmluZGluZ3MvanMvSlNTVkdFbGVtZW50SW5zdGFu
Y2VDdXN0b20uY3BwCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGNiNDEzODcyNDlhNDNiY2UzZjk5M2NhOGQ0NWFhMDhkNTYzNGU5MDMuLjJi
ZWI4ZTRkYmQzYjYwYTdiZDgxNjAwMWZiYzc3YmZhOTM4NzQ2ZWEgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIw
MTAtMDktMDkgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtGaWxlU3lzdGVtXSBBZGQg
RmlsZSBhbmQgRmlsZVdyaXRlciBhY2Nlc3NvciBtZXRob2RzIGluIEZpbGVFbnRyeQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU0NDAKKworICAgICAg
ICBBZGRpbmcgRmlsZUVudHJ5LmZpbGUoKSBhbmQgRmlsZUVudHJ5LmNyZWF0ZVdyaXRlKCkgbWV0
aG9kcyBpbiBGaWxlRW50cnkuCisgICAgICAgIGh0dHA6Ly9kZXYudzMub3JnLzIwMDkvZGFwL2Zp
bGUtc3lzdGVtL2ZpbGUtZGlyLXN5cy5odG1sI3RoZS1maWxlZW50cnktaW50ZXJmYWNlCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzOyB0aGlzIHBhdGNoIGRvZXNuJ3QgaGF2ZSBpbXBsZW1lbnRhdGlv
biB5ZXQuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291
cmNlcy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBHTlVt
YWtlZmlsZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS5w
cmk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2Vi
Q29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIGZpbGVhcGkvRmlsZUVudHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVFbnRyeTo6Y3JlYXRlV3JpdGVyKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpGaWxlRW50
cnk6OmZpbGUpOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVFbnRyeS5oOgorICAgICAg
ICAqIGZpbGVhcGkvRmlsZUVudHJ5LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVDYWxsYmFj
ay5oOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVDYWxsYmFjay5pZGw6IEFkZGVkLgor
ICAgICAgICAqIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAq
IGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbDogQWRkZWQuCisKIDIwMTAtMDktMDggIEFu
ZHkgRXN0ZXMgIDxhZXN0ZXNAYXBwbGUuY29tPgogCiAgICAgICAgIFJ1YmJlci1zdGFtcGVkIGJ5
IERhcmluIEFkbGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5jcHAgYi9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAppbmRleCA4MWY0MDcwMDFjOTYxYWM0YzYxNjIyYmI4
MGFhMTg5NjgwZWVmZThhLi43YTBjMmZkY2U3MTEyNTRhN2Y4ZWM4ZDA3NTM4YjcxNTY1NTk3OTM4
IDEwMDY0NAotLS0gYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcAorKysgYi9XZWJDb3JlL0Rl
cml2ZWRTb3VyY2VzLmNwcApAQCAtMTA1LDYgKzEwNSw3IEBACiAjaW5jbHVkZSAiSlNFdmVudEV4
Y2VwdGlvbi5jcHAiCiAjaW5jbHVkZSAiSlNFdmVudFNvdXJjZS5jcHAiCiAjaW5jbHVkZSAiSlNG
aWxlLmNwcCIKKyNpbmNsdWRlICJKU0ZpbGVDYWxsYmFjay5jcHAiCiAjaW5jbHVkZSAiSlNGaWxl
RW50cnkuY3BwIgogI2luY2x1ZGUgIkpTRmlsZUVycm9yLmNwcCIKICNpbmNsdWRlICJKU0ZpbGVF
eGNlcHRpb24uY3BwIgpAQCAtMTEzLDYgKzExNCw3IEBACiAjaW5jbHVkZSAiSlNGaWxlUmVhZGVy
U3luYy5jcHAiCiAjaW5jbHVkZSAiSlNGaWxlU3lzdGVtQ2FsbGJhY2suY3BwIgogI2luY2x1ZGUg
IkpTRmlsZVdyaXRlci5jcHAiCisjaW5jbHVkZSAiSlNGaWxlV3JpdGVyQ2FsbGJhY2suY3BwIgog
I2luY2x1ZGUgIkpTRmxhZ3MuY3BwIgogI2luY2x1ZGUgIkpTR2VvbG9jYXRpb24uY3BwIgogI2lu
Y2x1ZGUgIkpTR2VvcG9zaXRpb24uY3BwIgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IDZmZDFjZGVlMTZk
ZDliNWVkZmM0N2ViM2NlMGMzMWMyYTJlMzNmMjguLmMzN2VmYjM0ODFiYThjMDM2NjhiYTE5YTc4
MjhhYzEwMWU5ZDdjYzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQor
KysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTE1MSw2ICsxNTEsNyBAQCBET01f
Q0xBU1NFUyA9IFwKICAgICBFdmVudFNvdXJjZSBcCiAgICAgRXZlbnRUYXJnZXQgXAogICAgIEZp
bGUgXAorICAgIEZpbGVDYWxsYmFjayBcCiAgICAgRmlsZUVudHJ5IFwKICAgICBGaWxlRXhjZXB0
aW9uIFwKICAgICBGaWxlRXJyb3IgXApAQCAtMTU4LDYgKzE1OSw3IEBAIERPTV9DTEFTU0VTID0g
XAogICAgIEZpbGVSZWFkZXIgXAogICAgIEZpbGVSZWFkZXJTeW5jIFwKICAgICBGaWxlV3JpdGVy
IFwKKyAgICBGaWxlV3JpdGVyQ2FsbGJhY2sgXAogICAgIEZpbGVTeXN0ZW1DYWxsYmFjayBcCiAg
ICAgRmxhZ3MgXAogICAgIEdlb2xvY2F0aW9uIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvR05VbWFr
ZWZpbGUuYW0gYi9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCmluZGV4IDBmNTc0MTMyNjlhYmM0ZDNm
Y2U5Yzg3YWExNDI3OTAzZmQ1NTM4NjAuLjliMzgzYmQ5OTA4MzdkYmZjNjcwY2YxZjRlNTUxZGFk
NDBkZGIxMGQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KKysrIGIvV2ViQ29y
ZS9HTlVtYWtlZmlsZS5hbQpAQCAtMzAyMSw2ICszMDIxLDggQEAgd2ViY29yZV9idWlsdF9zb3Vy
Y2VzICs9IFwKICAgICAgICBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRW50cnlDYWxsYmFjay5o
IFwKICAgICAgICBEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRXJyb3JDYWxsYmFjay5jcHAgXAog
ICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNFcnJvckNhbGxiYWNrLmggXAorICAgICAg
IERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlQ2FsbGJhY2suY3BwIFwKKyAgICAgICBEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTRmlsZUNhbGxiYWNrLmggXAogICAgICAgIERlcml2ZWRTb3Vy
Y2VzL1dlYkNvcmUvSlNGaWxlRW50cnkuY3BwIFwKICAgICAgICBEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRmlsZUVudHJ5LmggXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxl
U3lzdGVtQ2FsbGJhY2suY3BwIFwKQEAgLTMwNDgsNiArMzA1MCw3IEBAIHdlYmNvcmVfc291cmNl
cyArPSBcCiAgICAgICAgV2ViQ29yZS9maWxlYXBpL0VudHJ5QXJyYXkuaCBcCiAgICAgICAgV2Vi
Q29yZS9maWxlYXBpL0VudHJ5Q2FsbGJhY2suaCBcCiAgICAgICAgV2ViQ29yZS9maWxlYXBpL0Vy
cm9yQ2FsbGJhY2suaCBcCisgICAgICAgV2ViQ29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5oIFwK
ICAgICAgICBXZWJDb3JlL2ZpbGVhcGkvRmlsZUVudHJ5LmNwcCBcCiAgICAgICAgV2ViQ29yZS9m
aWxlYXBpL0ZpbGVFbnRyeS5oIFwKICAgICAgICBXZWJDb3JlL2ZpbGVhcGkvRmlsZVN5c3RlbUNh
bGxiYWNrLmggXApAQCAtNDQ1MiwxMiArNDQ1NSwxNSBAQCB3ZWJjb3JlX2NwcGZsYWdzICs9IC1E
RU5BQkxFX0ZJTEVfV1JJVEVSPTEKIHdlYmNvcmVfYnVpbHRfc291cmNlcyArPSBcCiAJRGVyaXZl
ZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVXcml0ZXIuY3BwIFwKIAlEZXJpdmVkU291cmNlcy9XZWJD
b3JlL0pTRmlsZVdyaXRlci5oCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVXcml0ZXJD
YWxsYmFjay5jcHAgXAorCURlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlV3JpdGVyQ2FsbGJh
Y2suaAogCiB3ZWJjb3JlX3NvdXJjZXMgKz0gXAogCVdlYkNvcmUvZmlsZWFwaS9Bc3luY0ZpbGVX
cml0ZXIuaCBcCiAJV2ViQ29yZS9maWxlYXBpL0ZpbGVXcml0ZXJDbGllbnQuaCBcCiAJV2ViQ29y
ZS9maWxlYXBpL0ZpbGVXcml0ZXIuY3BwIFwKLQlXZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlci5o
CisJV2ViQ29yZS9maWxlYXBpL0ZpbGVXcml0ZXIuaCBcCisJV2ViQ29yZS9maWxlYXBpL0ZpbGVX
cml0ZXJDYWxsYmFjay5oCiAKIGVuZGlmICAjIEVORCBFTkFCTEVfRklMRV9XUklURVIKIApkaWZm
IC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmd5cGkgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQppbmRl
eCBjNzU5Nzk0NmFkMGQ4OTk3NTEyYjg5ZjEyOGE2YjllZjdlNjIyMGE5Li4wMGI2NDU2ZTkxMjQ1
OWUxMDI2MGEwZDVmMmRiYWQxMDRkZDZmYTk2IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUu
Z3lwaQorKysgYi9XZWJDb3JlL1dlYkNvcmUuZ3lwaQpAQCAtOTYsNiArOTYsNyBAQAogICAgICAg
ICAgICAgJ2ZpbGVhcGkvRW50cnlDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkv
RXJyb3JDYWxsYmFjay5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZS5pZGwnLAorICAg
ICAgICAgICAgJ2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFw
aS9GaWxlRW50cnkuaWRsJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVFcnJvci5pZGwnLAog
ICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZUV4Y2VwdGlvbi5pZGwnLApAQCAtMTA0LDYgKzEwNSw3
IEBACiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlUmVhZGVyU3luYy5pZGwnLAogICAgICAgICAg
ICAgJ2ZpbGVhcGkvRmlsZVN5c3RlbUNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFw
aS9GaWxlV3JpdGVyLmlkbCcsCisgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJh
Y2suaWRsJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZsYWdzLmlkbCcsCiAgICAgICAgICAgICAn
ZmlsZWFwaS9NZXRhZGF0YS5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvTWV0YWRhdGFDYWxs
YmFjay5pZGwnLApAQCAtMTQ0Niw2ICsxNDQ4LDcgQEAKICAgICAgICAgICAgICdmaWxlYXBpL0Vy
cm9yQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlLmNwcCcsCiAgICAgICAg
ICAgICAnZmlsZWFwaS9GaWxlLmgnLAorICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZUNhbGxiYWNr
LmgnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZUVudHJ5LmNwcCcsCiAgICAgICAgICAgICAn
ZmlsZWFwaS9GaWxlRW50cnkuaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlRXJyb3IuaCcs
CkBAIC0xNDY2LDYgKzE0NjksNyBAQAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVRocmVhZFRh
c2suaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVyLmNwcCcsCiAgICAgICAgICAg
ICAnZmlsZWFwaS9GaWxlV3JpdGVyLmgnLAorICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVdyaXRl
ckNhbGxiYWNrLmgnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZVdyaXRlckNsaWVudC5oJywK
ICAgICAgICAgICAgICdmaWxlYXBpL0ZsYWdzLmgnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvTG9j
YWxGaWxlU3lzdGVtLmgnLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnByaSBiL1dlYkNv
cmUvV2ViQ29yZS5wcmkKaW5kZXggYTRjNjliMTBjMmEwZTY2MGNmNmZiZjcyNmFlM2YzOGUwNmNm
MmE5Ny4uNDhiZDllZTUwOTU3NjE4MTM4MmEyZmZlOTZiYjA2OGYwYjk4YmIwMSAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9XZWJDb3JlLnByaQorKysgYi9XZWJDb3JlL1dlYkNvcmUucHJpCkBAIC0xNTgs
MTIgKzE1OCwxNCBAQCBJRExfQklORElOR1MgKz0gXAogICAgIGZpbGVhcGkvRW50cnlDYWxsYmFj
ay5pZGwgXAogICAgIGZpbGVhcGkvRXJyb3JDYWxsYmFjay5pZGwgXAogICAgIGZpbGVhcGkvRmls
ZS5pZGwgXAotICAgIGZpbGVhcGkvRmlsZUxpc3QuaWRsIFwKLSAgICBmaWxlYXBpL0ZpbGVSZWFk
ZXIuaWRsIFwKLSAgICBmaWxlYXBpL0ZpbGVXcml0ZXIuaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVD
YWxsYmFjay5pZGwgXAogICAgIGZpbGVhcGkvRmlsZUVudHJ5LmlkbCBcCiAgICAgZmlsZWFwaS9G
aWxlRXJyb3IuaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVMaXN0LmlkbCBcCisgICAgZmlsZWFwaS9G
aWxlUmVhZGVyLmlkbCBcCiAgICAgZmlsZWFwaS9GaWxlU3lzdGVtQ2FsbGJhY2suaWRsIFwKKyAg
ICBmaWxlYXBpL0ZpbGVXcml0ZXIuaWRsIFwKKyAgICBmaWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFj
ay5pZGwgXAogICAgIGZpbGVhcGkvRmxhZ3MuaWRsIFwKICAgICBmaWxlYXBpL01ldGFkYXRhLmlk
bCBcCiAgICAgZmlsZWFwaS9NZXRhZGF0YUNhbGxiYWNrLmlkbCBcCmRpZmYgLS1naXQgYS9XZWJD
b3JlL1dlYkNvcmUucHJvIGIvV2ViQ29yZS9XZWJDb3JlLnBybwppbmRleCBlYTZlOTAxNDVhNzYw
NzFhZDYyYmZhMDUyN2RjYTdlODk5MTk4NzBlLi5kNjNmMDQ2MWYwYWJjZjU3YmM2NzYzNWI2YzFi
NDBiNjdlYThhN2M0IDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUucHJvCisrKyBiL1dlYkNv
cmUvV2ViQ29yZS5wcm8KQEAgLTYyOSw3ICs2MjksNiBAQCBTT1VSQ0VTICs9IFwKICAgICBmaWxl
YXBpL0ZpbGVSZWFkZXJTeW5jLmNwcCBcCiAgICAgZmlsZWFwaS9GaWxlU3RyZWFtUHJveHkuY3Bw
IFwKICAgICBmaWxlYXBpL0ZpbGVUaHJlYWQuY3BwIFwKLSAgICBmaWxlYXBpL0ZpbGVXcml0ZXIu
Y3BwIFwKICAgICBmaWxlYXBpL1RocmVhZGFibGVCbG9iUmVnaXN0cnkuY3BwIFwKICAgICBoaXN0
b3J5L0JhY2tGb3J3YXJkQ29udHJvbGxlci5jcHAgXAogICAgIGhpc3RvcnkvQmFja0ZvcndhcmRM
aXN0SW1wbC5jcHAgXApAQCAtMTQwMSw3ICsxNDAwLDYgQEAgSEVBREVSUyArPSBcCiAgICAgZWRp
dGluZy9WaXNpYmxlU2VsZWN0aW9uLmggXAogICAgIGVkaXRpbmcvdmlzaWJsZV91bml0cy5oIFwK
ICAgICBlZGl0aW5nL1dyYXBDb250ZW50c0luRHVtbXlTcGFuQ29tbWFuZC5oIFwKLSAgICBmaWxl
YXBpL0FzeW5jRmlsZVdyaXRlci5oIFwKICAgICBmaWxlYXBpL0Jsb2IuaCBcCiAgICAgZmlsZWFw
aS9CbG9iQnVpbGRlci5oIFwKICAgICBmaWxlYXBpL0Jsb2JVUkwuaCBcCkBAIC0xNDE0LDggKzE0
MTIsNiBAQCBIRUFERVJTICs9IFwKICAgICBmaWxlYXBpL0ZpbGVTdHJlYW1Qcm94eS5oIFwKICAg
ICBmaWxlYXBpL0ZpbGVUaHJlYWQuaCBcCiAgICAgZmlsZWFwaS9GaWxlVGhyZWFkVGFzay5oIFwK
LSAgICBmaWxlYXBpL0ZpbGVXcml0ZXIuaCBcCi0gICAgZmlsZWFwaS9GaWxlV3JpdGVyQ2xpZW50
LmggXAogICAgIGhpc3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmggXAogICAgIGhpc3Rvcnkv
QmFja0ZvcndhcmRDb250cm9sbGVyQ2xpZW50LmggXAogICAgIGhpc3RvcnkvQmFja0ZvcndhcmRM
aXN0SW1wbC5oIFwKQEAgLTI2MjEsMTAgKzI2MTcsMTAgQEAgY29udGFpbnMoREVGSU5FUywgRU5B
QkxFX0ZJTEVfU1lTVEVNPTEpIHsKICAgICAgICAgZmlsZWFwaS9FbnRyeUFycmF5LmggXAogICAg
ICAgICBmaWxlYXBpL0VudHJ5Q2FsbGJhY2suaCBcCiAgICAgICAgIGZpbGVhcGkvRXJyb3JDYWxs
YmFjay5oIFwKKyAgICAgICAgZmlsZWFwaS9GaWxlQ2FsbGJhY2suaCBcCiAgICAgICAgIGZpbGVh
cGkvRmlsZUVudHJ5LmggXAogICAgICAgICBmaWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFjay5oIFwK
ICAgICAgICAgZmlsZWFwaS9GaWxlU3lzdGVtQ2FsbGJhY2tzLmggXAotICAgICAgICBmaWxlYXBp
L0ZpbGVXcml0ZXJDYWxsYmFjay5oIFwKICAgICAgICAgZmlsZWFwaS9GbGFncy5oIFwKICAgICAg
ICAgZmlsZWFwaS9Mb2NhbEZpbGVTeXN0ZW0uaCBcCiAgICAgICAgIGZpbGVhcGkvTWV0YWRhdGEu
aCBcCkBAIC0yNjQ1LDYgKzI2NDEsMTcgQEAgY29udGFpbnMoREVGSU5FUywgRU5BQkxFX0ZJTEVf
U1lTVEVNPTEpIHsKICAgICAgICAgcGxhdGZvcm0vQXN5bmNGaWxlU3lzdGVtLmNwcAogfQogCitj
b250YWlucyhERUZJTkVTLCBFTkFCTEVfRklMRV9XUklURVI9MSkgeworICAgIEhFQURFUlMgKz0g
XAorICAgICAgICBmaWxlYXBpL0FzeW5jRmlsZVdyaXRlci5oIFwKKyAgICAgICAgZmlsZWFwaS9G
aWxlV3JpdGVyLmggXAorICAgICAgICBmaWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5oIFwKKyAg
ICAgICAgZmlsZWFwaS9GaWxlV3JpdGVyQ2xpZW50LmgKKworICAgIFNPVVJDRVMgKz0gXAorICAg
ICAgICBmaWxlYXBpL0ZpbGVXcml0ZXIuY3BwCit9CisKIGNvbnRhaW5zKERFRklORVMsIEVOQUJM
RV9JQ09OREFUQUJBU0U9MSkgewogICAgIFNPVVJDRVMgKz0gXAogICAgICAgICBsb2FkZXIvaWNv
bi9JY29uRGF0YWJhc2UuY3BwIFwKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ov
V2ViQ29yZS52Y3Byb2ogYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dlYkNvcmUudmNwcm9qCmlu
ZGV4IDA0N2JkNDcyMjZkYTcwMTZkZWQ4NTI5OGQyOTYyZTE4NTYxYThhYWYuLjc2OWY2ZmQ3NjQ1
Y2E0OTBmZjgyYzg0OThmNDY4OTQyNzI4YmNjZDUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29y
ZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnZjcHJvai9XZWJD
b3JlLnZjcHJvagpAQCAtNDgyMSw2ICs0ODIxLDE0IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJ
CQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9IiQoV2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9q
ZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNGaWxlQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJ
PC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIp
XG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0ZpbGVDYWxsYmFjay5oIg0KKwkJ
CQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRP
dXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0ZpbGVFcnJvci5j
cHAiDQogCQkJCT4NCiAJCQkJPEZpbGVDb25maWd1cmF0aW9uDQpAQCAtNTExNyw2ICs1MTI1LDE0
IEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9IiQo
V2ViS2l0T3V0cHV0RGlyKVxvYmpcJChQcm9qZWN0TmFtZSlcRGVyaXZlZFNvdXJjZXNcSlNGaWxl
V3JpdGVyQ2FsbGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJ
CVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJp
dmVkU291cmNlc1xKU0ZpbGVXcml0ZXJDYWxsYmFjay5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0K
KwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFBy
b2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0ZsYWdzLmNwcCINCiAJCQkJPg0KIAkJCQk8Rmls
ZUNvbmZpZ3VyYXRpb24NCkBAIC0zNzIzMyw2ICszNzI0OSwxMCBAQAogCQkJCT4NCiAJCQk8L0Zp
bGU+DQogCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIuLlxmaWxlYXBpXEZpbGVDYWxsYmFj
ay5oIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQogCQkJCVJlbGF0aXZlUGF0aD0i
Li5cZmlsZWFwaVxGaWxlRW50cnkuY3BwIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KQEAgLTM3MzEz
LDYgKzM3MzMzLDEwIEBACiAJCQkJPg0KIAkJCTwvRmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxh
dGl2ZVBhdGg9Ii4uXGZpbGVhcGlcRmlsZVdyaXRlckNhbGxiYWNrLmgiDQorCQkJCT4NCisJCQk8
L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxmaWxlYXBpXEZpbGVXcml0
ZXJDbGllbnQuaCINCiAJCQkJPg0KIAkJCTwvRmlsZT4NCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXBy
b2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGE1MjQzOWViOTdhZDIxZDBkMjE1MDFhNDVkNWE3ZGZm
MTViYTNjOGQuLjQ4Yzc2MDU0ZTBkMzE2MjM5Y2Q4YmU2YmRlOGQ1NGVkMzAzNWUzNjcgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1dl
YkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC0yMzgxLDYgKzIzODEs
MTIgQEAKIAkJODVGRjMxNUEwQUFGQkZDQjAwMzc0RjM4IC8qIERPTUtleWJvYXJkRXZlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg1RkYzMTU4MEFB
RkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2ZW50LmggKi87IH07CiAJCTg1RkYzMTVCMEFB
RkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2ZW50Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODVGRjMxNTkwQUFGQkZDQjAwMzc0RjM4IC8qIERP
TUtleWJvYXJkRXZlbnQubW0gKi87IH07CiAJCTg2MjQzRDAxMTFCQzMxRjcwMENDMDA2QSAvKiBK
U0FycmF5QnVmZmVyVmlld0hlbHBlci5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODYyNDNEMDAxMUJDMzFGNzAwQ0MwMDZBIC8qIEpTQXJyYXlCdWZmZXJW
aWV3SGVscGVyLmggKi87IH07CisJCTg5M0M0N0E3MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2Fs
bGJhY2suaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5
M0M0N0E1MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2FsbGJhY2suaCAqLzsgfTsKKwkJODkzQzQ3
QTgxMjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVXcml0ZXJDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODkzQzQ3QTYxMjM4OTA4QjAwMkIzRDg2
IC8qIEZpbGVXcml0ZXJDYWxsYmFjay5oICovOyB9OworCQk4OTNDNDdCNzEyMzhBMDk5MDAyQjNE
ODYgLyogSlNGaWxlQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gODkzQzQ3QjUxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNr
LmNwcCAqLzsgfTsKKwkJODkzQzQ3QjgxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNr
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTNDNDdC
NjEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2FsbGJhY2suaCAqLzsgfTsKKwkJODkzQzQ3QkIx
MjM4QTBBOTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5M0M0N0I5MTIzOEEwQTkwMDJCM0Q4
NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5jcHAgKi87IH07CisJCTg5M0M0N0JDMTIzOEEwQTkw
MDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODkzQzQ3QkExMjM4QTBBOTAwMkIzRDg2IC8qIEpTRmls
ZVdyaXRlckNhbGxiYWNrLmggKi87IH07CiAJCTg5ODc4NTUyMTIyQ0EwNjQwMDNBQUJEQSAvKiBE
aXJlY3RvcnlFbnRyeS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSA4OTg3ODUzOTEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0b3J5RW50cnkuY3BwICov
OyB9OwogCQk4OTg3ODU1MzEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0b3J5RW50cnkuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5ODc4NTNBMTIyQ0Ew
NjQwMDNBQUJEQSAvKiBEaXJlY3RvcnlFbnRyeS5oICovOyB9OwogCQk4OTg3ODU1NDEyMkNBMDY0
MDAzQUFCREEgLyogRGlyZWN0b3J5UmVhZGVyLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5ODc4NTNCMTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3Rv
cnlSZWFkZXIuY3BwICovOyB9OwpAQCAtODI2Niw2ICs4MjcyLDEyIEBACiAJCTg1RkYzMTU4MEFB
RkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2ZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBET01LZXlib2FyZEV2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTg1RkYzMTU5MEFBRkJGQ0IwMDM3NEYzOCAvKiBET01LZXlib2FyZEV2ZW50Lm1tICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IERPTUtleWJvYXJkRXZlbnQu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg2MjQzRDAwMTFCQzMxRjcwMENDMDA2
QSAvKiBKU0FycmF5QnVmZmVyVmlld0hlbHBlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBKU0FycmF5QnVmZmVyVmlld0hlbHBlci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQk4OTNDNDdBNTEyMzg5MDhCMDAyQjNEODYgLyogRmlsZUNhbGxiYWNrLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEZpbGVDYWxsYmFjay5oOyBwYXRoID0gZmlsZWFw
aS9GaWxlQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODkzQzQ3QTYx
MjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVXcml0ZXJDYWxsYmFjay5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IG5hbWUgPSBGaWxlV3JpdGVyQ2FsbGJhY2suaDsgcGF0aCA9IGZpbGVhcGkvRmls
ZVdyaXRlckNhbGxiYWNrLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg5M0M0N0I1
MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBKU0ZpbGVDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTg5M0M0N0I2MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZpbGVDYWxsYmFjay5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4OTNDNDdCOTEyMzhBMEE5MDAyQjNEODYgLyogSlNG
aWxlV3JpdGVyQ2FsbGJhY2suY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gSlNGaWxlV3JpdGVyQ2FsbGJhY2suY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQk4OTNDNDdCQTEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxlV3JpdGVyQ2FsbGJhY2suaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gSlNGaWxlV3JpdGVyQ2FsbGJhY2suaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODk4Nzg1MzkxMjJDQTA2NDAwM0FBQkRBIC8qIERp
cmVjdG9yeUVudHJ5LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERp
cmVjdG9yeUVudHJ5LmNwcDsgcGF0aCA9IGZpbGVhcGkvRGlyZWN0b3J5RW50cnkuY3BwOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk4OTg3ODUzQTEyMkNBMDY0MDAzQUFCREEgLyogRGly
ZWN0b3J5RW50cnkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRGlyZWN0b3J5
RW50cnkuaDsgcGF0aCA9IGZpbGVhcGkvRGlyZWN0b3J5RW50cnkuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJODk4Nzg1M0IxMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVjdG9yeVJlYWRl
ci5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBEaXJlY3RvcnlSZWFk
ZXIuY3BwOyBwYXRoID0gZmlsZWFwaS9EaXJlY3RvcnlSZWFkZXIuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwpAQCAtMTM4NzgsNiArMTM4OTAsOCBAQAogCQkJCTg5ODc4NTk5MTIyQ0Ey
QTcwMDNBQUJEQSAvKiBKU0Vycm9yQ2FsbGJhY2suaCAqLywKIAkJCQlCQzAwRjAxMDBFMEExODk1
MDBGRDA0RTMgLyogSlNGaWxlLmNwcCAqLywKIAkJCQlCQzAwRjAxMTBFMEExODk1MDBGRDA0RTMg
LyogSlNGaWxlLmggKi8sCisJCQkJODkzQzQ3QjUxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNh
bGxiYWNrLmNwcCAqLywKKwkJCQk4OTNDNDdCNjEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2Fs
bGJhY2suaCAqLywKIAkJCQk4OTg3ODU5QTEyMkNBMkE3MDAzQUFCREEgLyogSlNGaWxlRW50cnku
Y3BwICovLAogCQkJCTg5ODc4NTlCMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU0ZpbGVFbnRyeS5oICov
LAogCQkJCTJFM0JDMEM4MTE3RDNFMDgwMEI5NDA5QSAvKiBKU0ZpbGVFcnJvci5jcHAgKi8sCkBA
IC0xMzg5NCw2ICsxMzkwOCw4IEBACiAJCQkJODk4Nzg1OUQxMjJDQTJBNzAwM0FBQkRBIC8qIEpT
RmlsZVN5c3RlbUNhbGxiYWNrLmggKi8sCiAJCQkJNDZEQTg0NEIxMjI0QTA3MTAwNjBEMDA2IC8q
IEpTRmlsZVdyaXRlci5jcHAgKi8sCiAJCQkJNDZEQTg0NEMxMjI0QTA3MTAwNjBEMDA2IC8qIEpT
RmlsZVdyaXRlci5oICovLAorCQkJCTg5M0M0N0I5MTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVX
cml0ZXJDYWxsYmFjay5jcHAgKi8sCisJCQkJODkzQzQ3QkExMjM4QTBBOTAwMkIzRDg2IC8qIEpT
RmlsZVdyaXRlckNhbGxiYWNrLmggKi8sCiAJCQkJODk4Nzg1OUUxMjJDQTJBNzAwM0FBQkRBIC8q
IEpTRmxhZ3MuY3BwICovLAogCQkJCTg5ODc4NTlGMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU0ZsYWdz
LmggKi8sCiAJCQkJODk4Nzg1QTAxMjJDQTJBNzAwM0FBQkRBIC8qIEpTTWV0YWRhdGEuY3BwICov
LApAQCAtMTQzODAsNiArMTQzOTYsNyBAQAogCQkJCTg5ODc4NTQ3MTIyQ0EwNjQwMDNBQUJEQSAv
KiBFcnJvckNhbGxiYWNrLmggKi8sCiAJCQkJOTc2RDZDNjExMjJCOEEzRDAwMUZEMUY3IC8qIEZp
bGUuY3BwICovLAogCQkJCTk3NkQ2QzYyMTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlLmggKi8sCisJ
CQkJODkzQzQ3QTUxMjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVDYWxsYmFjay5oICovLAogCQkJCTg5
ODc4NTQ4MTIyQ0EwNjQwMDNBQUJEQSAvKiBGaWxlRW50cnkuY3BwICovLAogCQkJCTg5ODc4NTQ5
MTIyQ0EwNjQwMDNBQUJEQSAvKiBGaWxlRW50cnkuaCAqLywKIAkJCQk5NzZENkM2NDEyMkI4QTNE
MDAxRkQxRjcgLyogRmlsZUVycm9yLmggKi8sCkBAIC0xNDQwMCw2ICsxNDQxNyw3IEBACiAJCQkJ
OTc2RDZDNzAxMjJCOEEzRDAwMUZEMUY3IC8qIEZpbGVUaHJlYWRUYXNrLmggKi8sCiAJCQkJOTc2
RDZDNzExMjJCOEEzRDAwMUZEMUY3IC8qIEZpbGVXcml0ZXIuY3BwICovLAogCQkJCTk3NkQ2Qzcy
MTIyQjhBM0QwMDFGRDFGNyAvKiBGaWxlV3JpdGVyLmggKi8sCisJCQkJODkzQzQ3QTYxMjM4OTA4
QjAwMkIzRDg2IC8qIEZpbGVXcml0ZXJDYWxsYmFjay5oICovLAogCQkJCTk3NkQ2Qzc0MTIyQjhB
M0QwMDFGRDFGNyAvKiBGaWxlV3JpdGVyQ2xpZW50LmggKi8sCiAJCQkJODk4Nzg1NEQxMjJDQTA2
NDAwM0FBQkRBIC8qIEZsYWdzLmggKi8sCiAJCQkJODk4Nzg1NEUxMjJDQTA2NDAwM0FBQkRBIC8q
IExvY2FsRmlsZVN5c3RlbS5jcHAgKi8sCkBAIC0yMDQ1Nyw2ICsyMDQ3NSwxMCBAQAogCQkJCTk3
QkM4NDlCMTIzNzBBNEIwMDBDNjE2MSAvKiBIVE1MSW5wdXRTdHJlYW0uaCBpbiBIZWFkZXJzICov
LAogCQkJCTk3QkM4NEE1MTIzNzBEQzgwMDBDNjE2MSAvKiBUZXh0Vmlld1NvdXJjZVBhcnNlci5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCQzg0QjQxMjM3MTE4MDAwMEM2MTYxIC8qIFRleHREb2N1
bWVudC5oIGluIEhlYWRlcnMgKi8sCisJCQkJODkzQzQ3QTcxMjM4OTA4QjAwMkIzRDg2IC8qIEZp
bGVDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODkzQzQ3QTgxMjM4OTA4QjAwMkIzRDg2
IC8qIEZpbGVXcml0ZXJDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODkzQzQ3QjgxMjM4
QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKKwkJCQk4OTND
NDdCQzEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxlV3JpdGVyQ2FsbGJhY2suaCBpbiBIZWFkZXJz
ICovLAogCQkJKTsKIAkJCXJ1bk9ubHlGb3JEZXBsb3ltZW50UG9zdHByb2Nlc3NpbmcgPSAwOwog
CQl9OwpAQCAtMjI5MjMsNiArMjI5NDUsOCBAQAogCQkJCTk3QkM4NDgzMTIzNkZEOTMwMDBDNjE2
MSAvKiBUZXh0RG9jdW1lbnRQYXJzZXIuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTdCQzg0QTQx
MjM3MERDODAwMEM2MTYxIC8qIFRleHRWaWV3U291cmNlUGFyc2VyLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTk3QkM4NEIzMTIzNzExODAwMDBDNjE2MSAvKiBUZXh0RG9jdW1lbnQuY3BwIGluIFNv
dXJjZXMgKi8sCisJCQkJODkzQzQ3QjcxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNr
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTg5M0M0N0JCMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0Zp
bGVXcml0ZXJDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9y
RGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlQ2FsbGJhY2suaCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2suaApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwLi42ZjVjYTNkMTQ1NWViZDgxYmZkOWEyZTJlYmU5YmU4MGU4ZGRiNDRmCi0tLSAv
ZGV2L251bGwKKysrIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5oCkBAIC0wLDAgKzEs
NTEgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAq
CisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhl
IGFib3ZlIGNvcHlyaWdodAorICogbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJp
bmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICog
aW4gdGhlIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
IHRoZQorICogZGlzdHJpYnV0aW9uLgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29n
bGUgSW5jLiBub3IgdGhlIG5hbWVzIG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2Vk
IHRvIGVuZG9yc2Ugb3IgcHJvbW90ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29m
dHdhcmUgd2l0aG91dCBzcGVjaWZpYyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUworICogIkFTIElTIiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFS
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQK
KyAqIE9XTkVSIE9SIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLAorICogU1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBP
UiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkKKyAqIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjaWZuZGVmIEZpbGVDYWxsYmFja19oCisjZGVmaW5lIEZpbGVDYWxsYmFja19oCisKKyNp
ZiBFTkFCTEUoRklMRV9TWVNURU0pCisKKyNpbmNsdWRlICJGaWxlLmgiCisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlQ2FsbGJh
Y2sgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0
dWFsIH5GaWxlQ2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoRmls
ZSopID0gMDsKK307CisKK30gLy8gbmFtZXNwYWNlCisKKyNlbmRpZiAvLyBFTkFCTEUoRklMRV9T
WVNURU0pCisKKyNlbmRpZiAvLyBGaWxlQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9m
aWxlYXBpL0ZpbGVDYWxsYmFjay5pZGwgYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmlk
bApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4wYWI4MTRmZWQ5ZjA5MzQ3MjlhNTIzZWNiZTk1MDQyMjM1NjNkMzdlCi0t
LSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5pZGwKQEAgLTAs
MCArMSwzOCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0
OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
CisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9m
IEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJl
IHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhp
cyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBB
TkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJ
Q1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlS
SUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERB
VEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgorICovCisKK21vZHVsZSBmaWxlYXBpIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25k
aXRpb25hbD1GSUxFX1NZU1RFTSwKKyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEZpbGVDYWxsYmFj
ayB7CisgICAgICAgIGJvb2xlYW4gaGFuZGxlRXZlbnQoaW4gRmlsZSBmaWxlKTsKKyAgICB9Owor
fQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9maWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5oIGIvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1ZjRkMzdkOTg4
MGNhYzRkNzJiYjY5Y2Q2MDFkYzZlMWY3MWEyMDYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3Jl
L2ZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmgKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRmls
ZVdyaXRlckNhbGxiYWNrX2gKKyNkZWZpbmUgRmlsZVdyaXRlckNhbGxiYWNrX2gKKworI2lmIEVO
QUJMRShGSUxFX1NZU1RFTSkgJiYgRU5BQkxFKEZJTEVfV1JJVEVSKQorCisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlV3JpdGVy
OworCitjbGFzcyBGaWxlV3JpdGVyQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlV3Jp
dGVyQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlV3JpdGVyQ2FsbGJhY2so
KSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoRmlsZVdyaXRlciopID0gMDsKK307
CisKK30gLy8gbmFtZXNwYWNlCisKKyNlbmRpZiAvLyBFTkFCTEUoRklMRV9TWVNURU0pICYmIEVO
QUJMRShGSUxFX1dSSVRFUikKKworI2VuZGlmIC8vIEZpbGVXcml0ZXJDYWxsYmFja19oCmRpZmYg
LS1naXQgYS9XZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUv
ZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJhNzc4OTFmZGUzYjc3
OGIyNDEyY2MxZjI2ZTUxMTdlNjU1Y2JhYzgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2Zp
bGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29w
eXJpZ2h0IChDKSAyMDEwIEdvb2dsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICog
UmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBv
ciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0
aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0
cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQK
KyAqIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJl
cHJvZHVjZSB0aGUgYWJvdmUKKyAqIGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1
dGlvbi4KKyAqICAgICAqIE5laXRoZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBu
YW1lcyBvZiBpdHMKKyAqIGNvbnRyaWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHBy
b21vdGUgcHJvZHVjdHMgZGVyaXZlZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3Bl
Y2lmaWMgcHJpb3Igd3JpdHRlbiBwZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMg
UFJPVklERUQgQlkgVEhFIENPUFlSSUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJB
UyBJUyIgQU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBC
VVQgTk9UCisgKiBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5U
QUJJTElUWSBBTkQgRklUTkVTUyBGT1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVND
TEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwK
KyAqIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QKKyAqIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkg
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGZpbGVh
cGkgeworICAgIGludGVyZmFjZSBbCisgICAgICAgIENvbmRpdGlvbmFsPUZJTEVfU1lTVEVNJkZJ
TEVfV1JJVEVSLAorICAgICAgICBDYWxsYmFjaworICAgIF0gRmlsZVdyaXRlckNhbGxiYWNrIHsK
KyAgICAgICAgYm9vbGVhbiBoYW5kbGVFdmVudChpbiBGaWxlV3JpdGVyIGZpbGVXcml0ZXIpOwor
ICAgIH07Cit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67122</attachid>
            <date>2010-09-09 17:17:51 -0700</date>
            <delta_ts>2010-09-09 18:21:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-45440-20100909171750.patch</filename>
            <type>text/plain</type>
            <size>27121</size>
            <attacher name="Kinuko Yasuda">kinuko</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ01ha2VMaXN0cy50eHQgYi9XZWJDb3JlL0NNYWtlTGlzdHMu
dHh0CmluZGV4IGI1MTBjNGZlNWE4ZjcyOGY3NDhjNmJlNGQzMWY3ODRkYmE0ZTM0ODEuLjRmYjNj
MGEzMmI3MDgzZTRlNTFlNzZiZDgyYjQ3ZTJiMmY0NWVmNmUgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
Q01ha2VMaXN0cy50eHQKKysrIGIvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dApAQCAtMTk4LDcgKzE5
OCw2IEBAIFNFVChXZWJDb3JlX0lETF9GSUxFUwogICAgIGZpbGVhcGkvRmlsZS5pZGwKICAgICBm
aWxlYXBpL0ZpbGVMaXN0LmlkbAogICAgIGZpbGVhcGkvRmlsZVJlYWRlci5pZGwKLSAgICBmaWxl
YXBpL0ZpbGVXcml0ZXIuaWRsCiAKICAgICBodG1sL0RhdGFHcmlkQ29sdW1uLmlkbAogICAgIGh0
bWwvRGF0YUdyaWRDb2x1bW5MaXN0LmlkbApAQCAtMTU4Niw2ICsxNTg1LDcgQEAgaWYgKEVOQUJM
RV9GSUxFX1NZU1RFTSkKICAgICAgICAgZmlsZWFwaS9FbnRyeUFycmF5LmlkbAogICAgICAgICBm
aWxlYXBpL0VudHJ5Q2FsbGJhY2suaWRsCiAgICAgICAgIGZpbGVhcGkvRXJyb3JDYWxsYmFjay5p
ZGwKKyAgICAgICAgZmlsZWFwaS9GaWxlQ2FsbGJhY2suaWRsCiAgICAgICAgIGZpbGVhcGkvRmls
ZUVudHJ5LmlkbAogICAgICAgICBmaWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFjay5pZGwKICAgICAg
ICAgZmlsZWFwaS9GbGFncy5pZGwKQEAgLTE1OTQsNiArMTU5NCwxNiBAQCBpZiAoRU5BQkxFX0ZJ
TEVfU1lTVEVNKQogICAgICkKIEVORElGICgpCiAKK2lmIChFTkFCTEVfRklMRV9XUklURVIpCisg
ICAgTElTVChBUFBFTkQgV2ViQ29yZV9TT1VSQ0VTCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRl
ci5jcHAKKyAgICApCisgICAgTElTVChBUFBFTkQgV2ViQ29yZV9JRExfRklMRVMKKyAgICAgICAg
ZmlsZWFwaS9GaWxlV3JpdGVyQ2FsbGJhY2suaWRsCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRl
ci5pZGwKKyAgICApCitFTkRJRiAoKQorCiBJRiAoRU5BQkxFX1NWRykKICAgICBMSVNUKEFQUEVO
RCBXZWJDb3JlX1NPVVJDRVMKICAgICAgICAgYmluZGluZ3MvanMvSlNTVkdFbGVtZW50SW5zdGFu
Y2VDdXN0b20uY3BwCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IDIzYWE2NDZkZTIyNDExNDYwMjc5MWRiZDk1ODBlZmExZjZmOWQ4ZDAuLmMz
NWRkODM3MzYyZTI3ZjEwNzlmNDM3MjU3NTlkZjA3MzkxODg3NjggMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzQgQEAKKzIw
MTAtMDktMDkgIEtpbnVrbyBZYXN1ZGEgIDxraW51a29AY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtGaWxlU3lzdGVtXSBBZGQg
RmlsZSBhbmQgRmlsZVdyaXRlciBhY2Nlc3NvciBtZXRob2RzIGluIEZpbGVFbnRyeQorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU0NDAKKworICAgICAg
ICBBZGRpbmcgRmlsZUVudHJ5LmZpbGUoKSBhbmQgRmlsZUVudHJ5LmNyZWF0ZVdyaXRlKCkgbWV0
aG9kcyBpbiBGaWxlRW50cnkuCisgICAgICAgIGh0dHA6Ly9kZXYudzMub3JnLzIwMDkvZGFwL2Zp
bGUtc3lzdGVtL2ZpbGUtZGlyLXN5cy5odG1sI3RoZS1maWxlZW50cnktaW50ZXJmYWNlCisKKyAg
ICAgICAgTm8gbmV3IHRlc3RzOyB0aGlzIHBhdGNoIGRvZXNuJ3QgaGF2ZSBpbXBsZW1lbnRhdGlv
biB5ZXQuCisKKyAgICAgICAgKiBDTWFrZUxpc3RzLnR4dDoKKyAgICAgICAgKiBEZXJpdmVkU291
cmNlcy5jcHA6CisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZToKKyAgICAgICAgKiBHTlVt
YWtlZmlsZS5hbToKKyAgICAgICAgKiBXZWJDb3JlLmd5cGk6CisgICAgICAgICogV2ViQ29yZS5w
cmk6CisgICAgICAgICogV2ViQ29yZS5wcm86CisgICAgICAgICogV2ViQ29yZS52Y3Byb2ovV2Vi
Q29yZS52Y3Byb2o6CisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
OgorICAgICAgICAqIGZpbGVhcGkvRmlsZUVudHJ5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZp
bGVFbnRyeTo6Y3JlYXRlV3JpdGVyKTogQWRkZWQuCisgICAgICAgIChXZWJDb3JlOjpGaWxlRW50
cnk6OmZpbGUpOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVFbnRyeS5oOgorICAgICAg
ICAqIGZpbGVhcGkvRmlsZUVudHJ5LmlkbDoKKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVDYWxsYmFj
ay5oOiBBZGRlZC4KKyAgICAgICAgKiBmaWxlYXBpL0ZpbGVDYWxsYmFjay5pZGw6IEFkZGVkLgor
ICAgICAgICAqIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmg6IEFkZGVkLgorICAgICAgICAq
IGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbDogQWRkZWQuCisKIDIwMTAtMDktMDkgIENo
cmlzIFJvZ2VycyAgPGNyb2dlcnNAZ29vZ2xlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBL
ZW5uZXRoIFJ1c3NlbGwuCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLmNwcCBi
L1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCmluZGV4IDgxZjQwNzAwMWM5NjFhYzRjNjE2MjJi
YjgwYWExODk2ODBlZWZlOGEuLjdhMGMyZmRjZTcxMTI1NGE3ZjhlYzhkMDc1MzhiNzE1NjU1OTc5
MzggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMuY3BwCisrKyBiL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMuY3BwCkBAIC0xMDUsNiArMTA1LDcgQEAKICNpbmNsdWRlICJKU0V2ZW50
RXhjZXB0aW9uLmNwcCIKICNpbmNsdWRlICJKU0V2ZW50U291cmNlLmNwcCIKICNpbmNsdWRlICJK
U0ZpbGUuY3BwIgorI2luY2x1ZGUgIkpTRmlsZUNhbGxiYWNrLmNwcCIKICNpbmNsdWRlICJKU0Zp
bGVFbnRyeS5jcHAiCiAjaW5jbHVkZSAiSlNGaWxlRXJyb3IuY3BwIgogI2luY2x1ZGUgIkpTRmls
ZUV4Y2VwdGlvbi5jcHAiCkBAIC0xMTMsNiArMTE0LDcgQEAKICNpbmNsdWRlICJKU0ZpbGVSZWFk
ZXJTeW5jLmNwcCIKICNpbmNsdWRlICJKU0ZpbGVTeXN0ZW1DYWxsYmFjay5jcHAiCiAjaW5jbHVk
ZSAiSlNGaWxlV3JpdGVyLmNwcCIKKyNpbmNsdWRlICJKU0ZpbGVXcml0ZXJDYWxsYmFjay5jcHAi
CiAjaW5jbHVkZSAiSlNGbGFncy5jcHAiCiAjaW5jbHVkZSAiSlNHZW9sb2NhdGlvbi5jcHAiCiAj
aW5jbHVkZSAiSlNHZW9wb3NpdGlvbi5jcHAiCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRT
b3VyY2VzLm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggNmZkMWNkZWUx
NmRkOWI1ZWRmYzQ3ZWIzY2UwYzMxYzJhMmUzM2YyOC4uYzM3ZWZiMzQ4MWJhOGMwMzY2OGJhMTlh
NzgyOGFjMTAxZTlkN2NjNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtl
CisrKyBiL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtMTUxLDYgKzE1MSw3IEBAIERP
TV9DTEFTU0VTID0gXAogICAgIEV2ZW50U291cmNlIFwKICAgICBFdmVudFRhcmdldCBcCiAgICAg
RmlsZSBcCisgICAgRmlsZUNhbGxiYWNrIFwKICAgICBGaWxlRW50cnkgXAogICAgIEZpbGVFeGNl
cHRpb24gXAogICAgIEZpbGVFcnJvciBcCkBAIC0xNTgsNiArMTU5LDcgQEAgRE9NX0NMQVNTRVMg
PSBcCiAgICAgRmlsZVJlYWRlciBcCiAgICAgRmlsZVJlYWRlclN5bmMgXAogICAgIEZpbGVXcml0
ZXIgXAorICAgIEZpbGVXcml0ZXJDYWxsYmFjayBcCiAgICAgRmlsZVN5c3RlbUNhbGxiYWNrIFwK
ICAgICBGbGFncyBcCiAgICAgR2VvbG9jYXRpb24gXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9HTlVt
YWtlZmlsZS5hbSBiL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0KaW5kZXggNTczYjdkYjlmYjk5MjFi
ZWU2ZjQ2YTZhMmNlYWU3NTg2MzE3NmE2OS4uMzNkYWQxMGY4MTViNGM5MjJmYmQ2YzNhMjU1YWEz
NTVkYzgzNTgzNCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9HTlVtYWtlZmlsZS5hbQorKysgYi9XZWJD
b3JlL0dOVW1ha2VmaWxlLmFtCkBAIC0zMDI2LDYgKzMwMjYsOCBAQCB3ZWJjb3JlX2J1aWx0X3Nv
dXJjZXMgKz0gXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNFbnRyeUNhbGxiYWNr
LmggXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNFcnJvckNhbGxiYWNrLmNwcCBc
CiAgICAgICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Vycm9yQ2FsbGJhY2suaCBcCisgICAg
ICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVDYWxsYmFjay5jcHAgXAorICAgICAgIERl
cml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNGaWxlQ2FsbGJhY2suaCBcCiAgICAgICAgRGVyaXZlZFNv
dXJjZXMvV2ViQ29yZS9KU0ZpbGVFbnRyeS5jcHAgXAogICAgICAgIERlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNGaWxlRW50cnkuaCBcCiAgICAgICAgRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0Zp
bGVTeXN0ZW1DYWxsYmFjay5jcHAgXApAQCAtMzA1Myw2ICszMDU1LDcgQEAgd2ViY29yZV9zb3Vy
Y2VzICs9IFwKICAgICAgICBXZWJDb3JlL2ZpbGVhcGkvRW50cnlBcnJheS5oIFwKICAgICAgICBX
ZWJDb3JlL2ZpbGVhcGkvRW50cnlDYWxsYmFjay5oIFwKICAgICAgICBXZWJDb3JlL2ZpbGVhcGkv
RXJyb3JDYWxsYmFjay5oIFwKKyAgICAgICBXZWJDb3JlL2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmgg
XAogICAgICAgIFdlYkNvcmUvZmlsZWFwaS9GaWxlRW50cnkuY3BwIFwKICAgICAgICBXZWJDb3Jl
L2ZpbGVhcGkvRmlsZUVudHJ5LmggXAogICAgICAgIFdlYkNvcmUvZmlsZWFwaS9GaWxlU3lzdGVt
Q2FsbGJhY2suaCBcCkBAIC00NDU3LDEyICs0NDYwLDE1IEBAIHdlYmNvcmVfY3BwZmxhZ3MgKz0g
LURFTkFCTEVfRklMRV9XUklURVI9MQogd2ViY29yZV9idWlsdF9zb3VyY2VzICs9IFwKIAlEZXJp
dmVkU291cmNlcy9XZWJDb3JlL0pTRmlsZVdyaXRlci5jcHAgXAogCURlcml2ZWRTb3VyY2VzL1dl
YkNvcmUvSlNGaWxlV3JpdGVyLmgKKwlEZXJpdmVkU291cmNlcy9XZWJDb3JlL0pTRmlsZVdyaXRl
ckNhbGxiYWNrLmNwcCBcCisJRGVyaXZlZFNvdXJjZXMvV2ViQ29yZS9KU0ZpbGVXcml0ZXJDYWxs
YmFjay5oCiAKIHdlYmNvcmVfc291cmNlcyArPSBcCiAJV2ViQ29yZS9maWxlYXBpL0FzeW5jRmls
ZVdyaXRlci5oIFwKIAlXZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlckNsaWVudC5oIFwKIAlXZWJD
b3JlL2ZpbGVhcGkvRmlsZVdyaXRlci5jcHAgXAotCVdlYkNvcmUvZmlsZWFwaS9GaWxlV3JpdGVy
LmgKKwlXZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlci5oIFwKKwlXZWJDb3JlL2ZpbGVhcGkvRmls
ZVdyaXRlckNhbGxiYWNrLmgKIAogZW5kaWYgICMgRU5EIEVOQUJMRV9GSUxFX1dSSVRFUgogCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuZ3lwaSBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCmlu
ZGV4IDgzODkwYjYzMjk5MTAwMzM2ZmM2M2M5MWQxZjQyODgxZDdkMWI0MmQuLjYyODc3NjBkNjM3
NmZkZTU1OWQ4MzhmZjAyZmM2ODEzMDE1MmViNTggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29y
ZS5neXBpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5neXBpCkBAIC05Niw2ICs5Niw3IEBACiAgICAg
ICAgICAgICAnZmlsZWFwaS9FbnRyeUNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFw
aS9FcnJvckNhbGxiYWNrLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlLmlkbCcsCisg
ICAgICAgICAgICAnZmlsZWFwaS9GaWxlQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdmaWxl
YXBpL0ZpbGVFbnRyeS5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmlsZUVycm9yLmlkbCcs
CiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlRXhjZXB0aW9uLmlkbCcsCkBAIC0xMDQsNiArMTA1
LDcgQEAKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVSZWFkZXJTeW5jLmlkbCcsCiAgICAgICAg
ICAgICAnZmlsZWFwaS9GaWxlU3lzdGVtQ2FsbGJhY2suaWRsJywKICAgICAgICAgICAgICdmaWxl
YXBpL0ZpbGVXcml0ZXIuaWRsJywKKyAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVXcml0ZXJDYWxs
YmFjay5pZGwnLAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmxhZ3MuaWRsJywKICAgICAgICAgICAg
ICdmaWxlYXBpL01ldGFkYXRhLmlkbCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9NZXRhZGF0YUNh
bGxiYWNrLmlkbCcsCkBAIC0xNDQ2LDYgKzE0NDgsNyBAQAogICAgICAgICAgICAgJ2ZpbGVhcGkv
RXJyb3JDYWxsYmFjay5oJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGUuY3BwJywKICAgICAg
ICAgICAgICdmaWxlYXBpL0ZpbGUuaCcsCisgICAgICAgICAgICAnZmlsZWFwaS9GaWxlQ2FsbGJh
Y2suaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlRW50cnkuY3BwJywKICAgICAgICAgICAg
ICdmaWxlYXBpL0ZpbGVFbnRyeS5oJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVFcnJvci5o
JywKQEAgLTE0NjYsNiArMTQ2OSw3IEBACiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlVGhyZWFk
VGFzay5oJywKICAgICAgICAgICAgICdmaWxlYXBpL0ZpbGVXcml0ZXIuY3BwJywKICAgICAgICAg
ICAgICdmaWxlYXBpL0ZpbGVXcml0ZXIuaCcsCisgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3Jp
dGVyQ2FsbGJhY2suaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9GaWxlV3JpdGVyQ2xpZW50Lmgn
LAogICAgICAgICAgICAgJ2ZpbGVhcGkvRmxhZ3MuaCcsCiAgICAgICAgICAgICAnZmlsZWFwaS9M
b2NhbEZpbGVTeXN0ZW0uaCcsCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUucHJpIGIvV2Vi
Q29yZS9XZWJDb3JlLnByaQppbmRleCBhNGM2OWIxMGMyYTBlNjYwY2Y2ZmJmNzI2YWUzZjM4ZTA2
Y2YyYTk3Li40OGJkOWVlNTA5NTc2MTgxMzgyYTJmZmU5NmJiMDY4ZjBiOThiYjAxIDEwMDY0NAot
LS0gYS9XZWJDb3JlL1dlYkNvcmUucHJpCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5wcmkKQEAgLTE1
OCwxMiArMTU4LDE0IEBAIElETF9CSU5ESU5HUyArPSBcCiAgICAgZmlsZWFwaS9FbnRyeUNhbGxi
YWNrLmlkbCBcCiAgICAgZmlsZWFwaS9FcnJvckNhbGxiYWNrLmlkbCBcCiAgICAgZmlsZWFwaS9G
aWxlLmlkbCBcCi0gICAgZmlsZWFwaS9GaWxlTGlzdC5pZGwgXAotICAgIGZpbGVhcGkvRmlsZVJl
YWRlci5pZGwgXAotICAgIGZpbGVhcGkvRmlsZVdyaXRlci5pZGwgXAorICAgIGZpbGVhcGkvRmls
ZUNhbGxiYWNrLmlkbCBcCiAgICAgZmlsZWFwaS9GaWxlRW50cnkuaWRsIFwKICAgICBmaWxlYXBp
L0ZpbGVFcnJvci5pZGwgXAorICAgIGZpbGVhcGkvRmlsZUxpc3QuaWRsIFwKKyAgICBmaWxlYXBp
L0ZpbGVSZWFkZXIuaWRsIFwKICAgICBmaWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFjay5pZGwgXAor
ICAgIGZpbGVhcGkvRmlsZVdyaXRlci5pZGwgXAorICAgIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxi
YWNrLmlkbCBcCiAgICAgZmlsZWFwaS9GbGFncy5pZGwgXAogICAgIGZpbGVhcGkvTWV0YWRhdGEu
aWRsIFwKICAgICBmaWxlYXBpL01ldGFkYXRhQ2FsbGJhY2suaWRsIFwKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvV2ViQ29yZS5wcm8gYi9XZWJDb3JlL1dlYkNvcmUucHJvCmluZGV4IGI5ZDQwZmNkNzUz
MTVjZDMxZjEwYmYwODYyYjAwY2VmNmE4NWFiN2IuLjNiMzc3MzA3NGVlMDgyZGEwYTdhMDRkNjkw
N2Y1YjFjOGYwZDYwYzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS5wcm8KKysrIGIvV2Vi
Q29yZS9XZWJDb3JlLnBybwpAQCAtNjI5LDcgKzYyOSw2IEBAIFNPVVJDRVMgKz0gXAogICAgIGZp
bGVhcGkvRmlsZVJlYWRlclN5bmMuY3BwIFwKICAgICBmaWxlYXBpL0ZpbGVTdHJlYW1Qcm94eS5j
cHAgXAogICAgIGZpbGVhcGkvRmlsZVRocmVhZC5jcHAgXAotICAgIGZpbGVhcGkvRmlsZVdyaXRl
ci5jcHAgXAogICAgIGZpbGVhcGkvVGhyZWFkYWJsZUJsb2JSZWdpc3RyeS5jcHAgXAogICAgIGhp
c3RvcnkvQmFja0ZvcndhcmRDb250cm9sbGVyLmNwcCBcCiAgICAgaGlzdG9yeS9CYWNrRm9yd2Fy
ZExpc3RJbXBsLmNwcCBcCkBAIC0xNDAzLDcgKzE0MDIsNiBAQCBIRUFERVJTICs9IFwKICAgICBl
ZGl0aW5nL1Zpc2libGVTZWxlY3Rpb24uaCBcCiAgICAgZWRpdGluZy92aXNpYmxlX3VuaXRzLmgg
XAogICAgIGVkaXRpbmcvV3JhcENvbnRlbnRzSW5EdW1teVNwYW5Db21tYW5kLmggXAotICAgIGZp
bGVhcGkvQXN5bmNGaWxlV3JpdGVyLmggXAogICAgIGZpbGVhcGkvQmxvYi5oIFwKICAgICBmaWxl
YXBpL0Jsb2JCdWlsZGVyLmggXAogICAgIGZpbGVhcGkvQmxvYlVSTC5oIFwKQEAgLTE0MTYsOCAr
MTQxNCw2IEBAIEhFQURFUlMgKz0gXAogICAgIGZpbGVhcGkvRmlsZVN0cmVhbVByb3h5LmggXAog
ICAgIGZpbGVhcGkvRmlsZVRocmVhZC5oIFwKICAgICBmaWxlYXBpL0ZpbGVUaHJlYWRUYXNrLmgg
XAotICAgIGZpbGVhcGkvRmlsZVdyaXRlci5oIFwKLSAgICBmaWxlYXBpL0ZpbGVXcml0ZXJDbGll
bnQuaCBcCiAgICAgaGlzdG9yeS9CYWNrRm9yd2FyZENvbnRyb2xsZXIuaCBcCiAgICAgaGlzdG9y
eS9CYWNrRm9yd2FyZENvbnRyb2xsZXJDbGllbnQuaCBcCiAgICAgaGlzdG9yeS9CYWNrRm9yd2Fy
ZExpc3RJbXBsLmggXApAQCAtMjYyOSwxMCArMjYyNSwxMCBAQCBjb250YWlucyhERUZJTkVTLCBF
TkFCTEVfRklMRV9TWVNURU09MSkgewogICAgICAgICBmaWxlYXBpL0VudHJ5QXJyYXkuaCBcCiAg
ICAgICAgIGZpbGVhcGkvRW50cnlDYWxsYmFjay5oIFwKICAgICAgICAgZmlsZWFwaS9FcnJvckNh
bGxiYWNrLmggXAorICAgICAgICBmaWxlYXBpL0ZpbGVDYWxsYmFjay5oIFwKICAgICAgICAgZmls
ZWFwaS9GaWxlRW50cnkuaCBcCiAgICAgICAgIGZpbGVhcGkvRmlsZVN5c3RlbUNhbGxiYWNrLmgg
XAogICAgICAgICBmaWxlYXBpL0ZpbGVTeXN0ZW1DYWxsYmFja3MuaCBcCi0gICAgICAgIGZpbGVh
cGkvRmlsZVdyaXRlckNhbGxiYWNrLmggXAogICAgICAgICBmaWxlYXBpL0ZsYWdzLmggXAogICAg
ICAgICBmaWxlYXBpL0xvY2FsRmlsZVN5c3RlbS5oIFwKICAgICAgICAgZmlsZWFwaS9NZXRhZGF0
YS5oIFwKQEAgLTI2NTMsNiArMjY0OSwxNyBAQCBjb250YWlucyhERUZJTkVTLCBFTkFCTEVfRklM
RV9TWVNURU09MSkgewogICAgICAgICBwbGF0Zm9ybS9Bc3luY0ZpbGVTeXN0ZW0uY3BwCiB9CiAK
K2NvbnRhaW5zKERFRklORVMsIEVOQUJMRV9GSUxFX1dSSVRFUj0xKSB7CisgICAgSEVBREVSUyAr
PSBcCisgICAgICAgIGZpbGVhcGkvQXN5bmNGaWxlV3JpdGVyLmggXAorICAgICAgICBmaWxlYXBp
L0ZpbGVXcml0ZXIuaCBcCisgICAgICAgIGZpbGVhcGkvRmlsZVdyaXRlckNhbGxiYWNrLmggXAor
ICAgICAgICBmaWxlYXBpL0ZpbGVXcml0ZXJDbGllbnQuaAorCisgICAgU09VUkNFUyArPSBcCisg
ICAgICAgIGZpbGVhcGkvRmlsZVdyaXRlci5jcHAKK30KKwogY29udGFpbnMoREVGSU5FUywgRU5B
QkxFX0lDT05EQVRBQkFTRT0xKSB7CiAgICAgU09VUkNFUyArPSBcCiAgICAgICAgIGxvYWRlci9p
Y29uL0ljb25EYXRhYmFzZS5jcHAgXApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnZjcHJv
ai9XZWJDb3JlLnZjcHJvaiBiL1dlYkNvcmUvV2ViQ29yZS52Y3Byb2ovV2ViQ29yZS52Y3Byb2oK
aW5kZXggYjZjZDJjNTJiMDkzZjk5NDE4ODEyODBkOTA3MjAyY2Q0Yjk4MDUwOC4uMjE2MmViOGU2
NjY5NjM5NTA5ZWZkNGQyOGEyNDc1NTk2YWMyMDIwZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJD
b3JlLnZjcHJvai9XZWJDb3JlLnZjcHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUudmNwcm9qL1dl
YkNvcmUudmNwcm9qCkBAIC00ODIxLDYgKzQ4MjEsMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0K
IAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iJChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFBy
b2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0ZpbGVDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJ
CQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERp
cilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRmlsZUNhbGxiYWNrLmgiDQor
CQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktp
dE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRmlsZUVycm9y
LmNwcCINCiAJCQkJPg0KIAkJCQk8RmlsZUNvbmZpZ3VyYXRpb24NCkBAIC01MTE3LDYgKzUxMjUs
MTQgQEAKIAkJCQk+DQogCQkJPC9GaWxlPg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0i
JChXZWJLaXRPdXRwdXREaXIpXG9ialwkKFByb2plY3ROYW1lKVxEZXJpdmVkU291cmNlc1xKU0Zp
bGVXcml0ZXJDYWxsYmFjay5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJ
CQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQoUHJvamVjdE5hbWUpXERl
cml2ZWRTb3VyY2VzXEpTRmlsZVdyaXRlckNhbGxiYWNrLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+
DQorCQkJPEZpbGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIkKFdlYktpdE91dHB1dERpcilcb2JqXCQo
UHJvamVjdE5hbWUpXERlcml2ZWRTb3VyY2VzXEpTRmxhZ3MuY3BwIg0KIAkJCQk+DQogCQkJCTxG
aWxlQ29uZmlndXJhdGlvbg0KQEAgLTM3MzQ1LDYgKzM3MzYxLDE0IEBACiAJCQkJPg0KIAkJCTwv
RmlsZT4NCiAJCQk8RmlsZQ0KKwkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGZpbGVhcGlcRmlsZUNhbGxi
YWNrLmgiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZpbGUNCisJCQkJUmVsYXRpdmVQYXRo
PSIuLlxmaWxlYXBpXEZpbGVFbnRyeS5jcHAiDQorCQkJCT4NCisJCQk8L0ZpbGU+DQorCQkJPEZp
bGUNCiAJCQkJUmVsYXRpdmVQYXRoPSIuLlxmaWxlYXBpXEZpbGVFbnRyeS5jcHAiDQogCQkJCT4N
CiAJCQk8L0ZpbGU+DQpAQCAtMzc0MjUsNiArMzc0NDksMTQgQEAKIAkJCQk+DQogCQkJPC9GaWxl
Pg0KIAkJCTxGaWxlDQorCQkJCVJlbGF0aXZlUGF0aD0iLi5cZmlsZWFwaVxGaWxlV3JpdGVyQ2Fs
bGJhY2suY3BwIg0KKwkJCQk+DQorCQkJPC9GaWxlPg0KKwkJCTxGaWxlDQorCQkJCVJlbGF0aXZl
UGF0aD0iLi5cZmlsZWFwaVxGaWxlV3JpdGVyQ2FsbGJhY2suaCINCisJCQkJPg0KKwkJCTwvRmls
ZT4NCisJCQk8RmlsZQ0KIAkJCQlSZWxhdGl2ZVBhdGg9Ii4uXGZpbGVhcGlcRmlsZVdyaXRlckNs
aWVudC5oIg0KIAkJCQk+DQogCQkJPC9GaWxlPg0KZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2oKaW5kZXggMTAyN2ZlYzc2MzExYWViODQ5NjcwY2Q5ZWZiNDMyOWQ3Mzlm
Njc2MS4uZmFhYjg5ZjhiYjQwMDU4YmZkOWM2NjZmNTdiZDg1NmU4ODk5MTA5MyAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTIzNzUsNiArMjM3NSwxMiBA
QAogCQk4NUZGMzE1QTBBQUZCRkNCMDAzNzRGMzggLyogRE9NS2V5Ym9hcmRFdmVudC5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODVGRjMxNTgwQUFGQkZD
QjAwMzc0RjM4IC8qIERPTUtleWJvYXJkRXZlbnQuaCAqLzsgfTsKIAkJODVGRjMxNUIwQUFGQkZD
QjAwMzc0RjM4IC8qIERPTUtleWJvYXJkRXZlbnQubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4NUZGMzE1OTBBQUZCRkNCMDAzNzRGMzggLyogRE9NS2V5
Ym9hcmRFdmVudC5tbSAqLzsgfTsKIAkJODYyNDNEMDExMUJDMzFGNzAwQ0MwMDZBIC8qIEpTQXJy
YXlCdWZmZXJWaWV3SGVscGVyLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4NjI0M0QwMDExQkMzMUY3MDBDQzAwNkEgLyogSlNBcnJheUJ1ZmZlclZpZXdI
ZWxwZXIuaCAqLzsgfTsKKwkJODkzQzQ3QTcxMjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVDYWxsYmFj
ay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODkzQzQ3
QTUxMjM4OTA4QjAwMkIzRDg2IC8qIEZpbGVDYWxsYmFjay5oICovOyB9OworCQk4OTNDNDdBODEy
Mzg5MDhCMDAyQjNEODYgLyogRmlsZVdyaXRlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA4OTNDNDdBNjEyMzg5MDhCMDAyQjNEODYgLyog
RmlsZVdyaXRlckNhbGxiYWNrLmggKi87IH07CisJCTg5M0M0N0I3MTIzOEEwOTkwMDJCM0Q4NiAv
KiBKU0ZpbGVDYWxsYmFjay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA4OTNDNDdCNTEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2FsbGJhY2suY3Bw
ICovOyB9OworCQk4OTNDNDdCODEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2FsbGJhY2suaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDg5M0M0N0I2MTIz
OEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFjay5oICovOyB9OworCQk4OTNDNDdCQjEyMzhB
MEE5MDAyQjNEODYgLyogSlNGaWxlV3JpdGVyQ2FsbGJhY2suY3BwIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODkzQzQ3QjkxMjM4QTBBOTAwMkIzRDg2IC8q
IEpTRmlsZVdyaXRlckNhbGxiYWNrLmNwcCAqLzsgfTsKKwkJODkzQzQ3QkMxMjM4QTBBOTAwMkIz
RDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSA4OTNDNDdCQTEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxlV3Jp
dGVyQ2FsbGJhY2suaCAqLzsgfTsKIAkJODk4Nzg1NTIxMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVj
dG9yeUVudHJ5LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDg5ODc4NTM5MTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3RvcnlFbnRyeS5jcHAgKi87IH07
CiAJCTg5ODc4NTUzMTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3RvcnlFbnRyeS5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gODk4Nzg1M0ExMjJDQTA2NDAw
M0FBQkRBIC8qIERpcmVjdG9yeUVudHJ5LmggKi87IH07CiAJCTg5ODc4NTU0MTIyQ0EwNjQwMDNB
QUJEQSAvKiBEaXJlY3RvcnlSZWFkZXIuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gODk4Nzg1M0IxMjJDQTA2NDAwM0FBQkRBIC8qIERpcmVjdG9yeVJl
YWRlci5jcHAgKi87IH07CkBAIC04MjYzLDYgKzgyNjksMTIgQEAKIAkJODVGRjMxNTgwQUFGQkZD
QjAwMzc0RjM4IC8qIERPTUtleWJvYXJkRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IERPTUtleWJvYXJkRXZlbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJODVGRjMxNTkwQUFGQkZDQjAwMzc0RjM4IC8qIERPTUtleWJvYXJkRXZlbnQubW0gKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gMzA7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gRE9NS2V5Ym9hcmRFdmVudC5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJODYyNDNEMDAxMUJDMzFGNzAwQ0MwMDZBIC8q
IEpTQXJyYXlCdWZmZXJWaWV3SGVscGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IEpTQXJyYXlCdWZmZXJWaWV3SGVscGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTg5M0M0N0E1MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2FsbGJhY2suaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gRmlsZUNhbGxiYWNrLmg7IHBhdGggPSBmaWxlYXBpL0Zp
bGVDYWxsYmFjay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQk4OTNDNDdBNjEyMzg5
MDhCMDAyQjNEODYgLyogRmlsZVdyaXRlckNhbGxiYWNrLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgbmFtZSA9IEZpbGVXcml0ZXJDYWxsYmFjay5oOyBwYXRoID0gZmlsZWFwaS9GaWxlV3Jp
dGVyQ2FsbGJhY2suaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJODkzQzQ3QjUxMjM4
QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IEpTRmlsZUNhbGxiYWNrLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJODkzQzQ3QjYxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTRmlsZUNhbGxiYWNrLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTg5M0M0N0I5MTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVX
cml0ZXJDYWxsYmFjay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0ZpbGVXcml0ZXJDYWxsYmFjay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTg5
M0M0N0JBMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU0ZpbGVXcml0ZXJDYWxsYmFjay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQk4OTg3ODUzOTEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0
b3J5RW50cnkuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gRGlyZWN0
b3J5RW50cnkuY3BwOyBwYXRoID0gZmlsZWFwaS9EaXJlY3RvcnlFbnRyeS5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTg5ODc4NTNBMTIyQ0EwNjQwMDNBQUJEQSAvKiBEaXJlY3Rv
cnlFbnRyeS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBEaXJlY3RvcnlFbnRy
eS5oOyBwYXRoID0gZmlsZWFwaS9EaXJlY3RvcnlFbnRyeS5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQk4OTg3ODUzQjEyMkNBMDY0MDAzQUFCREEgLyogRGlyZWN0b3J5UmVhZGVyLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IERpcmVjdG9yeVJlYWRlci5j
cHA7IHBhdGggPSBmaWxlYXBpL0RpcmVjdG9yeVJlYWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0xMzg4NCw2ICsxMzg5Niw4IEBACiAJCQkJODk4Nzg1OTkxMjJDQTJBNzAw
M0FBQkRBIC8qIEpTRXJyb3JDYWxsYmFjay5oICovLAogCQkJCUJDMDBGMDEwMEUwQTE4OTUwMEZE
MDRFMyAvKiBKU0ZpbGUuY3BwICovLAogCQkJCUJDMDBGMDExMEUwQTE4OTUwMEZEMDRFMyAvKiBK
U0ZpbGUuaCAqLywKKwkJCQk4OTNDNDdCNTEyMzhBMDk5MDAyQjNEODYgLyogSlNGaWxlQ2FsbGJh
Y2suY3BwICovLAorCQkJCTg5M0M0N0I2MTIzOEEwOTkwMDJCM0Q4NiAvKiBKU0ZpbGVDYWxsYmFj
ay5oICovLAogCQkJCTg5ODc4NTlBMTIyQ0EyQTcwMDNBQUJEQSAvKiBKU0ZpbGVFbnRyeS5jcHAg
Ki8sCiAJCQkJODk4Nzg1OUIxMjJDQTJBNzAwM0FBQkRBIC8qIEpTRmlsZUVudHJ5LmggKi8sCiAJ
CQkJMkUzQkMwQzgxMTdEM0UwODAwQjk0MDlBIC8qIEpTRmlsZUVycm9yLmNwcCAqLywKQEAgLTEz
OTAwLDYgKzEzOTE0LDggQEAKIAkJCQk4OTg3ODU5RDEyMkNBMkE3MDAzQUFCREEgLyogSlNGaWxl
U3lzdGVtQ2FsbGJhY2suaCAqLywKIAkJCQk0NkRBODQ0QjEyMjRBMDcxMDA2MEQwMDYgLyogSlNG
aWxlV3JpdGVyLmNwcCAqLywKIAkJCQk0NkRBODQ0QzEyMjRBMDcxMDA2MEQwMDYgLyogSlNGaWxl
V3JpdGVyLmggKi8sCisJCQkJODkzQzQ3QjkxMjM4QTBBOTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRl
ckNhbGxiYWNrLmNwcCAqLywKKwkJCQk4OTNDNDdCQTEyMzhBMEE5MDAyQjNEODYgLyogSlNGaWxl
V3JpdGVyQ2FsbGJhY2suaCAqLywKIAkJCQk4OTg3ODU5RTEyMkNBMkE3MDAzQUFCREEgLyogSlNG
bGFncy5jcHAgKi8sCiAJCQkJODk4Nzg1OUYxMjJDQTJBNzAwM0FBQkRBIC8qIEpTRmxhZ3MuaCAq
LywKIAkJCQk4OTg3ODVBMDEyMkNBMkE3MDAzQUFCREEgLyogSlNNZXRhZGF0YS5jcHAgKi8sCkBA
IC0xNDM5NCw2ICsxNDQxMCw3IEBACiAJCQkJODk4Nzg1NDcxMjJDQTA2NDAwM0FBQkRBIC8qIEVy
cm9yQ2FsbGJhY2suaCAqLywKIAkJCQk5NzZENkM2MTEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZS5j
cHAgKi8sCiAJCQkJOTc2RDZDNjIxMjJCOEEzRDAwMUZEMUY3IC8qIEZpbGUuaCAqLywKKwkJCQk4
OTNDNDdBNTEyMzg5MDhCMDAyQjNEODYgLyogRmlsZUNhbGxiYWNrLmggKi8sCiAJCQkJODk4Nzg1
NDgxMjJDQTA2NDAwM0FBQkRBIC8qIEZpbGVFbnRyeS5jcHAgKi8sCiAJCQkJODk4Nzg1NDkxMjJD
QTA2NDAwM0FBQkRBIC8qIEZpbGVFbnRyeS5oICovLAogCQkJCTk3NkQ2QzY0MTIyQjhBM0QwMDFG
RDFGNyAvKiBGaWxlRXJyb3IuaCAqLywKQEAgLTE0NDE0LDYgKzE0NDMxLDcgQEAKIAkJCQk5NzZE
NkM3MDEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZVRocmVhZFRhc2suaCAqLywKIAkJCQk5NzZENkM3
MTEyMkI4QTNEMDAxRkQxRjcgLyogRmlsZVdyaXRlci5jcHAgKi8sCiAJCQkJOTc2RDZDNzIxMjJC
OEEzRDAwMUZEMUY3IC8qIEZpbGVXcml0ZXIuaCAqLywKKwkJCQk4OTNDNDdBNjEyMzg5MDhCMDAy
QjNEODYgLyogRmlsZVdyaXRlckNhbGxiYWNrLmggKi8sCiAJCQkJOTc2RDZDNzQxMjJCOEEzRDAw
MUZEMUY3IC8qIEZpbGVXcml0ZXJDbGllbnQuaCAqLywKIAkJCQk4OTg3ODU0RDEyMkNBMDY0MDAz
QUFCREEgLyogRmxhZ3MuaCAqLywKIAkJCQk4OTg3ODU0RTEyMkNBMDY0MDAzQUFCREEgLyogTG9j
YWxGaWxlU3lzdGVtLmNwcCAqLywKQEAgLTIwNDY3LDYgKzIwNDg1LDEwIEBACiAJCQkJOTcyMDVB
QjYxMjM5MjkxMDAwQjE3MzgwIC8qIEltYWdlRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTk3MjA1QUI4MTIzOTI5MTAwMEIxNzM4MCAvKiBNZWRpYURvY3VtZW50LmggaW4gSGVhZGVycyAq
LywKIAkJCQk5NzIwNUFCQzEyMzkyOTI3MDBCMTczODAgLyogUGx1Z2luRG9jdW1lbnQuaCBpbiBI
ZWFkZXJzICovLAorCQkJCTg5M0M0N0E3MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlQ2FsbGJhY2su
aCBpbiBIZWFkZXJzICovLAorCQkJCTg5M0M0N0E4MTIzODkwOEIwMDJCM0Q4NiAvKiBGaWxlV3Jp
dGVyQ2FsbGJhY2suaCBpbiBIZWFkZXJzICovLAorCQkJCTg5M0M0N0I4MTIzOEEwOTkwMDJCM0Q4
NiAvKiBKU0ZpbGVDYWxsYmFjay5oIGluIEhlYWRlcnMgKi8sCisJCQkJODkzQzQ3QkMxMjM4QTBB
OTAwMkIzRDg2IC8qIEpTRmlsZVdyaXRlckNhbGxiYWNrLmggaW4gSGVhZGVycyAqLywKIAkJCSk7
CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNzaW5nID0gMDsKIAkJfTsKQEAgLTIy
OTM1LDYgKzIyOTU3LDggQEAKIAkJCQk5NzIwNUFCNTEyMzkyOTEwMDBCMTczODAgLyogSW1hZ2VE
b2N1bWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzIwNUFCNzEyMzkyOTEwMDBCMTczODAg
LyogTWVkaWFEb2N1bWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzIwNUFCQjEyMzkyOTI3
MDBCMTczODAgLyogUGx1Z2luRG9jdW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJODkzQzQ3
QjcxMjM4QTA5OTAwMkIzRDg2IC8qIEpTRmlsZUNhbGxiYWNrLmNwcCBpbiBTb3VyY2VzICovLAor
CQkJCTg5M0M0N0JCMTIzOEEwQTkwMDJCM0Q4NiAvKiBKU0ZpbGVXcml0ZXJDYWxsYmFjay5jcHAg
aW4gU291cmNlcyAqLywKIAkJCSk7CiAJCQlydW5Pbmx5Rm9yRGVwbG95bWVudFBvc3Rwcm9jZXNz
aW5nID0gMDsKIAkJfTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2su
aCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlQ2FsbGJhY2suaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi42ZjVjYTNkMTQ1
NWViZDgxYmZkOWEyZTJlYmU5YmU4MGU4ZGRiNDRmCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29y
ZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5oCkBAIC0wLDAgKzEsNTEgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTAgR29vZ2xlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucyBhcmUKKyAqIG1ldDoKKyAqCisgKiAgICAgKiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyLgorICogICAgICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZQorICogY29weXJpZ2h0IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlv
bnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lcgorICogaW4gdGhlIGRvY3VtZW50YXRpb24g
YW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZQorICogZGlzdHJpYnV0aW9u
LgorICogICAgICogTmVpdGhlciB0aGUgbmFtZSBvZiBHb29nbGUgSW5jLiBub3IgdGhlIG5hbWVz
IG9mIGl0cworICogY29udHJpYnV0b3JzIG1heSBiZSB1c2VkIHRvIGVuZG9yc2Ugb3IgcHJvbW90
ZSBwcm9kdWN0cyBkZXJpdmVkIGZyb20KKyAqIHRoaXMgc29mdHdhcmUgd2l0aG91dCBzcGVjaWZp
YyBwcmlvciB3cml0dGVuIHBlcm1pc3Npb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENPTlRSSUJVVE9SUworICogIkFTIElT
IiBBTkQgQU5ZIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBO
T1QKKyAqIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklM
SVRZIEFORCBGSVRORVNTIEZPUgorICogQSBQQVJUSUNVTEFSIFBVUlBPU0UgQVJFIERJU0NMQUlN
RUQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRSBDT1BZUklHSFQKKyAqIE9XTkVSIE9SIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLAorICog
U1BFQ0lBTCwgRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsCisgKiBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkKKyAqIFRIRU9SWSBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaWZuZGVmIEZpbGVDYWxs
YmFja19oCisjZGVmaW5lIEZpbGVDYWxsYmFja19oCisKKyNpZiBFTkFCTEUoRklMRV9TWVNURU0p
CisKKyNpbmNsdWRlICJGaWxlLmgiCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRl
ZDxGaWxlQ2FsbGJhY2s+IHsKK3B1YmxpYzoKKyAgICB2aXJ0dWFsIH5GaWxlQ2FsbGJhY2soKSB7
IH0KKyAgICB2aXJ0dWFsIGJvb2wgaGFuZGxlRXZlbnQoRmlsZSopID0gMDsKK307CisKK30gLy8g
bmFtZXNwYWNlCisKKyNlbmRpZiAvLyBFTkFCTEUoRklMRV9TWVNURU0pCisKKyNlbmRpZiAvLyBG
aWxlQ2FsbGJhY2tfaApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5p
ZGwgYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZUNhbGxiYWNrLmlkbApuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4wYWI4MTRm
ZWQ5ZjA5MzQ3MjlhNTIzZWNiZTk1MDQyMjM1NjNkMzdlCi0tLSAvZGV2L251bGwKKysrIGIvV2Vi
Q29yZS9maWxlYXBpL0ZpbGVDYWxsYmFjay5pZGwKQEAgLTAsMCArMSwzOCBAQAorLyoKKyAqIENv
cHlyaWdodCAoQykgMjAxMCBHb29nbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlz
dHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRp
c2NsYWltZXIuCisgKiAgICAgKiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCBy
ZXByb2R1Y2UgdGhlIGFib3ZlCisgKiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmli
dXRpb24uCisgKiAgICAgKiBOZWl0aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUg
bmFtZXMgb2YgaXRzCisgKiBjb250cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBw
cm9tb3RlIHByb2R1Y3RzIGRlcml2ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNw
ZWNpZmljIHByaW9yIHdyaXR0ZW4gcGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAi
QVMgSVMiIEFORCBBTlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywg
QlVUIE5PVAorICogTElNSVRFRCBUTywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFO
VEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElT
Q0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09O
VFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUws
CisgKiBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVE
SU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdP
T0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJV
U0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZ
IE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1Ig
VE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBB
TlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklT
RUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKK21vZHVsZSBmaWxl
YXBpIHsKKyAgICBpbnRlcmZhY2UgWworICAgICAgICBDb25kaXRpb25hbD1GSUxFX1NZU1RFTSwK
KyAgICAgICAgQ2FsbGJhY2sKKyAgICBdIEZpbGVDYWxsYmFjayB7CisgICAgICAgIGJvb2xlYW4g
aGFuZGxlRXZlbnQoaW4gRmlsZSBmaWxlKTsKKyAgICB9OworfQpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9maWxlYXBpL0ZpbGVXcml0ZXJDYWxsYmFjay5oIGIvV2ViQ29yZS9maWxlYXBpL0ZpbGVXcml0
ZXJDYWxsYmFjay5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmY1ZjRkMzdkOTg4MGNhYzRkNzJiYjY5Y2Q2MDFkYzZl
MWY3MWEyMDYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlckNh
bGxiYWNrLmgKQEAgLTAsMCArMSw1MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMCBHb29n
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zIGFyZQorICogbWV0OgorICoKKyAqICAgICAqIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiBub3RpY2UsIHRoaXMgbGlz
dCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAgICAgKiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlCisg
KiBjb3B5cmlnaHQgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyCisgKiBpbiB0aGUgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlCisgKiBkaXN0cmlidXRpb24uCisgKiAgICAgKiBOZWl0
aGVyIHRoZSBuYW1lIG9mIEdvb2dsZSBJbmMuIG5vciB0aGUgbmFtZXMgb2YgaXRzCisgKiBjb250
cmlidXRvcnMgbWF5IGJlIHVzZWQgdG8gZW5kb3JzZSBvciBwcm9tb3RlIHByb2R1Y3RzIGRlcml2
ZWQgZnJvbQorICogdGhpcyBzb2Z0d2FyZSB3aXRob3V0IHNwZWNpZmljIHByaW9yIHdyaXR0ZW4g
cGVybWlzc2lvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZ
UklHSFQgSE9MREVSUyBBTkQgQ09OVFJJQlVUT1JTCisgKiAiQVMgSVMiIEFORCBBTlkgRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVAorICogTElNSVRFRCBU
TywgVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SCisgKiBBIFBBUlRJQ1VMQVIgUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQg
U0hBTEwgVEhFIENPUFlSSUdIVAorICogT1dORVIgT1IgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBG
T1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsCisgKiBTUEVDSUFMLCBFWEVNUExB
UlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NT
IE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikg
SE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNF
CisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZ
IE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpZm5kZWYgRmlsZVdyaXRlckNhbGxiYWNrX2gKKyNk
ZWZpbmUgRmlsZVdyaXRlckNhbGxiYWNrX2gKKworI2lmIEVOQUJMRShGSUxFX1NZU1RFTSkgJiYg
RU5BQkxFKEZJTEVfV1JJVEVSKQorCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4KKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBGaWxlV3JpdGVyOworCitjbGFzcyBGaWxlV3JpdGVy
Q2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291bnRlZDxGaWxlV3JpdGVyQ2FsbGJhY2s+IHsKK3B1Ymxp
YzoKKyAgICB2aXJ0dWFsIH5GaWxlV3JpdGVyQ2FsbGJhY2soKSB7IH0KKyAgICB2aXJ0dWFsIGJv
b2wgaGFuZGxlRXZlbnQoRmlsZVdyaXRlciopID0gMDsKK307CisKK30gLy8gbmFtZXNwYWNlCisK
KyNlbmRpZiAvLyBFTkFCTEUoRklMRV9TWVNURU0pICYmIEVOQUJMRShGSUxFX1dSSVRFUikKKwor
I2VuZGlmIC8vIEZpbGVXcml0ZXJDYWxsYmFja19oCmRpZmYgLS1naXQgYS9XZWJDb3JlL2ZpbGVh
cGkvRmlsZVdyaXRlckNhbGxiYWNrLmlkbCBiL1dlYkNvcmUvZmlsZWFwaS9GaWxlV3JpdGVyQ2Fs
bGJhY2suaWRsCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLmJhNzc4OTFmZGUzYjc3OGIyNDEyY2MxZjI2ZTUxMTdlNjU1
Y2JhYzgKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL2ZpbGVhcGkvRmlsZVdyaXRlckNhbGxi
YWNrLmlkbApAQCAtMCwwICsxLDM4IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEwIEdvb2ds
ZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVz
ZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmlj
YXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlv
bnMgYXJlCisgKiBtZXQ6CisgKgorICogICAgICogUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBj
b2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqICAgICAqIFJl
ZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUKKyAq
IGNvcHlyaWdodCBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIKKyAqIGluIHRoZSBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUKKyAqIGRpc3RyaWJ1dGlvbi4KKyAqICAgICAqIE5laXRo
ZXIgdGhlIG5hbWUgb2YgR29vZ2xlIEluYy4gbm9yIHRoZSBuYW1lcyBvZiBpdHMKKyAqIGNvbnRy
aWJ1dG9ycyBtYXkgYmUgdXNlZCB0byBlbmRvcnNlIG9yIHByb21vdGUgcHJvZHVjdHMgZGVyaXZl
ZCBmcm9tCisgKiB0aGlzIHNvZnR3YXJlIHdpdGhvdXQgc3BlY2lmaWMgcHJpb3Igd3JpdHRlbiBw
ZXJtaXNzaW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgVEhFIENPUFlS
SUdIVCBIT0xERVJTIEFORCBDT05UUklCVVRPUlMKKyAqICJBUyBJUyIgQU5EIEFOWSBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UCisgKiBMSU1JVEVEIFRP
LCBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IKKyAqIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBT
SEFMTCBUSEUgQ09QWVJJR0hUCisgKiBPV05FUiBPUiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwKKyAqIFNQRUNJQUwsIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QKKyAqIExJTUlU
RUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLAorICogREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZCisgKiBUSEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
KyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworbW9kdWxlIGZpbGVhcGkgeworICAgIGludGVyZmFjZSBb
CisgICAgICAgIENvbmRpdGlvbmFsPUZJTEVfU1lTVEVNJkZJTEVfV1JJVEVSLAorICAgICAgICBD
YWxsYmFjaworICAgIF0gRmlsZVdyaXRlckNhbGxiYWNrIHsKKyAgICAgICAgYm9vbGVhbiBoYW5k
bGVFdmVudChpbiBGaWxlV3JpdGVyIGZpbGVXcml0ZXIpOworICAgIH07Cit9Cg==
</data>
<flag name="review"
          id="56338"
          type_id="1"
          status="+"
          setter="jianli"
    />
          </attachment>
      

    </bug>

</bugzilla>