<?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>29225</bug_id>
          
          <creation_ts>2009-09-12 14:31:26 -0700</creation_ts>
          <short_desc>Add ENABLE(CONTEXT_MENU)</short_desc>
          <delta_ts>2009-09-16 12:41:34 -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>Platform</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Greg Bolsinga">bolsinga</reporter>
          <assigned_to name="Greg Bolsinga">bolsinga</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>mrowe</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>146946</commentid>
    <comment_count>0</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-12 14:31:26 -0700</bug_when>
    <thetext>Wrap Context Menu code in an ENABLE wrapper. This is for platforms (such as iPhone) that do not support context menus.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>146947</commentid>
    <comment_count>1</comment_count>
      <attachid>39518</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-12 14:36:25 -0700</bug_when>
    <thetext>Created attachment 39518
This patch implements the needed changes

This will compile and link Mac OS X without Context Menu support.

Of course Mac OS X (and many other platforms) will never ship in this configuration, so should the Mac code be conditionally compiled for this?

I also left in the oncontextmenu event / attribute, since it just doesn&apos;t do anything on iPhone. Is this best?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147029</commentid>
    <comment_count>2</comment_count>
      <attachid>39518</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-09-14 00:53:45 -0700</bug_when>
    <thetext>Comment on attachment 39518
This patch implements the needed changes

As I mentioned in another bug, it doesn&apos;t make sense to set ENABLE_CONTEXT_MENU in both wtf/Platform.h and FeatureDefines.xcconfig.  Since this is a platform difference and not a feature, the former makes more sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147103</commentid>
    <comment_count>3</comment_count>
      <attachid>39552</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-14 10:36:49 -0700</bug_when>
    <thetext>Created attachment 39552
Address Mark&apos;s comments.

Removes the FeatureDefines.xcconfig changes, and the build-webkit changes, since this is Platform related as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147106</commentid>
    <comment_count>4</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-14 10:44:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/6732593&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147108</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-09-14 10:44:53 -0700</bug_when>
    <thetext>The DerivedSources.make change still assumes this is set in FEATURE_DEFINES.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147122</commentid>
    <comment_count>6</comment_count>
      <attachid>39558</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-14 11:19:52 -0700</bug_when>
    <thetext>Created attachment 39558
Fix DerivedSources.make

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147125</commentid>
    <comment_count>7</comment_count>
      <attachid>39559</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-14 11:25:27 -0700</bug_when>
    <thetext>Created attachment 39559
Fix DerivedSources.make for all platforms, not just MacOS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147371</commentid>
    <comment_count>8</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-15 13:33:42 -0700</bug_when>
    <thetext>This is being conditionalized because it is not enabled on iPhone.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147406</commentid>
    <comment_count>9</comment_count>
      <attachid>39559</attachid>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-09-15 16:12:14 -0700</bug_when>
    <thetext>Comment on attachment 39559
Fix DerivedSources.make for all platforms, not just MacOS

In general it seems that the plural form of ENABLE(CONTEXT_MENUS) would read better than ENABLE(CONTEXT_MENU).

&gt; diff --git a/WebKit/mac/WebView/WebUIDelegatePrivate.h b/WebKit/mac/WebView/WebUIDelegatePrivate.h
&gt; index eadc761..a28ba5a 100644
&gt; --- a/WebKit/mac/WebView/WebUIDelegatePrivate.h
&gt; +++ b/WebKit/mac/WebView/WebUIDelegatePrivate.h
&gt; @@ -107,7 +107,9 @@ enum {
&gt;  // FIXME: If we ever make this method public, it should include a WebFrame parameter.
&gt;  - (BOOL)webViewShouldInterruptJavaScript:(WebView *)sender;
&gt;  - (void)webView:(WebView *)sender willPopupMenu:(NSMenu *)menu;
&gt; +#if ENABLE_CONTEXT_MENU
&gt;  - (void)webView:(WebView *)sender contextMenuItemSelected:(NSMenuItem *)item forElement:(NSDictionary *)element;
&gt; +#endif
&gt;  - (void)webView:(WebView *)sender saveFrameView:(WebFrameView *)frameView showingPanel:(BOOL)showingPanel;
&gt;  
&gt;  /*!

This header file is used from outside of WebKit.  In that context ENABLE_CONTEXT_MENU will not be defined which will result in this method being omitted.  That doesn&apos;t seem like the behavior we&apos;re after here.  I suspect we&apos;ll need to wrap the header in something like:

#if !defined(ENABLE_CONTEXT_MENUS)
#define ENABLE_CONTEXT_MENUS 1
#define DEFINED_ENABLE_CONTEXT_MENUS 1
#endif

[ .. ]

#if DEFINED_ENABLE_CONTEXT_MENUS
#undef ENABLE_CONTEXT_MENUS
#undef DEFINED_ENABLE_CONTEXT_MENUS
#endif

I think we do something similar for dashboard support in some WebKit headers.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147420</commentid>
    <comment_count>10</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-15 16:48:17 -0700</bug_when>
    <thetext>Alternately, should this be applicable to Mac OS X WebKit at all?

I agree with the ENABLE_CONTEXT_MENUS plural change. Adding a new patch shortly.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147423</commentid>
    <comment_count>11</comment_count>
      <attachid>39624</attachid>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-15 16:55:56 -0700</bug_when>
    <thetext>Created attachment 39624
Uses ENABLE_CONTEXT_MENUS

This leaves the WebKit changes as is; I&apos;m not sure if it is best to patch Mac OS X for this, since Mac OS X will always ship with this on.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147563</commentid>
    <comment_count>12</comment_count>
      <attachid>39624</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2009-09-16 11:02:45 -0700</bug_when>
    <thetext>Comment on attachment 39624
Uses ENABLE_CONTEXT_MENUS

&gt; +        * DerivedSources.make: Use new WebCore.ContextMenu.exp file if ENABLE_CONTEXT_MENUS.
&gt; +        * WebCore.base.exp: Move ContextMenu only exports to WebCore.ContextMenu.exp.
&gt; +        * WebCore.xcodeproj/project.pbxproj: Add WebCore.ContextMenu.exp.

I think &quot;WebCore.ContextMenu.exp&quot; should be renamed to &quot;WebCore.ContextMenus.exp&quot; to match the plurality of the ENABLE(CONTEXT_MENUS) macro.

&gt; +ifeq ($(ENABLE_CONTEXT_MENUS), 1)
&gt; +    WEBCORE_EXPORT_DEPENDENCIES := $(WEBCORE_EXPORT_DEPENDENCIES) WebCore.ContextMenu.exp
&gt; +endif

Ditto.

&gt; diff --git a/WebCore/WebCore.ContextMenu.exp b/WebCore/WebCore.ContextMenu.exp

Ditto.

&gt; +		FEFD102C105C41470002855E /* WebCore.ContextMenu.exp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.exports; path = WebCore.ContextMenu.exp; sourceTree = &quot;&lt;group&gt;&quot;; };

Ditto.

&gt; +				FEFD102C105C41470002855E /* WebCore.ContextMenu.exp */,

Ditto.

&gt; diff --git a/WebCore/page/ContextMenuController.cpp b/WebCore/page/ContextMenuController.cpp
&gt; index 0ec9d1c..063978d 100644
&gt; --- a/WebCore/page/ContextMenuController.cpp
&gt; +++ b/WebCore/page/ContextMenuController.cpp
&gt; @@ -26,6 +26,7 @@
&gt;  #include &quot;config.h&quot;
&gt;  #include &quot;ContextMenuController.h&quot;
&gt;  
&gt; +#if ENABLE(CONTEXT_MENUS)
&gt;  #include &quot;Chrome.h&quot;
&gt;  #include &quot;ContextMenu.h&quot;
&gt;  #include &quot;ContextMenuClient.h&quot;
&gt; @@ -335,3 +336,4 @@ void ContextMenuController::contextMenuItemSelected(ContextMenuItem* item)
&gt;  }
&gt;  
&gt;  } // namespace WebCore
&gt; +#endif // ENABLE(CONTEXT_MENUS)

Please add a blank line after the &quot;#if ENABLE(..&quot; statement and before the &quot;#endif // ...&quot; statement.

&gt; diff --git a/WebCore/platform/ContextMenu.cpp b/WebCore/platform/ContextMenu.cpp
&gt; index cca11b5..5cf6131 100644
&gt; --- a/WebCore/platform/ContextMenu.cpp
&gt; +++ b/WebCore/platform/ContextMenu.cpp
&gt; @@ -27,6 +27,7 @@
&gt;  #include &quot;config.h&quot;
&gt;  #include &quot;ContextMenu.h&quot;
&gt;  
&gt; +#if ENABLE(CONTEXT_MENUS)
&gt;  #include &quot;ContextMenuController.h&quot;
&gt;  #include &quot;ContextMenuClient.h&quot;
&gt;  #include &quot;CSSComputedStyleDeclaration.h&quot;
&gt; @@ -782,3 +783,4 @@ void ContextMenu::checkOrEnableIfNeeded(ContextMenuItem&amp; item) const
&gt;  }
&gt;  
&gt;  }
&gt; +#endif // ENABLE(CONTEXT_MENUS)

Ditto for blank lines.  Adding a comment for the &quot;}&quot; used to end the WebCore namespace would be nice, too, but not necessary.

&gt; diff --git a/WebCore/platform/mac/ContextMenuItemMac.mm b/WebCore/platform/mac/ContextMenuItemMac.mm
&gt; index c5e2942..531c834 100644
&gt; --- a/WebCore/platform/mac/ContextMenuItemMac.mm
&gt; +++ b/WebCore/platform/mac/ContextMenuItemMac.mm
&gt; @@ -26,6 +26,7 @@
&gt;  #include &quot;config.h&quot;
&gt;  #include &quot;ContextMenuItem.h&quot;
&gt;  
&gt; +#if ENABLE(CONTEXT_MENUS)
&gt;  #include &quot;ContextMenu.h&quot;
&gt;  
&gt;  namespace WebCore {
&gt; @@ -153,3 +154,4 @@ bool ContextMenuItem::enabled() const
&gt;  }
&gt;  
&gt;  }
&gt; +#endif // ENABLE(CONTEXT_MENUS)

Ditto.

&gt; diff --git a/WebCore/platform/mac/ContextMenuMac.mm b/WebCore/platform/mac/ContextMenuMac.mm
&gt; index b56d0b9..60832b2 100644
&gt; --- a/WebCore/platform/mac/ContextMenuMac.mm
&gt; +++ b/WebCore/platform/mac/ContextMenuMac.mm
&gt; @@ -26,6 +26,7 @@
&gt;  #include &quot;config.h&quot;
&gt;  #include &quot;ContextMenu.h&quot;
&gt;  
&gt; +#if ENABLE(CONTEXT_MENUS)
&gt;  #include &quot;ContextMenuController.h&quot;
&gt;  
&gt;  @interface WebCoreMenuTarget : NSObject {
&gt; @@ -152,3 +153,4 @@ NSMutableArray* ContextMenu::releasePlatformDescription()
&gt;  }
&gt;  
&gt;  }
&gt; +#endif // ENABLE(CONTEXT_MENUS)

Ditto.

&gt; diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
&gt; diff --git a/WebKit/mac/DefaultDelegates/WebDefaultContextMenuDelegate.mm b/WebKit/mac/DefaultDelegates/WebDefaultContextMenuDelegate.mm
&gt; diff --git a/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm b/WebKit/mac/WebCoreSupport/WebContextMenuClient.mm
&gt; diff --git a/WebKit/mac/WebCoreSupport/WebViewFactory.mm b/WebKit/mac/WebCoreSupport/WebViewFactory.mm
&gt; diff --git a/WebKit/mac/WebView/WebHTMLView.mm b/WebKit/mac/WebView/WebHTMLView.mm
&gt; diff --git a/WebKit/mac/WebView/WebUIDelegatePrivate.h b/WebKit/mac/WebView/WebUIDelegatePrivate.h
&gt; diff --git a/WebKit/mac/WebView/WebView.mm b/WebKit/mac/WebView/WebView.mm

As we discussed offline, please leave these changes out.  It doesn&apos;t make sense to disable context menu support for code in WebKit/mac.  When WebKit code for iPhone lands, it will be refactored or moved instead of shared within WebKit/mac.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>147585</commentid>
    <comment_count>13</comment_count>
    <who name="Greg Bolsinga">bolsinga</who>
    <bug_when>2009-09-16 12:41:34 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/48429</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39518</attachid>
            <date>2009-09-12 14:36:25 -0700</date>
            <delta_ts>2009-09-14 10:36:49 -0700</delta_ts>
            <desc>This patch implements the needed changes</desc>
            <filename>0001-JavaScriptCore-Add-ENABLE-CONTEXT_MENU.patch</filename>
            <type>text/plain</type>
            <size>37968</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">RnJvbSA0YTg5ZTJmYmE2NTdmODRlM2E1M2VkM2YzNTdkMWI1ZGEwODM4OGUzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHcmVnIEJvbHNpbmdhIDxib2xzaW5nYUBhcHBsZS5jb20+CkRh
dGU6IFNhdCwgMTIgU2VwIDIwMDkgMTQ6MzI6MjUgLTA3MDAKU3ViamVjdDogW1BBVENIXSBKYXZh
U2NyaXB0Q29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlUpCiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
KiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzoKKiB3dGYvUGxhdGZvcm0u
aDoKCldlYkNvcmU6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
Tm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZpb3IuKQoKKiBDb25maWd1
cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZzogQWRkIEVOQUJMRV9DT05URVhUX01FTlUu
CiogRGVyaXZlZFNvdXJjZXMubWFrZTogVXNlIG5ldyBXZWJDb3JlLkNvbnRleHRNZW51LmV4cCBm
aWxlIGlmIEVOQUJMRV9DT05URVhUX01FTlUuCiogV2ViQ29yZS5iYXNlLmV4cDogTW92ZSBDb250
ZXh0TWVudSBvbmx5IGV4cG9ydHMgdG8gV2ViQ29yZS5Db250ZXh0TWVudS5leHAuCiogV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgV2ViQ29yZS5Db250ZXh0TWVudS5leHAu
CiogZG9tL05vZGUuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJs
ZS4KKFdlYkNvcmU6Ok5vZGU6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgoqIGxvYWRlci9FbXB0eUNs
aWVudHMuaDogRGl0dG8uCiogcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwOiBXcmFwIGVu
dGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgoqIHBhZ2UvRXZlbnRIYW5kbGVyLmNw
cDogVXNlIEVOQUJMRShDT05URVhUX01FTlUpIHdoZXJlIGFwcGxpY2FibGUuCiogcGFnZS9FdmVu
dEhhbmRsZXIuaDogRGl0dG8uCiogcGFnZS9QYWdlLmNwcDogRGl0dG8uCihXZWJDb3JlOjpQYWdl
OjpQYWdlKToKKiBwYWdlL1BhZ2UuaDogRGl0dG8uCiogcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFj
Lm1tOiBEaXR0by4KKiBwYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaDogRGl0dG8uCiogcGxh
dGZvcm0vQ29udGV4dE1lbnUuY3BwOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhU
X01FTlUpLgoqIHBsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaDogVXNlIEVOQUJMRShDT05URVhU
X01FTlUpIHdoZXJlIGFwcGxpY2FibGUuCiogcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1h
Yy5tbTogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VKS4KKiBwbGF0Zm9y
bS9tYWMvQ29udGV4dE1lbnVNYWMubW06IERpdHRvLgoqIHBsYXRmb3JtL21hYy9Mb2NhbGl6ZWRT
dHJpbmdzTWFjLm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4K
KiBzdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwOiBEaXR0by4KKFdlYkNvcmU6OlNWR0ltYWdlOjpk
YXRhQ2hhbmdlZCk6CgpXZWJLaXQvbWFjOiBBZGQgRU5BQkxFKENPTlRFWFRfTUVOVSkKaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5MjI1CgpSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KClNldCB1cCBkZWZhdWx0cyBmb3IgRU5BQkxFX0NPTlRFWFRfTUVOVSAob2Zm
IGZvciBpUGhvbmUsIG9uIG90aGVyd2lzZSkKCiogQ29uZmlndXJhdGlvbnMvRmVhdHVyZURlZmlu
ZXMueGNjb25maWc6IEFkZCBFTkFCTEVfQ09OVEVYVF9NRU5VLgoqIERlZmF1bHREZWxlZ2F0ZXMv
V2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW06IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5B
QkxFKENPTlRFWFRfTUVOVSkuCiogV2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQu
bW06IERpdHRvLgoqIFdlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tOiBVc2UgRU5BQkxF
KENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwcm9wcmlhdGUuCiogV2ViVmlldy9XZWJIVE1MVmlldy5t
bTogRGl0dG8uCigtW1dlYkhUTUxWaWV3IG1lbnVGb3JFdmVudDpdKToKKiBXZWJWaWV3L1dlYlVJ
RGVsZWdhdGVQcml2YXRlLmg6IERpdHRvLgoqIFdlYlZpZXcvV2ViVmlldy5tbTogRGl0dG8uCigt
W1dlYlZpZXcgX2NvbW1vbkluaXRpYWxpemF0aW9uV2l0aEZyYW1lTmFtZTpncm91cE5hbWU6dXNl
c0RvY3VtZW50Vmlld3M6XSk6CgpXZWJLaXRUb29sczogQWRkIEVOQUJMRShDT05URVhUX01FTlUp
Cmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTIyNQoKUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCgpBbGxvdyBFTkFCTEVfQ09OVEVYVF9NRU5VIHRvIGJlIHNldCBm
cm9tIGJ1aWxkLXdlYmtpdC4KCiogU2NyaXB0cy9idWlsZC13ZWJraXQ6Ci0tLQogSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICsrKysrKwog
Li4uL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnICAgICAgICAgfCAgICAz
ICstCiBKYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaCAgICAgICAgICAgICAgICAgICAgICB8
ICAgIDUgKysrCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgMzIgKysrKysrKysrKysrKysrKysrKysKIFdlYkNvcmUvQ29uZmlndXJhdGlvbnMv
RmVhdHVyZURlZmluZXMueGNjb25maWcgICAgIHwgICAgMyArLQogV2ViQ29yZS9EZXJpdmVkU291
cmNlcy5tYWtlICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrCiBXZWJDb3JlL1dlYkNv
cmUuQ29udGV4dE1lbnUuZXhwICAgICAgICAgICAgICAgICAgICB8ICAgIDUgKysrCiBXZWJDb3Jl
L1dlYkNvcmUuYmFzZS5leHAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDUgLS0tCiBX
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiAgICAgICAgICB8ICAgIDIg
KwogV2ViQ29yZS9kb20vTm9kZS5jcHAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAg
ICAyICsKIFdlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oICAgICAgICAgICAgICAgICAgICAg
IHwgICAgMiArCiBXZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250cm9sbGVyLmNwcCAgICAgICAg
ICAgICB8ICAgIDIgKwogV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaCAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgNCArKwogV2ViQ29yZS9wYWdlL1BhZ2UuY3BwICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgfCAgICA1ICsrKwogV2ViQ29yZS9wYWdlL1BhZ2UuaCAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrCiBXZWJDb3JlL3BhZ2UvbWFjL0V2ZW50
SGFuZGxlck1hYy5tbSAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wYWdlL21hYy9X
ZWJDb3JlVmlld0ZhY3RvcnkuaCAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGxhdGZv
cm0vQ29udGV4dE1lbnUuY3BwICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3Bs
YXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaCAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tICAgICAgICAgfCAgICAyICsKIFdl
YkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tICAgICAgICAgICAgIHwgICAgMiAr
CiBXZWJDb3JlL3BsYXRmb3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tICAgICAgICB8ICAg
IDIgKwogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwICAgICAgICAgICAgICAgICAg
fCAgICA0ICsrCiBXZWJLaXQvbWFjL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgMTkgKysrKysrKysrKysrCiBXZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1
cmVEZWZpbmVzLnhjY29uZmlnICB8ICAgIDMgKy0KIC4uLi9XZWJEZWZhdWx0Q29udGV4dE1lbnVE
ZWxlZ2F0ZS5tbSAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tICB8ICAgIDIgKwogV2ViS2l0L21hYy9XZWJDb3Jl
U3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbSAgICAgICAgfCAgICAyICsKIFdlYktpdC9tYWMvV2Vi
Vmlldy9XZWJIVE1MVmlldy5tbSAgICAgICAgICAgICAgICAgIHwgICAgNyArKysrCiBXZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaCAgICAgICAgICB8ICAgIDIgKwogV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gICAgICAgICAgICAgICAgICAgICAgfCAgICA5ICsr
KysrLQogV2ViS2l0VG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
fCAgIDExICsrKysrKysKIFdlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0ICAgICAgICAg
ICAgICAgICAgIHwgICAgNSArKy0KIDM0IGZpbGVzIGNoYW5nZWQsIDE2MCBpbnNlcnRpb25zKCsp
LCAxMCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBXZWJDb3JlL1dlYkNvcmUuQ29u
dGV4dE1lbnUuZXhwCgpkaWZmIC0tZ2l0IGEvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nIGIvSmF2
YVNjcmlwdENvcmUvQ2hhbmdlTG9nCmluZGV4IGUyZTE0OGYuLmVjMzIxZWUgMTAwNjQ0Ci0tLSBh
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZworKysgYi9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxMyBAQAorMjAwOS0wOS0xMiAgR3JlZyBCb2xzaW5nYSAgPGJvbHNpbmdhQGFw
cGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBBZGQgRU5BQkxFKENPTlRFWFRfTUVOVSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTI5MjI1CisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0
dXJlRGVmaW5lcy54Y2NvbmZpZzoKKyAgICAgICAgKiB3dGYvUGxhdGZvcm0uaDoKKwogMjAwOS0w
OS0xMSAgT2xpdmVyIEh1bnQgIDxvbGl2ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2Vk
IGJ5IFNhbSBXZWluaWcuCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9Db25maWd1cmF0aW9u
cy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25z
L0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCmluZGV4IDBlNjczNjguLmRkNTU4YmYgMTAwNjQ0Ci0t
LSBhL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmln
CisrKyBiL0phdmFTY3JpcHRDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnCkBAIC0zNSw2ICszNSw3IEBAIEVOQUJMRV8zRF9SRU5ERVJJTkdfMTA1MCA9IEVOQUJMRV8z
RF9SRU5ERVJJTkc7CiBFTkFCTEVfM0RfUkVOREVSSU5HXzEwNjAgPSBFTkFCTEVfM0RfUkVOREVS
SU5HOwogCiBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkcgPSBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJ
Tkc7CitFTkFCTEVfQ09OVEVYVF9NRU5VID0gRU5BQkxFX0NPTlRFWFRfTUVOVTsKIEVOQUJMRV9E
QVRBQkFTRSA9IEVOQUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IEVOQUJMRV9EQVRB
R1JJRDsKIEVOQUJMRV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKQEAgLTYyLDQgKzYzLDQg
QEAgRU5BQkxFX1dPUktFUlMgPSBFTkFCTEVfV09SS0VSUzsKIEVOQUJMRV9YUEFUSCA9IEVOQUJM
RV9YUEFUSDsKIEVOQUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9
ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9DSEFO
TkVMX01FU1NBR0lORykgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFHUklEKSAkKEVO
QUJMRV9EQVRBTElTVCkgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNF
KSAkKEVOQUJMRV9GSUxURVJTKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRB
VEFCQVNFKSAkKEVOQUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9OT1RJRklDQVRJ
T05TKSAkKEVOQUJMRV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1JVQlkpICQo
RU5BQkxFX1NIQVJFRF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJ
T04pICQoRU5BQkxFX1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdT
KSAkKEVOQUJMRV9TVkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFC
TEVfU1ZHX1VTRSkgJChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJM
RV9XTUwpICQoRU5BQkxFX1dPUktFUlMpICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsK
K0ZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVS
SU5HKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ09OVEVYVF9NRU5VKSAk
KEVOQUJMRV9EQVRBQkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAk
KEVOQUJMRV9ET01fU1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRF
UlMpICQoRU5BQkxFX0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxF
X0pBVkFTQ1JJUFRfREVCVUdHRVIpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09G
RkxJTkVfV0VCX0FQUExJQ0FUSU9OUykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0hBUkVEX1dP
UktFUlMpICQoRU5BQkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZH
X0FTX0lNQUdFKSAkKEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19G
T05UUykgJChFTkFCTEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVO
QUJMRV9WSURFTykgJChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVf
V09SS0VSUykgJChFTkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEvSmF2
YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmggYi9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0u
aAppbmRleCA4NDJmZmJkLi4xMWY5NWIzIDEwMDY0NAotLS0gYS9KYXZhU2NyaXB0Q29yZS93dGYv
UGxhdGZvcm0uaAorKysgYi9KYXZhU2NyaXB0Q29yZS93dGYvUGxhdGZvcm0uaApAQCAtNDEwLDYg
KzQxMCw3IEBACiAjaWYgUExBVEZPUk0oSVBIT05FKQogI2RlZmluZSBXVEZfUExBVEZPUk1fQ0Yg
MQogI2RlZmluZSBXVEZfVVNFX1BUSFJFQURTIDEKKyNkZWZpbmUgRU5BQkxFX0NPTlRFWFRfTUVO
VSAwCiAjZGVmaW5lIEVOQUJMRV9GVFBESVIgMQogI2RlZmluZSBFTkFCTEVfTUFDX0pBVkFfQlJJ
REdFIDAKICNkZWZpbmUgRU5BQkxFX0lDT05EQVRBQkFTRSAwCkBAIC01NTIsNiArNTUzLDEwIEBA
CiAjZGVmaW5lIEVOQUJMRV9GVFBESVIgMQogI2VuZGlmCiAKKyNpZiAhZGVmaW5lZChFTkFCTEVf
Q09OVEVYVF9NRU5VKQorI2RlZmluZSBFTkFCTEVfQ09OVEVYVF9NRU5VIDEKKyNlbmRpZgorCiAj
aWYgIWRlZmluZWQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKQogI2RlZmluZSBFTkFCTEVfREFT
SEJPQVJEX1NVUFBPUlQgMAogI2VuZGlmCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGM2YTAxZmUuLmNjMmY5YWUgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAK
KzIwMDktMDktMTIgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBsZS5jb20+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJMRShDT05U
RVhUX01FTlUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yOTIyNQorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4gKE5vIGNoYW5nZSBpbiBkZWZhdWx0IGJl
aGF2aW9yLikKKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29u
ZmlnOiBBZGQgRU5BQkxFX0NPTlRFWFRfTUVOVS4KKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5t
YWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4dE1lbnUuZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRF
WFRfTUVOVS4KKyAgICAgICAgKiBXZWJDb3JlLmJhc2UuZXhwOiBNb3ZlIENvbnRleHRNZW51IG9u
bHkgZXhwb3J0cyB0byBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4KKyAgICAgICAgKiBXZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4K
KyAgICAgICAgKiBkb20vTm9kZS5jcHA6IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBh
cHBsaWNhYmxlLgorICAgICAgICAoV2ViQ29yZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6
CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xpZW50cy5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdl
L0NvbnRleHRNZW51Q29udHJvbGxlci5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENP
TlRFWFRfTUVOVSkuCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuY3BwOiBVc2UgRU5BQkxF
KENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFu
ZGxlci5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL1BhZ2UuY3BwOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OlBhZ2U6OlBhZ2UpOgorICAgICAgICAqIHBhZ2UvUGFnZS5oOiBEaXR0by4KKyAg
ICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW06IERpdHRvLgorICAgICAgICAqIHBh
Z2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9D
b250ZXh0TWVudS5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSku
CisgICAgICAgICogcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENPTlRF
WFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQ29udGV4
dE1lbnVJdGVtTWFjLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUp
LgorICAgICAgICAqIHBsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbTogRGl0dG8uCisgICAg
ICAgICogcGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NNYWMubW06IFVzZSBFTkFCTEUoQ09O
VEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNhYmxlLgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJ
bWFnZS5jcHA6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U1ZHSW1hZ2U6OmRhdGFDaGFuZ2Vk
KToKKwogMjAwOS0wOS0xMiAgU2FtIFdlaW5pZyAgPHNhbUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IE1hY2llaiBTdGFjaG93aWFrLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9Db25m
aWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZyBiL1dlYkNvcmUvQ29uZmlndXJhdGlv
bnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKaW5kZXggMGU2NzM2OC4uZGQ1NThiZiAxMDA2NDQK
LS0tIGEvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2NvbmZpZworKysg
Yi9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCkBAIC0zNSw2
ICszNSw3IEBAIEVOQUJMRV8zRF9SRU5ERVJJTkdfMTA1MCA9IEVOQUJMRV8zRF9SRU5ERVJJTkc7
CiBFTkFCTEVfM0RfUkVOREVSSU5HXzEwNjAgPSBFTkFCTEVfM0RfUkVOREVSSU5HOwogCiBFTkFC
TEVfQ0hBTk5FTF9NRVNTQUdJTkcgPSBFTkFCTEVfQ0hBTk5FTF9NRVNTQUdJTkc7CitFTkFCTEVf
Q09OVEVYVF9NRU5VID0gRU5BQkxFX0NPTlRFWFRfTUVOVTsKIEVOQUJMRV9EQVRBQkFTRSA9IEVO
QUJMRV9EQVRBQkFTRTsKIEVOQUJMRV9EQVRBR1JJRCA9IEVOQUJMRV9EQVRBR1JJRDsKIEVOQUJM
RV9EQVRBTElTVCA9IEVOQUJMRV9EQVRBTElTVDsKQEAgLTYyLDQgKzYzLDQgQEAgRU5BQkxFX1dP
UktFUlMgPSBFTkFCTEVfV09SS0VSUzsKIEVOQUJMRV9YUEFUSCA9IEVOQUJMRV9YUEFUSDsKIEVO
QUJMRV9YU0xUID0gRU5BQkxFX1hTTFQ7CiAKLUZFQVRVUkVfREVGSU5FUyA9ICQoRU5BQkxFXzNE
X0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJMRV9DSEFOTkVMX01FU1NBR0lO
RykgJChFTkFCTEVfREFUQUJBU0UpICQoRU5BQkxFX0RBVEFHUklEKSAkKEVOQUJMRV9EQVRBTElT
VCkgJChFTkFCTEVfRE9NX1NUT1JBR0UpICQoRU5BQkxFX0VWRU5UU09VUkNFKSAkKEVOQUJMRV9G
SUxURVJTKSAkKEVOQUJMRV9HRU9MT0NBVElPTikgJChFTkFCTEVfSUNPTkRBVEFCQVNFKSAkKEVO
QUJMRV9KQVZBU0NSSVBUX0RFQlVHR0VSKSAkKEVOQUJMRV9OT1RJRklDQVRJT05TKSAkKEVOQUJM
RV9PRkZMSU5FX1dFQl9BUFBMSUNBVElPTlMpICQoRU5BQkxFX1JVQlkpICQoRU5BQkxFX1NIQVJF
RF9XT1JLRVJTKSAkKEVOQUJMRV9TVkcpICQoRU5BQkxFX1NWR19BTklNQVRJT04pICQoRU5BQkxF
X1NWR19BU19JTUFHRSkgJChFTkFCTEVfU1ZHX0RPTV9PQkpDX0JJTkRJTkdTKSAkKEVOQUJMRV9T
VkdfRk9OVFMpICQoRU5BQkxFX1NWR19GT1JFSUdOX09CSkVDVCkgJChFTkFCTEVfU1ZHX1VTRSkg
JChFTkFCTEVfVklERU8pICQoRU5BQkxFX1dFQl9TT0NLRVRTKSAkKEVOQUJMRV9XTUwpICQoRU5B
QkxFX1dPUktFUlMpICQoRU5BQkxFX1hQQVRIKSAkKEVOQUJMRV9YU0xUKTsKK0ZFQVRVUkVfREVG
SU5FUyA9ICQoRU5BQkxFXzNEX0NBTlZBUykgJChFTkFCTEVfM0RfUkVOREVSSU5HKSAkKEVOQUJM
RV9DSEFOTkVMX01FU1NBR0lORykgJChFTkFCTEVfQ09OVEVYVF9NRU5VKSAkKEVOQUJMRV9EQVRB
QkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01f
U1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxF
X0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRf
REVCVUdHRVIpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQ
UExJQ0FUSU9OUykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5B
QkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAk
KEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFC
TEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykg
JChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVk
U291cmNlcy5tYWtlIGIvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGZhZTc1ZTMu
LmZiOWRlYzAgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9X
ZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKQEAgLTc1OCw2ICs3NTgsMTAgQEAgaWZlcSAoJChz
aGVsbCBnY2MgLUUgLVAgLWRNIC1GICQoQlVJTFRfUFJPRFVDVFNfRElSKSAkKEZSQU1FV09SS19G
TEFHUykgV2ViQ29yZS8KICAgICBXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0gJChXRUJD
T1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMpIFdlYkNvcmUuTlBBUEkuZXhwCiBlbmRpZgogCitpZmVx
ICgkKGZpbmRzdHJpbmcgRU5BQkxFX0NPTlRFWFRfTUVOVSwkKEZFQVRVUkVfREVGSU5FUykpLCBF
TkFCTEVfQ09OVEVYVF9NRU5VKQorICAgIFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUyA6PSAk
KFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUykgV2ViQ29yZS5Db250ZXh0TWVudS5leHAKK2Vu
ZGlmCisKIGlmZXEgKCQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSwgMSkKICAgICBXRUJDT1JF
X0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0gJChXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMpIFdl
YkNvcmUuRGFzaGJvYXJkU3VwcG9ydC5leHAKIGVuZGlmCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dl
YkNvcmUuQ29udGV4dE1lbnUuZXhwIGIvV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cApu
ZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MmIyYzFmCi0tLSAvZGV2L251bGwK
KysrIGIvV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cApAQCAtMCwwICsxLDUgQEAKK19f
Wk43V2ViQ29yZTExQ29udGV4dE1lbnUyMnNldFBsYXRmb3JtRGVzY3JpcHRpb25FUDE0TlNNdXRh
YmxlQXJyYXkKK19fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBzZW5kQ29udGV4dE1lbnVFdmVu
dEVQN05TRXZlbnQKK19fWk43V2ViQ29yZTE1Q29udGV4dE1lbnVJdGVtMjZyZWxlYXNlUGxhdGZv
cm1EZXNjcmlwdGlvbkV2CitfX1pON1dlYkNvcmUyMUNvbnRleHRNZW51Q29udHJvbGxlcjE2Y2xl
YXJDb250ZXh0TWVudUV2CitfX1pOSzdXZWJDb3JlMTFDb250ZXh0TWVudTE5cGxhdGZvcm1EZXNj
cmlwdGlvbkV2CmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAgYi9XZWJDb3Jl
L1dlYkNvcmUuYmFzZS5leHAKaW5kZXggNzRjZjMzNS4uNGI4NzMzZSAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9XZWJDb3JlLmJhc2UuZXhwCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cApAQCAt
MTQ2LDcgKzE0Niw2IEBAIF9fWk43V2ViQ29yZTEwaGFuZEN1cnNvckV2CiBfX1pON1dlYkNvcmUx
MHNldENvb2tpZXNFUE5TXzhEb2N1bWVudEVSS05TXzRLVVJMRVJLTlNfNlN0cmluZ0UKIF9fWk43
V2ViQ29yZTExQ2FjaGVkRnJhbWUyM2NhY2hlZEZyYW1lUGxhdGZvcm1EYXRhRXYKIF9fWk43V2Vi
Q29yZTExQ2FjaGVkRnJhbWUyNnNldENhY2hlZEZyYW1lUGxhdGZvcm1EYXRhRVBOU18yM0NhY2hl
ZEZyYW1lUGxhdGZvcm1EYXRhRQotX19aTjdXZWJDb3JlMTFDb250ZXh0TWVudTIyc2V0UGxhdGZv
cm1EZXNjcmlwdGlvbkVQMTROU011dGFibGVBcnJheQogX19aTjdXZWJDb3JlMTFFZGl0Q29tbWFu
ZDdyZWFwcGx5RXYKIF9fWk43V2ViQ29yZTExRWRpdENvbW1hbmQ3dW5hcHBseUV2CiBfX1pON1dl
YkNvcmUxMUZpbGVDaG9vc2VyMTBjaG9vc2VGaWxlRVJLTlNfNlN0cmluZ0UKQEAgLTIyOCw3ICsy
MjcsNiBAQCBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjE3ZHJhZ1NvdXJjZU1vdmVkVG9FUktO
U18xOFBsYXRmb3JtTW91c2VFdmVudEUKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMTdldmVu
dE1heVN0YXJ0RHJhZ0VQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBoYW5k
bGVUZXh0SW5wdXRFdmVudEVSS05TXzZTdHJpbmdFUE5TXzVFdmVudEViYgogX19aTjdXZWJDb3Jl
MTJFdmVudEhhbmRsZXIyMGhpdFRlc3RSZXN1bHRBdFBvaW50RVJLTlNfOEludFBvaW50RWJiTlNf
MTdIaXRUZXN0U2Nyb2xsYmFyc0UKLV9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBzZW5kQ29u
dGV4dE1lbnVFdmVudEVQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjdjYXBz
TG9ja1N0YXRlTWF5SGF2ZUNoYW5nZWRFdgogX19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXI3bW91
c2VVcEVQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyOGtleUV2ZW50RVA3TlNF
dmVudApAQCAtMzQwLDcgKzMzOCw2IEBAIF9fWk43V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0OGdv
VG9JdGVtRVBOU18xMUhpc3RvcnlJdGVtRQogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2FyZExpc3Q5
Z29Gb3J3YXJkRXYKIF9fWk43V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0QzFFUE5TXzRQYWdlRQog
X19aTjdXZWJDb3JlMTVCYWNrRm9yd2FyZExpc3REMUV2Ci1fX1pON1dlYkNvcmUxNUNvbnRleHRN
ZW51SXRlbTI2cmVsZWFzZVBsYXRmb3JtRGVzY3JpcHRpb25FdgogX19aTjdXZWJDb3JlMTVEYXRh
YmFzZVRyYWNrZXIxMmRlbGV0ZU9yaWdpbkVQTlNfMTRTZWN1cml0eU9yaWdpbkUKIF9fWk43V2Vi
Q29yZTE1RGF0YWJhc2VUcmFja2VyMTRkZWxldGVEYXRhYmFzZUVQTlNfMTRTZWN1cml0eU9yaWdp
bkVSS05TXzZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNURhdGFiYXNlVHJhY2tlcjE0cXVvdGFGb3JP
cmlnaW5FUE5TXzE0U2VjdXJpdHlPcmlnaW5FCkBAIC00MzMsNyArNDMwLDYgQEAgX19aTjdXZWJD
b3JlMTlUZXh0UmVzb3VyY2VEZWNvZGVyRDFFdgogX19aTjdXZWJDb3JlMTlhcHBsaWNhdGlvbklz
U2FmYXJpRXYKIF9fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNwb25zZUJhc2UyNHNldEV4cGVjdGVk
Q29udGVudExlbmd0aEV4CiBfX1pON1dlYkNvcmUyMFJlc291cmNlUmVzcG9uc2VCYXNlQzJFdgot
X19aTjdXZWJDb3JlMjFDb250ZXh0TWVudUNvbnRyb2xsZXIxNmNsZWFyQ29udGV4dE1lbnVFdgog
X19aTjdXZWJDb3JlMjFKYXZhU2NyaXB0RGVidWdTZXJ2ZXIyM3JlY29tcGlsZUFsbEpTRnVuY3Rp
b25zRVBOU181VGltZXJJUzBfRUUKIF9fWk43V2ViQ29yZTIxSmF2YVNjcmlwdERlYnVnU2VydmVy
NnNoYXJlZEV2CiBfX1pON1dlYkNvcmUyMVBsYXRmb3JtS2V5Ym9hcmRFdmVudDI0ZGlzYW1iaWd1
YXRlS2V5RG93bkV2ZW50RU5TMF80VHlwZUViCkBAIC03NzMsNyArNzY5LDYgQEAgX19aTks3V2Vi
Q29yZTEwU2Nyb2xsVmlldzEyZG9jdW1lbnRWaWV3RXYKIF9fWk5LN1dlYkNvcmUxMFNjcm9sbFZp
ZXcxNHNjcm9sbGJhck1vZGVzRVJOU18xM1Njcm9sbGJhck1vZGVFUzJfCiBfX1pOSzdXZWJDb3Jl
MTBTY3JvbGxWaWV3MTh2aXNpYmxlQ29udGVudFJlY3RFYgogX19aTks3V2ViQ29yZTExQ2FjaGVk
SW1hZ2U1aW1hZ2VFdgotX19aTks3V2ViQ29yZTExQ29udGV4dE1lbnUxOXBsYXRmb3JtRGVzY3Jp
cHRpb25FdgogX19aTks3V2ViQ29yZTExRnJhbWVMb2FkZXIxMGlzQ29tcGxldGVFdgogX19aTks3
V2ViQ29yZTExRnJhbWVMb2FkZXIxNGZyYW1lSGFzTG9hZGVkRXYKIF9fWk5LN1dlYkNvcmUxMUZy
YW1lTG9hZGVyMTVjb250YWluc1BsdWdpbnNFdgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCAyOTU2NDk2Li4yNzc1MmRiIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTgzOCw2ICs5ODM4LDcgQEAKIAkJRkU4MERB
NkUwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBKU1Bvc2l0aW9uRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJRkVBQjkwMTAwRUE1MUI5QzAwNjM0OEMzIC8qIEdlb2xvY2F0aW9uU2VydmljZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHZW9sb2NhdGlvblNlcnZp
Y2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRUFCOTAxMTBFQTUxQjlDMDA2
MzQ4QzMgLyogR2VvbG9jYXRpb25TZXJ2aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IEdlb2xvY2F0aW9uU2VydmljZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQlGRUZEMTAyQzEwNUM0MTQ3MDAwMjg1NUUgLyogV2ViQ29yZS5Db250ZXh0TWVudS5leHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmV4cG9ydHM7IHBhdGggPSBXZWJDb3JlLkNvbnRleHRNZW51LmV4
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIC8qIEVuZCBQQlhGaWxlUmVmZXJlbmNlIHNl
Y3Rpb24gKi8KIAogLyogQmVnaW4gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwpA
QCAtMTA0MzQsNiArMTA0MzUsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9
ICgKIAkJCQlGNThFRjU4RTAyREZERkI3MDE4NjM1Q0EgLyogV2ViQ29yZS5iYXNlLmV4cCAqLywK
KwkJCQlGRUZEMTAyQzEwNUM0MTQ3MDAwMjg1NUUgLyogV2ViQ29yZS5Db250ZXh0TWVudS5leHAg
Ki8sCiAJCQkJNDQ5MTk1OUQwRkJFMTdENzAwRDlGODI0IC8qIFdlYkNvcmUuRGFzaGJvYXJkU3Vw
cG9ydC5leHAgKi8sCiAJCQkJNDQ5MTk1OUMwRkJFMTdENzAwRDlGODI0IC8qIFdlYkNvcmUuSk5J
LmV4cCAqLywKIAkJCQk0NDkxOTU5QjBGQkUxN0Q3MDBEOUY4MjQgLyogV2ViQ29yZS5MUDY0LmV4
cCAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvV2ViQ29yZS9kb20vTm9k
ZS5jcHAKaW5kZXggODFjMTg2Ny4uZGMzZTJmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vTm9k
ZS5jcHAKKysrIGIvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTI5OTcsMTAgKzI5OTcsMTIgQEAg
dm9pZCBOb2RlOjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkKICAgICB9IGVsc2Ug
aWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuY2xpY2tFdmVudCkgewogICAgICAgICBpbnQg
ZGV0YWlsID0gZXZlbnQtPmlzVUlFdmVudCgpID8gc3RhdGljX2Nhc3Q8VUlFdmVudCo+KGV2ZW50
KS0+ZGV0YWlsKCkgOiAwOwogICAgICAgICBkaXNwYXRjaFVJRXZlbnQoZXZlbnROYW1lcygpLkRP
TUFjdGl2YXRlRXZlbnQsIGRldGFpbCwgZXZlbnQpOworI2lmIEVOQUJMRShDT05URVhUX01FTlUp
CiAgICAgfSBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmNvbnRleHRtZW51RXZl
bnQpIHsKICAgICAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpCiAg
ICAgICAgICAgICBpZiAoUGFnZSogcGFnZSA9IGZyYW1lLT5wYWdlKCkpCiAgICAgICAgICAgICAg
ICAgcGFnZS0+Y29udGV4dE1lbnVDb250cm9sbGVyKCktPmhhbmRsZUNvbnRleHRNZW51RXZlbnQo
ZXZlbnQpOworI2VuZGlmCiAgICAgfSBlbHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygp
LnRleHRJbnB1dEV2ZW50KSB7CiAgICAgICAgIGlmIChldmVudC0+aXNUZXh0RXZlbnQoKSkKICAg
ICAgICAgICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmggYi9XZWJDb3JlL2xvYWRlci9FbXB0
eUNsaWVudHMuaAppbmRleCBjMDhlMjYxLi42ZDdhMzJmIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xv
YWRlci9FbXB0eUNsaWVudHMuaAorKysgYi9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaApA
QCAtNDE1LDYgKzQxNSw3IEBAIHB1YmxpYzoKIAogfTsKIAorI2lmIEVOQUJMRShDT05URVhUX01F
TlUpCiBjbGFzcyBFbXB0eUNvbnRleHRNZW51Q2xpZW50IDogcHVibGljIENvbnRleHRNZW51Q2xp
ZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0dWFsIH5FbXB0eUNvbnRleHRNZW51Q2xpZW50KCkgeyAg
fQpAQCAtNDM1LDYgKzQzNiw3IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2VhcmNoV2l0
aFNwb3RsaWdodCgpIHsgfQogI2VuZGlmCiB9OworI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01F
TlUpCiAKIGNsYXNzIEVtcHR5RHJhZ0NsaWVudCA6IHB1YmxpYyBEcmFnQ2xpZW50IHsKIHB1Ymxp
YzoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwIGIv
V2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAKaW5kZXggMGVjOWQxYy4uZjVm
ZmZhNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAK
KysrIGIvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAKQEAgLTI2LDYgKzI2
LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xs
ZXIuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAjaW5jbHVkZSAiQ2hyb21lLmgiCiAj
aW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNsaWVudC5oIgpA
QCAtMzM1LDMgKzMzNiw0IEBAIHZvaWQgQ29udGV4dE1lbnVDb250cm9sbGVyOjpjb250ZXh0TWVu
dUl0ZW1TZWxlY3RlZChDb250ZXh0TWVudUl0ZW0qIGl0ZW0pCiB9CiAKIH0gLy8gbmFtZXNwYWNl
IFdlYkNvcmUKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNw
cAppbmRleCBlOWRkM2JmLi5kMzdmOGQwIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRXZlbnRI
YW5kbGVyLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMTgwOSw2
ICsxODA5LDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6OmhhbmRsZVdoZWVsRXZlbnQoUGxhdGZvcm1X
aGVlbEV2ZW50JiBlKQogICAgIHJldHVybiBlLmlzQWNjZXB0ZWQoKTsKIH0KIAorI2lmIEVOQUJM
RShDT05URVhUX01FTlUpCiBib29sIEV2ZW50SGFuZGxlcjo6c2VuZENvbnRleHRNZW51RXZlbnQo
Y29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCkKIHsKICAgICBEb2N1bWVudCogZG9jID0g
bV9mcmFtZS0+ZG9jdW1lbnQoKTsKQEAgLTE4MzksNiArMTg0MCw3IEBAIGJvb2wgRXZlbnRIYW5k
bGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50
KQogICAgIAogICAgIHJldHVybiBzd2FsbG93RXZlbnQ7CiB9CisjZW5kaWYgLy8gRU5BQkxFKENP
TlRFWFRfTUVOVSkKIAogdm9pZCBFdmVudEhhbmRsZXI6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0
ZSgpCiB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmggYi9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5kZXggYmQ1YzMxMi4uMGE4ODg0NCAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCisrKyBiL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuaApAQCAtMTI5LDcgKzEyOSw5IEBAIHB1YmxpYzoKICAgICBib29sIGhhbmRsZU1vdXNlUmVs
ZWFzZUV2ZW50KGNvbnN0IFBsYXRmb3JtTW91c2VFdmVudCYpOwogICAgIGJvb2wgaGFuZGxlV2hl
ZWxFdmVudChQbGF0Zm9ybVdoZWVsRXZlbnQmKTsKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUp
CiAgICAgYm9vbCBzZW5kQ29udGV4dE1lbnVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQm
KTsKKyNlbmRpZgogCiAgICAgdm9pZCBzZXRNb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwoKSB7
IG1fbW91c2VEb3duTWF5U3RhcnRBdXRvc2Nyb2xsID0gdHJ1ZTsgfQogCkBAIC0xNjYsNyArMTY4
LDkgQEAgcHVibGljOgogICAgIGJvb2wga2V5RXZlbnQoTlNFdmVudCAqKTsKICAgICBib29sIHdo
ZWVsRXZlbnQoTlNFdmVudCAqKTsKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgYm9v
bCBzZW5kQ29udGV4dE1lbnVFdmVudChOU0V2ZW50ICopOworI2VuZGlmCiAgICAgYm9vbCBldmVu
dE1heVN0YXJ0RHJhZyhOU0V2ZW50ICopOwogCiAgICAgdm9pZCBzZW5kRmFrZUV2ZW50c0FmdGVy
V2lkZ2V0VHJhY2tpbmcoTlNFdmVudCAqaW5pdGlhdGluZ0V2ZW50KTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGFnZS9QYWdlLmNwcCBiL1dlYkNvcmUvcGFnZS9QYWdlLmNwcAppbmRleCA0YzQzZWNl
Li5jZGNlMjI4IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKKysrIGIvV2ViQ29y
ZS9wYWdlL1BhZ2UuY3BwCkBAIC0xMDIsNyArMTAyLDkgQEAgUGFnZTo6UGFnZShDaHJvbWVDbGll
bnQqIGNocm9tZUNsaWVudCwgQ29udGV4dE1lbnVDbGllbnQqIGNvbnRleHRNZW51Q2xpZW50LCBF
ZGkKICAgICAsIG1fZHJhZ0NhcmV0Q29udHJvbGxlcihuZXcgU2VsZWN0aW9uQ29udHJvbGxlcigw
LCB0cnVlKSkKICAgICAsIG1fZHJhZ0NvbnRyb2xsZXIobmV3IERyYWdDb250cm9sbGVyKHRoaXMs
IGRyYWdDbGllbnQpKQogICAgICwgbV9mb2N1c0NvbnRyb2xsZXIobmV3IEZvY3VzQ29udHJvbGxl
cih0aGlzKSkKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAgICwgbV9jb250ZXh0TWVudUNv
bnRyb2xsZXIobmV3IENvbnRleHRNZW51Q29udHJvbGxlcih0aGlzLCBjb250ZXh0TWVudUNsaWVu
dCkpCisjZW5kaWYKICAgICAsIG1faW5zcGVjdG9yQ29udHJvbGxlcihuZXcgSW5zcGVjdG9yQ29u
dHJvbGxlcih0aGlzLCBpbnNwZWN0b3JDbGllbnQpKQogICAgICwgbV9zZXR0aW5ncyhuZXcgU2V0
dGluZ3ModGhpcykpCiAgICAgLCBtX3Byb2dyZXNzKG5ldyBQcm9ncmVzc1RyYWNrZXIpCkBAIC0x
MjYsNiArMTI4LDkgQEAgUGFnZTo6UGFnZShDaHJvbWVDbGllbnQqIGNocm9tZUNsaWVudCwgQ29u
dGV4dE1lbnVDbGllbnQqIGNvbnRleHRNZW51Q2xpZW50LCBFZGkKICAgICAsIG1fY3VzdG9tSFRN
TFRva2VuaXplckNodW5rU2l6ZSgtMSkKICAgICAsIG1fY2FuU3RhcnRQbHVnaW5zKHRydWUpCiB7
CisjaWYgIUVOQUJMRShDT05URVhUX01FTlUpCisgICAgVU5VU0VEX1BBUkFNKGNvbnRleHRNZW51
Q2xpZW50KTsKKyNlbmRpZgogICAgIGlmICghYWxsUGFnZXMpIHsKICAgICAgICAgYWxsUGFnZXMg
PSBuZXcgSGFzaFNldDxQYWdlKj47CiAgICAgICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdl
L1BhZ2UuaCBiL1dlYkNvcmUvcGFnZS9QYWdlLmgKaW5kZXggM2M4YWFmYS4uMzBjNTU5ZSAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9wYWdlL1BhZ2UuaAorKysgYi9XZWJDb3JlL3BhZ2UvUGFnZS5oCkBA
IC0xMjcsNyArMTI3LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBTZWxlY3Rpb25D
b250cm9sbGVyKiBkcmFnQ2FyZXRDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9kcmFnQ2Fy
ZXRDb250cm9sbGVyLmdldCgpOyB9CiAgICAgICAgIERyYWdDb250cm9sbGVyKiBkcmFnQ29udHJv
bGxlcigpIGNvbnN0IHsgcmV0dXJuIG1fZHJhZ0NvbnRyb2xsZXIuZ2V0KCk7IH0KICAgICAgICAg
Rm9jdXNDb250cm9sbGVyKiBmb2N1c0NvbnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiBtX2ZvY3Vz
Q29udHJvbGxlci5nZXQoKTsgfQorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgICAgIENv
bnRleHRNZW51Q29udHJvbGxlciogY29udGV4dE1lbnVDb250cm9sbGVyKCkgY29uc3QgeyByZXR1
cm4gbV9jb250ZXh0TWVudUNvbnRyb2xsZXIuZ2V0KCk7IH0KKyNlbmRpZgogICAgICAgICBJbnNw
ZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9p
bnNwZWN0b3JDb250cm9sbGVyLmdldCgpOyB9CiAgICAgICAgIFNldHRpbmdzKiBzZXR0aW5ncygp
IGNvbnN0IHsgcmV0dXJuIG1fc2V0dGluZ3MuZ2V0KCk7IH0KICAgICAgICAgUHJvZ3Jlc3NUcmFj
a2VyKiBwcm9ncmVzcygpIGNvbnN0IHsgcmV0dXJuIG1fcHJvZ3Jlc3MuZ2V0KCk7IH0KQEAgLTIx
OSw3ICsyMjEsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgICAgIE93blB0cjxTZWxlY3Rp
b25Db250cm9sbGVyPiBtX2RyYWdDYXJldENvbnRyb2xsZXI7CiAgICAgICAgIE93blB0cjxEcmFn
Q29udHJvbGxlcj4gbV9kcmFnQ29udHJvbGxlcjsKICAgICAgICAgT3duUHRyPEZvY3VzQ29udHJv
bGxlcj4gbV9mb2N1c0NvbnRyb2xsZXI7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICAg
ICAgT3duUHRyPENvbnRleHRNZW51Q29udHJvbGxlcj4gbV9jb250ZXh0TWVudUNvbnRyb2xsZXI7
CisjZW5kaWYKICAgICAgICAgT3duUHRyPEluc3BlY3RvckNvbnRyb2xsZXI+IG1faW5zcGVjdG9y
Q29udHJvbGxlcjsKICAgICAgICAgT3duUHRyPFNldHRpbmdzPiBtX3NldHRpbmdzOwogICAgICAg
ICBPd25QdHI8UHJvZ3Jlc3NUcmFja2VyPiBtX3Byb2dyZXNzOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0gYi9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFu
ZGxlck1hYy5tbQppbmRleCA1NGJkZmY5Li5hNWVmNmIyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3Bh
Z2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQorKysgYi9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFu
ZGxlck1hYy5tbQpAQCAtNzEwLDYgKzcxMCw3IEBAIFBsYXRmb3JtTW91c2VFdmVudCBFdmVudEhh
bmRsZXI6OmN1cnJlbnRQbGF0Zm9ybU1vdXNlRXZlbnQoKSBjb25zdAogICAgIHJldHVybiBQbGF0
Zm9ybU1vdXNlRXZlbnQoY3VycmVudE5TRXZlbnQoKSwgd2luZG93Vmlldyk7CiB9CiAKKyNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VKQogYm9vbCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2
ZW50KE5TRXZlbnQgKmV2ZW50KQogewogICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7
CkBAIC03MTcsNiArNzE4LDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2
ZW50KE5TRXZlbnQgKmV2ZW50KQogICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgcmV0dXJuIHNl
bmRDb250ZXh0TWVudUV2ZW50KFBsYXRmb3JtTW91c2VFdmVudChldmVudCwgcGFnZS0+Y2hyb21l
KCktPnBsYXRmb3JtV2luZG93KCkpKTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5V
KQogCiBib29sIEV2ZW50SGFuZGxlcjo6ZXZlbnRNYXlTdGFydERyYWcoTlNFdmVudCAqZXZlbnQp
CiB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oIGIv
V2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaAppbmRleCBjMWI3Mzc1Li43Zjlh
MWFkIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oCisr
KyBiL1dlYkNvcmUvcGFnZS9tYWMvV2ViQ29yZVZpZXdGYWN0b3J5LmgKQEAgLTM5LDYgKzM5LDcg
QEAKIC0gKE5TU3RyaW5nICopZmlsZUJ1dHRvbk5vRmlsZVNlbGVjdGVkTGFiZWw7CiAtIChOU1N0
cmluZyAqKWNvcHlJbWFnZVVua25vd25GaWxlTGFiZWw7CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9N
RU5VKQogLy8gQ29udGV4dCBtZW51IGl0ZW0gdGl0bGVzCiAtIChOU1N0cmluZyAqKWNvbnRleHRN
ZW51SXRlbVRhZ09wZW5MaW5rSW5OZXdXaW5kb3c7CiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51
SXRlbVRhZ0Rvd25sb2FkTGlua1RvRGlzazsKQEAgLTk3LDYgKzk4LDcgQEAKIC0gKE5TU3RyaW5n
ICopY29udGV4dE1lbnVJdGVtVGFnQ2FwaXRhbGl6ZTsKIC0gKE5TU3RyaW5nICopY29udGV4dE1l
bnVJdGVtVGFnQ2hhbmdlQmFjazooTlNTdHJpbmcgKilyZXBsYWNlZFN0cmluZzsKIC0gKE5TU3Ry
aW5nICopY29udGV4dE1lbnVJdGVtVGFnSW5zcGVjdEVsZW1lbnQ7CisjZW5kaWYgLy8gRU5BQkxF
KENPTlRFWFRfTUVOVSkKIAogLSAoTlNTdHJpbmcgKilzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hl
c1RleHQ7CiAtIChOU1N0cmluZyAqKXNlYXJjaE1lbnVSZWNlbnRTZWFyY2hlc1RleHQ7CmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcCBiL1dlYkNvcmUvcGxhdGZv
cm0vQ29udGV4dE1lbnUuY3BwCmluZGV4IGNjYTExYjUuLjc0MDBjODggMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vQ29u
dGV4dE1lbnUuY3BwCkBAIC0yNyw2ICsyNyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5j
bHVkZSAiQ29udGV4dE1lbnUuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAjaW5jbHVk
ZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDbGllbnQu
aCIKICNpbmNsdWRlICJDU1NDb21wdXRlZFN0eWxlRGVjbGFyYXRpb24uaCIKQEAgLTc4MiwzICs3
ODMsNCBAQCB2b2lkIENvbnRleHRNZW51OjpjaGVja09yRW5hYmxlSWZOZWVkZWQoQ29udGV4dE1l
bnVJdGVtJiBpdGVtKSBjb25zdAogfQogCiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVO
VSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKaW5kZXggNDU4NTVlZC4uZDcyMDg0MSAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKKysrIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKQEAgLTM4LDYgKzM4LDcgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgIFN0cmluZyBmaWxlQnV0dG9uQ2hvb3NlRmlsZUxhYmVsKCk7CiAg
ICAgU3RyaW5nIGZpbGVCdXR0b25Ob0ZpbGVTZWxlY3RlZExhYmVsKCk7CiAgICAgU3RyaW5nIGNv
cHlJbWFnZVVua25vd25GaWxlTGFiZWwoKTsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAg
IFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdPcGVuTGlua0luTmV3V2luZG93KCk7CiAgICAgU3Ry
aW5nIGNvbnRleHRNZW51SXRlbVRhZ0Rvd25sb2FkTGlua1RvRGlzaygpOwogICAgIFN0cmluZyBj
b250ZXh0TWVudUl0ZW1UYWdDb3B5TGlua1RvQ2xpcGJvYXJkKCk7CkBAIC0xMDMsNiArMTA0LDcg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdDaGFu
Z2VCYWNrKGNvbnN0IFN0cmluZyYgcmVwbGFjZWRTdHJpbmcpOwogI2VuZGlmCiAgICAgU3RyaW5n
IGNvbnRleHRNZW51SXRlbVRhZ0luc3BlY3RFbGVtZW50KCk7CisjZW5kaWYgLy8gRU5BQkxFKENP
TlRFWFRfTUVOVSkKIAogICAgIFN0cmluZyBzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQo
KTsKICAgICBTdHJpbmcgc2VhcmNoTWVudVJlY2VudFNlYXJjaGVzVGV4dCgpOwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tIGIvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tCmluZGV4IGM1ZTI5NDIuLjQ2NzJiN2Qg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbQor
KysgYi9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudUl0ZW1NYWMubW0KQEAgLTI2LDYg
KzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUl0ZW0u
aCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIK
IAogbmFtZXNwYWNlIFdlYkNvcmUgewpAQCAtMTUzLDMgKzE1NCw0IEBAIGJvb2wgQ29udGV4dE1l
bnVJdGVtOjplbmFibGVkKCkgY29uc3QKIH0KIAogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhU
X01FTlUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5t
bSBiL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tCmluZGV4IGI1NmQwYjku
LjdiNjFjNmEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFj
Lm1tCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tCkBAIC0yNiw2
ICsyNiw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIK
IAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9s
bGVyLmgiCiAKIEBpbnRlcmZhY2UgV2ViQ29yZU1lbnVUYXJnZXQgOiBOU09iamVjdCB7CkBAIC0x
NTIsMyArMTUzLDQgQEAgTlNNdXRhYmxlQXJyYXkqIENvbnRleHRNZW51OjpyZWxlYXNlUGxhdGZv
cm1EZXNjcmlwdGlvbigpCiB9CiAKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbSBi
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NNYWMubW0KaW5kZXggMTcyOTA2
MS4uMTQzMWIwYyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3Ry
aW5nc01hYy5tbQorKysgYi9XZWJDb3JlL3BsYXRmb3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFj
Lm1tCkBAIC04OSw2ICs4OSw3IEBAIFN0cmluZyBjb3B5SW1hZ2VVbmtub3duRmlsZUxhYmVsKCkK
ICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogU3Ry
aW5nIGNvbnRleHRNZW51SXRlbVRhZ09wZW5MaW5rSW5OZXdXaW5kb3coKQogewogICAgIEJFR0lO
X0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKQEAgLTU0NCw2ICs1NDUsNyBAQCBTdHJpbmcgY29udGV4
dE1lbnVJdGVtVGFnSW5zcGVjdEVsZW1lbnQoKQogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElP
TlM7CiAgICAgcmV0dXJuIFN0cmluZygpOwogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01F
TlUpCiAKIFN0cmluZyBzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQoKQogewpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwIGIvV2ViQ29yZS9zdmcvZ3Jh
cGhpY3MvU1ZHSW1hZ2UuY3BwCmluZGV4IGNjMTYxYjUuLmI4ZGVlNzYgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcAorKysgYi9XZWJDb3JlL3N2Zy9ncmFwaGlj
cy9TVkdJbWFnZS5jcHAKQEAgLTIyOCw3ICsyMjgsMTEgQEAgYm9vbCBTVkdJbWFnZTo6ZGF0YUNo
YW5nZWQoYm9vbCBhbGxEYXRhUmVjZWl2ZWQpCiAgICAgaWYgKGFsbERhdGFSZWNlaXZlZCkgewog
ICAgICAgICBzdGF0aWMgRnJhbWVMb2FkZXJDbGllbnQqIGR1bW15RnJhbWVMb2FkZXJDbGllbnQg
PSAgbmV3IEVtcHR5RnJhbWVMb2FkZXJDbGllbnQ7CiAgICAgICAgIHN0YXRpYyBFZGl0b3JDbGll
bnQqIGR1bW15RWRpdG9yQ2xpZW50ID0gbmV3IEVtcHR5RWRpdG9yQ2xpZW50OworI2lmIEVOQUJM
RShDT05URVhUX01FTlUpCiAgICAgICAgIHN0YXRpYyBDb250ZXh0TWVudUNsaWVudCogZHVtbXlD
b250ZXh0TWVudUNsaWVudCA9IG5ldyBFbXB0eUNvbnRleHRNZW51Q2xpZW50OworI2Vsc2UKKyAg
ICAgICAgc3RhdGljIENvbnRleHRNZW51Q2xpZW50KiBkdW1teUNvbnRleHRNZW51Q2xpZW50ID0g
MDsKKyNlbmRpZgogICAgICAgICBzdGF0aWMgRHJhZ0NsaWVudCogZHVtbXlEcmFnQ2xpZW50ID0g
bmV3IEVtcHR5RHJhZ0NsaWVudDsKICAgICAgICAgc3RhdGljIEluc3BlY3RvckNsaWVudCogZHVt
bXlJbnNwZWN0b3JDbGllbnQgPSBuZXcgRW1wdHlJbnNwZWN0b3JDbGllbnQ7CiAKZGlmZiAtLWdp
dCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggNGYz
MTE0ZC4uN2NmMTYxNSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvV2Vi
S2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAwOS0wOS0xMiAgR3JlZyBCb2xz
aW5nYSAgPGJvbHNpbmdhQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgRU5BQkxFKENPTlRFWFRfTUVOVSkKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5MjI1CisgICAgICAgIAorICAg
ICAgICBTZXQgdXAgZGVmYXVsdHMgZm9yIEVOQUJMRV9DT05URVhUX01FTlUgKG9mZiBmb3IgaVBo
b25lLCBvbiBvdGhlcndpc2UpCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9GZWF0dXJlRGVm
aW5lcy54Y2NvbmZpZzogQWRkIEVOQUJMRV9DT05URVhUX01FTlUuCisgICAgICAgICogRGVmYXVs
dERlbGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbTogV3JhcCBlbnRpcmUg
ZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VKS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9X
ZWJDb250ZXh0TWVudUNsaWVudC5tbTogRGl0dG8uCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViVmlld0ZhY3RvcnkubW06IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHByb3By
aWF0ZS4KKyAgICAgICAgKiBXZWJWaWV3L1dlYkhUTUxWaWV3Lm1tOiBEaXR0by4KKyAgICAgICAg
KC1bV2ViSFRNTFZpZXcgbWVudUZvckV2ZW50Ol0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViVUlE
ZWxlZ2F0ZVByaXZhdGUuaDogRGl0dG8uCisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOiBE
aXR0by4KKyAgICAgICAgKC1bV2ViVmlldyBfY29tbW9uSW5pdGlhbGl6YXRpb25XaXRoRnJhbWVO
YW1lOmdyb3VwTmFtZTp1c2VzRG9jdW1lbnRWaWV3czpdKToKKwogMjAwOS0wOS0xMSAgTWFyayBS
b3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEpvbiBIb25leWN1
dHQuCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL0NvbmZpZ3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVz
LnhjY29uZmlnIGIvV2ViS2l0L21hYy9Db25maWd1cmF0aW9ucy9GZWF0dXJlRGVmaW5lcy54Y2Nv
bmZpZwppbmRleCAwZTY3MzY4Li5kZDU1OGJmIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL0NvbmZp
Z3VyYXRpb25zL0ZlYXR1cmVEZWZpbmVzLnhjY29uZmlnCisrKyBiL1dlYktpdC9tYWMvQ29uZmln
dXJhdGlvbnMvRmVhdHVyZURlZmluZXMueGNjb25maWcKQEAgLTM1LDYgKzM1LDcgQEAgRU5BQkxF
XzNEX1JFTkRFUklOR18xMDUwID0gRU5BQkxFXzNEX1JFTkRFUklORzsKIEVOQUJMRV8zRF9SRU5E
RVJJTkdfMTA2MCA9IEVOQUJMRV8zRF9SRU5ERVJJTkc7CiAKIEVOQUJMRV9DSEFOTkVMX01FU1NB
R0lORyA9IEVOQUJMRV9DSEFOTkVMX01FU1NBR0lORzsKK0VOQUJMRV9DT05URVhUX01FTlUgPSBF
TkFCTEVfQ09OVEVYVF9NRU5VOwogRU5BQkxFX0RBVEFCQVNFID0gRU5BQkxFX0RBVEFCQVNFOwog
RU5BQkxFX0RBVEFHUklEID0gRU5BQkxFX0RBVEFHUklEOwogRU5BQkxFX0RBVEFMSVNUID0gRU5B
QkxFX0RBVEFMSVNUOwpAQCAtNjIsNCArNjMsNCBAQCBFTkFCTEVfV09SS0VSUyA9IEVOQUJMRV9X
T1JLRVJTOwogRU5BQkxFX1hQQVRIID0gRU5BQkxFX1hQQVRIOwogRU5BQkxFX1hTTFQgPSBFTkFC
TEVfWFNMVDsKIAotRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVfM0RfQ0FOVkFTKSAkKEVOQUJM
RV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HKSAkKEVOQUJMRV9EQVRB
QkFTRSkgJChFTkFCTEVfREFUQUdSSUQpICQoRU5BQkxFX0RBVEFMSVNUKSAkKEVOQUJMRV9ET01f
U1RPUkFHRSkgJChFTkFCTEVfRVZFTlRTT1VSQ0UpICQoRU5BQkxFX0ZJTFRFUlMpICQoRU5BQkxF
X0dFT0xPQ0FUSU9OKSAkKEVOQUJMRV9JQ09OREFUQUJBU0UpICQoRU5BQkxFX0pBVkFTQ1JJUFRf
REVCVUdHRVIpICQoRU5BQkxFX05PVElGSUNBVElPTlMpICQoRU5BQkxFX09GRkxJTkVfV0VCX0FQ
UExJQ0FUSU9OUykgJChFTkFCTEVfUlVCWSkgJChFTkFCTEVfU0hBUkVEX1dPUktFUlMpICQoRU5B
QkxFX1NWRykgJChFTkFCTEVfU1ZHX0FOSU1BVElPTikgJChFTkFCTEVfU1ZHX0FTX0lNQUdFKSAk
KEVOQUJMRV9TVkdfRE9NX09CSkNfQklORElOR1MpICQoRU5BQkxFX1NWR19GT05UUykgJChFTkFC
TEVfU1ZHX0ZPUkVJR05fT0JKRUNUKSAkKEVOQUJMRV9TVkdfVVNFKSAkKEVOQUJMRV9WSURFTykg
JChFTkFCTEVfV0VCX1NPQ0tFVFMpICQoRU5BQkxFX1dNTCkgJChFTkFCTEVfV09SS0VSUykgJChF
TkFCTEVfWFBBVEgpICQoRU5BQkxFX1hTTFQpOworRkVBVFVSRV9ERUZJTkVTID0gJChFTkFCTEVf
M0RfQ0FOVkFTKSAkKEVOQUJMRV8zRF9SRU5ERVJJTkcpICQoRU5BQkxFX0NIQU5ORUxfTUVTU0FH
SU5HKSAkKEVOQUJMRV9DT05URVhUX01FTlUpICQoRU5BQkxFX0RBVEFCQVNFKSAkKEVOQUJMRV9E
QVRBR1JJRCkgJChFTkFCTEVfREFUQUxJU1QpICQoRU5BQkxFX0RPTV9TVE9SQUdFKSAkKEVOQUJM
RV9FVkVOVFNPVVJDRSkgJChFTkFCTEVfRklMVEVSUykgJChFTkFCTEVfR0VPTE9DQVRJT04pICQo
RU5BQkxFX0lDT05EQVRBQkFTRSkgJChFTkFCTEVfSkFWQVNDUklQVF9ERUJVR0dFUikgJChFTkFC
TEVfTk9USUZJQ0FUSU9OUykgJChFTkFCTEVfT0ZGTElORV9XRUJfQVBQTElDQVRJT05TKSAkKEVO
QUJMRV9SVUJZKSAkKEVOQUJMRV9TSEFSRURfV09SS0VSUykgJChFTkFCTEVfU1ZHKSAkKEVOQUJM
RV9TVkdfQU5JTUFUSU9OKSAkKEVOQUJMRV9TVkdfQVNfSU1BR0UpICQoRU5BQkxFX1NWR19ET01f
T0JKQ19CSU5ESU5HUykgJChFTkFCTEVfU1ZHX0ZPTlRTKSAkKEVOQUJMRV9TVkdfRk9SRUlHTl9P
QkpFQ1QpICQoRU5BQkxFX1NWR19VU0UpICQoRU5BQkxFX1ZJREVPKSAkKEVOQUJMRV9XRUJfU09D
S0VUUykgJChFTkFCTEVfV01MKSAkKEVOQUJMRV9XT1JLRVJTKSAkKEVOQUJMRV9YUEFUSCkgJChF
TkFCTEVfWFNMVCk7CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2Vi
RGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gYi9XZWJLaXQvbWFjL0RlZmF1bHREZWxlZ2F0
ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0KaW5kZXggMmVlN2Q4Yi4uZWUwY2I1
NSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9EZWZhdWx0RGVsZWdhdGVzL1dlYkRlZmF1bHRDb250
ZXh0TWVudURlbGVnYXRlLm1tCisrKyBiL1dlYktpdC9tYWMvRGVmYXVsdERlbGVnYXRlcy9XZWJE
ZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaW1wb3J0
ICJXZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRf
TUVOVSkKICNpbXBvcnQgIldlYkRPTU9wZXJhdGlvbnMuaCIKICNpbXBvcnQgIldlYkRhdGFTb3Vy
Y2VQcml2YXRlLmgiCiAjaW1wb3J0ICJXZWJEZWZhdWx0VUlEZWxlZ2F0ZS5oIgpAQCAtMTc5LDMg
KzE4MCw0IEBACiB9CiAKIEBlbmQKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZm
IC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5t
bSBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQubW0KaW5k
ZXggNjM5ZjNjMS4uNzM2ZWQ0MiAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJDb250ZXh0TWVudUNsaWVudC5tbQorKysgYi9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0
L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tCkBAIC0yOCw2ICsyOCw3IEBACiAKICNpbXBvcnQgIldl
YkNvbnRleHRNZW51Q2xpZW50LmgiCiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogI2ltcG9y
dCAiV2ViRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hpbmcuaCIKICNpbXBvcnQgIldlYkVsZW1l
bnREaWN0aW9uYXJ5LmgiCiAjaW1wb3J0ICJXZWJGcmFtZS5oIgpAQCAtMzUyLDMgKzM1Myw0IEBA
IHZvaWQgV2ViQ29udGV4dE1lbnVDbGllbnQ6OnN0b3BTcGVha2luZygpCiB7CiAgICAgW05TQXBw
IHN0b3BTcGVha2luZzpuaWxdOwogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCmRp
ZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tIGIv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbQppbmRleCAwNDgxNmQz
Li4zYTg1MTM0IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlZpZXdG
YWN0b3J5Lm1tCisrKyBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3Rvcnku
bW0KQEAgLTEzMSw2ICsxMzEsNyBAQAogICAgIHJldHVybiBbTlNVc2VyRGVmYXVsdHMgX3dlYmtp
dF9wcmVmZXJyZWRMYW5ndWFnZUNvZGVdOwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkK
IC0gKE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFnT3BlbkxpbmtJbk5ld1dpbmRvdwogewog
ICAgIHJldHVybiBVSV9TVFJJTkcoIk9wZW4gTGluayBpbiBOZXcgV2luZG93IiwgIk9wZW4gaW4g
TmV3IFdpbmRvdyBjb250ZXh0IG1lbnUgaXRlbSIpOwpAQCAtNDQ3LDYgKzQ0OCw3IEBACiB7CiAg
ICAgcmV0dXJuIFVJX1NUUklORygiSW5zcGVjdCBFbGVtZW50IiwgIkluc3BlY3QgRWxlbWVudCBj
b250ZXh0IG1lbnUgaXRlbSIpOwogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCiAK
IC0gKEJPT0wpb2JqZWN0SXNUZXh0TWFya2VyOihpZClvYmplY3QKIHsKZGlmZiAtLWdpdCBhL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJI
VE1MVmlldy5tbQppbmRleCA5NDQ0NTZkLi45YjBhYTgzIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkhUTUxW
aWV3Lm1tCkBAIC0zMDM3LDggKzMwMzcsMTEgQEAgV0VCQ09SRV9DT01NQU5EKHlhbmtBbmRTZWxl
Y3QpCiAKICAgICAvLyBNYXRjaCBiZWhhdmlvciBvZiBvdGhlciBicm93c2VycyBieSBzZW5kaW5n
IGEgbW91c2Vkb3duIGV2ZW50IGZvciByaWdodCBjbGlja3MuCiAgICAgX3ByaXZhdGUtPmhhbmRs
aW5nTW91c2VEb3duRXZlbnQgPSBZRVM7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICBw
YWdlLT5jb250ZXh0TWVudUNvbnRyb2xsZXIoKS0+Y2xlYXJDb250ZXh0TWVudSgpOworI2VuZGlm
CiAgICAgY29yZUZyYW1lLT5ldmVudEhhbmRsZXIoKS0+bW91c2VEb3duKGV2ZW50KTsKKyNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VKQogICAgIEJPT0wgaGFuZGxlZEV2ZW50ID0gY29yZUZyYW1lLT5l
dmVudEhhbmRsZXIoKS0+c2VuZENvbnRleHRNZW51RXZlbnQoZXZlbnQpOwogICAgIF9wcml2YXRl
LT5oYW5kbGluZ01vdXNlRG93bkV2ZW50ID0gTk87CiAKQEAgLTMwNjYsNiArMzA2OSwxMCBAQCBX
RUJDT1JFX0NPTU1BTkQoeWFua0FuZFNlbGVjdCkKICAgICBmb3IgKE5TVUludGVnZXIgaSA9IDA7
IGkgPCBjb3VudDsgaSsrKQogICAgICAgICBbbWVudSBhZGRJdGVtOlttZW51SXRlbXMgb2JqZWN0
QXRJbmRleDppXV07CiAgICAgcmV0dXJuIG1lbnU7CisjZWxzZQorICAgIF9wcml2YXRlLT5oYW5k
bGluZ01vdXNlRG93bkV2ZW50ID0gTk87CisgICAgcmV0dXJuIG5pbDsKKyNlbmRpZiAvLyBFTkFC
TEUoQ09OVEVYVF9NRU5VKQogfQogCiAtIChCT09MKXNlYXJjaEZvcjooTlNTdHJpbmcgKilzdHJp
bmcgZGlyZWN0aW9uOihCT09MKWZvcndhcmQgY2FzZVNlbnNpdGl2ZTooQk9PTCljYXNlRmxhZyB3
cmFwOihCT09MKXdyYXBGbGFnCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlE
ZWxlZ2F0ZVByaXZhdGUuaCBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0
ZS5oCmluZGV4IGVhZGM3NjEuLmEyOGJhNWEgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmll
dy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCisrKyBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURl
bGVnYXRlUHJpdmF0ZS5oCkBAIC0xMDcsNyArMTA3LDkgQEAgZW51bSB7CiAvLyBGSVhNRTogSWYg
d2UgZXZlciBtYWtlIHRoaXMgbWV0aG9kIHB1YmxpYywgaXQgc2hvdWxkIGluY2x1ZGUgYSBXZWJG
cmFtZSBwYXJhbWV0ZXIuCiAtIChCT09MKXdlYlZpZXdTaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0
OihXZWJWaWV3ICopc2VuZGVyOwogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIHdp
bGxQb3B1cE1lbnU6KE5TTWVudSAqKW1lbnU7CisjaWYgRU5BQkxFX0NPTlRFWFRfTUVOVQogLSAo
dm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIGNvbnRleHRNZW51SXRlbVNlbGVjdGVkOihO
U01lbnVJdGVtICopaXRlbSBmb3JFbGVtZW50OihOU0RpY3Rpb25hcnkgKillbGVtZW50OworI2Vu
ZGlmCiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgc2F2ZUZyYW1lVmlldzooV2Vi
RnJhbWVWaWV3ICopZnJhbWVWaWV3IHNob3dpbmdQYW5lbDooQk9PTClzaG93aW5nUGFuZWw7CiAK
IC8qIQpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gYi9XZWJLaXQv
bWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCBiN2VkYThlLi5jMTQ0YjNmIDEwMDY0NAotLS0g
YS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQorKysgYi9XZWJLaXQvbWFjL1dlYlZpZXcv
V2ViVmlldy5tbQpAQCAtNjE5LDcgKzYxOSwxMiBAQCBzdGF0aWMgYm9vbCBydW5uaW5nVGlnZXJN
YWlsKCkKICAgICAgICAgZGlkT25lVGltZUluaXRpYWxpemF0aW9uID0gdHJ1ZTsKICAgICB9CiAK
LSAgICBfcHJpdmF0ZS0+cGFnZSA9IG5ldyBQYWdlKG5ldyBXZWJDaHJvbWVDbGllbnQoc2VsZiks
IG5ldyBXZWJDb250ZXh0TWVudUNsaWVudChzZWxmKSwgbmV3IFdlYkVkaXRvckNsaWVudChzZWxm
KSwgbmV3IFdlYkRyYWdDbGllbnQoc2VsZiksIG5ldyBXZWJJbnNwZWN0b3JDbGllbnQoc2VsZikp
OworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCisgICAgV2ViQ29udGV4dE1lbnVDbGllbnQgKmNv
bnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHNlbGYpOworI2Vsc2UK
KyAgICBXZWJDb250ZXh0TWVudUNsaWVudCAqY29udGV4dE1lbnVDbGllbnQgPSAwOworI2VuZGlm
CisgICAgX3ByaXZhdGUtPnBhZ2UgPSBuZXcgUGFnZShuZXcgV2ViQ2hyb21lQ2xpZW50KHNlbGYp
LCBjb250ZXh0TWVudUNsaWVudCwgbmV3IFdlYkVkaXRvckNsaWVudChzZWxmKSwgbmV3IFdlYkRy
YWdDbGllbnQoc2VsZiksIG5ldyBXZWJJbnNwZWN0b3JDbGllbnQoc2VsZikpOwogCiAgICAgX3By
aXZhdGUtPnBhZ2UtPnNldHRpbmdzKCktPnNldExvY2FsU3RvcmFnZURhdGFiYXNlUGF0aChbW3Nl
bGYgcHJlZmVyZW5jZXNdIF9sb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGhdKTsKIApAQCAtMTEyNyw2
ICsxMTMyLDcgQEAgc3RhdGljIGJvb2wgZmFzdERvY3VtZW50VGVhcmRvd25FbmFibGVkKCkKICAg
ICByZXR1cm4gX3ByaXZhdGUtPnBhZ2U7CiB9CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQog
LSAoTlNNZW51ICopX21lbnVGb3JFbGVtZW50OihOU0RpY3Rpb25hcnkgKillbGVtZW50IGRlZmF1
bHRJdGVtczooTlNBcnJheSAqKWl0ZW1zCiB7CiAgICAgTlNBcnJheSAqZGVmYXVsdE1lbnVJdGVt
cyA9IFtbV2ViRGVmYXVsdFVJRGVsZWdhdGUgc2hhcmVkVUlEZWxlZ2F0ZV0gd2ViVmlldzpzZWxm
IGNvbnRleHRNZW51SXRlbXNGb3JFbGVtZW50OmVsZW1lbnQgZGVmYXVsdE1lbnVJdGVtczppdGVt
c107CkBAIC0xMTQ1LDYgKzExNTEsNyBAQCBzdGF0aWMgYm9vbCBmYXN0RG9jdW1lbnRUZWFyZG93
bkVuYWJsZWQoKQogCiAgICAgcmV0dXJuIFttZW51IGF1dG9yZWxlYXNlXTsKIH0KKyNlbmRpZiAv
LyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiAtICh2b2lkKV9tb3VzZURpZE1vdmVPdmVyRWxlbWVu
dDooTlNEaWN0aW9uYXJ5ICopZGljdGlvbmFyeSBtb2RpZmllckZsYWdzOihOU1VJbnRlZ2VyKW1v
ZGlmaWVyRmxhZ3MKIHsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktp
dFRvb2xzL0NoYW5nZUxvZwppbmRleCA0YWNlZGQyLi4xZWFiM2JjIDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTQgQEAKKzIwMDktMDktMTIgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBsZS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIEVOQUJM
RShDT05URVhUX01FTlUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yOTIyNQorICAgICAgICAKKyAgICAgICAgQWxsb3cgRU5BQkxFX0NPTlRFWFRfTUVO
VSB0byBiZSBzZXQgZnJvbSBidWlsZC13ZWJraXQuCisKKyAgICAgICAgKiBTY3JpcHRzL2J1aWxk
LXdlYmtpdDoKKwogMjAwOS0wOS0xMSAgS2V2aW4gT2xsaXZpZXIgIDxrZXZpbm9AdGhlb2xsaXZp
ZXJzLmNvbT4KIAogICAgICAgICB3eCBidWlsZCBmaXguIE1hcmsgZGVwZW5kZW5jaWVzIGFzIG1h
bmRhdG9yeSBhbmQgZGVjbGFyZSB3aGljaCBNU1ZDIHZlcnNpb25zIGFuZApkaWZmIC0tZ2l0IGEv
V2ViS2l0VG9vbHMvU2NyaXB0cy9idWlsZC13ZWJraXQgYi9XZWJLaXRUb29scy9TY3JpcHRzL2J1
aWxkLXdlYmtpdAppbmRleCAzOWUxNzk4Li5iZmUxNjNiIDEwMDc1NQotLS0gYS9XZWJLaXRUb29s
cy9TY3JpcHRzL2J1aWxkLXdlYmtpdAorKysgYi9XZWJLaXRUb29scy9TY3JpcHRzL2J1aWxkLXdl
YmtpdApAQCAtNDgsNyArNDgsNyBAQCBteSAkbWluaW1hbCA9IDA7CiBteSAkbWFrZUFyZ3M7CiBt
eSAkc3RhcnRUaW1lID0gdGltZSgpOwogCi1teSAoJHRocmVlRENhbnZhc1N1cHBvcnQsICR0aHJl
ZURSZW5kZXJpbmdTdXBwb3J0LCAkY2hhbm5lbE1lc3NhZ2luZ1N1cHBvcnQsICRkYXRhYmFzZVN1
cHBvcnQsICRkYXRhZ3JpZFN1cHBvcnQsICRkb21TdG9yYWdlU3VwcG9ydCwKK215ICgkdGhyZWVE
Q2FudmFzU3VwcG9ydCwgJHRocmVlRFJlbmRlcmluZ1N1cHBvcnQsICRjaGFubmVsTWVzc2FnaW5n
U3VwcG9ydCwgJGNvbnRleHRNZW51U3VwcG9ydCwgJGRhdGFiYXNlU3VwcG9ydCwgJGRhdGFncmlk
U3VwcG9ydCwgJGRvbVN0b3JhZ2VTdXBwb3J0LAogICAgICRldmVudHNvdXJjZVN1cHBvcnQsICRm
aWx0ZXJzU3VwcG9ydCwgJGdlb2xvY2F0aW9uU3VwcG9ydCwgJGljb25EYXRhYmFzZVN1cHBvcnQs
CiAgICAgJGphdmFTY3JpcHREZWJ1Z2dlclN1cHBvcnQsICRvZmZsaW5lV2ViQXBwbGljYXRpb25T
dXBwb3J0LCAkcnVieVN1cHBvcnQsICRzaGFyZWRXb3JrZXJzU3VwcG9ydCwgCiAgICAgJHN2Z1N1
cHBvcnQsICRzdmdBbmltYXRpb25TdXBwb3J0LCAkc3ZnQXNJbWFnZVN1cHBvcnQsICRzdmdET01P
YmpDQmluZGluZ3NTdXBwb3J0LCAkc3ZnRm9udHNTdXBwb3J0LApAQCAtNjUsNiArNjUsOSBAQCBt
eSBAZmVhdHVyZXMgPSAoCiAgICAgeyBvcHRpb24gPT4gImNoYW5uZWwtbWVzc2FnaW5nIiwgZGVz
YyA9PiAiVG9nZ2xlIE1lc3NhZ2VDaGFubmVsIGFuZCBNZXNzYWdlUG9ydCBzdXBwb3J0IiwKICAg
ICAgIGRlZmluZSA9PiAiRU5BQkxFX0NIQU5ORUxfTUVTU0FHSU5HIiwgZGVmYXVsdCA9PiAxLCB2
YWx1ZSA9PiBcJGNoYW5uZWxNZXNzYWdpbmdTdXBwb3J0IH0sCiAKKyAgICB7IG9wdGlvbiA9PiAi
Y29udGV4dC1tZW51IiwgZGVzYyA9PiAiVG9nZ2xlIENvbnRleHRNZW51IHN1cHBvcnQiLAorICAg
ICAgZGVmaW5lID0+ICJFTkFCTEVfQ09OVEVYVF9NRU5VIiwgZGVmYXVsdCA9PiAxLCB2YWx1ZSA9
PiBcJGNvbnRleHRNZW51U3VwcG9ydCB9LAorCiAgICAgeyBvcHRpb24gPT4gImNvdmVyYWdlIiwg
ZGVzYyA9PiAiVG9nZ2xlIGNvZGUgY292ZXJhZ2Ugc3VwcG9ydCIsCiAgICAgICBkZWZpbmUgPT4g
IiIsIGRlZmF1bHQgPT4gMCwgdmFsdWUgPT4gXCRjb3ZlcmFnZVN1cHBvcnQgfSwKIAotLSAKMS42
LjMuMwoK
</data>
<flag name="review"
          id="20614"
          type_id="1"
          status="-"
          setter="mrowe"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39552</attachid>
            <date>2009-09-14 10:36:49 -0700</date>
            <delta_ts>2009-09-14 11:19:52 -0700</delta_ts>
            <desc>Address Mark&apos;s comments.</desc>
            <filename>0001-JavaScriptCore-Add-ENABLE-CONTEXT_MENU.patch</filename>
            <type>text/plain</type>
            <size>29103</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">RnJvbSBlNGJiYjI1ZjkwYzcyMGYzZTE5YmMxOWUzNTJhOGU0Zjg1ZGU3ZGIwIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHcmVnIEJvbHNpbmdhIDxib2xzaW5nYUBhcHBsZS5jb20+CkRh
dGU6IE1vbiwgMTQgU2VwIDIwMDkgMTA6Mjk6MTMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBKYXZh
U2NyaXB0Q29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlUpCiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
KiB3dGYvUGxhdGZvcm0uaDoKCldlYkNvcmU6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZp
b3IuKQoKKiBEZXJpdmVkU291cmNlcy5tYWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4dE1lbnUu
ZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRFWFRfTUVOVS4KKiBXZWJDb3JlLmJhc2UuZXhwOiBNb3Zl
IENvbnRleHRNZW51IG9ubHkgZXhwb3J0cyB0byBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4KKiBX
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBXZWJDb3JlLkNvbnRleHRNZW51
LmV4cC4KKiBkb20vTm9kZS5jcHA6IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBs
aWNhYmxlLgooV2ViQ29yZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CiogbG9hZGVyL0Vt
cHR5Q2xpZW50cy5oOiBEaXR0by4KKiBwYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHA6IFdy
YXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCiogcGFnZS9FdmVudEhhbmRs
ZXIuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwYWdl
L0V2ZW50SGFuZGxlci5oOiBEaXR0by4KKiBwYWdlL1BhZ2UuY3BwOiBEaXR0by4KKFdlYkNvcmU6
OlBhZ2U6OlBhZ2UpOgoqIHBhZ2UvUGFnZS5oOiBEaXR0by4KKiBwYWdlL21hYy9FdmVudEhhbmRs
ZXJNYWMubW06IERpdHRvLgoqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOiBEaXR0by4K
KiBwbGF0Zm9ybS9Db250ZXh0TWVudS5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENP
TlRFWFRfTUVOVSkuCiogcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENP
TlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJ
dGVtTWFjLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgoqIHBs
YXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbTogRGl0dG8uCiogcGxhdGZvcm0vbWFjL0xvY2Fs
aXplZFN0cmluZ3NNYWMubW06IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNh
YmxlLgoqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6IERpdHRvLgooV2ViQ29yZTo6U1ZHSW1h
Z2U6OmRhdGFDaGFuZ2VkKToKCldlYktpdC9tYWM6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgoKU2V0IHVwIGRlZmF1bHRzIGZvciBFTkFCTEVfQ09OVEVYVF9NRU5V
IChvZmYgZm9yIGlQaG9uZSwgb24gb3RoZXJ3aXNlKQoKKiBEZWZhdWx0RGVsZWdhdGVzL1dlYkRl
ZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShD
T05URVhUX01FTlUpLgoqIFdlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tOiBE
aXR0by4KKiBXZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbTogVXNlIEVOQUJMRShDT05U
RVhUX01FTlUpIHdoZXJlIGFwcHJvcHJpYXRlLgoqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06IERp
dHRvLgooLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CiogV2ViVmlldy9XZWJVSURlbGVn
YXRlUHJpdmF0ZS5oOiBEaXR0by4KKiBXZWJWaWV3L1dlYlZpZXcubW06IERpdHRvLgooLVtXZWJW
aWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOnVzZXNEb2N1
bWVudFZpZXdzOl0pOgotLS0KIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgOSArKysrKysKIEphdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5o
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMSArKysrKysrKysrKysrKysrKysrKwog
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0
ICsrCiBXZWJDb3JlL1dlYkNvcmUuQ29udGV4dE1lbnUuZXhwICAgICAgICAgICAgICAgICAgICB8
ICAgIDUgKysrCiBXZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAgICAgICAgICAgICAgICAgICAgICAg
ICAgICB8ICAgIDUgLS0tCiBXZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
aiAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9kb20vTm9kZS5jcHAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250
cm9sbGVyLmNwcCAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5jcHAgICAgICAgICAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuaCAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKwogV2ViQ29yZS9wYWdlL1Bh
Z2UuY3BwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1ICsrKwogV2ViQ29yZS9w
YWdlL1BhZ2UuaCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA0ICsrCiBXZWJD
b3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbSAgICAgICAgICAgICAgICB8ICAgIDIgKwog
V2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaCAgICAgICAgICAgICAgfCAgICAy
ICsKIFdlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwICAgICAgICAgICAgICAgICAgIHwg
ICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaCAgICAgICAgICAgICAg
ICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tICAg
ICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tICAg
ICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdz
TWFjLm1tICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3Bw
ICAgICAgICAgICAgICAgICAgfCAgICA0ICsrCiBXZWJLaXQvbWFjL0NoYW5nZUxvZyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTggKysrKysrKysrKysKIC4uLi9XZWJEZWZhdWx0
Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbSAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tICB8ICAgIDIgKwogV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbSAgICAgICAgfCAgICAyICsKIFdl
YktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSAgICAgICAgICAgICAgICAgIHwgICAgNyAr
KysrCiBXZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaCAgICAgICAgICB8
ICAgIDIgKwogV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0gICAgICAgICAgICAgICAgICAg
ICAgfCAgICA5ICsrKysrLQogMjkgZmlsZXMgY2hhbmdlZCwgMTM2IGluc2VydGlvbnMoKyksIDYg
ZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRN
ZW51LmV4cAoKZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyBiL0phdmFTY3Jp
cHRDb3JlL0NoYW5nZUxvZwppbmRleCAxNDQyNjg0Li4xZDM4YmFiIDEwMDY0NAotLS0gYS9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKKysrIGIvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTIgQEAKKzIwMDktMDktMTQgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBhcHBsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRk
IEVOQUJMRShDT05URVhUX01FTlUpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yOTIyNQorCisgICAgICAgICogd3RmL1BsYXRmb3JtLmg6CisKIDIwMDkt
MDktMTQgIENzYWJhIE9zenRyb2dvbmFjICA8b3N6aUBpbmYudS1zemVnZWQuaHU+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgVG9yIEFybmUgVmVzdGLDuC4KZGlmZiAtLWdpdCBhL0phdmFTY3JpcHRD
b3JlL3d0Zi9QbGF0Zm9ybS5oIGIvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmgKaW5kZXgg
ODQyZmZiZC4uMTFmOTViMyAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3Jt
LmgKKysrIGIvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmgKQEAgLTQxMCw2ICs0MTAsNyBA
QAogI2lmIFBMQVRGT1JNKElQSE9ORSkKICNkZWZpbmUgV1RGX1BMQVRGT1JNX0NGIDEKICNkZWZp
bmUgV1RGX1VTRV9QVEhSRUFEUyAxCisjZGVmaW5lIEVOQUJMRV9DT05URVhUX01FTlUgMAogI2Rl
ZmluZSBFTkFCTEVfRlRQRElSIDEKICNkZWZpbmUgRU5BQkxFX01BQ19KQVZBX0JSSURHRSAwCiAj
ZGVmaW5lIEVOQUJMRV9JQ09OREFUQUJBU0UgMApAQCAtNTUyLDYgKzU1MywxMCBAQAogI2RlZmlu
ZSBFTkFCTEVfRlRQRElSIDEKICNlbmRpZgogCisjaWYgIWRlZmluZWQoRU5BQkxFX0NPTlRFWFRf
TUVOVSkKKyNkZWZpbmUgRU5BQkxFX0NPTlRFWFRfTUVOVSAxCisjZW5kaWYKKwogI2lmICFkZWZp
bmVkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkKICNkZWZpbmUgRU5BQkxFX0RBU0hCT0FSRF9T
VVBQT1JUIDAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3Jl
L0NoYW5nZUxvZwppbmRleCA5MzUwYmYyLi4wZmNkMmEyIDEwMDY0NAotLS0gYS9XZWJDb3JlL0No
YW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBACisyMDA5LTA5
LTE0ICBHcmVnIEJvbHNpbmdhICA8Ym9sc2luZ2FAYXBwbGUuY29tPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5V
KQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUK
KworICAgICAgICBObyBuZXcgdGVzdHMuIChObyBjaGFuZ2UgaW4gZGVmYXVsdCBiZWhhdmlvci4p
CisKKyAgICAgICAgKiBEZXJpdmVkU291cmNlcy5tYWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4
dE1lbnUuZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRFWFRfTUVOVS4KKyAgICAgICAgKiBXZWJDb3Jl
LmJhc2UuZXhwOiBNb3ZlIENvbnRleHRNZW51IG9ubHkgZXhwb3J0cyB0byBXZWJDb3JlLkNvbnRl
eHRNZW51LmV4cC4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6
IEFkZCBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4KKyAgICAgICAgKiBkb20vTm9kZS5jcHA6IFVz
ZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNhYmxlLgorICAgICAgICAoV2ViQ29y
ZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CisgICAgICAgICogbG9hZGVyL0VtcHR5Q2xp
ZW50cy5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHA6
IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCisgICAgICAgICogcGFn
ZS9FdmVudEhhbmRsZXIuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGlj
YWJsZS4KKyAgICAgICAgKiBwYWdlL0V2ZW50SGFuZGxlci5oOiBEaXR0by4KKyAgICAgICAgKiBw
YWdlL1BhZ2UuY3BwOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OlBhZ2U6OlBhZ2UpOgorICAg
ICAgICAqIHBhZ2UvUGFnZS5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL21hYy9FdmVudEhhbmRs
ZXJNYWMubW06IERpdHRvLgorICAgICAgICAqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5o
OiBEaXR0by4KKyAgICAgICAgKiBwbGF0Zm9ybS9Db250ZXh0TWVudS5jcHA6IFdyYXAgZW50aXJl
IGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCisgICAgICAgICogcGxhdGZvcm0vTG9jYWxp
emVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4K
KyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tOiBXcmFwIGVudGly
ZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9D
b250ZXh0TWVudU1hYy5tbTogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vbWFjL0xvY2FsaXpl
ZFN0cmluZ3NNYWMubW06IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNhYmxl
LgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6IERpdHRvLgorICAgICAgICAo
V2ViQ29yZTo6U1ZHSW1hZ2U6OmRhdGFDaGFuZ2VkKToKKwogMjAwOS0wOS0xNCAgQ2FtZXJvbiBN
Y0Nvcm1hY2sgIDxjYW1AbWNjLmlkLmF1PgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2Vp
ZGVsLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlIGIvV2ViQ29yZS9E
ZXJpdmVkU291cmNlcy5tYWtlCmluZGV4IGZhZTc1ZTMuLmZiOWRlYzAgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQorKysgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1h
a2UKQEAgLTc1OCw2ICs3NTgsMTAgQEAgaWZlcSAoJChzaGVsbCBnY2MgLUUgLVAgLWRNIC1GICQo
QlVJTFRfUFJPRFVDVFNfRElSKSAkKEZSQU1FV09SS19GTEFHUykgV2ViQ29yZS8KICAgICBXRUJD
T1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0gJChXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMp
IFdlYkNvcmUuTlBBUEkuZXhwCiBlbmRpZgogCitpZmVxICgkKGZpbmRzdHJpbmcgRU5BQkxFX0NP
TlRFWFRfTUVOVSwkKEZFQVRVUkVfREVGSU5FUykpLCBFTkFCTEVfQ09OVEVYVF9NRU5VKQorICAg
IFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUyA6PSAkKFdFQkNPUkVfRVhQT1JUX0RFUEVOREVO
Q0lFUykgV2ViQ29yZS5Db250ZXh0TWVudS5leHAKK2VuZGlmCisKIGlmZXEgKCQoRU5BQkxFX0RB
U0hCT0FSRF9TVVBQT1JUKSwgMSkKICAgICBXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0g
JChXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMpIFdlYkNvcmUuRGFzaGJvYXJkU3VwcG9ydC5l
eHAKIGVuZGlmCmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuQ29udGV4dE1lbnUuZXhwIGIv
V2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAwMDAwMDAwLi42MmIyYzFmCi0tLSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9XZWJDb3JlLkNv
bnRleHRNZW51LmV4cApAQCAtMCwwICsxLDUgQEAKK19fWk43V2ViQ29yZTExQ29udGV4dE1lbnUy
MnNldFBsYXRmb3JtRGVzY3JpcHRpb25FUDE0TlNNdXRhYmxlQXJyYXkKK19fWk43V2ViQ29yZTEy
RXZlbnRIYW5kbGVyMjBzZW5kQ29udGV4dE1lbnVFdmVudEVQN05TRXZlbnQKK19fWk43V2ViQ29y
ZTE1Q29udGV4dE1lbnVJdGVtMjZyZWxlYXNlUGxhdGZvcm1EZXNjcmlwdGlvbkV2CitfX1pON1dl
YkNvcmUyMUNvbnRleHRNZW51Q29udHJvbGxlcjE2Y2xlYXJDb250ZXh0TWVudUV2CitfX1pOSzdX
ZWJDb3JlMTFDb250ZXh0TWVudTE5cGxhdGZvcm1EZXNjcmlwdGlvbkV2CmRpZmYgLS1naXQgYS9X
ZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKaW5kZXgg
NzRjZjMzNS4uNGI4NzMzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCisr
KyBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cApAQCAtMTQ2LDcgKzE0Niw2IEBAIF9fWk43V2Vi
Q29yZTEwaGFuZEN1cnNvckV2CiBfX1pON1dlYkNvcmUxMHNldENvb2tpZXNFUE5TXzhEb2N1bWVu
dEVSS05TXzRLVVJMRVJLTlNfNlN0cmluZ0UKIF9fWk43V2ViQ29yZTExQ2FjaGVkRnJhbWUyM2Nh
Y2hlZEZyYW1lUGxhdGZvcm1EYXRhRXYKIF9fWk43V2ViQ29yZTExQ2FjaGVkRnJhbWUyNnNldENh
Y2hlZEZyYW1lUGxhdGZvcm1EYXRhRVBOU18yM0NhY2hlZEZyYW1lUGxhdGZvcm1EYXRhRQotX19a
TjdXZWJDb3JlMTFDb250ZXh0TWVudTIyc2V0UGxhdGZvcm1EZXNjcmlwdGlvbkVQMTROU011dGFi
bGVBcnJheQogX19aTjdXZWJDb3JlMTFFZGl0Q29tbWFuZDdyZWFwcGx5RXYKIF9fWk43V2ViQ29y
ZTExRWRpdENvbW1hbmQ3dW5hcHBseUV2CiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTBjaG9v
c2VGaWxlRVJLTlNfNlN0cmluZ0UKQEAgLTIyOCw3ICsyMjcsNiBAQCBfX1pON1dlYkNvcmUxMkV2
ZW50SGFuZGxlcjE3ZHJhZ1NvdXJjZU1vdmVkVG9FUktOU18xOFBsYXRmb3JtTW91c2VFdmVudEUK
IF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMTdldmVudE1heVN0YXJ0RHJhZ0VQN05TRXZlbnQK
IF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBoYW5kbGVUZXh0SW5wdXRFdmVudEVSS05TXzZT
dHJpbmdFUE5TXzVFdmVudEViYgogX19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXIyMGhpdFRlc3RS
ZXN1bHRBdFBvaW50RVJLTlNfOEludFBvaW50RWJiTlNfMTdIaXRUZXN0U2Nyb2xsYmFyc0UKLV9f
Wk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBzZW5kQ29udGV4dE1lbnVFdmVudEVQN05TRXZlbnQK
IF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjdjYXBzTG9ja1N0YXRlTWF5SGF2ZUNoYW5nZWRF
dgogX19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXI3bW91c2VVcEVQN05TRXZlbnQKIF9fWk43V2Vi
Q29yZTEyRXZlbnRIYW5kbGVyOGtleUV2ZW50RVA3TlNFdmVudApAQCAtMzQwLDcgKzMzOCw2IEBA
IF9fWk43V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0OGdvVG9JdGVtRVBOU18xMUhpc3RvcnlJdGVt
RQogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2FyZExpc3Q5Z29Gb3J3YXJkRXYKIF9fWk43V2ViQ29y
ZTE1QmFja0ZvcndhcmRMaXN0QzFFUE5TXzRQYWdlRQogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2Fy
ZExpc3REMUV2Ci1fX1pON1dlYkNvcmUxNUNvbnRleHRNZW51SXRlbTI2cmVsZWFzZVBsYXRmb3Jt
RGVzY3JpcHRpb25FdgogX19aTjdXZWJDb3JlMTVEYXRhYmFzZVRyYWNrZXIxMmRlbGV0ZU9yaWdp
bkVQTlNfMTRTZWN1cml0eU9yaWdpbkUKIF9fWk43V2ViQ29yZTE1RGF0YWJhc2VUcmFja2VyMTRk
ZWxldGVEYXRhYmFzZUVQTlNfMTRTZWN1cml0eU9yaWdpbkVSS05TXzZTdHJpbmdFCiBfX1pON1dl
YkNvcmUxNURhdGFiYXNlVHJhY2tlcjE0cXVvdGFGb3JPcmlnaW5FUE5TXzE0U2VjdXJpdHlPcmln
aW5FCkBAIC00MzMsNyArNDMwLDYgQEAgX19aTjdXZWJDb3JlMTlUZXh0UmVzb3VyY2VEZWNvZGVy
RDFFdgogX19aTjdXZWJDb3JlMTlhcHBsaWNhdGlvbklzU2FmYXJpRXYKIF9fWk43V2ViQ29yZTIw
UmVzb3VyY2VSZXNwb25zZUJhc2UyNHNldEV4cGVjdGVkQ29udGVudExlbmd0aEV4CiBfX1pON1dl
YkNvcmUyMFJlc291cmNlUmVzcG9uc2VCYXNlQzJFdgotX19aTjdXZWJDb3JlMjFDb250ZXh0TWVu
dUNvbnRyb2xsZXIxNmNsZWFyQ29udGV4dE1lbnVFdgogX19aTjdXZWJDb3JlMjFKYXZhU2NyaXB0
RGVidWdTZXJ2ZXIyM3JlY29tcGlsZUFsbEpTRnVuY3Rpb25zRVBOU181VGltZXJJUzBfRUUKIF9f
Wk43V2ViQ29yZTIxSmF2YVNjcmlwdERlYnVnU2VydmVyNnNoYXJlZEV2CiBfX1pON1dlYkNvcmUy
MVBsYXRmb3JtS2V5Ym9hcmRFdmVudDI0ZGlzYW1iaWd1YXRlS2V5RG93bkV2ZW50RU5TMF80VHlw
ZUViCkBAIC03NzMsNyArNzY5LDYgQEAgX19aTks3V2ViQ29yZTEwU2Nyb2xsVmlldzEyZG9jdW1l
bnRWaWV3RXYKIF9fWk5LN1dlYkNvcmUxMFNjcm9sbFZpZXcxNHNjcm9sbGJhck1vZGVzRVJOU18x
M1Njcm9sbGJhck1vZGVFUzJfCiBfX1pOSzdXZWJDb3JlMTBTY3JvbGxWaWV3MTh2aXNpYmxlQ29u
dGVudFJlY3RFYgogX19aTks3V2ViQ29yZTExQ2FjaGVkSW1hZ2U1aW1hZ2VFdgotX19aTks3V2Vi
Q29yZTExQ29udGV4dE1lbnUxOXBsYXRmb3JtRGVzY3JpcHRpb25FdgogX19aTks3V2ViQ29yZTEx
RnJhbWVMb2FkZXIxMGlzQ29tcGxldGVFdgogX19aTks3V2ViQ29yZTExRnJhbWVMb2FkZXIxNGZy
YW1lSGFzTG9hZGVkRXYKIF9fWk5LN1dlYkNvcmUxMUZyYW1lTG9hZGVyMTVjb250YWluc1BsdWdp
bnNFdgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHBy
b2ogYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyOTU2
NDk2Li4yNzc1MmRiIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agpAQCAtOTgzOCw2ICs5ODM4LDcgQEAKIAkJRkU4MERBNkUwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpT
UG9zaXRpb25FcnJvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Bvc2l0
aW9uRXJyb3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkVBQjkwMTAwRUE1MUI5
QzAwNjM0OEMzIC8qIEdlb2xvY2F0aW9uU2VydmljZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBHZW9sb2NhdGlvblNlcnZpY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQlGRUFCOTAxMTBFQTUxQjlDMDA2MzQ4QzMgLyogR2VvbG9jYXRpb25TZXJ2
aWNlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEdlb2xvY2F0aW9uU2Vydmlj
ZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQlGRUZEMTAyQzEwNUM0MTQ3MDAwMjg1
NUUgLyogV2ViQ29yZS5Db250ZXh0TWVudS5leHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmV4cG9y
dHM7IHBhdGggPSBXZWJDb3JlLkNvbnRleHRNZW51LmV4cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIC8qIEVuZCBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJY
RnJhbWV3b3Jrc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwpAQCAtMTA0MzQsNiArMTA0MzUsNyBAQAog
CQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKIAkJCQlGNThFRjU4RTAyREZERkI3
MDE4NjM1Q0EgLyogV2ViQ29yZS5iYXNlLmV4cCAqLywKKwkJCQlGRUZEMTAyQzEwNUM0MTQ3MDAw
Mjg1NUUgLyogV2ViQ29yZS5Db250ZXh0TWVudS5leHAgKi8sCiAJCQkJNDQ5MTk1OUQwRkJFMTdE
NzAwRDlGODI0IC8qIFdlYkNvcmUuRGFzaGJvYXJkU3VwcG9ydC5leHAgKi8sCiAJCQkJNDQ5MTk1
OUMwRkJFMTdENzAwRDlGODI0IC8qIFdlYkNvcmUuSk5JLmV4cCAqLywKIAkJCQk0NDkxOTU5QjBG
QkUxN0Q3MDBEOUY4MjQgLyogV2ViQ29yZS5MUDY0LmV4cCAqLywKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvZG9tL05vZGUuY3BwIGIvV2ViQ29yZS9kb20vTm9kZS5jcHAKaW5kZXggODFjMTg2Ny4uZGMz
ZTJmNiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9kb20vTm9kZS5jcHAKKysrIGIvV2ViQ29yZS9kb20v
Tm9kZS5jcHAKQEAgLTI5OTcsMTAgKzI5OTcsMTIgQEAgdm9pZCBOb2RlOjpkZWZhdWx0RXZlbnRI
YW5kbGVyKEV2ZW50KiBldmVudCkKICAgICB9IGVsc2UgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5h
bWVzKCkuY2xpY2tFdmVudCkgewogICAgICAgICBpbnQgZGV0YWlsID0gZXZlbnQtPmlzVUlFdmVu
dCgpID8gc3RhdGljX2Nhc3Q8VUlFdmVudCo+KGV2ZW50KS0+ZGV0YWlsKCkgOiAwOwogICAgICAg
ICBkaXNwYXRjaFVJRXZlbnQoZXZlbnROYW1lcygpLkRPTUFjdGl2YXRlRXZlbnQsIGRldGFpbCwg
ZXZlbnQpOworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgfSBlbHNlIGlmIChldmVudFR5
cGUgPT0gZXZlbnROYW1lcygpLmNvbnRleHRtZW51RXZlbnQpIHsKICAgICAgICAgaWYgKEZyYW1l
KiBmcmFtZSA9IGRvY3VtZW50KCktPmZyYW1lKCkpCiAgICAgICAgICAgICBpZiAoUGFnZSogcGFn
ZSA9IGZyYW1lLT5wYWdlKCkpCiAgICAgICAgICAgICAgICAgcGFnZS0+Y29udGV4dE1lbnVDb250
cm9sbGVyKCktPmhhbmRsZUNvbnRleHRNZW51RXZlbnQoZXZlbnQpOworI2VuZGlmCiAgICAgfSBl
bHNlIGlmIChldmVudFR5cGUgPT0gZXZlbnROYW1lcygpLnRleHRJbnB1dEV2ZW50KSB7CiAgICAg
ICAgIGlmIChldmVudC0+aXNUZXh0RXZlbnQoKSkKICAgICAgICAgICAgIGlmIChGcmFtZSogZnJh
bWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9sb2FkZXIvRW1w
dHlDbGllbnRzLmggYi9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAppbmRleCBjMDhlMjYx
Li42ZDdhMzJmIDEwMDY0NAotLS0gYS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaAorKysg
Yi9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaApAQCAtNDE1LDYgKzQxNSw3IEBAIHB1Ymxp
YzoKIAogfTsKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiBjbGFzcyBFbXB0eUNvbnRleHRN
ZW51Q2xpZW50IDogcHVibGljIENvbnRleHRNZW51Q2xpZW50IHsKIHB1YmxpYzoKICAgICB2aXJ0
dWFsIH5FbXB0eUNvbnRleHRNZW51Q2xpZW50KCkgeyAgfQpAQCAtNDM1LDYgKzQzNiw3IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2VhcmNoV2l0aFNwb3RsaWdodCgpIHsgfQogI2VuZGlm
CiB9OworI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCiAKIGNsYXNzIEVtcHR5RHJhZ0Ns
aWVudCA6IHB1YmxpYyBEcmFnQ2xpZW50IHsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51
Q29udHJvbGxlci5jcHAKaW5kZXggMGVjOWQxYy4uZjVmZmZhNiAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0NvbnRl
eHRNZW51Q29udHJvbGxlci5jcHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcu
aCIKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xsZXIuaCIKIAorI2lmIEVOQUJMRShDT05U
RVhUX01FTlUpCiAjaW5jbHVkZSAiQ2hyb21lLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIK
ICNpbmNsdWRlICJDb250ZXh0TWVudUNsaWVudC5oIgpAQCAtMzM1LDMgKzMzNiw0IEBAIHZvaWQg
Q29udGV4dE1lbnVDb250cm9sbGVyOjpjb250ZXh0TWVudUl0ZW1TZWxlY3RlZChDb250ZXh0TWVu
dUl0ZW0qIGl0ZW0pCiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKKyNlbmRpZiAvLyBFTkFC
TEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5j
cHAgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAppbmRleCBlOWRkM2JmLi5kMzdmOGQw
IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcAorKysgYi9XZWJDb3Jl
L3BhZ2UvRXZlbnRIYW5kbGVyLmNwcApAQCAtMTgwOSw2ICsxODA5LDcgQEAgYm9vbCBFdmVudEhh
bmRsZXI6OmhhbmRsZVdoZWVsRXZlbnQoUGxhdGZvcm1XaGVlbEV2ZW50JiBlKQogICAgIHJldHVy
biBlLmlzQWNjZXB0ZWQoKTsKIH0KIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiBib29sIEV2
ZW50SGFuZGxlcjo6c2VuZENvbnRleHRNZW51RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50
JiBldmVudCkKIHsKICAgICBEb2N1bWVudCogZG9jID0gbV9mcmFtZS0+ZG9jdW1lbnQoKTsKQEAg
LTE4MzksNiArMTg0MCw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVu
dChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50KQogICAgIAogICAgIHJldHVybiBzd2Fs
bG93RXZlbnQ7CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAogdm9pZCBFdmVu
dEhhbmRsZXI6OnNjaGVkdWxlSG92ZXJTdGF0ZVVwZGF0ZSgpCiB7CmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmggYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKaW5k
ZXggYmQ1YzMxMi4uMGE4ODg0NCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5oCisrKyBiL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaApAQCAtMTI5LDcgKzEyOSw5IEBA
IHB1YmxpYzoKICAgICBib29sIGhhbmRsZU1vdXNlUmVsZWFzZUV2ZW50KGNvbnN0IFBsYXRmb3Jt
TW91c2VFdmVudCYpOwogICAgIGJvb2wgaGFuZGxlV2hlZWxFdmVudChQbGF0Zm9ybVdoZWVsRXZl
bnQmKTsKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgYm9vbCBzZW5kQ29udGV4dE1l
bnVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKTsKKyNlbmRpZgogCiAgICAgdm9pZCBz
ZXRNb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwoKSB7IG1fbW91c2VEb3duTWF5U3RhcnRBdXRv
c2Nyb2xsID0gdHJ1ZTsgfQogCkBAIC0xNjYsNyArMTY4LDkgQEAgcHVibGljOgogICAgIGJvb2wg
a2V5RXZlbnQoTlNFdmVudCAqKTsKICAgICBib29sIHdoZWVsRXZlbnQoTlNFdmVudCAqKTsKIAor
I2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgYm9vbCBzZW5kQ29udGV4dE1lbnVFdmVudChO
U0V2ZW50ICopOworI2VuZGlmCiAgICAgYm9vbCBldmVudE1heVN0YXJ0RHJhZyhOU0V2ZW50ICop
OwogCiAgICAgdm9pZCBzZW5kRmFrZUV2ZW50c0FmdGVyV2lkZ2V0VHJhY2tpbmcoTlNFdmVudCAq
aW5pdGlhdGluZ0V2ZW50KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9QYWdlLmNwcCBiL1dl
YkNvcmUvcGFnZS9QYWdlLmNwcAppbmRleCA0YzQzZWNlLi5jZGNlMjI4IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL3BhZ2UvUGFnZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC0xMDIs
NyArMTAyLDkgQEAgUGFnZTo6UGFnZShDaHJvbWVDbGllbnQqIGNocm9tZUNsaWVudCwgQ29udGV4
dE1lbnVDbGllbnQqIGNvbnRleHRNZW51Q2xpZW50LCBFZGkKICAgICAsIG1fZHJhZ0NhcmV0Q29u
dHJvbGxlcihuZXcgU2VsZWN0aW9uQ29udHJvbGxlcigwLCB0cnVlKSkKICAgICAsIG1fZHJhZ0Nv
bnRyb2xsZXIobmV3IERyYWdDb250cm9sbGVyKHRoaXMsIGRyYWdDbGllbnQpKQogICAgICwgbV9m
b2N1c0NvbnRyb2xsZXIobmV3IEZvY3VzQ29udHJvbGxlcih0aGlzKSkKKyNpZiBFTkFCTEUoQ09O
VEVYVF9NRU5VKQogICAgICwgbV9jb250ZXh0TWVudUNvbnRyb2xsZXIobmV3IENvbnRleHRNZW51
Q29udHJvbGxlcih0aGlzLCBjb250ZXh0TWVudUNsaWVudCkpCisjZW5kaWYKICAgICAsIG1faW5z
cGVjdG9yQ29udHJvbGxlcihuZXcgSW5zcGVjdG9yQ29udHJvbGxlcih0aGlzLCBpbnNwZWN0b3JD
bGllbnQpKQogICAgICwgbV9zZXR0aW5ncyhuZXcgU2V0dGluZ3ModGhpcykpCiAgICAgLCBtX3By
b2dyZXNzKG5ldyBQcm9ncmVzc1RyYWNrZXIpCkBAIC0xMjYsNiArMTI4LDkgQEAgUGFnZTo6UGFn
ZShDaHJvbWVDbGllbnQqIGNocm9tZUNsaWVudCwgQ29udGV4dE1lbnVDbGllbnQqIGNvbnRleHRN
ZW51Q2xpZW50LCBFZGkKICAgICAsIG1fY3VzdG9tSFRNTFRva2VuaXplckNodW5rU2l6ZSgtMSkK
ICAgICAsIG1fY2FuU3RhcnRQbHVnaW5zKHRydWUpCiB7CisjaWYgIUVOQUJMRShDT05URVhUX01F
TlUpCisgICAgVU5VU0VEX1BBUkFNKGNvbnRleHRNZW51Q2xpZW50KTsKKyNlbmRpZgogICAgIGlm
ICghYWxsUGFnZXMpIHsKICAgICAgICAgYWxsUGFnZXMgPSBuZXcgSGFzaFNldDxQYWdlKj47CiAg
ICAgICAgIApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL1BhZ2UuaCBiL1dlYkNvcmUvcGFnZS9Q
YWdlLmgKaW5kZXggM2M4YWFmYS4uMzBjNTU5ZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL1Bh
Z2UuaAorKysgYi9XZWJDb3JlL3BhZ2UvUGFnZS5oCkBAIC0xMjcsNyArMTI3LDkgQEAgbmFtZXNw
YWNlIFdlYkNvcmUgewogICAgICAgICBTZWxlY3Rpb25Db250cm9sbGVyKiBkcmFnQ2FyZXRDb250
cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9kcmFnQ2FyZXRDb250cm9sbGVyLmdldCgpOyB9CiAg
ICAgICAgIERyYWdDb250cm9sbGVyKiBkcmFnQ29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuIG1f
ZHJhZ0NvbnRyb2xsZXIuZ2V0KCk7IH0KICAgICAgICAgRm9jdXNDb250cm9sbGVyKiBmb2N1c0Nv
bnRyb2xsZXIoKSBjb25zdCB7IHJldHVybiBtX2ZvY3VzQ29udHJvbGxlci5nZXQoKTsgfQorI2lm
IEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgICAgIENvbnRleHRNZW51Q29udHJvbGxlciogY29u
dGV4dE1lbnVDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZXh0TWVudUNvbnRyb2xs
ZXIuZ2V0KCk7IH0KKyNlbmRpZgogICAgICAgICBJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0
b3JDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9pbnNwZWN0b3JDb250cm9sbGVyLmdldCgp
OyB9CiAgICAgICAgIFNldHRpbmdzKiBzZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fc2V0dGlu
Z3MuZ2V0KCk7IH0KICAgICAgICAgUHJvZ3Jlc3NUcmFja2VyKiBwcm9ncmVzcygpIGNvbnN0IHsg
cmV0dXJuIG1fcHJvZ3Jlc3MuZ2V0KCk7IH0KQEAgLTIxOSw3ICsyMjEsOSBAQCBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAgICAgICAgIE93blB0cjxTZWxlY3Rpb25Db250cm9sbGVyPiBtX2RyYWdDYXJl
dENvbnRyb2xsZXI7CiAgICAgICAgIE93blB0cjxEcmFnQ29udHJvbGxlcj4gbV9kcmFnQ29udHJv
bGxlcjsKICAgICAgICAgT3duUHRyPEZvY3VzQ29udHJvbGxlcj4gbV9mb2N1c0NvbnRyb2xsZXI7
CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICAgICAgT3duUHRyPENvbnRleHRNZW51Q29u
dHJvbGxlcj4gbV9jb250ZXh0TWVudUNvbnRyb2xsZXI7CisjZW5kaWYKICAgICAgICAgT3duUHRy
PEluc3BlY3RvckNvbnRyb2xsZXI+IG1faW5zcGVjdG9yQ29udHJvbGxlcjsKICAgICAgICAgT3du
UHRyPFNldHRpbmdzPiBtX3NldHRpbmdzOwogICAgICAgICBPd25QdHI8UHJvZ3Jlc3NUcmFja2Vy
PiBtX3Byb2dyZXNzOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJN
YWMubW0gYi9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQppbmRleCA1NGJkZmY5
Li5hNWVmNmIyIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5t
bQorKysgYi9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbQpAQCAtNzEwLDYgKzcx
MCw3IEBAIFBsYXRmb3JtTW91c2VFdmVudCBFdmVudEhhbmRsZXI6OmN1cnJlbnRQbGF0Zm9ybU1v
dXNlRXZlbnQoKSBjb25zdAogICAgIHJldHVybiBQbGF0Zm9ybU1vdXNlRXZlbnQoY3VycmVudE5T
RXZlbnQoKSwgd2luZG93Vmlldyk7CiB9CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogYm9v
bCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2ZW50KE5TRXZlbnQgKmV2ZW50KQogewog
ICAgIFBhZ2UqIHBhZ2UgPSBtX2ZyYW1lLT5wYWdlKCk7CkBAIC03MTcsNiArNzE4LDcgQEAgYm9v
bCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2ZW50KE5TRXZlbnQgKmV2ZW50KQogICAg
ICAgICByZXR1cm4gZmFsc2U7CiAgICAgcmV0dXJuIHNlbmRDb250ZXh0TWVudUV2ZW50KFBsYXRm
b3JtTW91c2VFdmVudChldmVudCwgcGFnZS0+Y2hyb21lKCktPnBsYXRmb3JtV2luZG93KCkpKTsK
IH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiBib29sIEV2ZW50SGFuZGxlcjo6
ZXZlbnRNYXlTdGFydERyYWcoTlNFdmVudCAqZXZlbnQpCiB7CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oIGIvV2ViQ29yZS9wYWdlL21hYy9XZWJDb3Jl
Vmlld0ZhY3RvcnkuaAppbmRleCBjMWI3Mzc1Li43ZjlhMWFkIDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oCisrKyBiL1dlYkNvcmUvcGFnZS9tYWMvV2Vi
Q29yZVZpZXdGYWN0b3J5LmgKQEAgLTM5LDYgKzM5LDcgQEAKIC0gKE5TU3RyaW5nICopZmlsZUJ1
dHRvbk5vRmlsZVNlbGVjdGVkTGFiZWw7CiAtIChOU1N0cmluZyAqKWNvcHlJbWFnZVVua25vd25G
aWxlTGFiZWw7CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogLy8gQ29udGV4dCBtZW51IGl0
ZW0gdGl0bGVzCiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ09wZW5MaW5rSW5OZXdX
aW5kb3c7CiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ0Rvd25sb2FkTGlua1RvRGlz
azsKQEAgLTk3LDYgKzk4LDcgQEAKIC0gKE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFnQ2Fw
aXRhbGl6ZTsKIC0gKE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFnQ2hhbmdlQmFjazooTlNT
dHJpbmcgKilyZXBsYWNlZFN0cmluZzsKIC0gKE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFn
SW5zcGVjdEVsZW1lbnQ7CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAogLSAoTlNT
dHJpbmcgKilzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQ7CiAtIChOU1N0cmluZyAqKXNl
YXJjaE1lbnVSZWNlbnRTZWFyY2hlc1RleHQ7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3Jt
L0NvbnRleHRNZW51LmNwcCBiL1dlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwCmluZGV4
IGNjYTExYjUuLjc0MDBjODggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1l
bnUuY3BwCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwCkBAIC0yNyw2ICsy
Nyw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKIAor
I2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVy
LmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDbGllbnQuaCIKICNpbmNsdWRlICJDU1NDb21wdXRl
ZFN0eWxlRGVjbGFyYXRpb24uaCIKQEAgLTc4MiwzICs3ODMsNCBAQCB2b2lkIENvbnRleHRNZW51
OjpjaGVja09yRW5hYmxlSWZOZWVkZWQoQ29udGV4dE1lbnVJdGVtJiBpdGVtKSBjb25zdAogfQog
CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRT
dHJpbmdzLmgKaW5kZXggNDU4NTVlZC4uZDcyMDg0MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0
Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmgKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRT
dHJpbmdzLmgKQEAgLTM4LDYgKzM4LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIFN0cmlu
ZyBmaWxlQnV0dG9uQ2hvb3NlRmlsZUxhYmVsKCk7CiAgICAgU3RyaW5nIGZpbGVCdXR0b25Ob0Zp
bGVTZWxlY3RlZExhYmVsKCk7CiAgICAgU3RyaW5nIGNvcHlJbWFnZVVua25vd25GaWxlTGFiZWwo
KTsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1U
YWdPcGVuTGlua0luTmV3V2luZG93KCk7CiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0Rv
d25sb2FkTGlua1RvRGlzaygpOwogICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdDb3B5TGlu
a1RvQ2xpcGJvYXJkKCk7CkBAIC0xMDMsNiArMTA0LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
ICAgIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdDaGFuZ2VCYWNrKGNvbnN0IFN0cmluZyYgcmVw
bGFjZWRTdHJpbmcpOwogI2VuZGlmCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0luc3Bl
Y3RFbGVtZW50KCk7CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAogICAgIFN0cmlu
ZyBzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQoKTsKICAgICBTdHJpbmcgc2VhcmNoTWVu
dVJlY2VudFNlYXJjaGVzVGV4dCgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
Q29udGV4dE1lbnVJdGVtTWFjLm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJ
dGVtTWFjLm1tCmluZGV4IGM1ZTI5NDIuLjQ2NzJiN2QgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbQorKysgYi9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9Db250ZXh0TWVudUl0ZW1NYWMubW0KQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUl0ZW0uaCIKIAorI2lmIEVOQUJMRShDT05URVhU
X01FTlUpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKIAogbmFtZXNwYWNlIFdlYkNvcmUgewpA
QCAtMTUzLDMgKzE1NCw0IEBAIGJvb2wgQ29udGV4dE1lbnVJdGVtOjplbmFibGVkKCkgY29uc3QK
IH0KIAogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCmRpZmYgLS1naXQgYS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbSBiL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L0NvbnRleHRNZW51TWFjLm1tCmluZGV4IGI1NmQwYjkuLjdiNjFjNmEgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tCisrKyBiL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL0NvbnRleHRNZW51TWFjLm1tCkBAIC0yNiw2ICsyNiw3IEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnUuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01F
TlUpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgiCiAKIEBpbnRlcmZhY2UgV2Vi
Q29yZU1lbnVUYXJnZXQgOiBOU09iamVjdCB7CkBAIC0xNTIsMyArMTUzLDQgQEAgTlNNdXRhYmxl
QXJyYXkqIENvbnRleHRNZW51OjpyZWxlYXNlUGxhdGZvcm1EZXNjcmlwdGlvbigpCiB9CiAKIH0K
KyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbSBiL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0xv
Y2FsaXplZFN0cmluZ3NNYWMubW0KaW5kZXggMTcyOTA2MS4uMTQzMWIwYyAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbQorKysgYi9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tCkBAIC04OSw2ICs4OSw3IEBAIFN0
cmluZyBjb3B5SW1hZ2VVbmtub3duRmlsZUxhYmVsKCkKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9
CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ09w
ZW5MaW5rSW5OZXdXaW5kb3coKQogewogICAgIEJFR0lOX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsK
QEAgLTU0NCw2ICs1NDUsNyBAQCBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnSW5zcGVjdEVsZW1l
bnQoKQogICAgIEVORF9CTE9DS19PQkpDX0VYQ0VQVElPTlM7CiAgICAgcmV0dXJuIFN0cmluZygp
OwogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCiAKIFN0cmluZyBzZWFyY2hNZW51
Tm9SZWNlbnRTZWFyY2hlc1RleHQoKQogewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdmcvZ3JhcGhp
Y3MvU1ZHSW1hZ2UuY3BwIGIvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwCmluZGV4
IGNjMTYxYjUuLmI4ZGVlNzYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0lt
YWdlLmNwcAorKysgYi9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHAKQEAgLTIyOCw3
ICsyMjgsMTEgQEAgYm9vbCBTVkdJbWFnZTo6ZGF0YUNoYW5nZWQoYm9vbCBhbGxEYXRhUmVjZWl2
ZWQpCiAgICAgaWYgKGFsbERhdGFSZWNlaXZlZCkgewogICAgICAgICBzdGF0aWMgRnJhbWVMb2Fk
ZXJDbGllbnQqIGR1bW15RnJhbWVMb2FkZXJDbGllbnQgPSAgbmV3IEVtcHR5RnJhbWVMb2FkZXJD
bGllbnQ7CiAgICAgICAgIHN0YXRpYyBFZGl0b3JDbGllbnQqIGR1bW15RWRpdG9yQ2xpZW50ID0g
bmV3IEVtcHR5RWRpdG9yQ2xpZW50OworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgICAg
IHN0YXRpYyBDb250ZXh0TWVudUNsaWVudCogZHVtbXlDb250ZXh0TWVudUNsaWVudCA9IG5ldyBF
bXB0eUNvbnRleHRNZW51Q2xpZW50OworI2Vsc2UKKyAgICAgICAgc3RhdGljIENvbnRleHRNZW51
Q2xpZW50KiBkdW1teUNvbnRleHRNZW51Q2xpZW50ID0gMDsKKyNlbmRpZgogICAgICAgICBzdGF0
aWMgRHJhZ0NsaWVudCogZHVtbXlEcmFnQ2xpZW50ID0gbmV3IEVtcHR5RHJhZ0NsaWVudDsKICAg
ICAgICAgc3RhdGljIEluc3BlY3RvckNsaWVudCogZHVtbXlJbnNwZWN0b3JDbGllbnQgPSBuZXcg
RW1wdHlJbnNwZWN0b3JDbGllbnQ7CiAKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9n
IGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKaW5kZXggNGYzMTE0ZC4uNGRiNzhhMCAxMDA2NDQKLS0t
IGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAwOS0wOS0xNCAgR3JlZyBCb2xzaW5nYSAgPGJvbHNpbmdhQGFwcGxlLmNv
bT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQg
RU5BQkxFKENPTlRFWFRfTUVOVSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI5MjI1CisgICAgICAgIAorICAgICAgICBTZXQgdXAgZGVmYXVsdHMgZm9y
IEVOQUJMRV9DT05URVhUX01FTlUgKG9mZiBmb3IgaVBob25lLCBvbiBvdGhlcndpc2UpCisKKyAg
ICAgICAgKiBEZWZhdWx0RGVsZWdhdGVzL1dlYkRlZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1t
OiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAqIFdl
YkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tOiBEaXR0by4KKyAgICAgICAgKiBX
ZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbTogVXNlIEVOQUJMRShDT05URVhUX01FTlUp
IHdoZXJlIGFwcHJvcHJpYXRlLgorICAgICAgICAqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06IERp
dHRvLgorICAgICAgICAoLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CisgICAgICAgICog
V2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oOiBEaXR0by4KKyAgICAgICAgKiBXZWJWaWV3
L1dlYlZpZXcubW06IERpdHRvLgorICAgICAgICAoLVtXZWJWaWV3IF9jb21tb25Jbml0aWFsaXph
dGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOnVzZXNEb2N1bWVudFZpZXdzOl0pOgorCiAyMDA5
LTA5LTExICBNYXJrIFJvd2UgIDxtcm93ZUBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgSm9uIEhvbmV5Y3V0dC4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvRGVmYXVsdERlbGVnYXRl
cy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbSBiL1dlYktpdC9tYWMvRGVmYXVsdERl
bGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbQppbmRleCAyZWU3ZDhiLi5l
ZTBjYjU1IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVs
dENvbnRleHRNZW51RGVsZWdhdGUubW0KKysrIGIvV2ViS2l0L21hYy9EZWZhdWx0RGVsZWdhdGVz
L1dlYkRlZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tCkBAIC0yOCw2ICsyOCw3IEBACiAKICNp
bXBvcnQgIldlYkRlZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLmgiCiAKKyNpZiBFTkFCTEUoQ09O
VEVYVF9NRU5VKQogI2ltcG9ydCAiV2ViRE9NT3BlcmF0aW9ucy5oIgogI2ltcG9ydCAiV2ViRGF0
YVNvdXJjZVByaXZhdGUuaCIKICNpbXBvcnQgIldlYkRlZmF1bHRVSURlbGVnYXRlLmgiCkBAIC0x
NzksMyArMTgwLDQgQEAKIH0KIAogQGVuZAorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUp
CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xp
ZW50Lm1tIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5t
bQppbmRleCA2MzlmM2MxLi43MzZlZDQyIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tCisrKyBiL1dlYktpdC9tYWMvV2ViQ29yZVN1
cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQubW0KQEAgLTI4LDYgKzI4LDcgQEAKIAogI2ltcG9y
dCAiV2ViQ29udGV4dE1lbnVDbGllbnQuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAj
aW1wb3J0ICJXZWJEZWxlZ2F0ZUltcGxlbWVudGF0aW9uQ2FjaGluZy5oIgogI2ltcG9ydCAiV2Vi
RWxlbWVudERpY3Rpb25hcnkuaCIKICNpbXBvcnQgIldlYkZyYW1lLmgiCkBAIC0zNTIsMyArMzUz
LDQgQEAgdm9pZCBXZWJDb250ZXh0TWVudUNsaWVudDo6c3RvcFNwZWFraW5nKCkKIHsKICAgICBb
TlNBcHAgc3RvcFNwZWFraW5nOm5pbF07CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVO
VSkKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3Rvcnku
bW0gYi9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tCmluZGV4IDA0
ODE2ZDMuLjNhODUxMzQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
Vmlld0ZhY3RvcnkubW0KKysrIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFj
dG9yeS5tbQpAQCAtMTMxLDYgKzEzMSw3IEBACiAgICAgcmV0dXJuIFtOU1VzZXJEZWZhdWx0cyBf
d2Via2l0X3ByZWZlcnJlZExhbmd1YWdlQ29kZV07CiB9CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9N
RU5VKQogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdPcGVuTGlua0luTmV3V2luZG93
CiB7CiAgICAgcmV0dXJuIFVJX1NUUklORygiT3BlbiBMaW5rIGluIE5ldyBXaW5kb3ciLCAiT3Bl
biBpbiBOZXcgV2luZG93IGNvbnRleHQgbWVudSBpdGVtIik7CkBAIC00NDcsNiArNDQ4LDcgQEAK
IHsKICAgICByZXR1cm4gVUlfU1RSSU5HKCJJbnNwZWN0IEVsZW1lbnQiLCAiSW5zcGVjdCBFbGVt
ZW50IGNvbnRleHQgbWVudSBpdGVtIik7CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVO
VSkKIAogLSAoQk9PTClvYmplY3RJc1RleHRNYXJrZXI6KGlkKW9iamVjdAogewpkaWZmIC0tZ2l0
IGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tIGIvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCmluZGV4IDk0NDQ1NmQuLjliMGFhODMgMTAwNjQ0Ci0tLSBhL1dlYktp
dC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQorKysgYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2Vi
SFRNTFZpZXcubW0KQEAgLTMwMzcsOCArMzAzNywxMSBAQCBXRUJDT1JFX0NPTU1BTkQoeWFua0Fu
ZFNlbGVjdCkKIAogICAgIC8vIE1hdGNoIGJlaGF2aW9yIG9mIG90aGVyIGJyb3dzZXJzIGJ5IHNl
bmRpbmcgYSBtb3VzZWRvd24gZXZlbnQgZm9yIHJpZ2h0IGNsaWNrcy4KICAgICBfcHJpdmF0ZS0+
aGFuZGxpbmdNb3VzZURvd25FdmVudCA9IFlFUzsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQog
ICAgIHBhZ2UtPmNvbnRleHRNZW51Q29udHJvbGxlcigpLT5jbGVhckNvbnRleHRNZW51KCk7Cisj
ZW5kaWYKICAgICBjb3JlRnJhbWUtPmV2ZW50SGFuZGxlcigpLT5tb3VzZURvd24oZXZlbnQpOwor
I2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgQk9PTCBoYW5kbGVkRXZlbnQgPSBjb3JlRnJh
bWUtPmV2ZW50SGFuZGxlcigpLT5zZW5kQ29udGV4dE1lbnVFdmVudChldmVudCk7CiAgICAgX3By
aXZhdGUtPmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBOTzsKIApAQCAtMzA2Niw2ICszMDY5LDEw
IEBAIFdFQkNPUkVfQ09NTUFORCh5YW5rQW5kU2VsZWN0KQogICAgIGZvciAoTlNVSW50ZWdlciBp
ID0gMDsgaSA8IGNvdW50OyBpKyspCiAgICAgICAgIFttZW51IGFkZEl0ZW06W21lbnVJdGVtcyBv
YmplY3RBdEluZGV4OmldXTsKICAgICByZXR1cm4gbWVudTsKKyNlbHNlCisgICAgX3ByaXZhdGUt
PmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBOTzsKKyAgICByZXR1cm4gbmlsOworI2VuZGlmIC8v
IEVOQUJMRShDT05URVhUX01FTlUpCiB9CiAKIC0gKEJPT0wpc2VhcmNoRm9yOihOU1N0cmluZyAq
KXN0cmluZyBkaXJlY3Rpb246KEJPT0wpZm9yd2FyZCBjYXNlU2Vuc2l0aXZlOihCT09MKWNhc2VG
bGFnIHdyYXA6KEJPT0wpd3JhcEZsYWcKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViVmlldy9X
ZWJVSURlbGVnYXRlUHJpdmF0ZS5oIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmgKaW5kZXggZWFkYzc2MS4uYTI4YmE1YSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9X
ZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmgKKysrIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dl
YlVJRGVsZWdhdGVQcml2YXRlLmgKQEAgLTEwNyw3ICsxMDcsOSBAQCBlbnVtIHsKIC8vIEZJWE1F
OiBJZiB3ZSBldmVyIG1ha2UgdGhpcyBtZXRob2QgcHVibGljLCBpdCBzaG91bGQgaW5jbHVkZSBh
IFdlYkZyYW1lIHBhcmFtZXRlci4KIC0gKEJPT0wpd2ViVmlld1Nob3VsZEludGVycnVwdEphdmFT
Y3JpcHQ6KFdlYlZpZXcgKilzZW5kZXI7CiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5k
ZXIgd2lsbFBvcHVwTWVudTooTlNNZW51ICopbWVudTsKKyNpZiBFTkFCTEVfQ09OVEVYVF9NRU5V
CiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilzZW5kZXIgY29udGV4dE1lbnVJdGVtU2VsZWN0
ZWQ6KE5TTWVudUl0ZW0gKilpdGVtIGZvckVsZW1lbnQ6KE5TRGljdGlvbmFyeSAqKWVsZW1lbnQ7
CisjZW5kaWYKIC0gKHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciBzYXZlRnJhbWVWaWV3
OihXZWJGcmFtZVZpZXcgKilmcmFtZVZpZXcgc2hvd2luZ1BhbmVsOihCT09MKXNob3dpbmdQYW5l
bDsKIAogLyohCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbSBiL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCmluZGV4IGI3ZWRhOGUuLmMxNDRiM2YgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tCisrKyBiL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJWaWV3Lm1tCkBAIC02MTksNyArNjE5LDEyIEBAIHN0YXRpYyBib29sIHJ1bm5pbmdU
aWdlck1haWwoKQogICAgICAgICBkaWRPbmVUaW1lSW5pdGlhbGl6YXRpb24gPSB0cnVlOwogICAg
IH0KIAotICAgIF9wcml2YXRlLT5wYWdlID0gbmV3IFBhZ2UobmV3IFdlYkNocm9tZUNsaWVudChz
ZWxmKSwgbmV3IFdlYkNvbnRleHRNZW51Q2xpZW50KHNlbGYpLCBuZXcgV2ViRWRpdG9yQ2xpZW50
KHNlbGYpLCBuZXcgV2ViRHJhZ0NsaWVudChzZWxmKSwgbmV3IFdlYkluc3BlY3RvckNsaWVudChz
ZWxmKSk7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKKyAgICBXZWJDb250ZXh0TWVudUNsaWVu
dCAqY29udGV4dE1lbnVDbGllbnQgPSBuZXcgV2ViQ29udGV4dE1lbnVDbGllbnQoc2VsZik7Cisj
ZWxzZQorICAgIFdlYkNvbnRleHRNZW51Q2xpZW50ICpjb250ZXh0TWVudUNsaWVudCA9IDA7Cisj
ZW5kaWYKKyAgICBfcHJpdmF0ZS0+cGFnZSA9IG5ldyBQYWdlKG5ldyBXZWJDaHJvbWVDbGllbnQo
c2VsZiksIGNvbnRleHRNZW51Q2xpZW50LCBuZXcgV2ViRWRpdG9yQ2xpZW50KHNlbGYpLCBuZXcg
V2ViRHJhZ0NsaWVudChzZWxmKSwgbmV3IFdlYkluc3BlY3RvckNsaWVudChzZWxmKSk7CiAKICAg
ICBfcHJpdmF0ZS0+cGFnZS0+c2V0dGluZ3MoKS0+c2V0TG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRo
KFtbc2VsZiBwcmVmZXJlbmNlc10gX2xvY2FsU3RvcmFnZURhdGFiYXNlUGF0aF0pOwogCkBAIC0x
MTI3LDYgKzExMzIsNyBAQCBzdGF0aWMgYm9vbCBmYXN0RG9jdW1lbnRUZWFyZG93bkVuYWJsZWQo
KQogICAgIHJldHVybiBfcHJpdmF0ZS0+cGFnZTsKIH0KIAorI2lmIEVOQUJMRShDT05URVhUX01F
TlUpCiAtIChOU01lbnUgKilfbWVudUZvckVsZW1lbnQ6KE5TRGljdGlvbmFyeSAqKWVsZW1lbnQg
ZGVmYXVsdEl0ZW1zOihOU0FycmF5ICopaXRlbXMKIHsKICAgICBOU0FycmF5ICpkZWZhdWx0TWVu
dUl0ZW1zID0gW1tXZWJEZWZhdWx0VUlEZWxlZ2F0ZSBzaGFyZWRVSURlbGVnYXRlXSB3ZWJWaWV3
OnNlbGYgY29udGV4dE1lbnVJdGVtc0ZvckVsZW1lbnQ6ZWxlbWVudCBkZWZhdWx0TWVudUl0ZW1z
Oml0ZW1zXTsKQEAgLTExNDUsNiArMTE1MSw3IEBAIHN0YXRpYyBib29sIGZhc3REb2N1bWVudFRl
YXJkb3duRW5hYmxlZCgpCiAKICAgICByZXR1cm4gW21lbnUgYXV0b3JlbGVhc2VdOwogfQorI2Vu
ZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCiAKIC0gKHZvaWQpX21vdXNlRGlkTW92ZU92ZXJF
bGVtZW50OihOU0RpY3Rpb25hcnkgKilkaWN0aW9uYXJ5IG1vZGlmaWVyRmxhZ3M6KE5TVUludGVn
ZXIpbW9kaWZpZXJGbGFncwogewotLSAKMS42LjMuMwoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39558</attachid>
            <date>2009-09-14 11:19:52 -0700</date>
            <delta_ts>2009-09-14 11:25:27 -0700</delta_ts>
            <desc>Fix DerivedSources.make</desc>
            <filename>0001-JavaScriptCore-Add-ENABLE-CONTEXT_MENU.patch</filename>
            <type>text/plain</type>
            <size>29660</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">RnJvbSBiYjYwMzQ5MTUzZjRlOGVhMDgwYmViYWI2YWViOTc4YjBkN2UwOGUyIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHcmVnIEJvbHNpbmdhIDxib2xzaW5nYUBhcHBsZS5jb20+CkRh
dGU6IE1vbiwgMTQgU2VwIDIwMDkgMTA6Mjk6MTMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBKYXZh
U2NyaXB0Q29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlUpCiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
KiB3dGYvUGxhdGZvcm0uaDoKCldlYkNvcmU6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZp
b3IuKQoKKiBEZXJpdmVkU291cmNlcy5tYWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4dE1lbnUu
ZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRFWFRfTUVOVS4KKiBXZWJDb3JlLmJhc2UuZXhwOiBNb3Zl
IENvbnRleHRNZW51IG9ubHkgZXhwb3J0cyB0byBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4KKiBX
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBXZWJDb3JlLkNvbnRleHRNZW51
LmV4cC4KKiBkb20vTm9kZS5jcHA6IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBs
aWNhYmxlLgooV2ViQ29yZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CiogbG9hZGVyL0Vt
cHR5Q2xpZW50cy5oOiBEaXR0by4KKiBwYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHA6IFdy
YXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCiogcGFnZS9FdmVudEhhbmRs
ZXIuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwYWdl
L0V2ZW50SGFuZGxlci5oOiBEaXR0by4KKiBwYWdlL1BhZ2UuY3BwOiBEaXR0by4KKFdlYkNvcmU6
OlBhZ2U6OlBhZ2UpOgoqIHBhZ2UvUGFnZS5oOiBEaXR0by4KKiBwYWdlL21hYy9FdmVudEhhbmRs
ZXJNYWMubW06IERpdHRvLgoqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOiBEaXR0by4K
KiBwbGF0Zm9ybS9Db250ZXh0TWVudS5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENP
TlRFWFRfTUVOVSkuCiogcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENP
TlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJ
dGVtTWFjLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgoqIHBs
YXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbTogRGl0dG8uCiogcGxhdGZvcm0vbWFjL0xvY2Fs
aXplZFN0cmluZ3NNYWMubW06IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNh
YmxlLgoqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6IERpdHRvLgooV2ViQ29yZTo6U1ZHSW1h
Z2U6OmRhdGFDaGFuZ2VkKToKCldlYktpdC9tYWM6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgoKU2V0IHVwIGRlZmF1bHRzIGZvciBFTkFCTEVfQ09OVEVYVF9NRU5V
IChvZmYgZm9yIGlQaG9uZSwgb24gb3RoZXJ3aXNlKQoKKiBEZWZhdWx0RGVsZWdhdGVzL1dlYkRl
ZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShD
T05URVhUX01FTlUpLgoqIFdlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tOiBE
aXR0by4KKiBXZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbTogVXNlIEVOQUJMRShDT05U
RVhUX01FTlUpIHdoZXJlIGFwcHJvcHJpYXRlLgoqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06IERp
dHRvLgooLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CiogV2ViVmlldy9XZWJVSURlbGVn
YXRlUHJpdmF0ZS5oOiBEaXR0by4KKiBXZWJWaWV3L1dlYlZpZXcubW06IERpdHRvLgooLVtXZWJW
aWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOnVzZXNEb2N1
bWVudFZpZXdzOl0pOgotLS0KIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgOSArKysrKysKIEphdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5o
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMSArKysrKysrKysrKysrKysrKysrKwog
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEw
ICsrKysrKwogV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cCAgICAgICAgICAgICAgICAg
ICAgfCAgICA1ICsrKwogV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICA1IC0tLQogV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvZG9tL05vZGUuY3BwICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51
Q29udHJvbGxlci5jcHAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BhZ2UvRXZl
bnRIYW5kbGVyLmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKysKIFdlYkNvcmUvcGFn
ZS9QYWdlLmNwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNv
cmUvcGFnZS9QYWdlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKwog
V2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0gICAgICAgICAgICAgICAgfCAgICAy
ICsKIFdlYkNvcmUvcGFnZS9tYWMvV2ViQ29yZVZpZXdGYWN0b3J5LmggICAgICAgICAgICAgIHwg
ICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcCAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmggICAgICAgICAg
ICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5t
bSAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5t
bSAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3Ry
aW5nc01hYy5tbSAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdl
LmNwcCAgICAgICAgICAgICAgICAgIHwgICAgNCArKwogV2ViS2l0L21hYy9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE4ICsrKysrKysrKysrCiAuLi4vV2ViRGVm
YXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5tbSAgfCAgICAyICsKIFdl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW0gICAgICAgIHwgICAgMiAr
CiBXZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gICAgICAgICAgICAgICAgICB8ICAg
IDcgKysrKwogV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmggICAgICAg
ICAgfCAgICAyICsKIFdlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgOSArKysrKy0KIDI5IGZpbGVzIGNoYW5nZWQsIDE0MiBpbnNlcnRpb25zKCsp
LCA2IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFdlYkNvcmUvV2ViQ29yZS5Db250
ZXh0TWVudS5leHAKCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ0MjY4NC4uMWQzOGJhYiAxMDA2NDQKLS0tIGEv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEyIEBACisyMDA5LTA5LTE0ICBHcmVnIEJvbHNpbmdhICA8Ym9sc2luZ2FAYXBw
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybS5oOgorCiAy
MDA5LTA5LTE0ICBDc2FiYSBPc3p0cm9nb25hYyAgPG9zemlAaW5mLnUtc3plZ2VkLmh1PgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCmRpZmYgLS1naXQgYS9KYXZhU2Ny
aXB0Q29yZS93dGYvUGxhdGZvcm0uaCBiL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCmlu
ZGV4IDg0MmZmYmQuLjExZjk1YjMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0
Zm9ybS5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCkBAIC00MTAsNiArNDEw
LDcgQEAKICNpZiBQTEFURk9STShJUEhPTkUpCiAjZGVmaW5lIFdURl9QTEFURk9STV9DRiAxCiAj
ZGVmaW5lIFdURl9VU0VfUFRIUkVBRFMgMQorI2RlZmluZSBFTkFCTEVfQ09OVEVYVF9NRU5VIDAK
ICNkZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZGVmaW5lIEVOQUJMRV9NQUNfSkFWQV9CUklER0Ug
MAogI2RlZmluZSBFTkFCTEVfSUNPTkRBVEFCQVNFIDAKQEAgLTU1Miw2ICs1NTMsMTAgQEAKICNk
ZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZW5kaWYKIAorI2lmICFkZWZpbmVkKEVOQUJMRV9DT05U
RVhUX01FTlUpCisjZGVmaW5lIEVOQUJMRV9DT05URVhUX01FTlUgMQorI2VuZGlmCisKICNpZiAh
ZGVmaW5lZChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpCiAjZGVmaW5lIEVOQUJMRV9EQVNIQk9B
UkRfU1VQUE9SVCAwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggOTM1MGJmMi4uMGZjZDJhMiAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNCBAQAorMjAw
OS0wOS0xNCAgR3JlZyBCb2xzaW5nYSAgPGJvbHNpbmdhQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRU5BQkxFKENPTlRFWFRf
TUVOVSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5
MjI1CisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZp
b3IuKQorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogVXNlIG5ldyBXZWJDb3JlLkNv
bnRleHRNZW51LmV4cCBmaWxlIGlmIEVOQUJMRV9DT05URVhUX01FTlUuCisgICAgICAgICogV2Vi
Q29yZS5iYXNlLmV4cDogTW92ZSBDb250ZXh0TWVudSBvbmx5IGV4cG9ydHMgdG8gV2ViQ29yZS5D
b250ZXh0TWVudS5leHAuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOiBBZGQgV2ViQ29yZS5Db250ZXh0TWVudS5leHAuCisgICAgICAgICogZG9tL05vZGUuY3Bw
OiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKyAgICAgICAgKFdl
YkNvcmU6Ok5vZGU6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIGxvYWRlci9FbXB0
eUNsaWVudHMuaDogRGl0dG8uCisgICAgICAgICogcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIu
Y3BwOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAq
IHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDogVXNlIEVOQUJMRShDT05URVhUX01FTlUpIHdoZXJlIGFw
cGxpY2FibGUuCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDogRGl0dG8uCisgICAgICAg
ICogcGFnZS9QYWdlLmNwcDogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpQYWdlKToK
KyAgICAgICAgKiBwYWdlL1BhZ2UuaDogRGl0dG8uCisgICAgICAgICogcGFnZS9tYWMvRXZlbnRI
YW5kbGVyTWFjLm1tOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL21hYy9XZWJDb3JlVmlld0ZhY3Rv
cnkuaDogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwOiBXcmFwIGVu
dGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAqIHBsYXRmb3JtL0xv
Y2FsaXplZFN0cmluZ3MuaDogVXNlIEVOQUJMRShDT05URVhUX01FTlUpIHdoZXJlIGFwcGxpY2Fi
bGUuCisgICAgICAgICogcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbTogV3JhcCBl
bnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvQ29udGV4dE1lbnVNYWMubW06IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9Mb2Nh
bGl6ZWRTdHJpbmdzTWFjLm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGlj
YWJsZS4KKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OlNWR0ltYWdlOjpkYXRhQ2hhbmdlZCk6CisKIDIwMDktMDktMTQgIENhbWVy
b24gTWNDb3JtYWNrICA8Y2FtQG1jYy5pZC5hdT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCBmYWU3NWUzLi40OTQwNjFjIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCkBAIC00NTIsNiArNDUyLDEyIEBAIGlmZXEgKCQoT1MpLE1BQ09TKQogCiBGUkFNRVdP
UktfRkxBR1MgPSAkKHNoZWxsIGVjaG8gJChGUkFNRVdPUktfU0VBUkNIX1BBVEhTKSB8IHBlcmwg
LWUgJ3ByaW50ICItRiAiIC4gam9pbigiIC1GICIsIHNwbGl0KCIgIiwgPD4pKTsnKQogCitpZmVx
ICgkKHNoZWxsIGdjYyAtRSAtUCAtZE0gLUYgJChCVUlMVF9QUk9EVUNUU19ESVIpICQoRlJBTUVX
T1JLX0ZMQUdTKSBXZWJDb3JlL0ZvcndhcmRpbmdIZWFkZXJzL3d0Zi9QbGF0Zm9ybS5oIHwgZ3Jl
cCBFTkFCTEVfQ09OVEVYVF9NRU5VIHwgY3V0IC1kJyAnIC1mMyksIDEpCisgICAgRU5BQkxFX0NP
TlRFWFRfTUVOVSA9IDEKK2Vsc2UKKyAgICBFTkFCTEVfQ09OVEVYVF9NRU5VID0gMAorZW5kaWYK
KwogaWZlcSAoJChzaGVsbCBnY2MgLUUgLVAgLWRNIC1GICQoQlVJTFRfUFJPRFVDVFNfRElSKSAk
KEZSQU1FV09SS19GTEFHUykgV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy93dGYvUGxhdGZvcm0u
aCB8IGdyZXAgRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUIHwgY3V0IC1kJyAnIC1mMyksIDEpCiAg
ICAgRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUID0gMQogZWxzZQpAQCAtNzU4LDYgKzc2NCwxMCBA
QCBpZmVxICgkKHNoZWxsIGdjYyAtRSAtUCAtZE0gLUYgJChCVUlMVF9QUk9EVUNUU19ESVIpICQo
RlJBTUVXT1JLX0ZMQUdTKSBXZWJDb3JlLwogICAgIFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lF
UyA6PSAkKFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUykgV2ViQ29yZS5OUEFQSS5leHAKIGVu
ZGlmCiAKK2lmZXEgKCQoRU5BQkxFX0NPTlRFWFRfTUVOVSksIDEpCisgICAgV0VCQ09SRV9FWFBP
UlRfREVQRU5ERU5DSUVTIDo9ICQoV0VCQ09SRV9FWFBPUlRfREVQRU5ERU5DSUVTKSBXZWJDb3Jl
LkNvbnRleHRNZW51LmV4cAorZW5kaWYKKwogaWZlcSAoJChFTkFCTEVfREFTSEJPQVJEX1NVUFBP
UlQpLCAxKQogICAgIFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUyA6PSAkKFdFQkNPUkVfRVhQ
T1JUX0RFUEVOREVOQ0lFUykgV2ViQ29yZS5EYXNoYm9hcmRTdXBwb3J0LmV4cAogZW5kaWYKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS5Db250ZXh0TWVudS5leHAgYi9XZWJDb3JlL1dlYkNv
cmUuQ29udGV4dE1lbnUuZXhwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjYy
YjJjMWYKLS0tIC9kZXYvbnVsbAorKysgYi9XZWJDb3JlL1dlYkNvcmUuQ29udGV4dE1lbnUuZXhw
CkBAIC0wLDAgKzEsNSBAQAorX19aTjdXZWJDb3JlMTFDb250ZXh0TWVudTIyc2V0UGxhdGZvcm1E
ZXNjcmlwdGlvbkVQMTROU011dGFibGVBcnJheQorX19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXIy
MHNlbmRDb250ZXh0TWVudUV2ZW50RVA3TlNFdmVudAorX19aTjdXZWJDb3JlMTVDb250ZXh0TWVu
dUl0ZW0yNnJlbGVhc2VQbGF0Zm9ybURlc2NyaXB0aW9uRXYKK19fWk43V2ViQ29yZTIxQ29udGV4
dE1lbnVDb250cm9sbGVyMTZjbGVhckNvbnRleHRNZW51RXYKK19fWk5LN1dlYkNvcmUxMUNvbnRl
eHRNZW51MTlwbGF0Zm9ybURlc2NyaXB0aW9uRXYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29y
ZS5iYXNlLmV4cCBiL1dlYkNvcmUvV2ViQ29yZS5iYXNlLmV4cAppbmRleCA3NGNmMzM1Li40Yjg3
MzNlIDEwMDY0NAotLS0gYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKKysrIGIvV2ViQ29yZS9X
ZWJDb3JlLmJhc2UuZXhwCkBAIC0xNDYsNyArMTQ2LDYgQEAgX19aTjdXZWJDb3JlMTBoYW5kQ3Vy
c29yRXYKIF9fWk43V2ViQ29yZTEwc2V0Q29va2llc0VQTlNfOERvY3VtZW50RVJLTlNfNEtVUkxF
UktOU182U3RyaW5nRQogX19aTjdXZWJDb3JlMTFDYWNoZWRGcmFtZTIzY2FjaGVkRnJhbWVQbGF0
Zm9ybURhdGFFdgogX19aTjdXZWJDb3JlMTFDYWNoZWRGcmFtZTI2c2V0Q2FjaGVkRnJhbWVQbGF0
Zm9ybURhdGFFUE5TXzIzQ2FjaGVkRnJhbWVQbGF0Zm9ybURhdGFFCi1fX1pON1dlYkNvcmUxMUNv
bnRleHRNZW51MjJzZXRQbGF0Zm9ybURlc2NyaXB0aW9uRVAxNE5TTXV0YWJsZUFycmF5CiBfX1pO
N1dlYkNvcmUxMUVkaXRDb21tYW5kN3JlYXBwbHlFdgogX19aTjdXZWJDb3JlMTFFZGl0Q29tbWFu
ZDd1bmFwcGx5RXYKIF9fWk43V2ViQ29yZTExRmlsZUNob29zZXIxMGNob29zZUZpbGVFUktOU182
U3RyaW5nRQpAQCAtMjI4LDcgKzIyNyw2IEBAIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMTdk
cmFnU291cmNlTW92ZWRUb0VSS05TXzE4UGxhdGZvcm1Nb3VzZUV2ZW50RQogX19aTjdXZWJDb3Jl
MTJFdmVudEhhbmRsZXIxN2V2ZW50TWF5U3RhcnREcmFnRVA3TlNFdmVudAogX19aTjdXZWJDb3Jl
MTJFdmVudEhhbmRsZXIyMGhhbmRsZVRleHRJbnB1dEV2ZW50RVJLTlNfNlN0cmluZ0VQTlNfNUV2
ZW50RWJiCiBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjIwaGl0VGVzdFJlc3VsdEF0UG9pbnRF
UktOU184SW50UG9pbnRFYmJOU18xN0hpdFRlc3RTY3JvbGxiYXJzRQotX19aTjdXZWJDb3JlMTJF
dmVudEhhbmRsZXIyMHNlbmRDb250ZXh0TWVudUV2ZW50RVA3TlNFdmVudAogX19aTjdXZWJDb3Jl
MTJFdmVudEhhbmRsZXIyN2NhcHNMb2NrU3RhdGVNYXlIYXZlQ2hhbmdlZEV2CiBfX1pON1dlYkNv
cmUxMkV2ZW50SGFuZGxlcjdtb3VzZVVwRVA3TlNFdmVudAogX19aTjdXZWJDb3JlMTJFdmVudEhh
bmRsZXI4a2V5RXZlbnRFUDdOU0V2ZW50CkBAIC0zNDAsNyArMzM4LDYgQEAgX19aTjdXZWJDb3Jl
MTVCYWNrRm9yd2FyZExpc3Q4Z29Ub0l0ZW1FUE5TXzExSGlzdG9yeUl0ZW1FCiBfX1pON1dlYkNv
cmUxNUJhY2tGb3J3YXJkTGlzdDlnb0ZvcndhcmRFdgogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2Fy
ZExpc3RDMUVQTlNfNFBhZ2VFCiBfX1pON1dlYkNvcmUxNUJhY2tGb3J3YXJkTGlzdEQxRXYKLV9f
Wk43V2ViQ29yZTE1Q29udGV4dE1lbnVJdGVtMjZyZWxlYXNlUGxhdGZvcm1EZXNjcmlwdGlvbkV2
CiBfX1pON1dlYkNvcmUxNURhdGFiYXNlVHJhY2tlcjEyZGVsZXRlT3JpZ2luRVBOU18xNFNlY3Vy
aXR5T3JpZ2luRQogX19aTjdXZWJDb3JlMTVEYXRhYmFzZVRyYWNrZXIxNGRlbGV0ZURhdGFiYXNl
RVBOU18xNFNlY3VyaXR5T3JpZ2luRVJLTlNfNlN0cmluZ0UKIF9fWk43V2ViQ29yZTE1RGF0YWJh
c2VUcmFja2VyMTRxdW90YUZvck9yaWdpbkVQTlNfMTRTZWN1cml0eU9yaWdpbkUKQEAgLTQzMyw3
ICs0MzAsNiBAQCBfX1pON1dlYkNvcmUxOVRleHRSZXNvdXJjZURlY29kZXJEMUV2CiBfX1pON1dl
YkNvcmUxOWFwcGxpY2F0aW9uSXNTYWZhcmlFdgogX19aTjdXZWJDb3JlMjBSZXNvdXJjZVJlc3Bv
bnNlQmFzZTI0c2V0RXhwZWN0ZWRDb250ZW50TGVuZ3RoRXgKIF9fWk43V2ViQ29yZTIwUmVzb3Vy
Y2VSZXNwb25zZUJhc2VDMkV2Ci1fX1pON1dlYkNvcmUyMUNvbnRleHRNZW51Q29udHJvbGxlcjE2
Y2xlYXJDb250ZXh0TWVudUV2CiBfX1pON1dlYkNvcmUyMUphdmFTY3JpcHREZWJ1Z1NlcnZlcjIz
cmVjb21waWxlQWxsSlNGdW5jdGlvbnNFUE5TXzVUaW1lcklTMF9FRQogX19aTjdXZWJDb3JlMjFK
YXZhU2NyaXB0RGVidWdTZXJ2ZXI2c2hhcmVkRXYKIF9fWk43V2ViQ29yZTIxUGxhdGZvcm1LZXli
b2FyZEV2ZW50MjRkaXNhbWJpZ3VhdGVLZXlEb3duRXZlbnRFTlMwXzRUeXBlRWIKQEAgLTc3Myw3
ICs3NjksNiBAQCBfX1pOSzdXZWJDb3JlMTBTY3JvbGxWaWV3MTJkb2N1bWVudFZpZXdFdgogX19a
Tks3V2ViQ29yZTEwU2Nyb2xsVmlldzE0c2Nyb2xsYmFyTW9kZXNFUk5TXzEzU2Nyb2xsYmFyTW9k
ZUVTMl8KIF9fWk5LN1dlYkNvcmUxMFNjcm9sbFZpZXcxOHZpc2libGVDb250ZW50UmVjdEViCiBf
X1pOSzdXZWJDb3JlMTFDYWNoZWRJbWFnZTVpbWFnZUV2Ci1fX1pOSzdXZWJDb3JlMTFDb250ZXh0
TWVudTE5cGxhdGZvcm1EZXNjcmlwdGlvbkV2CiBfX1pOSzdXZWJDb3JlMTFGcmFtZUxvYWRlcjEw
aXNDb21wbGV0ZUV2CiBfX1pOSzdXZWJDb3JlMTFGcmFtZUxvYWRlcjE0ZnJhbWVIYXNMb2FkZWRF
dgogX19aTks3V2ViQ29yZTExRnJhbWVMb2FkZXIxNWNvbnRhaW5zUGx1Z2luc0V2CmRpZmYgLS1n
aXQgYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1dlYkNvcmUv
V2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDI5NTY0OTYuLjI3NzUyZGIg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisr
KyBiL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05ODM4LDYg
Kzk4MzgsNyBAQAogCQlGRTgwREE2RTBFOUM0NzJGMDAwRDZGNzUgLyogSlNQb3NpdGlvbkVycm9y
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTUG9zaXRpb25FcnJvci5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRUFCOTAxMDBFQTUxQjlDMDA2MzQ4QzMgLyog
R2VvbG9jYXRpb25TZXJ2aWNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEdlb2xvY2F0aW9uU2VydmljZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CUZFQUI5MDExMEVBNTFCOUMwMDYzNDhDMyAvKiBHZW9sb2NhdGlvblNlcnZpY2UuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gR2VvbG9jYXRpb25TZXJ2aWNlLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCUZFRkQxMDJDMTA1QzQxNDcwMDAyODU1RSAvKiBXZWJDb3Jl
LkNvbnRleHRNZW51LmV4cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuZXhwb3J0czsgcGF0aCA9IFdl
YkNvcmUuQ29udGV4dE1lbnUuZXhwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogLyogRW5k
IFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAqLwogCiAvKiBCZWdpbiBQQlhGcmFtZXdvcmtzQnVp
bGRQaGFzZSBzZWN0aW9uICovCkBAIC0xMDQzNCw2ICsxMDQzNSw3IEBACiAJCQlpc2EgPSBQQlhH
cm91cDsKIAkJCWNoaWxkcmVuID0gKAogCQkJCUY1OEVGNThFMDJERkRGQjcwMTg2MzVDQSAvKiBX
ZWJDb3JlLmJhc2UuZXhwICovLAorCQkJCUZFRkQxMDJDMTA1QzQxNDcwMDAyODU1RSAvKiBXZWJD
b3JlLkNvbnRleHRNZW51LmV4cCAqLywKIAkJCQk0NDkxOTU5RDBGQkUxN0Q3MDBEOUY4MjQgLyog
V2ViQ29yZS5EYXNoYm9hcmRTdXBwb3J0LmV4cCAqLywKIAkJCQk0NDkxOTU5QzBGQkUxN0Q3MDBE
OUY4MjQgLyogV2ViQ29yZS5KTkkuZXhwICovLAogCQkJCTQ0OTE5NTlCMEZCRTE3RDcwMEQ5Rjgy
NCAvKiBXZWJDb3JlLkxQNjQuZXhwICovLApkaWZmIC0tZ2l0IGEvV2ViQ29yZS9kb20vTm9kZS5j
cHAgYi9XZWJDb3JlL2RvbS9Ob2RlLmNwcAppbmRleCA4MWMxODY3Li5kYzNlMmY2IDEwMDY0NAot
LS0gYS9XZWJDb3JlL2RvbS9Ob2RlLmNwcAorKysgYi9XZWJDb3JlL2RvbS9Ob2RlLmNwcApAQCAt
Mjk5NywxMCArMjk5NywxMiBAQCB2b2lkIE5vZGU6OmRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQq
IGV2ZW50KQogICAgIH0gZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5jbGlja0V2
ZW50KSB7CiAgICAgICAgIGludCBkZXRhaWwgPSBldmVudC0+aXNVSUV2ZW50KCkgPyBzdGF0aWNf
Y2FzdDxVSUV2ZW50Kj4oZXZlbnQpLT5kZXRhaWwoKSA6IDA7CiAgICAgICAgIGRpc3BhdGNoVUlF
dmVudChldmVudE5hbWVzKCkuRE9NQWN0aXZhdGVFdmVudCwgZGV0YWlsLCBldmVudCk7CisjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICB9IGVsc2UgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5h
bWVzKCkuY29udGV4dG1lbnVFdmVudCkgewogICAgICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9j
dW1lbnQoKS0+ZnJhbWUoKSkKICAgICAgICAgICAgIGlmIChQYWdlKiBwYWdlID0gZnJhbWUtPnBh
Z2UoKSkKICAgICAgICAgICAgICAgICBwYWdlLT5jb250ZXh0TWVudUNvbnRyb2xsZXIoKS0+aGFu
ZGxlQ29udGV4dE1lbnVFdmVudChldmVudCk7CisjZW5kaWYKICAgICB9IGVsc2UgaWYgKGV2ZW50
VHlwZSA9PSBldmVudE5hbWVzKCkudGV4dElucHV0RXZlbnQpIHsKICAgICAgICAgaWYgKGV2ZW50
LT5pc1RleHRFdmVudCgpKQogICAgICAgICAgICAgaWYgKEZyYW1lKiBmcmFtZSA9IGRvY3VtZW50
KCktPmZyYW1lKCkpCmRpZmYgLS1naXQgYS9XZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMuaCBi
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCmluZGV4IGMwOGUyNjEuLjZkN2EzMmYgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oCisrKyBiL1dlYkNvcmUvbG9h
ZGVyL0VtcHR5Q2xpZW50cy5oCkBAIC00MTUsNiArNDE1LDcgQEAgcHVibGljOgogCiB9OwogCisj
aWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKIGNsYXNzIEVtcHR5Q29udGV4dE1lbnVDbGllbnQgOiBw
dWJsaWMgQ29udGV4dE1lbnVDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfkVtcHR5Q29u
dGV4dE1lbnVDbGllbnQoKSB7ICB9CkBAIC00MzUsNiArNDM2LDcgQEAgcHVibGljOgogICAgIHZp
cnR1YWwgdm9pZCBzZWFyY2hXaXRoU3BvdGxpZ2h0KCkgeyB9CiAjZW5kaWYKIH07CisjZW5kaWYg
Ly8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAogY2xhc3MgRW1wdHlEcmFnQ2xpZW50IDogcHVibGlj
IERyYWdDbGllbnQgewogcHVibGljOgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0NvbnRleHRN
ZW51Q29udHJvbGxlci5jcHAgYi9XZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250cm9sbGVyLmNw
cAppbmRleCAwZWM5ZDFjLi5mNWZmZmE2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvQ29udGV4
dE1lbnVDb250cm9sbGVyLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250cm9s
bGVyLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IkNvbnRleHRNZW51Q29udHJvbGxlci5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICNp
bmNsdWRlICJDaHJvbWUuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogI2luY2x1ZGUgIkNv
bnRleHRNZW51Q2xpZW50LmgiCkBAIC0zMzUsMyArMzM2LDQgQEAgdm9pZCBDb250ZXh0TWVudUNv
bnRyb2xsZXI6OmNvbnRleHRNZW51SXRlbVNlbGVjdGVkKENvbnRleHRNZW51SXRlbSogaXRlbSkK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01F
TlUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGU5ZGQzYmYuLmQzN2Y4ZDAgMTAwNjQ0Ci0tLSBh
L1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1dlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwCkBAIC0xODA5LDYgKzE4MDksNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxl
V2hlZWxFdmVudChQbGF0Zm9ybVdoZWVsRXZlbnQmIGUpCiAgICAgcmV0dXJuIGUuaXNBY2NlcHRl
ZCgpOwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKIGJvb2wgRXZlbnRIYW5kbGVyOjpz
ZW5kQ29udGV4dE1lbnVFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmIGV2ZW50KQogewog
ICAgIERvY3VtZW50KiBkb2MgPSBtX2ZyYW1lLT5kb2N1bWVudCgpOwpAQCAtMTgzOSw2ICsxODQw
LDcgQEAgYm9vbCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2ZW50KGNvbnN0IFBsYXRm
b3JtTW91c2VFdmVudCYgZXZlbnQpCiAgICAgCiAgICAgcmV0dXJuIHN3YWxsb3dFdmVudDsKIH0K
KyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiB2b2lkIEV2ZW50SGFuZGxlcjo6c2No
ZWR1bGVIb3ZlclN0YXRlVXBkYXRlKCkKIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9FdmVu
dEhhbmRsZXIuaCBiL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAppbmRleCBiZDVjMzEyLi4w
YTg4ODQ0IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKKysrIGIvV2Vi
Q29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCkBAIC0xMjksNyArMTI5LDkgQEAgcHVibGljOgogICAg
IGJvb2wgaGFuZGxlTW91c2VSZWxlYXNlRXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7
CiAgICAgYm9vbCBoYW5kbGVXaGVlbEV2ZW50KFBsYXRmb3JtV2hlZWxFdmVudCYpOwogCisjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICBib29sIHNlbmRDb250ZXh0TWVudUV2ZW50KGNvbnN0
IFBsYXRmb3JtTW91c2VFdmVudCYpOworI2VuZGlmCiAKICAgICB2b2lkIHNldE1vdXNlRG93bk1h
eVN0YXJ0QXV0b3Njcm9sbCgpIHsgbV9tb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwgPSB0cnVl
OyB9CiAKQEAgLTE2Niw3ICsxNjgsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBrZXlFdmVudChOU0V2
ZW50ICopOwogICAgIGJvb2wgd2hlZWxFdmVudChOU0V2ZW50ICopOwogCisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVSkKICAgICBib29sIHNlbmRDb250ZXh0TWVudUV2ZW50KE5TRXZlbnQgKik7Cisj
ZW5kaWYKICAgICBib29sIGV2ZW50TWF5U3RhcnREcmFnKE5TRXZlbnQgKik7CiAKICAgICB2b2lk
IHNlbmRGYWtlRXZlbnRzQWZ0ZXJXaWRnZXRUcmFja2luZyhOU0V2ZW50ICppbml0aWF0aW5nRXZl
bnQpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwIGIvV2ViQ29yZS9wYWdlL1Bh
Z2UuY3BwCmluZGV4IDRjNDNlY2UuLmNkY2UyMjggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9Q
YWdlLmNwcAorKysgYi9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKQEAgLTEwMiw3ICsxMDIsOSBAQCBQ
YWdlOjpQYWdlKENocm9tZUNsaWVudCogY2hyb21lQ2xpZW50LCBDb250ZXh0TWVudUNsaWVudCog
Y29udGV4dE1lbnVDbGllbnQsIEVkaQogICAgICwgbV9kcmFnQ2FyZXRDb250cm9sbGVyKG5ldyBT
ZWxlY3Rpb25Db250cm9sbGVyKDAsIHRydWUpKQogICAgICwgbV9kcmFnQ29udHJvbGxlcihuZXcg
RHJhZ0NvbnRyb2xsZXIodGhpcywgZHJhZ0NsaWVudCkpCiAgICAgLCBtX2ZvY3VzQ29udHJvbGxl
cihuZXcgRm9jdXNDb250cm9sbGVyKHRoaXMpKQorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAg
ICAgLCBtX2NvbnRleHRNZW51Q29udHJvbGxlcihuZXcgQ29udGV4dE1lbnVDb250cm9sbGVyKHRo
aXMsIGNvbnRleHRNZW51Q2xpZW50KSkKKyNlbmRpZgogICAgICwgbV9pbnNwZWN0b3JDb250cm9s
bGVyKG5ldyBJbnNwZWN0b3JDb250cm9sbGVyKHRoaXMsIGluc3BlY3RvckNsaWVudCkpCiAgICAg
LCBtX3NldHRpbmdzKG5ldyBTZXR0aW5ncyh0aGlzKSkKICAgICAsIG1fcHJvZ3Jlc3MobmV3IFBy
b2dyZXNzVHJhY2tlcikKQEAgLTEyNiw2ICsxMjgsOSBAQCBQYWdlOjpQYWdlKENocm9tZUNsaWVu
dCogY2hyb21lQ2xpZW50LCBDb250ZXh0TWVudUNsaWVudCogY29udGV4dE1lbnVDbGllbnQsIEVk
aQogICAgICwgbV9jdXN0b21IVE1MVG9rZW5pemVyQ2h1bmtTaXplKC0xKQogICAgICwgbV9jYW5T
dGFydFBsdWdpbnModHJ1ZSkKIHsKKyNpZiAhRU5BQkxFKENPTlRFWFRfTUVOVSkKKyAgICBVTlVT
RURfUEFSQU0oY29udGV4dE1lbnVDbGllbnQpOworI2VuZGlmCiAgICAgaWYgKCFhbGxQYWdlcykg
ewogICAgICAgICBhbGxQYWdlcyA9IG5ldyBIYXNoU2V0PFBhZ2UqPjsKICAgICAgICAgCmRpZmYg
LS1naXQgYS9XZWJDb3JlL3BhZ2UvUGFnZS5oIGIvV2ViQ29yZS9wYWdlL1BhZ2UuaAppbmRleCAz
YzhhYWZhLi4zMGM1NTllIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvUGFnZS5oCisrKyBiL1dl
YkNvcmUvcGFnZS9QYWdlLmgKQEAgLTEyNyw3ICsxMjcsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIFNlbGVjdGlvbkNvbnRyb2xsZXIqIGRyYWdDYXJldENvbnRyb2xsZXIoKSBjb25z
dCB7IHJldHVybiBtX2RyYWdDYXJldENvbnRyb2xsZXIuZ2V0KCk7IH0KICAgICAgICAgRHJhZ0Nv
bnRyb2xsZXIqIGRyYWdDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9kcmFnQ29udHJvbGxl
ci5nZXQoKTsgfQogICAgICAgICBGb2N1c0NvbnRyb2xsZXIqIGZvY3VzQ29udHJvbGxlcigpIGNv
bnN0IHsgcmV0dXJuIG1fZm9jdXNDb250cm9sbGVyLmdldCgpOyB9CisjaWYgRU5BQkxFKENPTlRF
WFRfTUVOVSkKICAgICAgICAgQ29udGV4dE1lbnVDb250cm9sbGVyKiBjb250ZXh0TWVudUNvbnRy
b2xsZXIoKSBjb25zdCB7IHJldHVybiBtX2NvbnRleHRNZW51Q29udHJvbGxlci5nZXQoKTsgfQor
I2VuZGlmCiAgICAgICAgIEluc3BlY3RvckNvbnRyb2xsZXIqIGluc3BlY3RvckNvbnRyb2xsZXIo
KSBjb25zdCB7IHJldHVybiBtX2luc3BlY3RvckNvbnRyb2xsZXIuZ2V0KCk7IH0KICAgICAgICAg
U2V0dGluZ3MqIHNldHRpbmdzKCkgY29uc3QgeyByZXR1cm4gbV9zZXR0aW5ncy5nZXQoKTsgfQog
ICAgICAgICBQcm9ncmVzc1RyYWNrZXIqIHByb2dyZXNzKCkgY29uc3QgeyByZXR1cm4gbV9wcm9n
cmVzcy5nZXQoKTsgfQpAQCAtMjE5LDcgKzIyMSw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAg
ICAgICAgT3duUHRyPFNlbGVjdGlvbkNvbnRyb2xsZXI+IG1fZHJhZ0NhcmV0Q29udHJvbGxlcjsK
ICAgICAgICAgT3duUHRyPERyYWdDb250cm9sbGVyPiBtX2RyYWdDb250cm9sbGVyOwogICAgICAg
ICBPd25QdHI8Rm9jdXNDb250cm9sbGVyPiBtX2ZvY3VzQ29udHJvbGxlcjsKKyNpZiBFTkFCTEUo
Q09OVEVYVF9NRU5VKQogICAgICAgICBPd25QdHI8Q29udGV4dE1lbnVDb250cm9sbGVyPiBtX2Nv
bnRleHRNZW51Q29udHJvbGxlcjsKKyNlbmRpZgogICAgICAgICBPd25QdHI8SW5zcGVjdG9yQ29u
dHJvbGxlcj4gbV9pbnNwZWN0b3JDb250cm9sbGVyOwogICAgICAgICBPd25QdHI8U2V0dGluZ3M+
IG1fc2V0dGluZ3M7CiAgICAgICAgIE93blB0cjxQcm9ncmVzc1RyYWNrZXI+IG1fcHJvZ3Jlc3M7
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvbWFjL0V2ZW50SGFuZGxlck1hYy5tbSBiL1dlYkNv
cmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCmluZGV4IDU0YmRmZjkuLmE1ZWY2YjIgMTAw
NjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCisrKyBiL1dlYkNv
cmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tCkBAIC03MTAsNiArNzEwLDcgQEAgUGxhdGZv
cm1Nb3VzZUV2ZW50IEV2ZW50SGFuZGxlcjo6Y3VycmVudFBsYXRmb3JtTW91c2VFdmVudCgpIGNv
bnN0CiAgICAgcmV0dXJuIFBsYXRmb3JtTW91c2VFdmVudChjdXJyZW50TlNFdmVudCgpLCB3aW5k
b3dWaWV3KTsKIH0KIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiBib29sIEV2ZW50SGFuZGxl
cjo6c2VuZENvbnRleHRNZW51RXZlbnQoTlNFdmVudCAqZXZlbnQpCiB7CiAgICAgUGFnZSogcGFn
ZSA9IG1fZnJhbWUtPnBhZ2UoKTsKQEAgLTcxNyw2ICs3MTgsNyBAQCBib29sIEV2ZW50SGFuZGxl
cjo6c2VuZENvbnRleHRNZW51RXZlbnQoTlNFdmVudCAqZXZlbnQpCiAgICAgICAgIHJldHVybiBm
YWxzZTsKICAgICByZXR1cm4gc2VuZENvbnRleHRNZW51RXZlbnQoUGxhdGZvcm1Nb3VzZUV2ZW50
KGV2ZW50LCBwYWdlLT5jaHJvbWUoKS0+cGxhdGZvcm1XaW5kb3coKSkpOwogfQorI2VuZGlmIC8v
IEVOQUJMRShDT05URVhUX01FTlUpCiAKIGJvb2wgRXZlbnRIYW5kbGVyOjpldmVudE1heVN0YXJ0
RHJhZyhOU0V2ZW50ICpldmVudCkKIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9tYWMvV2Vi
Q29yZVZpZXdGYWN0b3J5LmggYi9XZWJDb3JlL3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5o
CmluZGV4IGMxYjczNzUuLjdmOWExYWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9tYWMvV2Vi
Q29yZVZpZXdGYWN0b3J5LmgKKysrIGIvV2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0ZhY3Rv
cnkuaApAQCAtMzksNiArMzksNyBAQAogLSAoTlNTdHJpbmcgKilmaWxlQnV0dG9uTm9GaWxlU2Vs
ZWN0ZWRMYWJlbDsKIC0gKE5TU3RyaW5nICopY29weUltYWdlVW5rbm93bkZpbGVMYWJlbDsKIAor
I2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAvLyBDb250ZXh0IG1lbnUgaXRlbSB0aXRsZXMKIC0g
KE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFnT3BlbkxpbmtJbk5ld1dpbmRvdzsKIC0gKE5T
U3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFnRG93bmxvYWRMaW5rVG9EaXNrOwpAQCAtOTcsNiAr
OTgsNyBAQAogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdDYXBpdGFsaXplOwogLSAo
TlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdDaGFuZ2VCYWNrOihOU1N0cmluZyAqKXJlcGxh
Y2VkU3RyaW5nOwogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdJbnNwZWN0RWxlbWVu
dDsKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiAtIChOU1N0cmluZyAqKXNlYXJj
aE1lbnVOb1JlY2VudFNlYXJjaGVzVGV4dDsKIC0gKE5TU3RyaW5nICopc2VhcmNoTWVudVJlY2Vu
dFNlYXJjaGVzVGV4dDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vQ29udGV4dE1lbnUu
Y3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAKaW5kZXggY2NhMTFiNS4uNzQw
MGM4OCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAKKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAKQEAgLTI3LDYgKzI3LDcgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogCisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVSkKICNpbmNsdWRlICJDb250ZXh0TWVudUNvbnRyb2xsZXIuaCIKICNpbmNsdWRl
ICJDb250ZXh0TWVudUNsaWVudC5oIgogI2luY2x1ZGUgIkNTU0NvbXB1dGVkU3R5bGVEZWNsYXJh
dGlvbi5oIgpAQCAtNzgyLDMgKzc4Myw0IEBAIHZvaWQgQ29udGV4dE1lbnU6OmNoZWNrT3JFbmFi
bGVJZk5lZWRlZChDb250ZXh0TWVudUl0ZW0mIGl0ZW0pIGNvbnN0CiB9CiAKIH0KKyNlbmRpZiAv
LyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9Mb2Nh
bGl6ZWRTdHJpbmdzLmggYi9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaAppbmRl
eCA0NTg1NWVkLi5kNzIwODQxIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXpl
ZFN0cmluZ3MuaAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaApAQCAt
MzgsNiArMzgsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgU3RyaW5nIGZpbGVCdXR0b25D
aG9vc2VGaWxlTGFiZWwoKTsKICAgICBTdHJpbmcgZmlsZUJ1dHRvbk5vRmlsZVNlbGVjdGVkTGFi
ZWwoKTsKICAgICBTdHJpbmcgY29weUltYWdlVW5rbm93bkZpbGVMYWJlbCgpOworI2lmIEVOQUJM
RShDT05URVhUX01FTlUpCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ09wZW5MaW5rSW5O
ZXdXaW5kb3coKTsKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnRG93bmxvYWRMaW5rVG9E
aXNrKCk7CiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0NvcHlMaW5rVG9DbGlwYm9hcmQo
KTsKQEAgLTEwMyw2ICsxMDQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAgICAgU3RyaW5nIGNv
bnRleHRNZW51SXRlbVRhZ0NoYW5nZUJhY2soY29uc3QgU3RyaW5nJiByZXBsYWNlZFN0cmluZyk7
CiAjZW5kaWYKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnSW5zcGVjdEVsZW1lbnQoKTsK
KyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiAgICAgU3RyaW5nIHNlYXJjaE1lbnVO
b1JlY2VudFNlYXJjaGVzVGV4dCgpOwogICAgIFN0cmluZyBzZWFyY2hNZW51UmVjZW50U2VhcmNo
ZXNUZXh0KCk7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudUl0
ZW1NYWMubW0gYi9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudUl0ZW1NYWMubW0KaW5k
ZXggYzVlMjk0Mi4uNDY3MmI3ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29u
dGV4dE1lbnVJdGVtTWFjLm1tCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51
SXRlbU1hYy5tbQpAQCAtMjYsNiArMjYsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1
ZGUgIkNvbnRleHRNZW51SXRlbS5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICNpbmNs
dWRlICJDb250ZXh0TWVudS5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC0xNTMsMyArMTU0
LDQgQEAgYm9vbCBDb250ZXh0TWVudUl0ZW06OmVuYWJsZWQoKSBjb25zdAogfQogCiB9CisjZW5k
aWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0v
bWFjL0NvbnRleHRNZW51TWFjLm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVN
YWMubW0KaW5kZXggYjU2ZDBiOS4uN2I2MWM2YSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvQ29udGV4dE1lbnVNYWMubW0KKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4
dE1lbnVNYWMubW0KQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNs
dWRlICJDb250ZXh0TWVudS5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICNpbmNsdWRl
ICJDb250ZXh0TWVudUNvbnRyb2xsZXIuaCIKIAogQGludGVyZmFjZSBXZWJDb3JlTWVudVRhcmdl
dCA6IE5TT2JqZWN0IHsKQEAgLTE1MiwzICsxNTMsNCBAQCBOU011dGFibGVBcnJheSogQ29udGV4
dE1lbnU6OnJlbGVhc2VQbGF0Zm9ybURlc2NyaXB0aW9uKCkKIH0KIAogfQorI2VuZGlmIC8vIEVO
QUJMRShDT05URVhUX01FTlUpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Mb2Nh
bGl6ZWRTdHJpbmdzTWFjLm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5n
c01hYy5tbQppbmRleCAxNzI5MDYxLi4xNDMxYjBjIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vbWFj
L0xvY2FsaXplZFN0cmluZ3NNYWMubW0KQEAgLTg5LDYgKzg5LDcgQEAgU3RyaW5nIGNvcHlJbWFn
ZVVua25vd25GaWxlTGFiZWwoKQogICAgIHJldHVybiBTdHJpbmcoKTsKIH0KIAorI2lmIEVOQUJM
RShDT05URVhUX01FTlUpCiBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnT3BlbkxpbmtJbk5ld1dp
bmRvdygpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJT05TOwpAQCAtNTQ0LDYgKzU0
NSw3IEBAIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdJbnNwZWN0RWxlbWVudCgpCiAgICAgRU5E
X0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKICAgICByZXR1cm4gU3RyaW5nKCk7CiB9CisjZW5kaWYg
Ly8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAogU3RyaW5nIHNlYXJjaE1lbnVOb1JlY2VudFNlYXJj
aGVzVGV4dCgpCiB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5j
cHAgYi9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHAKaW5kZXggY2MxNjFiNS4uYjhk
ZWU3NiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwCisrKyBi
L1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcApAQCAtMjI4LDcgKzIyOCwxMSBAQCBi
b29sIFNWR0ltYWdlOjpkYXRhQ2hhbmdlZChib29sIGFsbERhdGFSZWNlaXZlZCkKICAgICBpZiAo
YWxsRGF0YVJlY2VpdmVkKSB7CiAgICAgICAgIHN0YXRpYyBGcmFtZUxvYWRlckNsaWVudCogZHVt
bXlGcmFtZUxvYWRlckNsaWVudCA9ICBuZXcgRW1wdHlGcmFtZUxvYWRlckNsaWVudDsKICAgICAg
ICAgc3RhdGljIEVkaXRvckNsaWVudCogZHVtbXlFZGl0b3JDbGllbnQgPSBuZXcgRW1wdHlFZGl0
b3JDbGllbnQ7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICAgICAgc3RhdGljIENvbnRl
eHRNZW51Q2xpZW50KiBkdW1teUNvbnRleHRNZW51Q2xpZW50ID0gbmV3IEVtcHR5Q29udGV4dE1l
bnVDbGllbnQ7CisjZWxzZQorICAgICAgICBzdGF0aWMgQ29udGV4dE1lbnVDbGllbnQqIGR1bW15
Q29udGV4dE1lbnVDbGllbnQgPSAwOworI2VuZGlmCiAgICAgICAgIHN0YXRpYyBEcmFnQ2xpZW50
KiBkdW1teURyYWdDbGllbnQgPSBuZXcgRW1wdHlEcmFnQ2xpZW50OwogICAgICAgICBzdGF0aWMg
SW5zcGVjdG9yQ2xpZW50KiBkdW1teUluc3BlY3RvckNsaWVudCA9IG5ldyBFbXB0eUluc3BlY3Rv
ckNsaWVudDsKIApkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cgYi9XZWJLaXQvbWFj
L0NoYW5nZUxvZwppbmRleCA0ZjMxMTRkLi40ZGI3OGEwIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFj
L0NoYW5nZUxvZworKysgYi9XZWJLaXQvbWFjL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisy
MDA5LTA5LTE0ICBHcmVnIEJvbHNpbmdhICA8Ym9sc2luZ2FAYXBwbGUuY29tPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBFTkFCTEUoQ09OVEVY
VF9NRU5VKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjkyMjUKKyAgICAgICAgCisgICAgICAgIFNldCB1cCBkZWZhdWx0cyBmb3IgRU5BQkxFX0NPTlRF
WFRfTUVOVSAob2ZmIGZvciBpUGhvbmUsIG9uIG90aGVyd2lzZSkKKworICAgICAgICAqIERlZmF1
bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW06IFdyYXAgZW50aXJl
IGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQv
V2ViQ29udGV4dE1lbnVDbGllbnQubW06IERpdHRvLgorICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L1dlYlZpZXdGYWN0b3J5Lm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwcm9w
cmlhdGUuCisgICAgICAgICogV2ViVmlldy9XZWJIVE1MVmlldy5tbTogRGl0dG8uCisgICAgICAg
ICgtW1dlYkhUTUxWaWV3IG1lbnVGb3JFdmVudDpdKToKKyAgICAgICAgKiBXZWJWaWV3L1dlYlVJ
RGVsZWdhdGVQcml2YXRlLmg6IERpdHRvLgorICAgICAgICAqIFdlYlZpZXcvV2ViVmlldy5tbTog
RGl0dG8uCisgICAgICAgICgtW1dlYlZpZXcgX2NvbW1vbkluaXRpYWxpemF0aW9uV2l0aEZyYW1l
TmFtZTpncm91cE5hbWU6dXNlc0RvY3VtZW50Vmlld3M6XSk6CisKIDIwMDktMDktMTEgIE1hcmsg
Um93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBKb24gSG9uZXlj
dXR0LgpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9EZWZhdWx0RGVsZWdhdGVzL1dlYkRlZmF1bHRD
b250ZXh0TWVudURlbGVnYXRlLm1tIGIvV2ViS2l0L21hYy9EZWZhdWx0RGVsZWdhdGVzL1dlYkRl
ZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tCmluZGV4IDJlZTdkOGIuLmVlMGNiNTUgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9tYWMvRGVmYXVsdERlbGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVE
ZWxlZ2F0ZS5tbQorKysgYi9XZWJLaXQvbWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENv
bnRleHRNZW51RGVsZWdhdGUubW0KQEAgLTI4LDYgKzI4LDcgQEAKIAogI2ltcG9ydCAiV2ViRGVm
YXVsdENvbnRleHRNZW51RGVsZWdhdGUuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAj
aW1wb3J0ICJXZWJET01PcGVyYXRpb25zLmgiCiAjaW1wb3J0ICJXZWJEYXRhU291cmNlUHJpdmF0
ZS5oIgogI2ltcG9ydCAiV2ViRGVmYXVsdFVJRGVsZWdhdGUuaCIKQEAgLTE3OSwzICsxODAsNCBA
QAogfQogCiBAZW5kCisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKZGlmZiAtLWdpdCBh
L1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQubW0gYi9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tCmluZGV4IDYzOWYz
YzEuLjczNmVkNDIgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ29u
dGV4dE1lbnVDbGllbnQubW0KKysrIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250
ZXh0TWVudUNsaWVudC5tbQpAQCAtMjgsNiArMjgsNyBAQAogCiAjaW1wb3J0ICJXZWJDb250ZXh0
TWVudUNsaWVudC5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICNpbXBvcnQgIldlYkRl
bGVnYXRlSW1wbGVtZW50YXRpb25DYWNoaW5nLmgiCiAjaW1wb3J0ICJXZWJFbGVtZW50RGljdGlv
bmFyeS5oIgogI2ltcG9ydCAiV2ViRnJhbWUuaCIKQEAgLTM1MiwzICszNTMsNCBAQCB2b2lkIFdl
YkNvbnRleHRNZW51Q2xpZW50OjpzdG9wU3BlYWtpbmcoKQogewogICAgIFtOU0FwcCBzdG9wU3Bl
YWtpbmc6bmlsXTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0
IGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbSBiL1dlYktpdC9t
YWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW0KaW5kZXggMDQ4MTZkMy4uM2E4NTEz
NCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5t
bQorKysgYi9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tCkBAIC0x
MzEsNiArMTMxLDcgQEAKICAgICByZXR1cm4gW05TVXNlckRlZmF1bHRzIF93ZWJraXRfcHJlZmVy
cmVkTGFuZ3VhZ2VDb2RlXTsKIH0KIAorI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAtIChOU1N0
cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ09wZW5MaW5rSW5OZXdXaW5kb3cKIHsKICAgICByZXR1
cm4gVUlfU1RSSU5HKCJPcGVuIExpbmsgaW4gTmV3IFdpbmRvdyIsICJPcGVuIGluIE5ldyBXaW5k
b3cgY29udGV4dCBtZW51IGl0ZW0iKTsKQEAgLTQ0Nyw2ICs0NDgsNyBAQAogewogICAgIHJldHVy
biBVSV9TVFJJTkcoIkluc3BlY3QgRWxlbWVudCIsICJJbnNwZWN0IEVsZW1lbnQgY29udGV4dCBt
ZW51IGl0ZW0iKTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiAtIChCT09M
KW9iamVjdElzVGV4dE1hcmtlcjooaWQpb2JqZWN0CiB7CmRpZmYgLS1naXQgYS9XZWJLaXQvbWFj
L1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcu
bW0KaW5kZXggOTQ0NDU2ZC4uOWIwYWE4MyAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tCisrKyBiL1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQpA
QCAtMzAzNyw4ICszMDM3LDExIEBAIFdFQkNPUkVfQ09NTUFORCh5YW5rQW5kU2VsZWN0KQogCiAg
ICAgLy8gTWF0Y2ggYmVoYXZpb3Igb2Ygb3RoZXIgYnJvd3NlcnMgYnkgc2VuZGluZyBhIG1vdXNl
ZG93biBldmVudCBmb3IgcmlnaHQgY2xpY2tzLgogICAgIF9wcml2YXRlLT5oYW5kbGluZ01vdXNl
RG93bkV2ZW50ID0gWUVTOworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgcGFnZS0+Y29u
dGV4dE1lbnVDb250cm9sbGVyKCktPmNsZWFyQ29udGV4dE1lbnUoKTsKKyNlbmRpZgogICAgIGNv
cmVGcmFtZS0+ZXZlbnRIYW5kbGVyKCktPm1vdXNlRG93bihldmVudCk7CisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVSkKICAgICBCT09MIGhhbmRsZWRFdmVudCA9IGNvcmVGcmFtZS0+ZXZlbnRIYW5k
bGVyKCktPnNlbmRDb250ZXh0TWVudUV2ZW50KGV2ZW50KTsKICAgICBfcHJpdmF0ZS0+aGFuZGxp
bmdNb3VzZURvd25FdmVudCA9IE5POwogCkBAIC0zMDY2LDYgKzMwNjksMTAgQEAgV0VCQ09SRV9D
T01NQU5EKHlhbmtBbmRTZWxlY3QpCiAgICAgZm9yIChOU1VJbnRlZ2VyIGkgPSAwOyBpIDwgY291
bnQ7IGkrKykKICAgICAgICAgW21lbnUgYWRkSXRlbTpbbWVudUl0ZW1zIG9iamVjdEF0SW5kZXg6
aV1dOwogICAgIHJldHVybiBtZW51OworI2Vsc2UKKyAgICBfcHJpdmF0ZS0+aGFuZGxpbmdNb3Vz
ZURvd25FdmVudCA9IE5POworICAgIHJldHVybiBuaWw7CisjZW5kaWYgLy8gRU5BQkxFKENPTlRF
WFRfTUVOVSkKIH0KIAogLSAoQk9PTClzZWFyY2hGb3I6KE5TU3RyaW5nICopc3RyaW5nIGRpcmVj
dGlvbjooQk9PTClmb3J3YXJkIGNhc2VTZW5zaXRpdmU6KEJPT0wpY2FzZUZsYWcgd3JhcDooQk9P
TCl3cmFwRmxhZwpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmggYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaAppbmRl
eCBlYWRjNzYxLi5hMjhiYTVhIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlE
ZWxlZ2F0ZVByaXZhdGUuaAorKysgYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVBy
aXZhdGUuaApAQCAtMTA3LDcgKzEwNyw5IEBAIGVudW0gewogLy8gRklYTUU6IElmIHdlIGV2ZXIg
bWFrZSB0aGlzIG1ldGhvZCBwdWJsaWMsIGl0IHNob3VsZCBpbmNsdWRlIGEgV2ViRnJhbWUgcGFy
YW1ldGVyLgogLSAoQk9PTCl3ZWJWaWV3U2hvdWxkSW50ZXJydXB0SmF2YVNjcmlwdDooV2ViVmll
dyAqKXNlbmRlcjsKIC0gKHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRlciB3aWxsUG9wdXBN
ZW51OihOU01lbnUgKiltZW51OworI2lmIEVOQUJMRV9DT05URVhUX01FTlUKIC0gKHZvaWQpd2Vi
VmlldzooV2ViVmlldyAqKXNlbmRlciBjb250ZXh0TWVudUl0ZW1TZWxlY3RlZDooTlNNZW51SXRl
bSAqKWl0ZW0gZm9yRWxlbWVudDooTlNEaWN0aW9uYXJ5ICopZWxlbWVudDsKKyNlbmRpZgogLSAo
dm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIHNhdmVGcmFtZVZpZXc6KFdlYkZyYW1lVmll
dyAqKWZyYW1lVmlldyBzaG93aW5nUGFuZWw6KEJPT0wpc2hvd2luZ1BhbmVsOwogCiAvKiEKZGlm
ZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tIGIvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0KaW5kZXggYjdlZGE4ZS4uYzE0NGIzZiAxMDA2NDQKLS0tIGEvV2ViS2l0
L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KKysrIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KQEAgLTYxOSw3ICs2MTksMTIgQEAgc3RhdGljIGJvb2wgcnVubmluZ1RpZ2VyTWFpbCgpCiAg
ICAgICAgIGRpZE9uZVRpbWVJbml0aWFsaXphdGlvbiA9IHRydWU7CiAgICAgfQogCi0gICAgX3By
aXZhdGUtPnBhZ2UgPSBuZXcgUGFnZShuZXcgV2ViQ2hyb21lQ2xpZW50KHNlbGYpLCBuZXcgV2Vi
Q29udGV4dE1lbnVDbGllbnQoc2VsZiksIG5ldyBXZWJFZGl0b3JDbGllbnQoc2VsZiksIG5ldyBX
ZWJEcmFnQ2xpZW50KHNlbGYpLCBuZXcgV2ViSW5zcGVjdG9yQ2xpZW50KHNlbGYpKTsKKyNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VKQorICAgIFdlYkNvbnRleHRNZW51Q2xpZW50ICpjb250ZXh0TWVu
dUNsaWVudCA9IG5ldyBXZWJDb250ZXh0TWVudUNsaWVudChzZWxmKTsKKyNlbHNlCisgICAgV2Vi
Q29udGV4dE1lbnVDbGllbnQgKmNvbnRleHRNZW51Q2xpZW50ID0gMDsKKyNlbmRpZgorICAgIF9w
cml2YXRlLT5wYWdlID0gbmV3IFBhZ2UobmV3IFdlYkNocm9tZUNsaWVudChzZWxmKSwgY29udGV4
dE1lbnVDbGllbnQsIG5ldyBXZWJFZGl0b3JDbGllbnQoc2VsZiksIG5ldyBXZWJEcmFnQ2xpZW50
KHNlbGYpLCBuZXcgV2ViSW5zcGVjdG9yQ2xpZW50KHNlbGYpKTsKIAogICAgIF9wcml2YXRlLT5w
YWdlLT5zZXR0aW5ncygpLT5zZXRMb2NhbFN0b3JhZ2VEYXRhYmFzZVBhdGgoW1tzZWxmIHByZWZl
cmVuY2VzXSBfbG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRoXSk7CiAKQEAgLTExMjcsNiArMTEzMiw3
IEBAIHN0YXRpYyBib29sIGZhc3REb2N1bWVudFRlYXJkb3duRW5hYmxlZCgpCiAgICAgcmV0dXJu
IF9wcml2YXRlLT5wYWdlOwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKIC0gKE5TTWVu
dSAqKV9tZW51Rm9yRWxlbWVudDooTlNEaWN0aW9uYXJ5ICopZWxlbWVudCBkZWZhdWx0SXRlbXM6
KE5TQXJyYXkgKilpdGVtcwogewogICAgIE5TQXJyYXkgKmRlZmF1bHRNZW51SXRlbXMgPSBbW1dl
YkRlZmF1bHRVSURlbGVnYXRlIHNoYXJlZFVJRGVsZWdhdGVdIHdlYlZpZXc6c2VsZiBjb250ZXh0
TWVudUl0ZW1zRm9yRWxlbWVudDplbGVtZW50IGRlZmF1bHRNZW51SXRlbXM6aXRlbXNdOwpAQCAt
MTE0NSw2ICsxMTUxLDcgQEAgc3RhdGljIGJvb2wgZmFzdERvY3VtZW50VGVhcmRvd25FbmFibGVk
KCkKIAogICAgIHJldHVybiBbbWVudSBhdXRvcmVsZWFzZV07CiB9CisjZW5kaWYgLy8gRU5BQkxF
KENPTlRFWFRfTUVOVSkKIAogLSAodm9pZClfbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQ6KE5TRGlj
dGlvbmFyeSAqKWRpY3Rpb25hcnkgbW9kaWZpZXJGbGFnczooTlNVSW50ZWdlciltb2RpZmllckZs
YWdzCiB7Ci0tIAoxLjYuMy4zCgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39559</attachid>
            <date>2009-09-14 11:25:27 -0700</date>
            <delta_ts>2009-09-15 16:55:56 -0700</delta_ts>
            <desc>Fix DerivedSources.make for all platforms, not just MacOS</desc>
            <filename>0001-JavaScriptCore-Add-ENABLE-CONTEXT_MENU.patch</filename>
            <type>text/plain</type>
            <size>29464</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">RnJvbSA3ZDVlMDk1NmM1OTEzYjI0NDEyYzI4YmYzOGE2YzcxODk0ZTU3YjYzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHcmVnIEJvbHNpbmdhIDxib2xzaW5nYUBhcHBsZS5jb20+CkRh
dGU6IE1vbiwgMTQgU2VwIDIwMDkgMTA6Mjk6MTMgLTA3MDAKU3ViamVjdDogW1BBVENIXSBKYXZh
U2NyaXB0Q29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlUpCiBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoK
KiB3dGYvUGxhdGZvcm0uaDoKCldlYkNvcmU6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgoKTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZp
b3IuKQoKKiBEZXJpdmVkU291cmNlcy5tYWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4dE1lbnUu
ZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRFWFRfTUVOVS4KKiBXZWJDb3JlLmJhc2UuZXhwOiBNb3Zl
IENvbnRleHRNZW51IG9ubHkgZXhwb3J0cyB0byBXZWJDb3JlLkNvbnRleHRNZW51LmV4cC4KKiBX
ZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBXZWJDb3JlLkNvbnRleHRNZW51
LmV4cC4KKiBkb20vTm9kZS5jcHA6IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBs
aWNhYmxlLgooV2ViQ29yZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CiogbG9hZGVyL0Vt
cHR5Q2xpZW50cy5oOiBEaXR0by4KKiBwYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHA6IFdy
YXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVSkuCiogcGFnZS9FdmVudEhhbmRs
ZXIuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwYWdl
L0V2ZW50SGFuZGxlci5oOiBEaXR0by4KKiBwYWdlL1BhZ2UuY3BwOiBEaXR0by4KKFdlYkNvcmU6
OlBhZ2U6OlBhZ2UpOgoqIHBhZ2UvUGFnZS5oOiBEaXR0by4KKiBwYWdlL21hYy9FdmVudEhhbmRs
ZXJNYWMubW06IERpdHRvLgoqIHBhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oOiBEaXR0by4K
KiBwbGF0Zm9ybS9Db250ZXh0TWVudS5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENP
TlRFWFRfTUVOVSkuCiogcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENP
TlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKiBwbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJ
dGVtTWFjLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgoqIHBs
YXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbTogRGl0dG8uCiogcGxhdGZvcm0vbWFjL0xvY2Fs
aXplZFN0cmluZ3NNYWMubW06IFVzZSBFTkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHBsaWNh
YmxlLgoqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6IERpdHRvLgooV2ViQ29yZTo6U1ZHSW1h
Z2U6OmRhdGFDaGFuZ2VkKToKCldlYktpdC9tYWM6IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQpo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgoKU2V0IHVwIGRlZmF1bHRzIGZvciBFTkFCTEVfQ09OVEVYVF9NRU5V
IChvZmYgZm9yIGlQaG9uZSwgb24gb3RoZXJ3aXNlKQoKKiBEZWZhdWx0RGVsZWdhdGVzL1dlYkRl
ZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShD
T05URVhUX01FTlUpLgoqIFdlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tOiBE
aXR0by4KKiBXZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbTogVXNlIEVOQUJMRShDT05U
RVhUX01FTlUpIHdoZXJlIGFwcHJvcHJpYXRlLgoqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06IERp
dHRvLgooLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CiogV2ViVmlldy9XZWJVSURlbGVn
YXRlUHJpdmF0ZS5oOiBEaXR0by4KKiBXZWJWaWV3L1dlYlZpZXcubW06IERpdHRvLgooLVtXZWJW
aWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOnVzZXNEb2N1
bWVudFZpZXdzOl0pOgotLS0KIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAg
ICAgICAgICAgICAgIHwgICAgOSArKysrKysKIEphdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5o
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMSArKysrKysrKysrKysrKysrKysrKwog
V2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEw
ICsrKysrKwogV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cCAgICAgICAgICAgICAgICAg
ICAgfCAgICA1ICsrKwogV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgICA1IC0tLQogV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2ogICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvZG9tL05vZGUuY3BwICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL2xvYWRlci9FbXB0eUNsaWVudHMu
aCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51
Q29udHJvbGxlci5jcHAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGFnZS9FdmVudEhh
bmRsZXIuY3BwICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BhZ2UvRXZl
bnRIYW5kbGVyLmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQgKysKIFdlYkNvcmUvcGFn
ZS9QYWdlLmNwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNv
cmUvcGFnZS9QYWdlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgNCArKwog
V2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0gICAgICAgICAgICAgICAgfCAgICAy
ICsKIFdlYkNvcmUvcGFnZS9tYWMvV2ViQ29yZVZpZXdGYWN0b3J5LmggICAgICAgICAgICAgIHwg
ICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcCAgICAgICAgICAgICAgICAg
ICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmggICAgICAgICAg
ICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5t
bSAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5t
bSAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3Ry
aW5nc01hYy5tbSAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdl
LmNwcCAgICAgICAgICAgICAgICAgIHwgICAgNCArKwogV2ViS2l0L21hYy9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE4ICsrKysrKysrKysrCiAuLi4vV2ViRGVm
YXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViS2l0
L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5tbSAgfCAgICAyICsKIFdl
YktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW0gICAgICAgIHwgICAgMiAr
CiBXZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gICAgICAgICAgICAgICAgICB8ICAg
IDcgKysrKwogV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQcml2YXRlLmggICAgICAg
ICAgfCAgICAyICsKIFdlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1tICAgICAgICAgICAgICAg
ICAgICAgIHwgICAgOSArKysrKy0KIDI5IGZpbGVzIGNoYW5nZWQsIDE0MiBpbnNlcnRpb25zKCsp
LCA2IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFdlYkNvcmUvV2ViQ29yZS5Db250
ZXh0TWVudS5leHAKCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cgYi9KYXZh
U2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ0MjY4NC4uMWQzOGJhYiAxMDA2NDQKLS0tIGEv
SmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEyIEBACisyMDA5LTA5LTE0ICBHcmVnIEJvbHNpbmdhICA8Ym9sc2luZ2FAYXBw
bGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKKworICAgICAgICAqIHd0Zi9QbGF0Zm9ybS5oOgorCiAy
MDA5LTA5LTE0ICBDc2FiYSBPc3p0cm9nb25hYyAgPG9zemlAaW5mLnUtc3plZ2VkLmh1PgogCiAg
ICAgICAgIFJldmlld2VkIGJ5IFRvciBBcm5lIFZlc3Riw7guCmRpZmYgLS1naXQgYS9KYXZhU2Ny
aXB0Q29yZS93dGYvUGxhdGZvcm0uaCBiL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCmlu
ZGV4IDg0MmZmYmQuLjExZjk1YjMgMTAwNjQ0Ci0tLSBhL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0
Zm9ybS5oCisrKyBiL0phdmFTY3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oCkBAIC00MTAsNiArNDEw
LDcgQEAKICNpZiBQTEFURk9STShJUEhPTkUpCiAjZGVmaW5lIFdURl9QTEFURk9STV9DRiAxCiAj
ZGVmaW5lIFdURl9VU0VfUFRIUkVBRFMgMQorI2RlZmluZSBFTkFCTEVfQ09OVEVYVF9NRU5VIDAK
ICNkZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZGVmaW5lIEVOQUJMRV9NQUNfSkFWQV9CUklER0Ug
MAogI2RlZmluZSBFTkFCTEVfSUNPTkRBVEFCQVNFIDAKQEAgLTU1Miw2ICs1NTMsMTAgQEAKICNk
ZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZW5kaWYKIAorI2lmICFkZWZpbmVkKEVOQUJMRV9DT05U
RVhUX01FTlUpCisjZGVmaW5lIEVOQUJMRV9DT05URVhUX01FTlUgMQorI2VuZGlmCisKICNpZiAh
ZGVmaW5lZChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpCiAjZGVmaW5lIEVOQUJMRV9EQVNIQk9B
UkRfU1VQUE9SVCAwCiAjZW5kaWYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggOTM1MGJmMi4uMGZjZDJhMiAxMDA2NDQKLS0tIGEvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwzNCBAQAorMjAw
OS0wOS0xNCAgR3JlZyBCb2xzaW5nYSAgPGJvbHNpbmdhQGFwcGxlLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRU5BQkxFKENPTlRFWFRf
TUVOVSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5
MjI1CisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVoYXZp
b3IuKQorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogVXNlIG5ldyBXZWJDb3JlLkNv
bnRleHRNZW51LmV4cCBmaWxlIGlmIEVOQUJMRV9DT05URVhUX01FTlUuCisgICAgICAgICogV2Vi
Q29yZS5iYXNlLmV4cDogTW92ZSBDb250ZXh0TWVudSBvbmx5IGV4cG9ydHMgdG8gV2ViQ29yZS5D
b250ZXh0TWVudS5leHAuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qOiBBZGQgV2ViQ29yZS5Db250ZXh0TWVudS5leHAuCisgICAgICAgICogZG9tL05vZGUuY3Bw
OiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGljYWJsZS4KKyAgICAgICAgKFdl
YkNvcmU6Ok5vZGU6OmRlZmF1bHRFdmVudEhhbmRsZXIpOgorICAgICAgICAqIGxvYWRlci9FbXB0
eUNsaWVudHMuaDogRGl0dG8uCisgICAgICAgICogcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIu
Y3BwOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAq
IHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDogVXNlIEVOQUJMRShDT05URVhUX01FTlUpIHdoZXJlIGFw
cGxpY2FibGUuCisgICAgICAgICogcGFnZS9FdmVudEhhbmRsZXIuaDogRGl0dG8uCisgICAgICAg
ICogcGFnZS9QYWdlLmNwcDogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpQYWdlOjpQYWdlKToK
KyAgICAgICAgKiBwYWdlL1BhZ2UuaDogRGl0dG8uCisgICAgICAgICogcGFnZS9tYWMvRXZlbnRI
YW5kbGVyTWFjLm1tOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL21hYy9XZWJDb3JlVmlld0ZhY3Rv
cnkuaDogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwOiBXcmFwIGVu
dGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01FTlUpLgorICAgICAgICAqIHBsYXRmb3JtL0xv
Y2FsaXplZFN0cmluZ3MuaDogVXNlIEVOQUJMRShDT05URVhUX01FTlUpIHdoZXJlIGFwcGxpY2Fi
bGUuCisgICAgICAgICogcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbTogV3JhcCBl
bnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VKS4KKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvQ29udGV4dE1lbnVNYWMubW06IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9Mb2Nh
bGl6ZWRTdHJpbmdzTWFjLm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVSkgd2hlcmUgYXBwbGlj
YWJsZS4KKyAgICAgICAgKiBzdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3BwOiBEaXR0by4KKyAgICAg
ICAgKFdlYkNvcmU6OlNWR0ltYWdlOjpkYXRhQ2hhbmdlZCk6CisKIDIwMDktMDktMTQgIENhbWVy
b24gTWNDb3JtYWNrICA8Y2FtQG1jYy5pZC5hdT4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmlj
IFNlaWRlbC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZSBiL1dlYkNv
cmUvRGVyaXZlZFNvdXJjZXMubWFrZQppbmRleCBmYWU3NWUzLi4wYjM5YzAzIDEwMDY0NAotLS0g
YS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKKysrIGIvV2ViQ29yZS9EZXJpdmVkU291cmNl
cy5tYWtlCkBAIC00NjQsNiArNDY0LDEyIEBAIEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCA9IDAK
IAogZW5kaWYKIAoraWZlcSAoJChzaGVsbCBnY2MgLUUgLVAgLWRNIC1GICQoQlVJTFRfUFJPRFVD
VFNfRElSKSAkKEZSQU1FV09SS19GTEFHUykgV2ViQ29yZS9Gb3J3YXJkaW5nSGVhZGVycy93dGYv
UGxhdGZvcm0uaCB8IGdyZXAgRU5BQkxFX0NPTlRFWFRfTUVOVSB8IGN1dCAtZCcgJyAtZjMpLCAx
KQorICAgIEVOQUJMRV9DT05URVhUX01FTlUgPSAxCitlbHNlCisgICAgRU5BQkxFX0NPTlRFWFRf
TUVOVSA9IDAKK2VuZGlmCisKICMgQ1NTIHByb3BlcnR5IG5hbWVzIGFuZCB2YWx1ZSBrZXl3b3Jk
cwogCiBXRUJDT1JFX0NTU19QUk9QRVJUWV9OQU1FUyA6PSAkKFdlYkNvcmUpL2Nzcy9DU1NQcm9w
ZXJ0eU5hbWVzLmluCkBAIC03NTgsNiArNzY0LDEwIEBAIGlmZXEgKCQoc2hlbGwgZ2NjIC1FIC1Q
IC1kTSAtRiAkKEJVSUxUX1BST0RVQ1RTX0RJUikgJChGUkFNRVdPUktfRkxBR1MpIFdlYkNvcmUv
CiAgICAgV0VCQ09SRV9FWFBPUlRfREVQRU5ERU5DSUVTIDo9ICQoV0VCQ09SRV9FWFBPUlRfREVQ
RU5ERU5DSUVTKSBXZWJDb3JlLk5QQVBJLmV4cAogZW5kaWYKIAoraWZlcSAoJChFTkFCTEVfQ09O
VEVYVF9NRU5VKSwgMSkKKyAgICBXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0gJChXRUJD
T1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMpIFdlYkNvcmUuQ29udGV4dE1lbnUuZXhwCitlbmRpZgor
CiBpZmVxICgkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCksIDEpCiAgICAgV0VCQ09SRV9FWFBP
UlRfREVQRU5ERU5DSUVTIDo9ICQoV0VCQ09SRV9FWFBPUlRfREVQRU5ERU5DSUVTKSBXZWJDb3Jl
LkRhc2hib2FyZFN1cHBvcnQuZXhwCiBlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3Jl
LkNvbnRleHRNZW51LmV4cCBiL1dlYkNvcmUvV2ViQ29yZS5Db250ZXh0TWVudS5leHAKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjJiMmMxZgotLS0gL2Rldi9udWxsCisrKyBi
L1dlYkNvcmUvV2ViQ29yZS5Db250ZXh0TWVudS5leHAKQEAgLTAsMCArMSw1IEBACitfX1pON1dl
YkNvcmUxMUNvbnRleHRNZW51MjJzZXRQbGF0Zm9ybURlc2NyaXB0aW9uRVAxNE5TTXV0YWJsZUFy
cmF5CitfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjIwc2VuZENvbnRleHRNZW51RXZlbnRFUDdO
U0V2ZW50CitfX1pON1dlYkNvcmUxNUNvbnRleHRNZW51SXRlbTI2cmVsZWFzZVBsYXRmb3JtRGVz
Y3JpcHRpb25FdgorX19aTjdXZWJDb3JlMjFDb250ZXh0TWVudUNvbnRyb2xsZXIxNmNsZWFyQ29u
dGV4dE1lbnVFdgorX19aTks3V2ViQ29yZTExQ29udGV4dE1lbnUxOXBsYXRmb3JtRGVzY3JpcHRp
b25FdgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwIGIvV2ViQ29yZS9XZWJD
b3JlLmJhc2UuZXhwCmluZGV4IDc0Y2YzMzUuLjRiODczM2UgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
V2ViQ29yZS5iYXNlLmV4cAorKysgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKQEAgLTE0Niw3
ICsxNDYsNiBAQCBfX1pON1dlYkNvcmUxMGhhbmRDdXJzb3JFdgogX19aTjdXZWJDb3JlMTBzZXRD
b29raWVzRVBOU184RG9jdW1lbnRFUktOU180S1VSTEVSS05TXzZTdHJpbmdFCiBfX1pON1dlYkNv
cmUxMUNhY2hlZEZyYW1lMjNjYWNoZWRGcmFtZVBsYXRmb3JtRGF0YUV2CiBfX1pON1dlYkNvcmUx
MUNhY2hlZEZyYW1lMjZzZXRDYWNoZWRGcmFtZVBsYXRmb3JtRGF0YUVQTlNfMjNDYWNoZWRGcmFt
ZVBsYXRmb3JtRGF0YUUKLV9fWk43V2ViQ29yZTExQ29udGV4dE1lbnUyMnNldFBsYXRmb3JtRGVz
Y3JpcHRpb25FUDE0TlNNdXRhYmxlQXJyYXkKIF9fWk43V2ViQ29yZTExRWRpdENvbW1hbmQ3cmVh
cHBseUV2CiBfX1pON1dlYkNvcmUxMUVkaXRDb21tYW5kN3VuYXBwbHlFdgogX19aTjdXZWJDb3Jl
MTFGaWxlQ2hvb3NlcjEwY2hvb3NlRmlsZUVSS05TXzZTdHJpbmdFCkBAIC0yMjgsNyArMjI3LDYg
QEAgX19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXIxN2RyYWdTb3VyY2VNb3ZlZFRvRVJLTlNfMThQ
bGF0Zm9ybU1vdXNlRXZlbnRFCiBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjE3ZXZlbnRNYXlT
dGFydERyYWdFUDdOU0V2ZW50CiBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjIwaGFuZGxlVGV4
dElucHV0RXZlbnRFUktOU182U3RyaW5nRVBOU181RXZlbnRFYmIKIF9fWk43V2ViQ29yZTEyRXZl
bnRIYW5kbGVyMjBoaXRUZXN0UmVzdWx0QXRQb2ludEVSS05TXzhJbnRQb2ludEViYk5TXzE3SGl0
VGVzdFNjcm9sbGJhcnNFCi1fX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjIwc2VuZENvbnRleHRN
ZW51RXZlbnRFUDdOU0V2ZW50CiBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjI3Y2Fwc0xvY2tT
dGF0ZU1heUhhdmVDaGFuZ2VkRXYKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyN21vdXNlVXBF
UDdOU0V2ZW50CiBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjhrZXlFdmVudEVQN05TRXZlbnQK
QEAgLTM0MCw3ICszMzgsNiBAQCBfX1pON1dlYkNvcmUxNUJhY2tGb3J3YXJkTGlzdDhnb1RvSXRl
bUVQTlNfMTFIaXN0b3J5SXRlbUUKIF9fWk43V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0OWdvRm9y
d2FyZEV2CiBfX1pON1dlYkNvcmUxNUJhY2tGb3J3YXJkTGlzdEMxRVBOU180UGFnZUUKIF9fWk43
V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0RDFFdgotX19aTjdXZWJDb3JlMTVDb250ZXh0TWVudUl0
ZW0yNnJlbGVhc2VQbGF0Zm9ybURlc2NyaXB0aW9uRXYKIF9fWk43V2ViQ29yZTE1RGF0YWJhc2VU
cmFja2VyMTJkZWxldGVPcmlnaW5FUE5TXzE0U2VjdXJpdHlPcmlnaW5FCiBfX1pON1dlYkNvcmUx
NURhdGFiYXNlVHJhY2tlcjE0ZGVsZXRlRGF0YWJhc2VFUE5TXzE0U2VjdXJpdHlPcmlnaW5FUktO
U182U3RyaW5nRQogX19aTjdXZWJDb3JlMTVEYXRhYmFzZVRyYWNrZXIxNHF1b3RhRm9yT3JpZ2lu
RVBOU18xNFNlY3VyaXR5T3JpZ2luRQpAQCAtNDMzLDcgKzQzMCw2IEBAIF9fWk43V2ViQ29yZTE5
VGV4dFJlc291cmNlRGVjb2RlckQxRXYKIF9fWk43V2ViQ29yZTE5YXBwbGljYXRpb25Jc1NhZmFy
aUV2CiBfX1pON1dlYkNvcmUyMFJlc291cmNlUmVzcG9uc2VCYXNlMjRzZXRFeHBlY3RlZENvbnRl
bnRMZW5ndGhFeAogX19aTjdXZWJDb3JlMjBSZXNvdXJjZVJlc3BvbnNlQmFzZUMyRXYKLV9fWk43
V2ViQ29yZTIxQ29udGV4dE1lbnVDb250cm9sbGVyMTZjbGVhckNvbnRleHRNZW51RXYKIF9fWk43
V2ViQ29yZTIxSmF2YVNjcmlwdERlYnVnU2VydmVyMjNyZWNvbXBpbGVBbGxKU0Z1bmN0aW9uc0VQ
TlNfNVRpbWVySVMwX0VFCiBfX1pON1dlYkNvcmUyMUphdmFTY3JpcHREZWJ1Z1NlcnZlcjZzaGFy
ZWRFdgogX19aTjdXZWJDb3JlMjFQbGF0Zm9ybUtleWJvYXJkRXZlbnQyNGRpc2FtYmlndWF0ZUtl
eURvd25FdmVudEVOUzBfNFR5cGVFYgpAQCAtNzczLDcgKzc2OSw2IEBAIF9fWk5LN1dlYkNvcmUx
MFNjcm9sbFZpZXcxMmRvY3VtZW50Vmlld0V2CiBfX1pOSzdXZWJDb3JlMTBTY3JvbGxWaWV3MTRz
Y3JvbGxiYXJNb2Rlc0VSTlNfMTNTY3JvbGxiYXJNb2RlRVMyXwogX19aTks3V2ViQ29yZTEwU2Ny
b2xsVmlldzE4dmlzaWJsZUNvbnRlbnRSZWN0RWIKIF9fWk5LN1dlYkNvcmUxMUNhY2hlZEltYWdl
NWltYWdlRXYKLV9fWk5LN1dlYkNvcmUxMUNvbnRleHRNZW51MTlwbGF0Zm9ybURlc2NyaXB0aW9u
RXYKIF9fWk5LN1dlYkNvcmUxMUZyYW1lTG9hZGVyMTBpc0NvbXBsZXRlRXYKIF9fWk5LN1dlYkNv
cmUxMUZyYW1lTG9hZGVyMTRmcmFtZUhhc0xvYWRlZEV2CiBfX1pOSzdXZWJDb3JlMTFGcmFtZUxv
YWRlcjE1Y29udGFpbnNQbHVnaW5zRXYKZGlmZiAtLWdpdCBhL1dlYkNvcmUvV2ViQ29yZS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKaW5kZXggMjk1NjQ5Ni4uMjc3NTJkYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTk4MzgsNiArOTgzOCw3IEBACiAJCUZFODBEQTZFMEU5
QzQ3MkYwMDBENkY3NSAvKiBKU1Bvc2l0aW9uRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gSlNQb3NpdGlvbkVycm9yLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCUZFQUI5MDEwMEVBNTFCOUMwMDYzNDhDMyAvKiBHZW9sb2NhdGlvblNlcnZpY2UuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gR2VvbG9jYXRpb25TZXJ2aWNlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkVBQjkwMTEwRUE1MUI5QzAwNjM0OEMz
IC8qIEdlb2xvY2F0aW9uU2VydmljZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBHZW9sb2NhdGlvblNlcnZpY2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJRkVG
RDEwMkMxMDVDNDE0NzAwMDI4NTVFIC8qIFdlYkNvcmUuQ29udGV4dE1lbnUuZXhwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5leHBvcnRzOyBwYXRoID0gV2ViQ29yZS5Db250ZXh0TWVudS5leHA7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAvKiBFbmQgUEJYRmlsZVJlZmVyZW5jZSBzZWN0aW9u
ICovCiAKIC8qIEJlZ2luIFBCWEZyYW1ld29ya3NCdWlsZFBoYXNlIHNlY3Rpb24gKi8KQEAgLTEw
NDM0LDYgKzEwNDM1LDcgQEAKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCiAJ
CQkJRjU4RUY1OEUwMkRGREZCNzAxODYzNUNBIC8qIFdlYkNvcmUuYmFzZS5leHAgKi8sCisJCQkJ
RkVGRDEwMkMxMDVDNDE0NzAwMDI4NTVFIC8qIFdlYkNvcmUuQ29udGV4dE1lbnUuZXhwICovLAog
CQkJCTQ0OTE5NTlEMEZCRTE3RDcwMEQ5RjgyNCAvKiBXZWJDb3JlLkRhc2hib2FyZFN1cHBvcnQu
ZXhwICovLAogCQkJCTQ0OTE5NTlDMEZCRTE3RDcwMEQ5RjgyNCAvKiBXZWJDb3JlLkpOSS5leHAg
Ki8sCiAJCQkJNDQ5MTk1OUIwRkJFMTdENzAwRDlGODI0IC8qIFdlYkNvcmUuTFA2NC5leHAgKi8s
CmRpZmYgLS1naXQgYS9XZWJDb3JlL2RvbS9Ob2RlLmNwcCBiL1dlYkNvcmUvZG9tL05vZGUuY3Bw
CmluZGV4IDgxYzE4NjcuLmRjM2UyZjYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvZG9tL05vZGUuY3Bw
CisrKyBiL1dlYkNvcmUvZG9tL05vZGUuY3BwCkBAIC0yOTk3LDEwICsyOTk3LDEyIEBAIHZvaWQg
Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcihFdmVudCogZXZlbnQpCiAgICAgfSBlbHNlIGlmIChl
dmVudFR5cGUgPT0gZXZlbnROYW1lcygpLmNsaWNrRXZlbnQpIHsKICAgICAgICAgaW50IGRldGFp
bCA9IGV2ZW50LT5pc1VJRXZlbnQoKSA/IHN0YXRpY19jYXN0PFVJRXZlbnQqPihldmVudCktPmRl
dGFpbCgpIDogMDsKICAgICAgICAgZGlzcGF0Y2hVSUV2ZW50KGV2ZW50TmFtZXMoKS5ET01BY3Rp
dmF0ZUV2ZW50LCBkZXRhaWwsIGV2ZW50KTsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAg
IH0gZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5jb250ZXh0bWVudUV2ZW50KSB7
CiAgICAgICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgpLT5mcmFtZSgpKQogICAgICAg
ICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBmcmFtZS0+cGFnZSgpKQogICAgICAgICAgICAgICAgIHBh
Z2UtPmNvbnRleHRNZW51Q29udHJvbGxlcigpLT5oYW5kbGVDb250ZXh0TWVudUV2ZW50KGV2ZW50
KTsKKyNlbmRpZgogICAgIH0gZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS50ZXh0
SW5wdXRFdmVudCkgewogICAgICAgICBpZiAoZXZlbnQtPmlzVGV4dEV2ZW50KCkpCiAgICAgICAg
ICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJhbWUoKSkKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGll
bnRzLmgKaW5kZXggYzA4ZTI2MS4uNmQ3YTMyZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9sb2FkZXIv
RW1wdHlDbGllbnRzLmgKKysrIGIvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKQEAgLTQx
NSw2ICs0MTUsNyBAQCBwdWJsaWM6CiAKIH07CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQog
Y2xhc3MgRW1wdHlDb250ZXh0TWVudUNsaWVudCA6IHB1YmxpYyBDb250ZXh0TWVudUNsaWVudCB7
CiBwdWJsaWM6CiAgICAgdmlydHVhbCB+RW1wdHlDb250ZXh0TWVudUNsaWVudCgpIHsgIH0KQEAg
LTQzNSw2ICs0MzYsNyBAQCBwdWJsaWM6CiAgICAgdmlydHVhbCB2b2lkIHNlYXJjaFdpdGhTcG90
bGlnaHQoKSB7IH0KICNlbmRpZgogfTsKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQog
CiBjbGFzcyBFbXB0eURyYWdDbGllbnQgOiBwdWJsaWMgRHJhZ0NsaWVudCB7CiBwdWJsaWM6CmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvQ29udGV4dE1lbnVDb250cm9sbGVyLmNwcCBiL1dlYkNv
cmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwCmluZGV4IDBlYzlkMWMuLmY1ZmZmYTYg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwCisrKyBi
L1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNvbnRyb2xsZXIuY3BwCkBAIC0yNiw2ICsyNiw3IEBA
CiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgi
CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogI2luY2x1ZGUgIkNocm9tZS5oIgogI2luY2x1
ZGUgIkNvbnRleHRNZW51LmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDbGllbnQuaCIKQEAgLTMz
NSwzICszMzYsNCBAQCB2b2lkIENvbnRleHRNZW51Q29udHJvbGxlcjo6Y29udGV4dE1lbnVJdGVt
U2VsZWN0ZWQoQ29udGV4dE1lbnVJdGVtKiBpdGVtKQogfQogCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGFnZS9FdmVudEhhbmRsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKaW5k
ZXggZTlkZDNiZi4uZDM3ZjhkMCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxl
ci5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5jcHAKQEAgLTE4MDksNiArMTgw
OSw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpoYW5kbGVXaGVlbEV2ZW50KFBsYXRmb3JtV2hlZWxF
dmVudCYgZSkKICAgICByZXR1cm4gZS5pc0FjY2VwdGVkKCk7CiB9CiAKKyNpZiBFTkFCTEUoQ09O
VEVYVF9NRU5VKQogYm9vbCBFdmVudEhhbmRsZXI6OnNlbmRDb250ZXh0TWVudUV2ZW50KGNvbnN0
IFBsYXRmb3JtTW91c2VFdmVudCYgZXZlbnQpCiB7CiAgICAgRG9jdW1lbnQqIGRvYyA9IG1fZnJh
bWUtPmRvY3VtZW50KCk7CkBAIC0xODM5LDYgKzE4NDAsNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6
c2VuZENvbnRleHRNZW51RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCkKICAg
ICAKICAgICByZXR1cm4gc3dhbGxvd0V2ZW50OwogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhU
X01FTlUpCiAKIHZvaWQgRXZlbnRIYW5kbGVyOjpzY2hlZHVsZUhvdmVyU3RhdGVVcGRhdGUoKQog
ewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oIGIvV2ViQ29yZS9wYWdl
L0V2ZW50SGFuZGxlci5oCmluZGV4IGJkNWMzMTIuLjBhODg4NDQgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuaAorKysgYi9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgK
QEAgLTEyOSw3ICsxMjksOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBoYW5kbGVNb3VzZVJlbGVhc2VF
dmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKTsKICAgICBib29sIGhhbmRsZVdoZWVsRXZl
bnQoUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAg
IGJvb2wgc2VuZENvbnRleHRNZW51RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50Jik7Cisj
ZW5kaWYKIAogICAgIHZvaWQgc2V0TW91c2VEb3duTWF5U3RhcnRBdXRvc2Nyb2xsKCkgeyBtX21v
dXNlRG93bk1heVN0YXJ0QXV0b3Njcm9sbCA9IHRydWU7IH0KIApAQCAtMTY2LDcgKzE2OCw5IEBA
IHB1YmxpYzoKICAgICBib29sIGtleUV2ZW50KE5TRXZlbnQgKik7CiAgICAgYm9vbCB3aGVlbEV2
ZW50KE5TRXZlbnQgKik7CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAgIGJvb2wgc2Vu
ZENvbnRleHRNZW51RXZlbnQoTlNFdmVudCAqKTsKKyNlbmRpZgogICAgIGJvb2wgZXZlbnRNYXlT
dGFydERyYWcoTlNFdmVudCAqKTsKIAogICAgIHZvaWQgc2VuZEZha2VFdmVudHNBZnRlcldpZGdl
dFRyYWNraW5nKE5TRXZlbnQgKmluaXRpYXRpbmdFdmVudCk7CmRpZmYgLS1naXQgYS9XZWJDb3Jl
L3BhZ2UvUGFnZS5jcHAgYi9XZWJDb3JlL3BhZ2UvUGFnZS5jcHAKaW5kZXggNGM0M2VjZS4uY2Rj
ZTIyOCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCisrKyBiL1dlYkNvcmUvcGFn
ZS9QYWdlLmNwcApAQCAtMTAyLDcgKzEwMiw5IEBAIFBhZ2U6OlBhZ2UoQ2hyb21lQ2xpZW50KiBj
aHJvbWVDbGllbnQsIENvbnRleHRNZW51Q2xpZW50KiBjb250ZXh0TWVudUNsaWVudCwgRWRpCiAg
ICAgLCBtX2RyYWdDYXJldENvbnRyb2xsZXIobmV3IFNlbGVjdGlvbkNvbnRyb2xsZXIoMCwgdHJ1
ZSkpCiAgICAgLCBtX2RyYWdDb250cm9sbGVyKG5ldyBEcmFnQ29udHJvbGxlcih0aGlzLCBkcmFn
Q2xpZW50KSkKICAgICAsIG1fZm9jdXNDb250cm9sbGVyKG5ldyBGb2N1c0NvbnRyb2xsZXIodGhp
cykpCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICAsIG1fY29udGV4dE1lbnVDb250cm9s
bGVyKG5ldyBDb250ZXh0TWVudUNvbnRyb2xsZXIodGhpcywgY29udGV4dE1lbnVDbGllbnQpKQor
I2VuZGlmCiAgICAgLCBtX2luc3BlY3RvckNvbnRyb2xsZXIobmV3IEluc3BlY3RvckNvbnRyb2xs
ZXIodGhpcywgaW5zcGVjdG9yQ2xpZW50KSkKICAgICAsIG1fc2V0dGluZ3MobmV3IFNldHRpbmdz
KHRoaXMpKQogICAgICwgbV9wcm9ncmVzcyhuZXcgUHJvZ3Jlc3NUcmFja2VyKQpAQCAtMTI2LDYg
KzEyOCw5IEBAIFBhZ2U6OlBhZ2UoQ2hyb21lQ2xpZW50KiBjaHJvbWVDbGllbnQsIENvbnRleHRN
ZW51Q2xpZW50KiBjb250ZXh0TWVudUNsaWVudCwgRWRpCiAgICAgLCBtX2N1c3RvbUhUTUxUb2tl
bml6ZXJDaHVua1NpemUoLTEpCiAgICAgLCBtX2NhblN0YXJ0UGx1Z2lucyh0cnVlKQogeworI2lm
ICFFTkFCTEUoQ09OVEVYVF9NRU5VKQorICAgIFVOVVNFRF9QQVJBTShjb250ZXh0TWVudUNsaWVu
dCk7CisjZW5kaWYKICAgICBpZiAoIWFsbFBhZ2VzKSB7CiAgICAgICAgIGFsbFBhZ2VzID0gbmV3
IEhhc2hTZXQ8UGFnZSo+OwogICAgICAgICAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9QYWdl
LmggYi9XZWJDb3JlL3BhZ2UvUGFnZS5oCmluZGV4IDNjOGFhZmEuLjMwYzU1OWUgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGFnZS9QYWdlLmgKKysrIGIvV2ViQ29yZS9wYWdlL1BhZ2UuaApAQCAtMTI3
LDcgKzEyNyw5IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgU2VsZWN0aW9uQ29udHJv
bGxlciogZHJhZ0NhcmV0Q29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuIG1fZHJhZ0NhcmV0Q29u
dHJvbGxlci5nZXQoKTsgfQogICAgICAgICBEcmFnQ29udHJvbGxlciogZHJhZ0NvbnRyb2xsZXIo
KSBjb25zdCB7IHJldHVybiBtX2RyYWdDb250cm9sbGVyLmdldCgpOyB9CiAgICAgICAgIEZvY3Vz
Q29udHJvbGxlciogZm9jdXNDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9mb2N1c0NvbnRy
b2xsZXIuZ2V0KCk7IH0KKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAgICAgICBDb250ZXh0
TWVudUNvbnRyb2xsZXIqIGNvbnRleHRNZW51Q29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuIG1f
Y29udGV4dE1lbnVDb250cm9sbGVyLmdldCgpOyB9CisjZW5kaWYKICAgICAgICAgSW5zcGVjdG9y
Q29udHJvbGxlciogaW5zcGVjdG9yQ29udHJvbGxlcigpIGNvbnN0IHsgcmV0dXJuIG1faW5zcGVj
dG9yQ29udHJvbGxlci5nZXQoKTsgfQogICAgICAgICBTZXR0aW5ncyogc2V0dGluZ3MoKSBjb25z
dCB7IHJldHVybiBtX3NldHRpbmdzLmdldCgpOyB9CiAgICAgICAgIFByb2dyZXNzVHJhY2tlciog
cHJvZ3Jlc3MoKSBjb25zdCB7IHJldHVybiBtX3Byb2dyZXNzLmdldCgpOyB9CkBAIC0yMTksNyAr
MjIxLDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAgICBPd25QdHI8U2VsZWN0aW9uQ29u
dHJvbGxlcj4gbV9kcmFnQ2FyZXRDb250cm9sbGVyOwogICAgICAgICBPd25QdHI8RHJhZ0NvbnRy
b2xsZXI+IG1fZHJhZ0NvbnRyb2xsZXI7CiAgICAgICAgIE93blB0cjxGb2N1c0NvbnRyb2xsZXI+
IG1fZm9jdXNDb250cm9sbGVyOworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCiAgICAgICAgIE93
blB0cjxDb250ZXh0TWVudUNvbnRyb2xsZXI+IG1fY29udGV4dE1lbnVDb250cm9sbGVyOworI2Vu
ZGlmCiAgICAgICAgIE93blB0cjxJbnNwZWN0b3JDb250cm9sbGVyPiBtX2luc3BlY3RvckNvbnRy
b2xsZXI7CiAgICAgICAgIE93blB0cjxTZXR0aW5ncz4gbV9zZXR0aW5nczsKICAgICAgICAgT3du
UHRyPFByb2dyZXNzVHJhY2tlcj4gbV9wcm9ncmVzczsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFn
ZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tIGIvV2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJN
YWMubW0KaW5kZXggNTRiZGZmOS4uYTVlZjZiMiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL21h
Yy9FdmVudEhhbmRsZXJNYWMubW0KKysrIGIvV2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJN
YWMubW0KQEAgLTcxMCw2ICs3MTAsNyBAQCBQbGF0Zm9ybU1vdXNlRXZlbnQgRXZlbnRIYW5kbGVy
OjpjdXJyZW50UGxhdGZvcm1Nb3VzZUV2ZW50KCkgY29uc3QKICAgICByZXR1cm4gUGxhdGZvcm1N
b3VzZUV2ZW50KGN1cnJlbnROU0V2ZW50KCksIHdpbmRvd1ZpZXcpOwogfQogCisjaWYgRU5BQkxF
KENPTlRFWFRfTUVOVSkKIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudChO
U0V2ZW50ICpldmVudCkKIHsKICAgICBQYWdlKiBwYWdlID0gbV9mcmFtZS0+cGFnZSgpOwpAQCAt
NzE3LDYgKzcxOCw3IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudChO
U0V2ZW50ICpldmVudCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIHJldHVybiBzZW5kQ29u
dGV4dE1lbnVFdmVudChQbGF0Zm9ybU1vdXNlRXZlbnQoZXZlbnQsIHBhZ2UtPmNocm9tZSgpLT5w
bGF0Zm9ybVdpbmRvdygpKSk7CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKIAog
Ym9vbCBFdmVudEhhbmRsZXI6OmV2ZW50TWF5U3RhcnREcmFnKE5TRXZlbnQgKmV2ZW50KQogewpk
aWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaCBiL1dlYkNv
cmUvcGFnZS9tYWMvV2ViQ29yZVZpZXdGYWN0b3J5LmgKaW5kZXggYzFiNzM3NS4uN2Y5YTFhZCAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaAorKysgYi9X
ZWJDb3JlL3BhZ2UvbWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oCkBAIC0zOSw2ICszOSw3IEBACiAt
IChOU1N0cmluZyAqKWZpbGVCdXR0b25Ob0ZpbGVTZWxlY3RlZExhYmVsOwogLSAoTlNTdHJpbmcg
Kiljb3B5SW1hZ2VVbmtub3duRmlsZUxhYmVsOwogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkK
IC8vIENvbnRleHQgbWVudSBpdGVtIHRpdGxlcwogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0
ZW1UYWdPcGVuTGlua0luTmV3V2luZG93OwogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1U
YWdEb3dubG9hZExpbmtUb0Rpc2s7CkBAIC05Nyw2ICs5OCw3IEBACiAtIChOU1N0cmluZyAqKWNv
bnRleHRNZW51SXRlbVRhZ0NhcGl0YWxpemU7CiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRl
bVRhZ0NoYW5nZUJhY2s6KE5TU3RyaW5nICopcmVwbGFjZWRTdHJpbmc7CiAtIChOU1N0cmluZyAq
KWNvbnRleHRNZW51SXRlbVRhZ0luc3BlY3RFbGVtZW50OworI2VuZGlmIC8vIEVOQUJMRShDT05U
RVhUX01FTlUpCiAKIC0gKE5TU3RyaW5nICopc2VhcmNoTWVudU5vUmVjZW50U2VhcmNoZXNUZXh0
OwogLSAoTlNTdHJpbmcgKilzZWFyY2hNZW51UmVjZW50U2VhcmNoZXNUZXh0OwpkaWZmIC0tZ2l0
IGEvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAgYi9XZWJDb3JlL3BsYXRmb3JtL0Nv
bnRleHRNZW51LmNwcAppbmRleCBjY2ExMWI1Li43NDAwYzg4IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcAorKysgYi9XZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRN
ZW51LmNwcApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUg
IkNvbnRleHRNZW51LmgiCiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogI2luY2x1ZGUgIkNv
bnRleHRNZW51Q29udHJvbGxlci5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51Q2xpZW50LmgiCiAj
aW5jbHVkZSAiQ1NTQ29tcHV0ZWRTdHlsZURlY2xhcmF0aW9uLmgiCkBAIC03ODIsMyArNzgzLDQg
QEAgdm9pZCBDb250ZXh0TWVudTo6Y2hlY2tPckVuYWJsZUlmTmVlZGVkKENvbnRleHRNZW51SXRl
bSYgaXRlbSkgY29uc3QKIH0KIAogfQorI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlUpCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BsYXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaCBiL1dlYkNvcmUv
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCmluZGV4IDQ1ODU1ZWQuLmQ3MjA4NDEgMTAwNjQ0
Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCisrKyBiL1dlYkNvcmUv
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oCkBAIC0zOCw2ICszOCw3IEBAIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKICAgICBTdHJpbmcgZmlsZUJ1dHRvbkNob29zZUZpbGVMYWJlbCgpOwogICAgIFN0
cmluZyBmaWxlQnV0dG9uTm9GaWxlU2VsZWN0ZWRMYWJlbCgpOwogICAgIFN0cmluZyBjb3B5SW1h
Z2VVbmtub3duRmlsZUxhYmVsKCk7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICAgICBTdHJp
bmcgY29udGV4dE1lbnVJdGVtVGFnT3BlbkxpbmtJbk5ld1dpbmRvdygpOwogICAgIFN0cmluZyBj
b250ZXh0TWVudUl0ZW1UYWdEb3dubG9hZExpbmtUb0Rpc2soKTsKICAgICBTdHJpbmcgY29udGV4
dE1lbnVJdGVtVGFnQ29weUxpbmtUb0NsaXBib2FyZCgpOwpAQCAtMTAzLDYgKzEwNCw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnQ2hhbmdlQmFj
ayhjb25zdCBTdHJpbmcmIHJlcGxhY2VkU3RyaW5nKTsKICNlbmRpZgogICAgIFN0cmluZyBjb250
ZXh0TWVudUl0ZW1UYWdJbnNwZWN0RWxlbWVudCgpOworI2VuZGlmIC8vIEVOQUJMRShDT05URVhU
X01FTlUpCiAKICAgICBTdHJpbmcgc2VhcmNoTWVudU5vUmVjZW50U2VhcmNoZXNUZXh0KCk7CiAg
ICAgU3RyaW5nIHNlYXJjaE1lbnVSZWNlbnRTZWFyY2hlc1RleHQoKTsKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbSBiL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbQppbmRleCBjNWUyOTQyLi40NjcyYjdkIDEwMDY0
NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudUl0ZW1NYWMubW0KKysrIGIv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJdGVtTWFjLm1tCkBAIC0yNiw2ICsyNiw3
IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVJdGVtLmgiCiAK
KyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKQEAgLTE1MywzICsxNTQsNCBAQCBib29sIENvbnRleHRNZW51SXRl
bTo6ZW5hYmxlZCgpIGNvbnN0CiB9CiAKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5V
KQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVNYWMubW0gYi9X
ZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbQppbmRleCBiNTZkMGI5Li43YjYx
YzZhIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbQor
KysgYi9XZWJDb3JlL3BsYXRmb3JtL21hYy9Db250ZXh0TWVudU1hYy5tbQpAQCAtMjYsNiArMjYs
NyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAKKyNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogI2luY2x1ZGUgIkNvbnRleHRNZW51Q29udHJvbGxlci5o
IgogCiBAaW50ZXJmYWNlIFdlYkNvcmVNZW51VGFyZ2V0IDogTlNPYmplY3QgewpAQCAtMTUyLDMg
KzE1Myw0IEBAIE5TTXV0YWJsZUFycmF5KiBDb250ZXh0TWVudTo6cmVsZWFzZVBsYXRmb3JtRGVz
Y3JpcHRpb24oKQogfQogCiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVSkKZGlmZiAt
LWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NNYWMubW0gYi9XZWJD
b3JlL3BsYXRmb3JtL21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tCmluZGV4IDE3MjkwNjEuLjE0
MzFiMGMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NN
YWMubW0KKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbQpA
QCAtODksNiArODksNyBAQCBTdHJpbmcgY29weUltYWdlVW5rbm93bkZpbGVMYWJlbCgpCiAgICAg
cmV0dXJuIFN0cmluZygpOwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKIFN0cmluZyBj
b250ZXh0TWVudUl0ZW1UYWdPcGVuTGlua0luTmV3V2luZG93KCkKIHsKICAgICBCRUdJTl9CTE9D
S19PQkpDX0VYQ0VQVElPTlM7CkBAIC01NDQsNiArNTQ1LDcgQEAgU3RyaW5nIGNvbnRleHRNZW51
SXRlbVRhZ0luc3BlY3RFbGVtZW50KCkKICAgICBFTkRfQkxPQ0tfT0JKQ19FWENFUFRJT05TOwog
ICAgIHJldHVybiBTdHJpbmcoKTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQog
CiBTdHJpbmcgc2VhcmNoTWVudU5vUmVjZW50U2VhcmNoZXNUZXh0KCkKIHsKZGlmZiAtLWdpdCBh
L1dlYkNvcmUvc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcCBiL1dlYkNvcmUvc3ZnL2dyYXBoaWNz
L1NWR0ltYWdlLmNwcAppbmRleCBjYzE2MWI1Li5iOGRlZTc2IDEwMDY0NAotLS0gYS9XZWJDb3Jl
L3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHAKKysrIGIvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZH
SW1hZ2UuY3BwCkBAIC0yMjgsNyArMjI4LDExIEBAIGJvb2wgU1ZHSW1hZ2U6OmRhdGFDaGFuZ2Vk
KGJvb2wgYWxsRGF0YVJlY2VpdmVkKQogICAgIGlmIChhbGxEYXRhUmVjZWl2ZWQpIHsKICAgICAg
ICAgc3RhdGljIEZyYW1lTG9hZGVyQ2xpZW50KiBkdW1teUZyYW1lTG9hZGVyQ2xpZW50ID0gIG5l
dyBFbXB0eUZyYW1lTG9hZGVyQ2xpZW50OwogICAgICAgICBzdGF0aWMgRWRpdG9yQ2xpZW50KiBk
dW1teUVkaXRvckNsaWVudCA9IG5ldyBFbXB0eUVkaXRvckNsaWVudDsKKyNpZiBFTkFCTEUoQ09O
VEVYVF9NRU5VKQogICAgICAgICBzdGF0aWMgQ29udGV4dE1lbnVDbGllbnQqIGR1bW15Q29udGV4
dE1lbnVDbGllbnQgPSBuZXcgRW1wdHlDb250ZXh0TWVudUNsaWVudDsKKyNlbHNlCisgICAgICAg
IHN0YXRpYyBDb250ZXh0TWVudUNsaWVudCogZHVtbXlDb250ZXh0TWVudUNsaWVudCA9IDA7Cisj
ZW5kaWYKICAgICAgICAgc3RhdGljIERyYWdDbGllbnQqIGR1bW15RHJhZ0NsaWVudCA9IG5ldyBF
bXB0eURyYWdDbGllbnQ7CiAgICAgICAgIHN0YXRpYyBJbnNwZWN0b3JDbGllbnQqIGR1bW15SW5z
cGVjdG9yQ2xpZW50ID0gbmV3IEVtcHR5SW5zcGVjdG9yQ2xpZW50OwogCmRpZmYgLS1naXQgYS9X
ZWJLaXQvbWFjL0NoYW5nZUxvZyBiL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IDRmMzExNGQu
LjRkYjc4YTAgMTAwNjQ0Ci0tLSBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9t
YWMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIwMDktMDktMTQgIEdyZWcgQm9sc2luZ2Eg
IDxib2xzaW5nYUBhcHBsZS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWRkIEVOQUJMRShDT05URVhUX01FTlUpCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTIyNQorICAgICAgICAKKyAgICAgICAg
U2V0IHVwIGRlZmF1bHRzIGZvciBFTkFCTEVfQ09OVEVYVF9NRU5VIChvZmYgZm9yIGlQaG9uZSwg
b24gb3RoZXJ3aXNlKQorCisgICAgICAgICogRGVmYXVsdERlbGVnYXRlcy9XZWJEZWZhdWx0Q29u
dGV4dE1lbnVEZWxlZ2F0ZS5tbTogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9N
RU5VKS4KKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5tbTog
RGl0dG8uCisgICAgICAgICogV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW06IFVzZSBF
TkFCTEUoQ09OVEVYVF9NRU5VKSB3aGVyZSBhcHByb3ByaWF0ZS4KKyAgICAgICAgKiBXZWJWaWV3
L1dlYkhUTUxWaWV3Lm1tOiBEaXR0by4KKyAgICAgICAgKC1bV2ViSFRNTFZpZXcgbWVudUZvckV2
ZW50Ol0pOgorICAgICAgICAqIFdlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaDogRGl0dG8u
CisgICAgICAgICogV2ViVmlldy9XZWJWaWV3Lm1tOiBEaXR0by4KKyAgICAgICAgKC1bV2ViVmll
dyBfY29tbW9uSW5pdGlhbGl6YXRpb25XaXRoRnJhbWVOYW1lOmdyb3VwTmFtZTp1c2VzRG9jdW1l
bnRWaWV3czpdKToKKwogMjAwOS0wOS0xMSAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEpvbiBIb25leWN1dHQuCmRpZmYgLS1naXQgYS9XZWJLaXQv
bWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gYi9X
ZWJLaXQvbWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUu
bW0KaW5kZXggMmVlN2Q4Yi4uZWUwY2I1NSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9EZWZhdWx0
RGVsZWdhdGVzL1dlYkRlZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tCisrKyBiL1dlYktpdC9t
YWMvRGVmYXVsdERlbGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbQpAQCAt
MjgsNiArMjgsNyBAQAogCiAjaW1wb3J0ICJXZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5o
IgogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKICNpbXBvcnQgIldlYkRPTU9wZXJhdGlvbnMu
aCIKICNpbXBvcnQgIldlYkRhdGFTb3VyY2VQcml2YXRlLmgiCiAjaW1wb3J0ICJXZWJEZWZhdWx0
VUlEZWxlZ2F0ZS5oIgpAQCAtMTc5LDMgKzE4MCw0IEBACiB9CiAKIEBlbmQKKyNlbmRpZiAvLyBF
TkFCTEUoQ09OVEVYVF9NRU5VKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJDb250ZXh0TWVudUNsaWVudC5tbSBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2Vi
Q29udGV4dE1lbnVDbGllbnQubW0KaW5kZXggNjM5ZjNjMS4uNzM2ZWQ0MiAxMDA2NDQKLS0tIGEv
V2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5tbQorKysgYi9X
ZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tCkBAIC0yOCw2
ICsyOCw3IEBACiAKICNpbXBvcnQgIldlYkNvbnRleHRNZW51Q2xpZW50LmgiCiAKKyNpZiBFTkFC
TEUoQ09OVEVYVF9NRU5VKQogI2ltcG9ydCAiV2ViRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hp
bmcuaCIKICNpbXBvcnQgIldlYkVsZW1lbnREaWN0aW9uYXJ5LmgiCiAjaW1wb3J0ICJXZWJGcmFt
ZS5oIgpAQCAtMzUyLDMgKzM1Myw0IEBAIHZvaWQgV2ViQ29udGV4dE1lbnVDbGllbnQ6OnN0b3BT
cGVha2luZygpCiB7CiAgICAgW05TQXBwIHN0b3BTcGVha2luZzpuaWxdOwogfQorI2VuZGlmIC8v
IEVOQUJMRShDT05URVhUX01FTlUpCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBw
b3J0L1dlYlZpZXdGYWN0b3J5Lm1tIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJWaWV3
RmFjdG9yeS5tbQppbmRleCAwNDgxNmQzLi4zYTg1MTM0IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFj
L1dlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tCisrKyBiL1dlYktpdC9tYWMvV2ViQ29y
ZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW0KQEAgLTEzMSw2ICsxMzEsNyBAQAogICAgIHJldHVy
biBbTlNVc2VyRGVmYXVsdHMgX3dlYmtpdF9wcmVmZXJyZWRMYW5ndWFnZUNvZGVdOwogfQogCisj
aWYgRU5BQkxFKENPTlRFWFRfTUVOVSkKIC0gKE5TU3RyaW5nICopY29udGV4dE1lbnVJdGVtVGFn
T3BlbkxpbmtJbk5ld1dpbmRvdwogewogICAgIHJldHVybiBVSV9TVFJJTkcoIk9wZW4gTGluayBp
biBOZXcgV2luZG93IiwgIk9wZW4gaW4gTmV3IFdpbmRvdyBjb250ZXh0IG1lbnUgaXRlbSIpOwpA
QCAtNDQ3LDYgKzQ0OCw3IEBACiB7CiAgICAgcmV0dXJuIFVJX1NUUklORygiSW5zcGVjdCBFbGVt
ZW50IiwgIkluc3BlY3QgRWxlbWVudCBjb250ZXh0IG1lbnUgaXRlbSIpOwogfQorI2VuZGlmIC8v
IEVOQUJMRShDT05URVhUX01FTlUpCiAKIC0gKEJPT0wpb2JqZWN0SXNUZXh0TWFya2VyOihpZClv
YmplY3QKIHsKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBi
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCA5NDQ0NTZkLi45YjBhYTgz
IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0zMDM3LDggKzMwMzcsMTEgQEAgV0VC
Q09SRV9DT01NQU5EKHlhbmtBbmRTZWxlY3QpCiAKICAgICAvLyBNYXRjaCBiZWhhdmlvciBvZiBv
dGhlciBicm93c2VycyBieSBzZW5kaW5nIGEgbW91c2Vkb3duIGV2ZW50IGZvciByaWdodCBjbGlj
a3MuCiAgICAgX3ByaXZhdGUtPmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBZRVM7CisjaWYgRU5B
QkxFKENPTlRFWFRfTUVOVSkKICAgICBwYWdlLT5jb250ZXh0TWVudUNvbnRyb2xsZXIoKS0+Y2xl
YXJDb250ZXh0TWVudSgpOworI2VuZGlmCiAgICAgY29yZUZyYW1lLT5ldmVudEhhbmRsZXIoKS0+
bW91c2VEb3duKGV2ZW50KTsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogICAgIEJPT0wgaGFu
ZGxlZEV2ZW50ID0gY29yZUZyYW1lLT5ldmVudEhhbmRsZXIoKS0+c2VuZENvbnRleHRNZW51RXZl
bnQoZXZlbnQpOwogICAgIF9wcml2YXRlLT5oYW5kbGluZ01vdXNlRG93bkV2ZW50ID0gTk87CiAK
QEAgLTMwNjYsNiArMzA2OSwxMCBAQCBXRUJDT1JFX0NPTU1BTkQoeWFua0FuZFNlbGVjdCkKICAg
ICBmb3IgKE5TVUludGVnZXIgaSA9IDA7IGkgPCBjb3VudDsgaSsrKQogICAgICAgICBbbWVudSBh
ZGRJdGVtOlttZW51SXRlbXMgb2JqZWN0QXRJbmRleDppXV07CiAgICAgcmV0dXJuIG1lbnU7Cisj
ZWxzZQorICAgIF9wcml2YXRlLT5oYW5kbGluZ01vdXNlRG93bkV2ZW50ID0gTk87CisgICAgcmV0
dXJuIG5pbDsKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogfQogCiAtIChCT09MKXNl
YXJjaEZvcjooTlNTdHJpbmcgKilzdHJpbmcgZGlyZWN0aW9uOihCT09MKWZvcndhcmQgY2FzZVNl
bnNpdGl2ZTooQk9PTCljYXNlRmxhZyB3cmFwOihCT09MKXdyYXBGbGFnCmRpZmYgLS1naXQgYS9X
ZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaCBiL1dlYktpdC9tYWMvV2Vi
Vmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCmluZGV4IGVhZGM3NjEuLmEyOGJhNWEgMTAwNjQ0
Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCisrKyBiL1dl
YktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCkBAIC0xMDcsNyArMTA3LDkg
QEAgZW51bSB7CiAvLyBGSVhNRTogSWYgd2UgZXZlciBtYWtlIHRoaXMgbWV0aG9kIHB1YmxpYywg
aXQgc2hvdWxkIGluY2x1ZGUgYSBXZWJGcmFtZSBwYXJhbWV0ZXIuCiAtIChCT09MKXdlYlZpZXdT
aG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0OihXZWJWaWV3ICopc2VuZGVyOwogLSAodm9pZCl3ZWJW
aWV3OihXZWJWaWV3ICopc2VuZGVyIHdpbGxQb3B1cE1lbnU6KE5TTWVudSAqKW1lbnU7CisjaWYg
RU5BQkxFX0NPTlRFWFRfTUVOVQogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIGNv
bnRleHRNZW51SXRlbVNlbGVjdGVkOihOU01lbnVJdGVtICopaXRlbSBmb3JFbGVtZW50OihOU0Rp
Y3Rpb25hcnkgKillbGVtZW50OworI2VuZGlmCiAtICh2b2lkKXdlYlZpZXc6KFdlYlZpZXcgKilz
ZW5kZXIgc2F2ZUZyYW1lVmlldzooV2ViRnJhbWVWaWV3ICopZnJhbWVWaWV3IHNob3dpbmdQYW5l
bDooQk9PTClzaG93aW5nUGFuZWw7CiAKIC8qIQpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJW
aWV3L1dlYlZpZXcubW0gYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQppbmRleCBiN2Vk
YThlLi5jMTQ0YjNmIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQor
KysgYi9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVmlldy5tbQpAQCAtNjE5LDcgKzYxOSwxMiBAQCBz
dGF0aWMgYm9vbCBydW5uaW5nVGlnZXJNYWlsKCkKICAgICAgICAgZGlkT25lVGltZUluaXRpYWxp
emF0aW9uID0gdHJ1ZTsKICAgICB9CiAKLSAgICBfcHJpdmF0ZS0+cGFnZSA9IG5ldyBQYWdlKG5l
dyBXZWJDaHJvbWVDbGllbnQoc2VsZiksIG5ldyBXZWJDb250ZXh0TWVudUNsaWVudChzZWxmKSwg
bmV3IFdlYkVkaXRvckNsaWVudChzZWxmKSwgbmV3IFdlYkRyYWdDbGllbnQoc2VsZiksIG5ldyBX
ZWJJbnNwZWN0b3JDbGllbnQoc2VsZikpOworI2lmIEVOQUJMRShDT05URVhUX01FTlUpCisgICAg
V2ViQ29udGV4dE1lbnVDbGllbnQgKmNvbnRleHRNZW51Q2xpZW50ID0gbmV3IFdlYkNvbnRleHRN
ZW51Q2xpZW50KHNlbGYpOworI2Vsc2UKKyAgICBXZWJDb250ZXh0TWVudUNsaWVudCAqY29udGV4
dE1lbnVDbGllbnQgPSAwOworI2VuZGlmCisgICAgX3ByaXZhdGUtPnBhZ2UgPSBuZXcgUGFnZShu
ZXcgV2ViQ2hyb21lQ2xpZW50KHNlbGYpLCBjb250ZXh0TWVudUNsaWVudCwgbmV3IFdlYkVkaXRv
ckNsaWVudChzZWxmKSwgbmV3IFdlYkRyYWdDbGllbnQoc2VsZiksIG5ldyBXZWJJbnNwZWN0b3JD
bGllbnQoc2VsZikpOwogCiAgICAgX3ByaXZhdGUtPnBhZ2UtPnNldHRpbmdzKCktPnNldExvY2Fs
U3RvcmFnZURhdGFiYXNlUGF0aChbW3NlbGYgcHJlZmVyZW5jZXNdIF9sb2NhbFN0b3JhZ2VEYXRh
YmFzZVBhdGhdKTsKIApAQCAtMTEyNyw2ICsxMTMyLDcgQEAgc3RhdGljIGJvb2wgZmFzdERvY3Vt
ZW50VGVhcmRvd25FbmFibGVkKCkKICAgICByZXR1cm4gX3ByaXZhdGUtPnBhZ2U7CiB9CiAKKyNp
ZiBFTkFCTEUoQ09OVEVYVF9NRU5VKQogLSAoTlNNZW51ICopX21lbnVGb3JFbGVtZW50OihOU0Rp
Y3Rpb25hcnkgKillbGVtZW50IGRlZmF1bHRJdGVtczooTlNBcnJheSAqKWl0ZW1zCiB7CiAgICAg
TlNBcnJheSAqZGVmYXVsdE1lbnVJdGVtcyA9IFtbV2ViRGVmYXVsdFVJRGVsZWdhdGUgc2hhcmVk
VUlEZWxlZ2F0ZV0gd2ViVmlldzpzZWxmIGNvbnRleHRNZW51SXRlbXNGb3JFbGVtZW50OmVsZW1l
bnQgZGVmYXVsdE1lbnVJdGVtczppdGVtc107CkBAIC0xMTQ1LDYgKzExNTEsNyBAQCBzdGF0aWMg
Ym9vbCBmYXN0RG9jdW1lbnRUZWFyZG93bkVuYWJsZWQoKQogCiAgICAgcmV0dXJuIFttZW51IGF1
dG9yZWxlYXNlXTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VKQogCiAtICh2b2lk
KV9tb3VzZURpZE1vdmVPdmVyRWxlbWVudDooTlNEaWN0aW9uYXJ5ICopZGljdGlvbmFyeSBtb2Rp
ZmllckZsYWdzOihOU1VJbnRlZ2VyKW1vZGlmaWVyRmxhZ3MKIHsKLS0gCjEuNi4zLjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>39624</attachid>
            <date>2009-09-15 16:55:56 -0700</date>
            <delta_ts>2009-09-16 11:02:45 -0700</delta_ts>
            <desc>Uses ENABLE_CONTEXT_MENUS</desc>
            <filename>0001-JavaScriptCore-Add-ENABLE-CONTEXT_MENUS.patch</filename>
            <type>text/plain</type>
            <size>29528</size>
            <attacher name="Greg Bolsinga">bolsinga</attacher>
            
              <data encoding="base64">RnJvbSA1NDc5ZWQzZDY3M2U5OWRmNjI0YzczZTAwM2M0ZGMwMDEzMmFmMWU1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBHcmVnIEJvbHNpbmdhIDxib2xzaW5nYUBhcHBsZS5jb20+CkRh
dGU6IFR1ZSwgMTUgU2VwIDIwMDkgMTY6NTQ6MDYgLTA3MDAKU3ViamVjdDogW1BBVENIXSBKYXZh
U2NyaXB0Q29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlVTKQogIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTIyNQoKUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CgoqIHd0Zi9QbGF0Zm9ybS5oOgoKV2ViQ29yZTogQWRkIEVOQUJMRShDT05URVhUX01FTlVTKQpo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKClJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgoKTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQgYmVo
YXZpb3IuKQoKKiBEZXJpdmVkU291cmNlcy5tYWtlOiBVc2UgbmV3IFdlYkNvcmUuQ29udGV4dE1l
bnUuZXhwIGZpbGUgaWYgRU5BQkxFX0NPTlRFWFRfTUVOVVMuCiogV2ViQ29yZS5iYXNlLmV4cDog
TW92ZSBDb250ZXh0TWVudSBvbmx5IGV4cG9ydHMgdG8gV2ViQ29yZS5Db250ZXh0TWVudS5leHAu
CiogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgV2ViQ29yZS5Db250ZXh0
TWVudS5leHAuCiogZG9tL05vZGUuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVVMpIHdoZXJl
IGFwcGxpY2FibGUuCihXZWJDb3JlOjpOb2RlOjpkZWZhdWx0RXZlbnRIYW5kbGVyKToKKiBsb2Fk
ZXIvRW1wdHlDbGllbnRzLmg6IERpdHRvLgoqIHBhZ2UvQ29udGV4dE1lbnVDb250cm9sbGVyLmNw
cDogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VUykuCiogcGFnZS9FdmVu
dEhhbmRsZXIuY3BwOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVVMpIHdoZXJlIGFwcGxpY2FibGUu
CiogcGFnZS9FdmVudEhhbmRsZXIuaDogRGl0dG8uCiogcGFnZS9QYWdlLmNwcDogRGl0dG8uCihX
ZWJDb3JlOjpQYWdlOjpQYWdlKToKKiBwYWdlL1BhZ2UuaDogRGl0dG8uCiogcGFnZS9tYWMvRXZl
bnRIYW5kbGVyTWFjLm1tOiBEaXR0by4KKiBwYWdlL21hYy9XZWJDb3JlVmlld0ZhY3RvcnkuaDog
RGl0dG8uCiogcGxhdGZvcm0vQ29udGV4dE1lbnUuY3BwOiBXcmFwIGVudGlyZSBmaWxlIGluIEVO
QUJMRShDT05URVhUX01FTlVTKS4KKiBwbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJpbmdzLmg6IFVzZSBF
TkFCTEUoQ09OVEVYVF9NRU5VUykgd2hlcmUgYXBwbGljYWJsZS4KKiBwbGF0Zm9ybS9tYWMvQ29u
dGV4dE1lbnVJdGVtTWFjLm1tOiBXcmFwIGVudGlyZSBmaWxlIGluIEVOQUJMRShDT05URVhUX01F
TlVTKS4KKiBwbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVNYWMubW06IERpdHRvLgoqIHBsYXRmb3Jt
L21hYy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVVMpIHdo
ZXJlIGFwcGxpY2FibGUuCiogc3ZnL2dyYXBoaWNzL1NWR0ltYWdlLmNwcDogRGl0dG8uCihXZWJD
b3JlOjpTVkdJbWFnZTo6ZGF0YUNoYW5nZWQpOgoKV2ViS2l0L21hYzogQWRkIEVOQUJMRShDT05U
RVhUX01FTlVTKQpodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUK
ClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKU2V0IHVwIGRlZmF1bHRzIGZvciBFTkFCTEVf
Q09OVEVYVF9NRU5VUyAob2ZmIGZvciBpUGhvbmUsIG9uIG90aGVyd2lzZSkKCiogRGVmYXVsdERl
bGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbTogV3JhcCBlbnRpcmUgZmls
ZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VUykuCiogV2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1l
bnVDbGllbnQubW06IERpdHRvLgoqIFdlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tOiBV
c2UgRU5BQkxFKENPTlRFWFRfTUVOVVMpIHdoZXJlIGFwcHJvcHJpYXRlLgoqIFdlYlZpZXcvV2Vi
SFRNTFZpZXcubW06IERpdHRvLgooLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CiogV2Vi
Vmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oOiBEaXR0by4KKiBXZWJWaWV3L1dlYlZpZXcubW06
IERpdHRvLgooLVtXZWJWaWV3IF9jb21tb25Jbml0aWFsaXphdGlvbldpdGhGcmFtZU5hbWU6Z3Jv
dXBOYW1lOnVzZXNEb2N1bWVudFZpZXdzOl0pOgotLS0KIEphdmFTY3JpcHRDb3JlL0NoYW5nZUxv
ZyAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSArKysrKysKIEphdmFTY3JpcHRDb3Jl
L3d0Zi9QbGF0Zm9ybS5oICAgICAgICAgICAgICAgICAgICAgIHwgICAgNSArKysKIFdlYkNvcmUv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAzMSArKysrKysr
KysrKysrKysrKysrKwogV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlICAgICAgICAgICAgICAg
ICAgICAgICAgfCAgIDEwICsrKysrKwogV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cCAg
ICAgICAgICAgICAgICAgICAgfCAgICA1ICsrKwogV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgICA1IC0tLQogV2ViQ29yZS9XZWJDb3JlLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2ogICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvZG9tL05vZGUu
Y3BwICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL2xvYWRl
ci9FbXB0eUNsaWVudHMuaCAgICAgICAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9w
YWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNv
cmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwICAgICAgICAgICAgICAgICAgICAgIHwgICAgMiArCiBX
ZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmggICAgICAgICAgICAgICAgICAgICAgICB8ICAgIDQg
KysKIFdlYkNvcmUvcGFnZS9QYWdlLmNwcCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwg
ICAgNSArKysKIFdlYkNvcmUvcGFnZS9QYWdlLmggICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHwgICAgNCArKwogV2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0gICAgICAg
ICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGFnZS9tYWMvV2ViQ29yZVZpZXdGYWN0b3J5Lmgg
ICAgICAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL0NvbnRleHRNZW51LmNwcCAg
ICAgICAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9Mb2NhbGl6ZWRTdHJp
bmdzLmggICAgICAgICAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRl
eHRNZW51SXRlbU1hYy5tbSAgICAgICAgIHwgICAgMiArCiBXZWJDb3JlL3BsYXRmb3JtL21hYy9D
b250ZXh0TWVudU1hYy5tbSAgICAgICAgICAgICB8ICAgIDIgKwogV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbSAgICAgICAgfCAgICAyICsKIFdlYkNvcmUvc3ZnL2dy
YXBoaWNzL1NWR0ltYWdlLmNwcCAgICAgICAgICAgICAgICAgIHwgICAgNCArKwogV2ViS2l0L21h
Yy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE4ICsrKysrKysr
KysrCiAuLi4vV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gICAgICAgICAgICAgICB8
ICAgIDIgKwogV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250ZXh0TWVudUNsaWVudC5t
bSAgfCAgICAyICsKIFdlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0ZhY3RvcnkubW0g
ICAgICAgIHwgICAgMiArCiBXZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0gICAgICAg
ICAgICAgICAgICB8ICAgIDcgKysrKwogV2ViS2l0L21hYy9XZWJWaWV3L1dlYlVJRGVsZWdhdGVQ
cml2YXRlLmggICAgICAgICAgfCAgICAyICsKIFdlYktpdC9tYWMvV2ViVmlldy9XZWJWaWV3Lm1t
ICAgICAgICAgICAgICAgICAgICAgIHwgICAgOSArKysrKy0KIDI5IGZpbGVzIGNoYW5nZWQsIDE0
MiBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IFdlYkNv
cmUvV2ViQ29yZS5Db250ZXh0TWVudS5leHAKCmRpZmYgLS1naXQgYS9KYXZhU2NyaXB0Q29yZS9D
aGFuZ2VMb2cgYi9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKaW5kZXggYjZiNmZhOS4uZTk1NjRl
YiAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCisrKyBiL0phdmFTY3JpcHRD
b3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDA5LTA5LTE1ICBHcmVnIEJvbHNpbmdh
ICA8Ym9sc2luZ2FAYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5V
UykKKyAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTIy
NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogd3Rm
L1BsYXRmb3JtLmg6CisKIDIwMDktMDktMTAgIE9saXZlciBIdW50ICA8b2xpdmVyQGFwcGxlLmNv
bT4KIAogICAgICAgICBSZXZpZXdlZCBieSBHZW9mZiBHYXJlbi4KZGlmZiAtLWdpdCBhL0phdmFT
Y3JpcHRDb3JlL3d0Zi9QbGF0Zm9ybS5oIGIvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmgK
aW5kZXggYmU2ZWYzNS4uMzBjZmU4YyAxMDA2NDQKLS0tIGEvSmF2YVNjcmlwdENvcmUvd3RmL1Bs
YXRmb3JtLmgKKysrIGIvSmF2YVNjcmlwdENvcmUvd3RmL1BsYXRmb3JtLmgKQEAgLTQxMCw2ICs0
MTAsNyBAQAogI2lmIFBMQVRGT1JNKElQSE9ORSkKICNkZWZpbmUgV1RGX1BMQVRGT1JNX0NGIDEK
ICNkZWZpbmUgV1RGX1VTRV9QVEhSRUFEUyAxCisjZGVmaW5lIEVOQUJMRV9DT05URVhUX01FTlVT
IDAKICNkZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZGVmaW5lIEVOQUJMRV9NQUNfSkFWQV9CUklE
R0UgMAogI2RlZmluZSBFTkFCTEVfSUNPTkRBVEFCQVNFIDAKQEAgLTU1Miw2ICs1NTMsMTAgQEAK
ICNkZWZpbmUgRU5BQkxFX0ZUUERJUiAxCiAjZW5kaWYKIAorI2lmICFkZWZpbmVkKEVOQUJMRV9D
T05URVhUX01FTlVTKQorI2RlZmluZSBFTkFCTEVfQ09OVEVYVF9NRU5VUyAxCisjZW5kaWYKKwog
I2lmICFkZWZpbmVkKEVOQUJMRV9EQVNIQk9BUkRfU1VQUE9SVCkKICNkZWZpbmUgRU5BQkxFX0RB
U0hCT0FSRF9TVVBQT1JUIDAKICNlbmRpZgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAxMDQ1ZGRkLi5iNzM3N2U1IDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM0IEBA
CisyMDA5LTA5LTE1ICBHcmVnIEJvbHNpbmdhICA8Ym9sc2luZ2FAYXBwbGUuY29tPgorCisgICAg
ICAgIEFkZCBFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTI5MjI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLiAoTm8gY2hhbmdlIGluIGRlZmF1bHQg
YmVoYXZpb3IuKQorCisgICAgICAgICogRGVyaXZlZFNvdXJjZXMubWFrZTogVXNlIG5ldyBXZWJD
b3JlLkNvbnRleHRNZW51LmV4cCBmaWxlIGlmIEVOQUJMRV9DT05URVhUX01FTlVTLgorICAgICAg
ICAqIFdlYkNvcmUuYmFzZS5leHA6IE1vdmUgQ29udGV4dE1lbnUgb25seSBleHBvcnRzIHRvIFdl
YkNvcmUuQ29udGV4dE1lbnUuZXhwLgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvajogQWRkIFdlYkNvcmUuQ29udGV4dE1lbnUuZXhwLgorICAgICAgICAqIGRvbS9O
b2RlLmNwcDogVXNlIEVOQUJMRShDT05URVhUX01FTlVTKSB3aGVyZSBhcHBsaWNhYmxlLgorICAg
ICAgICAoV2ViQ29yZTo6Tm9kZTo6ZGVmYXVsdEV2ZW50SGFuZGxlcik6CisgICAgICAgICogbG9h
ZGVyL0VtcHR5Q2xpZW50cy5oOiBEaXR0by4KKyAgICAgICAgKiBwYWdlL0NvbnRleHRNZW51Q29u
dHJvbGxlci5jcHA6IFdyYXAgZW50aXJlIGZpbGUgaW4gRU5BQkxFKENPTlRFWFRfTUVOVVMpLgor
ICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmNwcDogVXNlIEVOQUJMRShDT05URVhUX01FTlVT
KSB3aGVyZSBhcHBsaWNhYmxlLgorICAgICAgICAqIHBhZ2UvRXZlbnRIYW5kbGVyLmg6IERpdHRv
LgorICAgICAgICAqIHBhZ2UvUGFnZS5jcHA6IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6UGFn
ZTo6UGFnZSk6CisgICAgICAgICogcGFnZS9QYWdlLmg6IERpdHRvLgorICAgICAgICAqIHBhZ2Uv
bWFjL0V2ZW50SGFuZGxlck1hYy5tbTogRGl0dG8uCisgICAgICAgICogcGFnZS9tYWMvV2ViQ29y
ZVZpZXdGYWN0b3J5Lmg6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL0NvbnRleHRNZW51LmNw
cDogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VUykuCisgICAgICAgICog
cGxhdGZvcm0vTG9jYWxpemVkU3RyaW5ncy5oOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVOVVMpIHdo
ZXJlIGFwcGxpY2FibGUuCisgICAgICAgICogcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1h
Yy5tbTogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VUykuCisgICAgICAg
ICogcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tOiBEaXR0by4KKyAgICAgICAgKiBwbGF0
Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbTogVXNlIEVOQUJMRShDT05URVhUX01FTlVT
KSB3aGVyZSBhcHBsaWNhYmxlLgorICAgICAgICAqIHN2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHA6
IERpdHRvLgorICAgICAgICAoV2ViQ29yZTo6U1ZHSW1hZ2U6OmRhdGFDaGFuZ2VkKToKKwogMjAw
OS0wOS0xNSAgR2VvZmZyZXkgR2FyZW4gIDxnZ2FyZW5AYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IFNhbSBXZWluaWcuCmRpZmYgLS1naXQgYS9XZWJDb3JlL0Rlcml2ZWRTb3VyY2Vz
Lm1ha2UgYi9XZWJDb3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKaW5kZXggZmFlNzVlMy4uNjA1MDc3
MiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCisrKyBiL1dlYkNvcmUv
RGVyaXZlZFNvdXJjZXMubWFrZQpAQCAtNDY0LDYgKzQ2NCwxMiBAQCBFTkFCTEVfREFTSEJPQVJE
X1NVUFBPUlQgPSAwCiAKIGVuZGlmCiAKK2lmZXEgKCQoc2hlbGwgZ2NjIC1FIC1QIC1kTSAtRiAk
KEJVSUxUX1BST0RVQ1RTX0RJUikgJChGUkFNRVdPUktfRkxBR1MpIFdlYkNvcmUvRm9yd2FyZGlu
Z0hlYWRlcnMvd3RmL1BsYXRmb3JtLmggfCBncmVwIEVOQUJMRV9DT05URVhUX01FTlVTIHwgY3V0
IC1kJyAnIC1mMyksIDEpCisgICAgRU5BQkxFX0NPTlRFWFRfTUVOVVMgPSAxCitlbHNlCisgICAg
RU5BQkxFX0NPTlRFWFRfTUVOVVMgPSAwCitlbmRpZgorCiAjIENTUyBwcm9wZXJ0eSBuYW1lcyBh
bmQgdmFsdWUga2V5d29yZHMKIAogV0VCQ09SRV9DU1NfUFJPUEVSVFlfTkFNRVMgOj0gJChXZWJD
b3JlKS9jc3MvQ1NTUHJvcGVydHlOYW1lcy5pbgpAQCAtNzU4LDYgKzc2NCwxMCBAQCBpZmVxICgk
KHNoZWxsIGdjYyAtRSAtUCAtZE0gLUYgJChCVUlMVF9QUk9EVUNUU19ESVIpICQoRlJBTUVXT1JL
X0ZMQUdTKSBXZWJDb3JlLwogICAgIFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUyA6PSAkKFdF
QkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUykgV2ViQ29yZS5OUEFQSS5leHAKIGVuZGlmCiAKK2lm
ZXEgKCQoRU5BQkxFX0NPTlRFWFRfTUVOVVMpLCAxKQorICAgIFdFQkNPUkVfRVhQT1JUX0RFUEVO
REVOQ0lFUyA6PSAkKFdFQkNPUkVfRVhQT1JUX0RFUEVOREVOQ0lFUykgV2ViQ29yZS5Db250ZXh0
TWVudS5leHAKK2VuZGlmCisKIGlmZXEgKCQoRU5BQkxFX0RBU0hCT0FSRF9TVVBQT1JUKSwgMSkK
ICAgICBXRUJDT1JFX0VYUE9SVF9ERVBFTkRFTkNJRVMgOj0gJChXRUJDT1JFX0VYUE9SVF9ERVBF
TkRFTkNJRVMpIFdlYkNvcmUuRGFzaGJvYXJkU3VwcG9ydC5leHAKIGVuZGlmCmRpZmYgLS1naXQg
YS9XZWJDb3JlL1dlYkNvcmUuQ29udGV4dE1lbnUuZXhwIGIvV2ViQ29yZS9XZWJDb3JlLkNvbnRl
eHRNZW51LmV4cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi42MmIyYzFmCi0t
LSAvZGV2L251bGwKKysrIGIvV2ViQ29yZS9XZWJDb3JlLkNvbnRleHRNZW51LmV4cApAQCAtMCww
ICsxLDUgQEAKK19fWk43V2ViQ29yZTExQ29udGV4dE1lbnUyMnNldFBsYXRmb3JtRGVzY3JpcHRp
b25FUDE0TlNNdXRhYmxlQXJyYXkKK19fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyMjBzZW5kQ29u
dGV4dE1lbnVFdmVudEVQN05TRXZlbnQKK19fWk43V2ViQ29yZTE1Q29udGV4dE1lbnVJdGVtMjZy
ZWxlYXNlUGxhdGZvcm1EZXNjcmlwdGlvbkV2CitfX1pON1dlYkNvcmUyMUNvbnRleHRNZW51Q29u
dHJvbGxlcjE2Y2xlYXJDb250ZXh0TWVudUV2CitfX1pOSzdXZWJDb3JlMTFDb250ZXh0TWVudTE5
cGxhdGZvcm1EZXNjcmlwdGlvbkV2CmRpZmYgLS1naXQgYS9XZWJDb3JlL1dlYkNvcmUuYmFzZS5l
eHAgYi9XZWJDb3JlL1dlYkNvcmUuYmFzZS5leHAKaW5kZXggYmI0MTFmZS4uOWQ3MjZhMyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9XZWJDb3JlLmJhc2UuZXhwCisrKyBiL1dlYkNvcmUvV2ViQ29yZS5i
YXNlLmV4cApAQCAtMTQ2LDcgKzE0Niw2IEBAIF9fWk43V2ViQ29yZTEwaGFuZEN1cnNvckV2CiBf
X1pON1dlYkNvcmUxMHNldENvb2tpZXNFUE5TXzhEb2N1bWVudEVSS05TXzRLVVJMRVJLTlNfNlN0
cmluZ0UKIF9fWk43V2ViQ29yZTExQ2FjaGVkRnJhbWUyM2NhY2hlZEZyYW1lUGxhdGZvcm1EYXRh
RXYKIF9fWk43V2ViQ29yZTExQ2FjaGVkRnJhbWUyNnNldENhY2hlZEZyYW1lUGxhdGZvcm1EYXRh
RVBOU18yM0NhY2hlZEZyYW1lUGxhdGZvcm1EYXRhRQotX19aTjdXZWJDb3JlMTFDb250ZXh0TWVu
dTIyc2V0UGxhdGZvcm1EZXNjcmlwdGlvbkVQMTROU011dGFibGVBcnJheQogX19aTjdXZWJDb3Jl
MTFFZGl0Q29tbWFuZDdyZWFwcGx5RXYKIF9fWk43V2ViQ29yZTExRWRpdENvbW1hbmQ3dW5hcHBs
eUV2CiBfX1pON1dlYkNvcmUxMUZpbGVDaG9vc2VyMTBjaG9vc2VGaWxlRVJLTlNfNlN0cmluZ0UK
QEAgLTIyOCw3ICsyMjcsNiBAQCBfX1pON1dlYkNvcmUxMkV2ZW50SGFuZGxlcjE3ZHJhZ1NvdXJj
ZU1vdmVkVG9FUktOU18xOFBsYXRmb3JtTW91c2VFdmVudEUKIF9fWk43V2ViQ29yZTEyRXZlbnRI
YW5kbGVyMTdldmVudE1heVN0YXJ0RHJhZ0VQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRI
YW5kbGVyMjBoYW5kbGVUZXh0SW5wdXRFdmVudEVSS05TXzZTdHJpbmdFUE5TXzVFdmVudEViYgog
X19aTjdXZWJDb3JlMTJFdmVudEhhbmRsZXIyMGhpdFRlc3RSZXN1bHRBdFBvaW50RVJLTlNfOElu
dFBvaW50RWJiTlNfMTdIaXRUZXN0U2Nyb2xsYmFyc0UKLV9fWk43V2ViQ29yZTEyRXZlbnRIYW5k
bGVyMjBzZW5kQ29udGV4dE1lbnVFdmVudEVQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRI
YW5kbGVyMjdjYXBzTG9ja1N0YXRlTWF5SGF2ZUNoYW5nZWRFdgogX19aTjdXZWJDb3JlMTJFdmVu
dEhhbmRsZXI3bW91c2VVcEVQN05TRXZlbnQKIF9fWk43V2ViQ29yZTEyRXZlbnRIYW5kbGVyOGtl
eUV2ZW50RVA3TlNFdmVudApAQCAtMzQwLDcgKzMzOCw2IEBAIF9fWk43V2ViQ29yZTE1QmFja0Zv
cndhcmRMaXN0OGdvVG9JdGVtRVBOU18xMUhpc3RvcnlJdGVtRQogX19aTjdXZWJDb3JlMTVCYWNr
Rm9yd2FyZExpc3Q5Z29Gb3J3YXJkRXYKIF9fWk43V2ViQ29yZTE1QmFja0ZvcndhcmRMaXN0QzFF
UE5TXzRQYWdlRQogX19aTjdXZWJDb3JlMTVCYWNrRm9yd2FyZExpc3REMUV2Ci1fX1pON1dlYkNv
cmUxNUNvbnRleHRNZW51SXRlbTI2cmVsZWFzZVBsYXRmb3JtRGVzY3JpcHRpb25FdgogX19aTjdX
ZWJDb3JlMTVEYXRhYmFzZVRyYWNrZXIxMmRlbGV0ZU9yaWdpbkVQTlNfMTRTZWN1cml0eU9yaWdp
bkUKIF9fWk43V2ViQ29yZTE1RGF0YWJhc2VUcmFja2VyMTRkZWxldGVEYXRhYmFzZUVQTlNfMTRT
ZWN1cml0eU9yaWdpbkVSS05TXzZTdHJpbmdFCiBfX1pON1dlYkNvcmUxNURhdGFiYXNlVHJhY2tl
cjE0cXVvdGFGb3JPcmlnaW5FUE5TXzE0U2VjdXJpdHlPcmlnaW5FCkBAIC00MzQsNyArNDMxLDYg
QEAgX19aTjdXZWJDb3JlMTlUZXh0UmVzb3VyY2VEZWNvZGVyRDFFdgogX19aTjdXZWJDb3JlMTlh
cHBsaWNhdGlvbklzU2FmYXJpRXYKIF9fWk43V2ViQ29yZTIwUmVzb3VyY2VSZXNwb25zZUJhc2Uy
NHNldEV4cGVjdGVkQ29udGVudExlbmd0aEV4CiBfX1pON1dlYkNvcmUyMFJlc291cmNlUmVzcG9u
c2VCYXNlQzJFdgotX19aTjdXZWJDb3JlMjFDb250ZXh0TWVudUNvbnRyb2xsZXIxNmNsZWFyQ29u
dGV4dE1lbnVFdgogX19aTjdXZWJDb3JlMjFKYXZhU2NyaXB0RGVidWdTZXJ2ZXIyM3JlY29tcGls
ZUFsbEpTRnVuY3Rpb25zRVBOU181VGltZXJJUzBfRUUKIF9fWk43V2ViQ29yZTIxSmF2YVNjcmlw
dERlYnVnU2VydmVyNnNoYXJlZEV2CiBfX1pON1dlYkNvcmUyMVBsYXRmb3JtS2V5Ym9hcmRFdmVu
dDI0ZGlzYW1iaWd1YXRlS2V5RG93bkV2ZW50RU5TMF80VHlwZUViCkBAIC03NzUsNyArNzcxLDYg
QEAgX19aTks3V2ViQ29yZTEwU2Nyb2xsVmlldzEyZG9jdW1lbnRWaWV3RXYKIF9fWk5LN1dlYkNv
cmUxMFNjcm9sbFZpZXcxNHNjcm9sbGJhck1vZGVzRVJOU18xM1Njcm9sbGJhck1vZGVFUzJfCiBf
X1pOSzdXZWJDb3JlMTBTY3JvbGxWaWV3MTh2aXNpYmxlQ29udGVudFJlY3RFYgogX19aTks3V2Vi
Q29yZTExQ2FjaGVkSW1hZ2U1aW1hZ2VFdgotX19aTks3V2ViQ29yZTExQ29udGV4dE1lbnUxOXBs
YXRmb3JtRGVzY3JpcHRpb25FdgogX19aTks3V2ViQ29yZTExRnJhbWVMb2FkZXIxMGlzQ29tcGxl
dGVFdgogX19aTks3V2ViQ29yZTExRnJhbWVMb2FkZXIxNGZyYW1lSGFzTG9hZGVkRXYKIF9fWk5L
N1dlYkNvcmUxMUZyYW1lTG9hZGVyMTVjb250YWluc1BsdWdpbnNFdgpkaWZmIC0tZ2l0IGEvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9XZWJDb3JlL1dlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCAyYzdiZTFkLi40ZjZkZTMyIDEwMDY0NAot
LS0gYS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9XZWJD
b3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTg0NCw2ICs5ODQ0LDcg
QEAKIAkJRkU4MERBNkUwRTlDNDcyRjAwMEQ2Rjc1IC8qIEpTUG9zaXRpb25FcnJvci5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBKU1Bvc2l0aW9uRXJyb3IuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJRkVBQjkwMTAwRUE1MUI5QzAwNjM0OEMzIC8qIEdlb2xvY2F0
aW9uU2VydmljZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBHZW9s
b2NhdGlvblNlcnZpY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlGRUFCOTAx
MTBFQTUxQjlDMDA2MzQ4QzMgLyogR2VvbG9jYXRpb25TZXJ2aWNlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEdlb2xvY2F0aW9uU2VydmljZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQlGRUZEMTAyQzEwNUM0MTQ3MDAwMjg1NUUgLyogV2ViQ29yZS5Db250ZXh0
TWVudS5leHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmV4cG9ydHM7IHBhdGggPSBXZWJDb3JlLkNv
bnRleHRNZW51LmV4cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIC8qIEVuZCBQQlhGaWxl
UmVmZXJlbmNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYRnJhbWV3b3Jrc0J1aWxkUGhhc2Ug
c2VjdGlvbiAqLwpAQCAtMTA0NDAsNiArMTA0NDEsNyBAQAogCQkJaXNhID0gUEJYR3JvdXA7CiAJ
CQljaGlsZHJlbiA9ICgKIAkJCQlGNThFRjU4RTAyREZERkI3MDE4NjM1Q0EgLyogV2ViQ29yZS5i
YXNlLmV4cCAqLywKKwkJCQlGRUZEMTAyQzEwNUM0MTQ3MDAwMjg1NUUgLyogV2ViQ29yZS5Db250
ZXh0TWVudS5leHAgKi8sCiAJCQkJNDQ5MTk1OUQwRkJFMTdENzAwRDlGODI0IC8qIFdlYkNvcmUu
RGFzaGJvYXJkU3VwcG9ydC5leHAgKi8sCiAJCQkJNDQ5MTk1OUMwRkJFMTdENzAwRDlGODI0IC8q
IFdlYkNvcmUuSk5JLmV4cCAqLywKIAkJCQk0NDkxOTU5QjBGQkUxN0Q3MDBEOUY4MjQgLyogV2Vi
Q29yZS5MUDY0LmV4cCAqLywKZGlmZiAtLWdpdCBhL1dlYkNvcmUvZG9tL05vZGUuY3BwIGIvV2Vi
Q29yZS9kb20vTm9kZS5jcHAKaW5kZXggOWUwNjlmNS4uNWViNzIyZiAxMDA2NDQKLS0tIGEvV2Vi
Q29yZS9kb20vTm9kZS5jcHAKKysrIGIvV2ViQ29yZS9kb20vTm9kZS5jcHAKQEAgLTI5OTcsMTAg
KzI5OTcsMTIgQEAgdm9pZCBOb2RlOjpkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KiBldmVudCkK
ICAgICB9IGVsc2UgaWYgKGV2ZW50VHlwZSA9PSBldmVudE5hbWVzKCkuY2xpY2tFdmVudCkgewog
ICAgICAgICBpbnQgZGV0YWlsID0gZXZlbnQtPmlzVUlFdmVudCgpID8gc3RhdGljX2Nhc3Q8VUlF
dmVudCo+KGV2ZW50KS0+ZGV0YWlsKCkgOiAwOwogICAgICAgICBkaXNwYXRjaFVJRXZlbnQoZXZl
bnROYW1lcygpLkRPTUFjdGl2YXRlRXZlbnQsIGRldGFpbCwgZXZlbnQpOworI2lmIEVOQUJMRShD
T05URVhUX01FTlVTKQogICAgIH0gZWxzZSBpZiAoZXZlbnRUeXBlID09IGV2ZW50TmFtZXMoKS5j
b250ZXh0bWVudUV2ZW50KSB7CiAgICAgICAgIGlmIChGcmFtZSogZnJhbWUgPSBkb2N1bWVudCgp
LT5mcmFtZSgpKQogICAgICAgICAgICAgaWYgKFBhZ2UqIHBhZ2UgPSBmcmFtZS0+cGFnZSgpKQog
ICAgICAgICAgICAgICAgIHBhZ2UtPmNvbnRleHRNZW51Q29udHJvbGxlcigpLT5oYW5kbGVDb250
ZXh0TWVudUV2ZW50KGV2ZW50KTsKKyNlbmRpZgogICAgIH0gZWxzZSBpZiAoZXZlbnRUeXBlID09
IGV2ZW50TmFtZXMoKS50ZXh0SW5wdXRFdmVudCkgewogICAgICAgICBpZiAoZXZlbnQtPmlzVGV4
dEV2ZW50KCkpCiAgICAgICAgICAgICBpZiAoRnJhbWUqIGZyYW1lID0gZG9jdW1lbnQoKS0+ZnJh
bWUoKSkKZGlmZiAtLWdpdCBhL1dlYkNvcmUvbG9hZGVyL0VtcHR5Q2xpZW50cy5oIGIvV2ViQ29y
ZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKaW5kZXggYzA4ZTI2MS4uMDg2ODZhMSAxMDA2NDQKLS0t
IGEvV2ViQ29yZS9sb2FkZXIvRW1wdHlDbGllbnRzLmgKKysrIGIvV2ViQ29yZS9sb2FkZXIvRW1w
dHlDbGllbnRzLmgKQEAgLTQxNSw2ICs0MTUsNyBAQCBwdWJsaWM6CiAKIH07CiAKKyNpZiBFTkFC
TEUoQ09OVEVYVF9NRU5VUykKIGNsYXNzIEVtcHR5Q29udGV4dE1lbnVDbGllbnQgOiBwdWJsaWMg
Q29udGV4dE1lbnVDbGllbnQgewogcHVibGljOgogICAgIHZpcnR1YWwgfkVtcHR5Q29udGV4dE1l
bnVDbGllbnQoKSB7ICB9CkBAIC00MzUsNiArNDM2LDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwg
dm9pZCBzZWFyY2hXaXRoU3BvdGxpZ2h0KCkgeyB9CiAjZW5kaWYKIH07CisjZW5kaWYgLy8gRU5B
QkxFKENPTlRFWFRfTUVOVVMpCiAKIGNsYXNzIEVtcHR5RHJhZ0NsaWVudCA6IHB1YmxpYyBEcmFn
Q2xpZW50IHsKIHB1YmxpYzoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9Db250ZXh0TWVudUNv
bnRyb2xsZXIuY3BwIGIvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5jcHAKaW5k
ZXggMGVjOWQxYy4uMDYzOTc4ZCAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51
Q29udHJvbGxlci5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL0NvbnRleHRNZW51Q29udHJvbGxlci5j
cHAKQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDb250
ZXh0TWVudUNvbnRyb2xsZXIuaCIKIAorI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogI2luY2x1
ZGUgIkNocm9tZS5oIgogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAjaW5jbHVkZSAiQ29udGV4
dE1lbnVDbGllbnQuaCIKQEAgLTMzNSwzICszMzYsNCBAQCB2b2lkIENvbnRleHRNZW51Q29udHJv
bGxlcjo6Y29udGV4dE1lbnVJdGVtU2VsZWN0ZWQoQ29udGV4dE1lbnVJdGVtKiBpdGVtKQogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVVMp
CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmNwcCBiL1dlYkNvcmUvcGFn
ZS9FdmVudEhhbmRsZXIuY3BwCmluZGV4IGU5ZGQzYmYuLjEyNTI1OGMgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuY3BwCisrKyBiL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRs
ZXIuY3BwCkBAIC0xODA5LDYgKzE4MDksNyBAQCBib29sIEV2ZW50SGFuZGxlcjo6aGFuZGxlV2hl
ZWxFdmVudChQbGF0Zm9ybVdoZWVsRXZlbnQmIGUpCiAgICAgcmV0dXJuIGUuaXNBY2NlcHRlZCgp
OwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiBib29sIEV2ZW50SGFuZGxlcjo6c2Vu
ZENvbnRleHRNZW51RXZlbnQoY29uc3QgUGxhdGZvcm1Nb3VzZUV2ZW50JiBldmVudCkKIHsKICAg
ICBEb2N1bWVudCogZG9jID0gbV9mcmFtZS0+ZG9jdW1lbnQoKTsKQEAgLTE4MzksNiArMTg0MCw3
IEBAIGJvb2wgRXZlbnRIYW5kbGVyOjpzZW5kQ29udGV4dE1lbnVFdmVudChjb25zdCBQbGF0Zm9y
bU1vdXNlRXZlbnQmIGV2ZW50KQogICAgIAogICAgIHJldHVybiBzd2FsbG93RXZlbnQ7CiB9Cisj
ZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAKIHZvaWQgRXZlbnRIYW5kbGVyOjpzY2hl
ZHVsZUhvdmVyU3RhdGVVcGRhdGUoKQogewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wYWdlL0V2ZW50
SGFuZGxlci5oIGIvV2ViQ29yZS9wYWdlL0V2ZW50SGFuZGxlci5oCmluZGV4IGJkNWMzMTIuLmIz
NzgyMzggMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGFnZS9FdmVudEhhbmRsZXIuaAorKysgYi9XZWJD
b3JlL3BhZ2UvRXZlbnRIYW5kbGVyLmgKQEAgLTEyOSw3ICsxMjksOSBAQCBwdWJsaWM6CiAgICAg
Ym9vbCBoYW5kbGVNb3VzZVJlbGVhc2VFdmVudChjb25zdCBQbGF0Zm9ybU1vdXNlRXZlbnQmKTsK
ICAgICBib29sIGhhbmRsZVdoZWVsRXZlbnQoUGxhdGZvcm1XaGVlbEV2ZW50Jik7CiAKKyNpZiBF
TkFCTEUoQ09OVEVYVF9NRU5VUykKICAgICBib29sIHNlbmRDb250ZXh0TWVudUV2ZW50KGNvbnN0
IFBsYXRmb3JtTW91c2VFdmVudCYpOworI2VuZGlmCiAKICAgICB2b2lkIHNldE1vdXNlRG93bk1h
eVN0YXJ0QXV0b3Njcm9sbCgpIHsgbV9tb3VzZURvd25NYXlTdGFydEF1dG9zY3JvbGwgPSB0cnVl
OyB9CiAKQEAgLTE2Niw3ICsxNjgsOSBAQCBwdWJsaWM6CiAgICAgYm9vbCBrZXlFdmVudChOU0V2
ZW50ICopOwogICAgIGJvb2wgd2hlZWxFdmVudChOU0V2ZW50ICopOwogCisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVVMpCiAgICAgYm9vbCBzZW5kQ29udGV4dE1lbnVFdmVudChOU0V2ZW50ICopOwor
I2VuZGlmCiAgICAgYm9vbCBldmVudE1heVN0YXJ0RHJhZyhOU0V2ZW50ICopOwogCiAgICAgdm9p
ZCBzZW5kRmFrZUV2ZW50c0FmdGVyV2lkZ2V0VHJhY2tpbmcoTlNFdmVudCAqaW5pdGlhdGluZ0V2
ZW50KTsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9QYWdlLmNwcCBiL1dlYkNvcmUvcGFnZS9Q
YWdlLmNwcAppbmRleCA0YzQzZWNlLi41MmEyYzJmIDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2Uv
UGFnZS5jcHAKKysrIGIvV2ViQ29yZS9wYWdlL1BhZ2UuY3BwCkBAIC0xMDIsNyArMTAyLDkgQEAg
UGFnZTo6UGFnZShDaHJvbWVDbGllbnQqIGNocm9tZUNsaWVudCwgQ29udGV4dE1lbnVDbGllbnQq
IGNvbnRleHRNZW51Q2xpZW50LCBFZGkKICAgICAsIG1fZHJhZ0NhcmV0Q29udHJvbGxlcihuZXcg
U2VsZWN0aW9uQ29udHJvbGxlcigwLCB0cnVlKSkKICAgICAsIG1fZHJhZ0NvbnRyb2xsZXIobmV3
IERyYWdDb250cm9sbGVyKHRoaXMsIGRyYWdDbGllbnQpKQogICAgICwgbV9mb2N1c0NvbnRyb2xs
ZXIobmV3IEZvY3VzQ29udHJvbGxlcih0aGlzKSkKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykK
ICAgICAsIG1fY29udGV4dE1lbnVDb250cm9sbGVyKG5ldyBDb250ZXh0TWVudUNvbnRyb2xsZXIo
dGhpcywgY29udGV4dE1lbnVDbGllbnQpKQorI2VuZGlmCiAgICAgLCBtX2luc3BlY3RvckNvbnRy
b2xsZXIobmV3IEluc3BlY3RvckNvbnRyb2xsZXIodGhpcywgaW5zcGVjdG9yQ2xpZW50KSkKICAg
ICAsIG1fc2V0dGluZ3MobmV3IFNldHRpbmdzKHRoaXMpKQogICAgICwgbV9wcm9ncmVzcyhuZXcg
UHJvZ3Jlc3NUcmFja2VyKQpAQCAtMTI2LDYgKzEyOCw5IEBAIFBhZ2U6OlBhZ2UoQ2hyb21lQ2xp
ZW50KiBjaHJvbWVDbGllbnQsIENvbnRleHRNZW51Q2xpZW50KiBjb250ZXh0TWVudUNsaWVudCwg
RWRpCiAgICAgLCBtX2N1c3RvbUhUTUxUb2tlbml6ZXJDaHVua1NpemUoLTEpCiAgICAgLCBtX2Nh
blN0YXJ0UGx1Z2lucyh0cnVlKQogeworI2lmICFFTkFCTEUoQ09OVEVYVF9NRU5VUykKKyAgICBV
TlVTRURfUEFSQU0oY29udGV4dE1lbnVDbGllbnQpOworI2VuZGlmCiAgICAgaWYgKCFhbGxQYWdl
cykgewogICAgICAgICBhbGxQYWdlcyA9IG5ldyBIYXNoU2V0PFBhZ2UqPjsKICAgICAgICAgCmRp
ZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2UvUGFnZS5oIGIvV2ViQ29yZS9wYWdlL1BhZ2UuaAppbmRl
eCAzYzhhYWZhLi43ZmQ3YTY1IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2UvUGFnZS5oCisrKyBi
L1dlYkNvcmUvcGFnZS9QYWdlLmgKQEAgLTEyNyw3ICsxMjcsOSBAQCBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAgICAgICAgIFNlbGVjdGlvbkNvbnRyb2xsZXIqIGRyYWdDYXJldENvbnRyb2xsZXIoKSBj
b25zdCB7IHJldHVybiBtX2RyYWdDYXJldENvbnRyb2xsZXIuZ2V0KCk7IH0KICAgICAgICAgRHJh
Z0NvbnRyb2xsZXIqIGRyYWdDb250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9kcmFnQ29udHJv
bGxlci5nZXQoKTsgfQogICAgICAgICBGb2N1c0NvbnRyb2xsZXIqIGZvY3VzQ29udHJvbGxlcigp
IGNvbnN0IHsgcmV0dXJuIG1fZm9jdXNDb250cm9sbGVyLmdldCgpOyB9CisjaWYgRU5BQkxFKENP
TlRFWFRfTUVOVVMpCiAgICAgICAgIENvbnRleHRNZW51Q29udHJvbGxlciogY29udGV4dE1lbnVD
b250cm9sbGVyKCkgY29uc3QgeyByZXR1cm4gbV9jb250ZXh0TWVudUNvbnRyb2xsZXIuZ2V0KCk7
IH0KKyNlbmRpZgogICAgICAgICBJbnNwZWN0b3JDb250cm9sbGVyKiBpbnNwZWN0b3JDb250cm9s
bGVyKCkgY29uc3QgeyByZXR1cm4gbV9pbnNwZWN0b3JDb250cm9sbGVyLmdldCgpOyB9CiAgICAg
ICAgIFNldHRpbmdzKiBzZXR0aW5ncygpIGNvbnN0IHsgcmV0dXJuIG1fc2V0dGluZ3MuZ2V0KCk7
IH0KICAgICAgICAgUHJvZ3Jlc3NUcmFja2VyKiBwcm9ncmVzcygpIGNvbnN0IHsgcmV0dXJuIG1f
cHJvZ3Jlc3MuZ2V0KCk7IH0KQEAgLTIxOSw3ICsyMjEsOSBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAgICAgICAgIE93blB0cjxTZWxlY3Rpb25Db250cm9sbGVyPiBtX2RyYWdDYXJldENvbnRyb2xs
ZXI7CiAgICAgICAgIE93blB0cjxEcmFnQ29udHJvbGxlcj4gbV9kcmFnQ29udHJvbGxlcjsKICAg
ICAgICAgT3duUHRyPEZvY3VzQ29udHJvbGxlcj4gbV9mb2N1c0NvbnRyb2xsZXI7CisjaWYgRU5B
QkxFKENPTlRFWFRfTUVOVVMpCiAgICAgICAgIE93blB0cjxDb250ZXh0TWVudUNvbnRyb2xsZXI+
IG1fY29udGV4dE1lbnVDb250cm9sbGVyOworI2VuZGlmCiAgICAgICAgIE93blB0cjxJbnNwZWN0
b3JDb250cm9sbGVyPiBtX2luc3BlY3RvckNvbnRyb2xsZXI7CiAgICAgICAgIE93blB0cjxTZXR0
aW5ncz4gbV9zZXR0aW5nczsKICAgICAgICAgT3duUHRyPFByb2dyZXNzVHJhY2tlcj4gbV9wcm9n
cmVzczsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGFnZS9tYWMvRXZlbnRIYW5kbGVyTWFjLm1tIGIv
V2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0KaW5kZXggNTRiZGZmOS4uYmUxM2I5
MSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0KKysrIGIv
V2ViQ29yZS9wYWdlL21hYy9FdmVudEhhbmRsZXJNYWMubW0KQEAgLTcxMCw2ICs3MTAsNyBAQCBQ
bGF0Zm9ybU1vdXNlRXZlbnQgRXZlbnRIYW5kbGVyOjpjdXJyZW50UGxhdGZvcm1Nb3VzZUV2ZW50
KCkgY29uc3QKICAgICByZXR1cm4gUGxhdGZvcm1Nb3VzZUV2ZW50KGN1cnJlbnROU0V2ZW50KCks
IHdpbmRvd1ZpZXcpOwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiBib29sIEV2ZW50
SGFuZGxlcjo6c2VuZENvbnRleHRNZW51RXZlbnQoTlNFdmVudCAqZXZlbnQpCiB7CiAgICAgUGFn
ZSogcGFnZSA9IG1fZnJhbWUtPnBhZ2UoKTsKQEAgLTcxNyw2ICs3MTgsNyBAQCBib29sIEV2ZW50
SGFuZGxlcjo6c2VuZENvbnRleHRNZW51RXZlbnQoTlNFdmVudCAqZXZlbnQpCiAgICAgICAgIHJl
dHVybiBmYWxzZTsKICAgICByZXR1cm4gc2VuZENvbnRleHRNZW51RXZlbnQoUGxhdGZvcm1Nb3Vz
ZUV2ZW50KGV2ZW50LCBwYWdlLT5jaHJvbWUoKS0+cGxhdGZvcm1XaW5kb3coKSkpOwogfQorI2Vu
ZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlVTKQogCiBib29sIEV2ZW50SGFuZGxlcjo6ZXZlbnRN
YXlTdGFydERyYWcoTlNFdmVudCAqZXZlbnQpCiB7CmRpZmYgLS1naXQgYS9XZWJDb3JlL3BhZ2Uv
bWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oIGIvV2ViQ29yZS9wYWdlL21hYy9XZWJDb3JlVmlld0Zh
Y3RvcnkuaAppbmRleCBjMWI3Mzc1Li4yNDlkNjk2IDEwMDY0NAotLS0gYS9XZWJDb3JlL3BhZ2Uv
bWFjL1dlYkNvcmVWaWV3RmFjdG9yeS5oCisrKyBiL1dlYkNvcmUvcGFnZS9tYWMvV2ViQ29yZVZp
ZXdGYWN0b3J5LmgKQEAgLTM5LDYgKzM5LDcgQEAKIC0gKE5TU3RyaW5nICopZmlsZUJ1dHRvbk5v
RmlsZVNlbGVjdGVkTGFiZWw7CiAtIChOU1N0cmluZyAqKWNvcHlJbWFnZVVua25vd25GaWxlTGFi
ZWw7CiAKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIC8vIENvbnRleHQgbWVudSBpdGVtIHRp
dGxlcwogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdPcGVuTGlua0luTmV3V2luZG93
OwogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdEb3dubG9hZExpbmtUb0Rpc2s7CkBA
IC05Nyw2ICs5OCw3IEBACiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ0NhcGl0YWxp
emU7CiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ0NoYW5nZUJhY2s6KE5TU3RyaW5n
ICopcmVwbGFjZWRTdHJpbmc7CiAtIChOU1N0cmluZyAqKWNvbnRleHRNZW51SXRlbVRhZ0luc3Bl
Y3RFbGVtZW50OworI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlVTKQogCiAtIChOU1N0cmlu
ZyAqKXNlYXJjaE1lbnVOb1JlY2VudFNlYXJjaGVzVGV4dDsKIC0gKE5TU3RyaW5nICopc2VhcmNo
TWVudVJlY2VudFNlYXJjaGVzVGV4dDsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vQ29u
dGV4dE1lbnUuY3BwIGIvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAKaW5kZXggY2Nh
MTFiNS4uNWNmNjEzMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5j
cHAKKysrIGIvV2ViQ29yZS9wbGF0Zm9ybS9Db250ZXh0TWVudS5jcHAKQEAgLTI3LDYgKzI3LDcg
QEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogCisjaWYg
RU5BQkxFKENPTlRFWFRfTUVOVVMpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgi
CiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDbGllbnQuaCIKICNpbmNsdWRlICJDU1NDb21wdXRlZFN0
eWxlRGVjbGFyYXRpb24uaCIKQEAgLTc4MiwzICs3ODMsNCBAQCB2b2lkIENvbnRleHRNZW51Ojpj
aGVja09yRW5hYmxlSWZOZWVkZWQoQ29udGV4dE1lbnVJdGVtJiBpdGVtKSBjb25zdAogfQogCiB9
CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVVMpCmRpZmYgLS1naXQgYS9XZWJDb3JlL3Bs
YXRmb3JtL0xvY2FsaXplZFN0cmluZ3MuaCBiL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3Ry
aW5ncy5oCmluZGV4IDQ1ODU1ZWQuLjBmYTlmNzEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxhdGZv
cm0vTG9jYWxpemVkU3RyaW5ncy5oCisrKyBiL1dlYkNvcmUvcGxhdGZvcm0vTG9jYWxpemVkU3Ry
aW5ncy5oCkBAIC0zOCw2ICszOCw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICBTdHJpbmcg
ZmlsZUJ1dHRvbkNob29zZUZpbGVMYWJlbCgpOwogICAgIFN0cmluZyBmaWxlQnV0dG9uTm9GaWxl
U2VsZWN0ZWRMYWJlbCgpOwogICAgIFN0cmluZyBjb3B5SW1hZ2VVbmtub3duRmlsZUxhYmVsKCk7
CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRh
Z09wZW5MaW5rSW5OZXdXaW5kb3coKTsKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnRG93
bmxvYWRMaW5rVG9EaXNrKCk7CiAgICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0NvcHlMaW5r
VG9DbGlwYm9hcmQoKTsKQEAgLTEwMyw2ICsxMDQsNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAg
ICAgU3RyaW5nIGNvbnRleHRNZW51SXRlbVRhZ0NoYW5nZUJhY2soY29uc3QgU3RyaW5nJiByZXBs
YWNlZFN0cmluZyk7CiAjZW5kaWYKICAgICBTdHJpbmcgY29udGV4dE1lbnVJdGVtVGFnSW5zcGVj
dEVsZW1lbnQoKTsKKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAogICAgIFN0cmlu
ZyBzZWFyY2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQoKTsKICAgICBTdHJpbmcgc2VhcmNoTWVu
dVJlY2VudFNlYXJjaGVzVGV4dCgpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
Q29udGV4dE1lbnVJdGVtTWFjLm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVJ
dGVtTWFjLm1tCmluZGV4IGM1ZTI5NDIuLjUzMWM4MzQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL0NvbnRleHRNZW51SXRlbU1hYy5tbQorKysgYi9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9Db250ZXh0TWVudUl0ZW1NYWMubW0KQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJjb25m
aWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudUl0ZW0uaCIKIAorI2lmIEVOQUJMRShDT05URVhU
X01FTlVTKQogI2luY2x1ZGUgIkNvbnRleHRNZW51LmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsK
QEAgLTE1MywzICsxNTQsNCBAQCBib29sIENvbnRleHRNZW51SXRlbTo6ZW5hYmxlZCgpIGNvbnN0
CiB9CiAKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKZGlmZiAtLWdpdCBhL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL0NvbnRleHRNZW51TWFjLm1tIGIvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvQ29udGV4dE1lbnVNYWMubW0KaW5kZXggYjU2ZDBiOS4uNjA4MzJiMiAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvQ29udGV4dE1lbnVNYWMubW0KKysrIGIvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvQ29udGV4dE1lbnVNYWMubW0KQEAgLTI2LDYgKzI2LDcgQEAKICNpbmNsdWRlICJj
b25maWcuaCIKICNpbmNsdWRlICJDb250ZXh0TWVudS5oIgogCisjaWYgRU5BQkxFKENPTlRFWFRf
TUVOVVMpCiAjaW5jbHVkZSAiQ29udGV4dE1lbnVDb250cm9sbGVyLmgiCiAKIEBpbnRlcmZhY2Ug
V2ViQ29yZU1lbnVUYXJnZXQgOiBOU09iamVjdCB7CkBAIC0xNTIsMyArMTUzLDQgQEAgTlNNdXRh
YmxlQXJyYXkqIENvbnRleHRNZW51OjpyZWxlYXNlUGxhdGZvcm1EZXNjcmlwdGlvbigpCiB9CiAK
IH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKZGlmZiAtLWdpdCBhL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NNYWMubW0gYi9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9Mb2NhbGl6ZWRTdHJpbmdzTWFjLm1tCmluZGV4IDE3MjkwNjEuLjI2MTM0N2YgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0xvY2FsaXplZFN0cmluZ3NNYWMubW0KKysrIGIvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvTG9jYWxpemVkU3RyaW5nc01hYy5tbQpAQCAtODksNiArODksNyBA
QCBTdHJpbmcgY29weUltYWdlVW5rbm93bkZpbGVMYWJlbCgpCiAgICAgcmV0dXJuIFN0cmluZygp
OwogfQogCisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiBTdHJpbmcgY29udGV4dE1lbnVJdGVt
VGFnT3BlbkxpbmtJbk5ld1dpbmRvdygpCiB7CiAgICAgQkVHSU5fQkxPQ0tfT0JKQ19FWENFUFRJ
T05TOwpAQCAtNTQ0LDYgKzU0NSw3IEBAIFN0cmluZyBjb250ZXh0TWVudUl0ZW1UYWdJbnNwZWN0
RWxlbWVudCgpCiAgICAgRU5EX0JMT0NLX09CSkNfRVhDRVBUSU9OUzsKICAgICByZXR1cm4gU3Ry
aW5nKCk7CiB9CisjZW5kaWYgLy8gRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAKIFN0cmluZyBzZWFy
Y2hNZW51Tm9SZWNlbnRTZWFyY2hlc1RleHQoKQogewpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9zdmcv
Z3JhcGhpY3MvU1ZHSW1hZ2UuY3BwIGIvV2ViQ29yZS9zdmcvZ3JhcGhpY3MvU1ZHSW1hZ2UuY3Bw
CmluZGV4IGNjMTYxYjUuLmY0NjM4N2MgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvc3ZnL2dyYXBoaWNz
L1NWR0ltYWdlLmNwcAorKysgYi9XZWJDb3JlL3N2Zy9ncmFwaGljcy9TVkdJbWFnZS5jcHAKQEAg
LTIyOCw3ICsyMjgsMTEgQEAgYm9vbCBTVkdJbWFnZTo6ZGF0YUNoYW5nZWQoYm9vbCBhbGxEYXRh
UmVjZWl2ZWQpCiAgICAgaWYgKGFsbERhdGFSZWNlaXZlZCkgewogICAgICAgICBzdGF0aWMgRnJh
bWVMb2FkZXJDbGllbnQqIGR1bW15RnJhbWVMb2FkZXJDbGllbnQgPSAgbmV3IEVtcHR5RnJhbWVM
b2FkZXJDbGllbnQ7CiAgICAgICAgIHN0YXRpYyBFZGl0b3JDbGllbnQqIGR1bW15RWRpdG9yQ2xp
ZW50ID0gbmV3IEVtcHR5RWRpdG9yQ2xpZW50OworI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQog
ICAgICAgICBzdGF0aWMgQ29udGV4dE1lbnVDbGllbnQqIGR1bW15Q29udGV4dE1lbnVDbGllbnQg
PSBuZXcgRW1wdHlDb250ZXh0TWVudUNsaWVudDsKKyNlbHNlCisgICAgICAgIHN0YXRpYyBDb250
ZXh0TWVudUNsaWVudCogZHVtbXlDb250ZXh0TWVudUNsaWVudCA9IDA7CisjZW5kaWYKICAgICAg
ICAgc3RhdGljIERyYWdDbGllbnQqIGR1bW15RHJhZ0NsaWVudCA9IG5ldyBFbXB0eURyYWdDbGll
bnQ7CiAgICAgICAgIHN0YXRpYyBJbnNwZWN0b3JDbGllbnQqIGR1bW15SW5zcGVjdG9yQ2xpZW50
ID0gbmV3IEVtcHR5SW5zcGVjdG9yQ2xpZW50OwogCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL0No
YW5nZUxvZyBiL1dlYktpdC9tYWMvQ2hhbmdlTG9nCmluZGV4IGRjNTczYzcuLjk0YWUyMzUgMTAw
NjQ0Ci0tLSBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nCisrKyBiL1dlYktpdC9tYWMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjEgQEAKKzIwMDktMDktMTUgIEdyZWcgQm9sc2luZ2EgIDxib2xzaW5nYUBh
cHBsZS5jb20+CisKKyAgICAgICAgQWRkIEVOQUJMRShDT05URVhUX01FTlVTKQorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjkyMjUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTZXQgdXAgZGVmYXVsdHMgZm9y
IEVOQUJMRV9DT05URVhUX01FTlVTIChvZmYgZm9yIGlQaG9uZSwgb24gb3RoZXJ3aXNlKQorCisg
ICAgICAgICogRGVmYXVsdERlbGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5t
bTogV3JhcCBlbnRpcmUgZmlsZSBpbiBFTkFCTEUoQ09OVEVYVF9NRU5VUykuCisgICAgICAgICog
V2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQubW06IERpdHRvLgorICAgICAgICAq
IFdlYkNvcmVTdXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tOiBVc2UgRU5BQkxFKENPTlRFWFRfTUVO
VVMpIHdoZXJlIGFwcHJvcHJpYXRlLgorICAgICAgICAqIFdlYlZpZXcvV2ViSFRNTFZpZXcubW06
IERpdHRvLgorICAgICAgICAoLVtXZWJIVE1MVmlldyBtZW51Rm9yRXZlbnQ6XSk6CisgICAgICAg
ICogV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oOiBEaXR0by4KKyAgICAgICAgKiBXZWJW
aWV3L1dlYlZpZXcubW06IERpdHRvLgorICAgICAgICAoLVtXZWJWaWV3IF9jb21tb25Jbml0aWFs
aXphdGlvbldpdGhGcmFtZU5hbWU6Z3JvdXBOYW1lOnVzZXNEb2N1bWVudFZpZXdzOl0pOgorCiAy
MDA5LTA5LTE1ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAg
ICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL0Rl
ZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0gYi9XZWJLaXQv
bWFjL0RlZmF1bHREZWxlZ2F0ZXMvV2ViRGVmYXVsdENvbnRleHRNZW51RGVsZWdhdGUubW0KaW5k
ZXggMmVlN2Q4Yi4uZGY1ZTE4NyAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9EZWZhdWx0RGVsZWdh
dGVzL1dlYkRlZmF1bHRDb250ZXh0TWVudURlbGVnYXRlLm1tCisrKyBiL1dlYktpdC9tYWMvRGVm
YXVsdERlbGVnYXRlcy9XZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5tbQpAQCAtMjgsNiAr
MjgsNyBAQAogCiAjaW1wb3J0ICJXZWJEZWZhdWx0Q29udGV4dE1lbnVEZWxlZ2F0ZS5oIgogCisj
aWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAjaW1wb3J0ICJXZWJET01PcGVyYXRpb25zLmgiCiAj
aW1wb3J0ICJXZWJEYXRhU291cmNlUHJpdmF0ZS5oIgogI2ltcG9ydCAiV2ViRGVmYXVsdFVJRGVs
ZWdhdGUuaCIKQEAgLTE3OSwzICsxODAsNCBAQAogfQogCiBAZW5kCisjZW5kaWYgLy8gRU5BQkxF
KENPTlRFWFRfTUVOVVMpCmRpZmYgLS1naXQgYS9XZWJLaXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dl
YkNvbnRleHRNZW51Q2xpZW50Lm1tIGIvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9ydC9XZWJDb250
ZXh0TWVudUNsaWVudC5tbQppbmRleCA2MzlmM2MxLi4xNWU5YTUyIDEwMDY0NAotLS0gYS9XZWJL
aXQvbWFjL1dlYkNvcmVTdXBwb3J0L1dlYkNvbnRleHRNZW51Q2xpZW50Lm1tCisrKyBiL1dlYktp
dC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViQ29udGV4dE1lbnVDbGllbnQubW0KQEAgLTI4LDYgKzI4
LDcgQEAKIAogI2ltcG9ydCAiV2ViQ29udGV4dE1lbnVDbGllbnQuaCIKIAorI2lmIEVOQUJMRShD
T05URVhUX01FTlVTKQogI2ltcG9ydCAiV2ViRGVsZWdhdGVJbXBsZW1lbnRhdGlvbkNhY2hpbmcu
aCIKICNpbXBvcnQgIldlYkVsZW1lbnREaWN0aW9uYXJ5LmgiCiAjaW1wb3J0ICJXZWJGcmFtZS5o
IgpAQCAtMzUyLDMgKzM1Myw0IEBAIHZvaWQgV2ViQ29udGV4dE1lbnVDbGllbnQ6OnN0b3BTcGVh
a2luZygpCiB7CiAgICAgW05TQXBwIHN0b3BTcGVha2luZzpuaWxdOwogfQorI2VuZGlmIC8vIEVO
QUJMRShDT05URVhUX01FTlVTKQpkaWZmIC0tZ2l0IGEvV2ViS2l0L21hYy9XZWJDb3JlU3VwcG9y
dC9XZWJWaWV3RmFjdG9yeS5tbSBiL1dlYktpdC9tYWMvV2ViQ29yZVN1cHBvcnQvV2ViVmlld0Zh
Y3RvcnkubW0KaW5kZXggMDQ4MTZkMy4uZDBhMTg1ZSAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9X
ZWJDb3JlU3VwcG9ydC9XZWJWaWV3RmFjdG9yeS5tbQorKysgYi9XZWJLaXQvbWFjL1dlYkNvcmVT
dXBwb3J0L1dlYlZpZXdGYWN0b3J5Lm1tCkBAIC0xMzEsNiArMTMxLDcgQEAKICAgICByZXR1cm4g
W05TVXNlckRlZmF1bHRzIF93ZWJraXRfcHJlZmVycmVkTGFuZ3VhZ2VDb2RlXTsKIH0KIAorI2lm
IEVOQUJMRShDT05URVhUX01FTlVTKQogLSAoTlNTdHJpbmcgKiljb250ZXh0TWVudUl0ZW1UYWdP
cGVuTGlua0luTmV3V2luZG93CiB7CiAgICAgcmV0dXJuIFVJX1NUUklORygiT3BlbiBMaW5rIGlu
IE5ldyBXaW5kb3ciLCAiT3BlbiBpbiBOZXcgV2luZG93IGNvbnRleHQgbWVudSBpdGVtIik7CkBA
IC00NDcsNiArNDQ4LDcgQEAKIHsKICAgICByZXR1cm4gVUlfU1RSSU5HKCJJbnNwZWN0IEVsZW1l
bnQiLCAiSW5zcGVjdCBFbGVtZW50IGNvbnRleHQgbWVudSBpdGVtIik7CiB9CisjZW5kaWYgLy8g
RU5BQkxFKENPTlRFWFRfTUVOVVMpCiAKIC0gKEJPT0wpb2JqZWN0SXNUZXh0TWFya2VyOihpZClv
YmplY3QKIHsKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbSBi
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJIVE1MVmlldy5tbQppbmRleCA0MTYwMTBmLi42YTNhODli
IDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViSFRNTFZpZXcubW0KKysrIGIvV2Vi
S2l0L21hYy9XZWJWaWV3L1dlYkhUTUxWaWV3Lm1tCkBAIC0zMDM3LDggKzMwMzcsMTEgQEAgV0VC
Q09SRV9DT01NQU5EKHlhbmtBbmRTZWxlY3QpCiAKICAgICAvLyBNYXRjaCBiZWhhdmlvciBvZiBv
dGhlciBicm93c2VycyBieSBzZW5kaW5nIGEgbW91c2Vkb3duIGV2ZW50IGZvciByaWdodCBjbGlj
a3MuCiAgICAgX3ByaXZhdGUtPmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBZRVM7CisjaWYgRU5B
QkxFKENPTlRFWFRfTUVOVVMpCiAgICAgcGFnZS0+Y29udGV4dE1lbnVDb250cm9sbGVyKCktPmNs
ZWFyQ29udGV4dE1lbnUoKTsKKyNlbmRpZgogICAgIGNvcmVGcmFtZS0+ZXZlbnRIYW5kbGVyKCkt
Pm1vdXNlRG93bihldmVudCk7CisjaWYgRU5BQkxFKENPTlRFWFRfTUVOVVMpCiAgICAgQk9PTCBo
YW5kbGVkRXZlbnQgPSBjb3JlRnJhbWUtPmV2ZW50SGFuZGxlcigpLT5zZW5kQ29udGV4dE1lbnVF
dmVudChldmVudCk7CiAgICAgX3ByaXZhdGUtPmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBOTzsK
IApAQCAtMzA2Niw2ICszMDY5LDEwIEBAIFdFQkNPUkVfQ09NTUFORCh5YW5rQW5kU2VsZWN0KQog
ICAgIGZvciAoTlNVSW50ZWdlciBpID0gMDsgaSA8IGNvdW50OyBpKyspCiAgICAgICAgIFttZW51
IGFkZEl0ZW06W21lbnVJdGVtcyBvYmplY3RBdEluZGV4OmldXTsKICAgICByZXR1cm4gbWVudTsK
KyNlbHNlCisgICAgX3ByaXZhdGUtPmhhbmRsaW5nTW91c2VEb3duRXZlbnQgPSBOTzsKKyAgICBy
ZXR1cm4gbmlsOworI2VuZGlmIC8vIEVOQUJMRShDT05URVhUX01FTlVTKQogfQogCiAtIChCT09M
KXNlYXJjaEZvcjooTlNTdHJpbmcgKilzdHJpbmcgZGlyZWN0aW9uOihCT09MKWZvcndhcmQgY2Fz
ZVNlbnNpdGl2ZTooQk9PTCljYXNlRmxhZyB3cmFwOihCT09MKXdyYXBGbGFnCmRpZmYgLS1naXQg
YS9XZWJLaXQvbWFjL1dlYlZpZXcvV2ViVUlEZWxlZ2F0ZVByaXZhdGUuaCBiL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCmluZGV4IGVhZGM3NjEuLjY1YmUwMTkgMTAw
NjQ0Ci0tLSBhL1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCisrKyBi
L1dlYktpdC9tYWMvV2ViVmlldy9XZWJVSURlbGVnYXRlUHJpdmF0ZS5oCkBAIC0xMDcsNyArMTA3
LDkgQEAgZW51bSB7CiAvLyBGSVhNRTogSWYgd2UgZXZlciBtYWtlIHRoaXMgbWV0aG9kIHB1Ymxp
YywgaXQgc2hvdWxkIGluY2x1ZGUgYSBXZWJGcmFtZSBwYXJhbWV0ZXIuCiAtIChCT09MKXdlYlZp
ZXdTaG91bGRJbnRlcnJ1cHRKYXZhU2NyaXB0OihXZWJWaWV3ICopc2VuZGVyOwogLSAodm9pZCl3
ZWJWaWV3OihXZWJWaWV3ICopc2VuZGVyIHdpbGxQb3B1cE1lbnU6KE5TTWVudSAqKW1lbnU7Cisj
aWYgRU5BQkxFX0NPTlRFWFRfTUVOVVMKIC0gKHZvaWQpd2ViVmlldzooV2ViVmlldyAqKXNlbmRl
ciBjb250ZXh0TWVudUl0ZW1TZWxlY3RlZDooTlNNZW51SXRlbSAqKWl0ZW0gZm9yRWxlbWVudDoo
TlNEaWN0aW9uYXJ5ICopZWxlbWVudDsKKyNlbmRpZgogLSAodm9pZCl3ZWJWaWV3OihXZWJWaWV3
ICopc2VuZGVyIHNhdmVGcmFtZVZpZXc6KFdlYkZyYW1lVmlldyAqKWZyYW1lVmlldyBzaG93aW5n
UGFuZWw6KEJPT0wpc2hvd2luZ1BhbmVsOwogCiAvKiEKZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMv
V2ViVmlldy9XZWJWaWV3Lm1tIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KaW5kZXgg
YjdlZGE4ZS4uZTM4NDBlNyAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcu
bW0KKysrIGIvV2ViS2l0L21hYy9XZWJWaWV3L1dlYlZpZXcubW0KQEAgLTYxOSw3ICs2MTksMTIg
QEAgc3RhdGljIGJvb2wgcnVubmluZ1RpZ2VyTWFpbCgpCiAgICAgICAgIGRpZE9uZVRpbWVJbml0
aWFsaXphdGlvbiA9IHRydWU7CiAgICAgfQogCi0gICAgX3ByaXZhdGUtPnBhZ2UgPSBuZXcgUGFn
ZShuZXcgV2ViQ2hyb21lQ2xpZW50KHNlbGYpLCBuZXcgV2ViQ29udGV4dE1lbnVDbGllbnQoc2Vs
ZiksIG5ldyBXZWJFZGl0b3JDbGllbnQoc2VsZiksIG5ldyBXZWJEcmFnQ2xpZW50KHNlbGYpLCBu
ZXcgV2ViSW5zcGVjdG9yQ2xpZW50KHNlbGYpKTsKKyNpZiBFTkFCTEUoQ09OVEVYVF9NRU5VUykK
KyAgICBXZWJDb250ZXh0TWVudUNsaWVudCAqY29udGV4dE1lbnVDbGllbnQgPSBuZXcgV2ViQ29u
dGV4dE1lbnVDbGllbnQoc2VsZik7CisjZWxzZQorICAgIFdlYkNvbnRleHRNZW51Q2xpZW50ICpj
b250ZXh0TWVudUNsaWVudCA9IDA7CisjZW5kaWYKKyAgICBfcHJpdmF0ZS0+cGFnZSA9IG5ldyBQ
YWdlKG5ldyBXZWJDaHJvbWVDbGllbnQoc2VsZiksIGNvbnRleHRNZW51Q2xpZW50LCBuZXcgV2Vi
RWRpdG9yQ2xpZW50KHNlbGYpLCBuZXcgV2ViRHJhZ0NsaWVudChzZWxmKSwgbmV3IFdlYkluc3Bl
Y3RvckNsaWVudChzZWxmKSk7CiAKICAgICBfcHJpdmF0ZS0+cGFnZS0+c2V0dGluZ3MoKS0+c2V0
TG9jYWxTdG9yYWdlRGF0YWJhc2VQYXRoKFtbc2VsZiBwcmVmZXJlbmNlc10gX2xvY2FsU3RvcmFn
ZURhdGFiYXNlUGF0aF0pOwogCkBAIC0xMTI3LDYgKzExMzIsNyBAQCBzdGF0aWMgYm9vbCBmYXN0
RG9jdW1lbnRUZWFyZG93bkVuYWJsZWQoKQogICAgIHJldHVybiBfcHJpdmF0ZS0+cGFnZTsKIH0K
IAorI2lmIEVOQUJMRShDT05URVhUX01FTlVTKQogLSAoTlNNZW51ICopX21lbnVGb3JFbGVtZW50
OihOU0RpY3Rpb25hcnkgKillbGVtZW50IGRlZmF1bHRJdGVtczooTlNBcnJheSAqKWl0ZW1zCiB7
CiAgICAgTlNBcnJheSAqZGVmYXVsdE1lbnVJdGVtcyA9IFtbV2ViRGVmYXVsdFVJRGVsZWdhdGUg
c2hhcmVkVUlEZWxlZ2F0ZV0gd2ViVmlldzpzZWxmIGNvbnRleHRNZW51SXRlbXNGb3JFbGVtZW50
OmVsZW1lbnQgZGVmYXVsdE1lbnVJdGVtczppdGVtc107CkBAIC0xMTQ1LDYgKzExNTEsNyBAQCBz
dGF0aWMgYm9vbCBmYXN0RG9jdW1lbnRUZWFyZG93bkVuYWJsZWQoKQogCiAgICAgcmV0dXJuIFtt
ZW51IGF1dG9yZWxlYXNlXTsKIH0KKyNlbmRpZiAvLyBFTkFCTEUoQ09OVEVYVF9NRU5VUykKIAog
LSAodm9pZClfbW91c2VEaWRNb3ZlT3ZlckVsZW1lbnQ6KE5TRGljdGlvbmFyeSAqKWRpY3Rpb25h
cnkgbW9kaWZpZXJGbGFnczooTlNVSW50ZWdlciltb2RpZmllckZsYWdzCiB7Ci0tIAoxLjYuMy4z
Cgo=
</data>
<flag name="review"
          id="20730"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
    <flag name="commit-queue"
          id="20763"
          type_id="3"
          status="-"
          setter="ddkilzer"
    />
          </attachment>
      

    </bug>

</bugzilla>