<?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>216722</bug_id>
          
          <creation_ts>2020-09-18 19:02:41 -0700</creation_ts>
          <short_desc>WebGL should use GLES in iOS apps running on Apple Silicon</short_desc>
          <delta_ts>2020-10-28 16:36:22 -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>WebGL</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>218303</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Dean Jackson">dino</reporter>
          <assigned_to name="Dean Jackson">dino</assigned_to>
          <cc>annulen</cc>
    
    <cc>darin</cc>
    
    <cc>dino</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>geofflang</cc>
    
    <cc>glenn</cc>
    
    <cc>graouts</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jdarpinian</cc>
    
    <cc>jer.noble</cc>
    
    <cc>jonahr</cc>
    
    <cc>kbr</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philipj</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>sergio</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1690018</commentid>
    <comment_count>0</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-18 19:02:41 -0700</bug_when>
    <thetext>A Catalyst app that was built for iOS may have linked against OpenGLES.framework. Meanwhile, any WebGL content running in there will use whatever WebKit links against, which currently is OpenGL.framework. This confuses the system and crashes.

The solution is to have iOS apps running on Apple Silicon use OpenGLES, rather than OpenGL. But we need more than that - we also need to not statically link either framework.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690019</commentid>
    <comment_count>1</comment_count>
      <attachid>409187</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-18 19:09:02 -0700</bug_when>
    <thetext>Created attachment 409187
WIP

Work in progress patch:

What has been done:
- all the #ifs to have the correct bits compiled on each configuration (the tricky one is Apple Silicon target with the Catalyst variant, which needs both OpenGL and OpenGLES)
- added soft linking of all CGL methods, and removed &quot;-l OpenGL&quot; from the build

What needs to be done (and I&apos;ll do later today):
- add soft linking for EAGL methods (will need more of the Soft Linking macros)
- dynamic selection of DisplayCGL v DisplayEAGL at runtime

What I don&apos;t yet know how to do:
- how to expose GL_BGRA_EXT in formatutils, which is different on GL and GLES. I might have to do a runtime check there as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690063</commentid>
    <comment_count>2</comment_count>
      <attachid>409199</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-19 06:03:13 -0700</bug_when>
    <thetext>Created attachment 409199
WIP2

Not quite. Obviously WebCore needs to make sure it doesn&apos;t link OpenGL. And WebKit does as well.

Uploading a new patch that removes the OpenGL linking up to WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690160</commentid>
    <comment_count>3</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-20 03:35:33 -0700</bug_when>
    <thetext>&lt;rdar://problem/68976337&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690161</commentid>
    <comment_count>4</comment_count>
      <attachid>409231</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-20 03:37:13 -0700</bug_when>
    <thetext>Created attachment 409231
WIP3

This latest patch (WIP3) compiles and runs fine on macOS and Intel Catalyst.

All hard-linking to GL has been removed. It won&apos;t link on iOS yes because I haven&apos;t added the soft-linking glue for GLES.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690162</commentid>
    <comment_count>5</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-20 03:56:44 -0700</bug_when>
    <thetext>I just realised this patch is missing a couple of new files in ANGLE. Here is WIP4, which has a start at the iOS/EAGL linking in ANGLE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690163</commentid>
    <comment_count>6</comment_count>
      <attachid>409232</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-20 03:57:08 -0700</bug_when>
    <thetext>Created attachment 409232
WIP4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690278</commentid>
    <comment_count>7</comment_count>
      <attachid>409268</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-21 04:26:14 -0700</bug_when>
    <thetext>Created attachment 409268
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690279</commentid>
    <comment_count>8</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2020-09-21 04:27:10 -0700</bug_when>
    <thetext>Note that there are important steps to take when updating ANGLE. See https://trac.webkit.org/wiki/UpdatingANGLE</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690357</commentid>
    <comment_count>9</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-21 11:25:20 -0700</bug_when>
    <thetext>I am amazed that EWS is all green on this patch. I&apos;ve had one-line patches that I&apos;m sure would work that broke everything, yet this one somehow managed to pass.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690359</commentid>
    <comment_count>10</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-21 11:25:36 -0700</bug_when>
    <thetext>I think it must be a mistake!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690374</commentid>
    <comment_count>11</comment_count>
      <attachid>409268</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-21 11:57:07 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

Looks fantastic overall - a few questions before approving.

&gt; Source/ThirdParty/ANGLE/src/common/platform.h:120
&gt; +#    define ANGLE_DYLD_PLATFORM_IOS 2

Please add a comment that these are well-known constants which come back from the Apple-specific dyld_get_active_platform(), and must not be changed.

&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt; +    bool isIOSOnMac      = false;

Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?

&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_apple.cpp:17
&gt; +   extern uint32_t dyld_get_active_platform(void);

Could you add a comment about where this extern is defined? Perhaps a documentation URL?

&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_apple.cpp:30
&gt; +#endif

Can these prototypes be moved to headers with appropriate #include guards?

&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_ios.cpp:19
&gt; +#endif

Can this declaration be moved to some header which is common to SystemInfo_apple.cpp and SystemInfo_ios.cpp?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:631
&gt; +        // FIXME: I think this needs to be a runtime check when running an iOS app on Mac.

I&apos;m pretty sure - but not 100% sure - that later patches made the removal of this requirement unnecessary, because lower levels emulate the support for this format on top of either 16- or 24-bit formats. See https://bugs.chromium.org/p/angleproject/issues/detail?id=4591#c13 . Let&apos;s please plan on revisiting this. I&apos;m not 100% sure how to test it - with Unity content and the conformance suite on iOS hardware?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:648
&gt; +        // FIXME: I think this needs to be a runtime check when running an iOS app on Mac.

Same comment here.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp:282
&gt; +                if (info.isIOSOnMac)

This is confusing - why do iOS binaries on Apple Silicon use CGL? Per comments above I thought they were supposed to use EAGL. Is this a bug?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/EAGLFunctions.h:26
&gt; +//SOFT_LINK_FUNCTION_HEADER(OpenGL, CGLChoosePixelFormat, CGLError, (const CGLPixelFormatAttribute *attribs, CGLPixelFormatObj *pix, GLint *npix), (attribs, pix, npix))

Please remove commented-out code.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/EAGLFunctions.mm:23
&gt; +//SOFT_LINK_FUNCTION_SOURCE(OpenGL, CGLChoosePixelFormat, CGLError, (const CGLPixelFormatAttribute *attribs, CGLPixelFormatObj *pix, GLint *npix), (attribs, pix, npix))

Same here.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:-25
&gt; -// TODO(anglebug.com/4275): It&apos;s not clear why this needs to be an EAGLLayer.

Is this clear now? Could you drop a comment on this bug, or reference it in your upstreaming CL to the ANGLE project?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:32
&gt; +- (BOOL)presentRenderbuffer:(NSUInteger)target;

Is this like a forward declaration of something in a system header? Can it be pulled in via some other mechanism rather than declared inline here?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp:1348
&gt; +    if (angle::GetSystemInfo(&amp;info))

Will querying the system info at this point have any side-effects, startup time or otherwise? If it&apos;s been queried before, can it be passed in to this point?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690448</commentid>
    <comment_count>12</comment_count>
      <attachid>409268</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-21 12:51:22 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt; +    bool isIOSOnMac      = false;
&gt; 
&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?

Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690519</commentid>
    <comment_count>13</comment_count>
      <attachid>409268</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-21 14:27:40 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt; 
&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt; 
&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.

Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690520</commentid>
    <comment_count>14</comment_count>
      <attachid>409268</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-21 14:31:25 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt; 
&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt; 
&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt; 
&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?

No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690523</commentid>
    <comment_count>15</comment_count>
      <attachid>409268</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-21 14:41:07 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt; 
&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt; 
&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt; 
&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)

Actually &quot;isiOSAppOnMac&quot; would be better.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690560</commentid>
    <comment_count>16</comment_count>
      <attachid>409268</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-21 15:41:54 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt;&gt; 
&gt;&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt;&gt; 
&gt;&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)
&gt; 
&gt; Actually &quot;isiOSAppOnMac&quot; would be better.

Our public API uses a flag called &quot;iOSAppOnMac&quot; - https://developer.apple.com/documentation/foundation/nsprocessinfo/3608556-iosapponmac

I wonder if I should use that instead. It would avoid the dyld_get_active call (which is private as far as I can tell) as well as the return values (which are private but use #defines so probably can never change). It would mean I&apos;d have to change some files to .mm though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690586</commentid>
    <comment_count>17</comment_count>
      <attachid>409268</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-21 17:00:24 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt;&gt;&gt; 
&gt;&gt;&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)
&gt;&gt; 
&gt;&gt; Actually &quot;isiOSAppOnMac&quot; would be better.
&gt; 
&gt; Our public API uses a flag called &quot;iOSAppOnMac&quot; - https://developer.apple.com/documentation/foundation/nsprocessinfo/3608556-iosapponmac
&gt; 
&gt; I wonder if I should use that instead. It would avoid the dyld_get_active call (which is private as far as I can tell) as well as the return values (which are private but use #defines so probably can never change). It would mean I&apos;d have to change some files to .mm though.

If it&apos;s possible to use the public API - and still have the code work when built against earlier SDK versions, so some sort of weak linkage for that Objective-C property - that would be preferable in ANGLE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1690599</commentid>
    <comment_count>18</comment_count>
      <attachid>409268</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2020-09-21 17:19:28 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)
&gt;&gt;&gt; 
&gt;&gt;&gt; Actually &quot;isiOSAppOnMac&quot; would be better.
&gt;&gt; 
&gt;&gt; Our public API uses a flag called &quot;iOSAppOnMac&quot; - https://developer.apple.com/documentation/foundation/nsprocessinfo/3608556-iosapponmac
&gt;&gt; 
&gt;&gt; I wonder if I should use that instead. It would avoid the dyld_get_active call (which is private as far as I can tell) as well as the return values (which are private but use #defines so probably can never change). It would mean I&apos;d have to change some files to .mm though.
&gt; 
&gt; If it&apos;s possible to use the public API - and still have the code work when built against earlier SDK versions, so some sort of weak linkage for that Objective-C property - that would be preferable in ANGLE.

I assume only one file would have to be .mm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691306</commentid>
    <comment_count>19</comment_count>
      <attachid>409268</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-23 16:13:22 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Actually &quot;isiOSAppOnMac&quot; would be better.
&gt;&gt;&gt; 
&gt;&gt;&gt; Our public API uses a flag called &quot;iOSAppOnMac&quot; - https://developer.apple.com/documentation/foundation/nsprocessinfo/3608556-iosapponmac
&gt;&gt;&gt; 
&gt;&gt;&gt; I wonder if I should use that instead. It would avoid the dyld_get_active call (which is private as far as I can tell) as well as the return values (which are private but use #defines so probably can never change). It would mean I&apos;d have to change some files to .mm though.
&gt;&gt; 
&gt;&gt; If it&apos;s possible to use the public API - and still have the code work when built against earlier SDK versions, so some sort of weak linkage for that Objective-C property - that would be preferable in ANGLE.
&gt; 
&gt; I assume only one file would have to be .mm

The call to the API would be inside a #if block that&apos;s only true on Apple Silicon devices, so shouldn&apos;t need an SDK check or weak linking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691344</commentid>
    <comment_count>20</comment_count>
      <attachid>409268</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-23 18:16:03 -0700</bug_when>
    <thetext>Comment on attachment 409268
Patch

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

&gt;&gt; Source/ThirdParty/ANGLE/src/common/platform.h:120
&gt;&gt; +#    define ANGLE_DYLD_PLATFORM_IOS 2
&gt; 
&gt; Please add a comment that these are well-known constants which come back from the Apple-specific dyld_get_active_platform(), and must not be changed.

Removed in place of public API.

&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo.h:71
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; +    bool isIOSOnMac      = false;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Could you rename this to &quot;isIOSOnAppleSilicon&quot; for clarity?
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; Done exactly like this it would harm clarity, too; OK to mention Apple Silicon but still need to mention Mac. iOS is almost always running on Apple Silicon when running on iPhone and iPad.
&gt;&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt;&gt; Fair enough - would &quot;isIOSonAppleSiliconMac&quot; be too wordy?
&gt;&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt;&gt; No, &quot;isIOSOnAppleSiliconMac&quot; seems fine. (Note that the terminology is wrong, because Apple doesn’t call these frameworks running on a Mac &quot;iOS&quot;.)
&gt;&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt;&gt; Actually &quot;isiOSAppOnMac&quot; would be better.
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; Our public API uses a flag called &quot;iOSAppOnMac&quot; - https://developer.apple.com/documentation/foundation/nsprocessinfo/3608556-iosapponmac
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; I wonder if I should use that instead. It would avoid the dyld_get_active call (which is private as far as I can tell) as well as the return values (which are private but use #defines so probably can never change). It would mean I&apos;d have to change some files to .mm though.
&gt;&gt;&gt; 
&gt;&gt;&gt; If it&apos;s possible to use the public API - and still have the code work when built against earlier SDK versions, so some sort of weak linkage for that Objective-C property - that would be preferable in ANGLE.
&gt;&gt; 
&gt;&gt; I assume only one file would have to be .mm
&gt; 
&gt; The call to the API would be inside a #if block that&apos;s only true on Apple Silicon devices, so shouldn&apos;t need an SDK check or weak linking.

I settled on mirroring the public API: isiOSAppOnMac

&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_apple.cpp:17
&gt;&gt; +   extern uint32_t dyld_get_active_platform(void);
&gt; 
&gt; Could you add a comment about where this extern is defined? Perhaps a documentation URL?

Removed.

&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_apple.cpp:30
&gt;&gt; +#endif
&gt; 
&gt; Can these prototypes be moved to headers with appropriate #include guards?

Is this necessary? They are only called from this file - the entry point is GetSystemInfo. I even considered that they both should be inline here.

I moved them into SystemInfo_internal.h.

&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_apple.cpp:35
&gt; +    if (dyld_get_active_platform() == ANGLE_DYLD_PLATFORM_IOS)

This was replaced.

&gt;&gt; Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_ios.cpp:19
&gt;&gt; +#endif
&gt; 
&gt; Can this declaration be moved to some header which is common to SystemInfo_apple.cpp and SystemInfo_ios.cpp?

Removed.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:631
&gt;&gt; +        // FIXME: I think this needs to be a runtime check when running an iOS app on Mac.
&gt; 
&gt; I&apos;m pretty sure - but not 100% sure - that later patches made the removal of this requirement unnecessary, because lower levels emulate the support for this format on top of either 16- or 24-bit formats. See https://bugs.chromium.org/p/angleproject/issues/detail?id=4591#c13 . Let&apos;s please plan on revisiting this. I&apos;m not 100% sure how to test it - with Unity content and the conformance suite on iOS hardware?

Great news. I&apos;ll check this separately but leave the FIXME in this patch.

I am working on getting an agreement from Unity to allow a compiled version of their Tiny3D renderer in the WebKit test suite.

As for hardware testing... that&apos;s still impossible without Apple internal bits.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp:282
&gt;&gt; +                if (info.isIOSOnMac)
&gt; 
&gt; This is confusing - why do iOS binaries on Apple Silicon use CGL? Per comments above I thought they were supposed to use EAGL. Is this a bug?

It is confusing!!

There are two types of binaries on Apple Silicon inside Catalyst: ones that were compiled against the Catalyst SDK (where only OpenGL is available) and ones that were compiled against the iOS SDK (where only OpenGLES is available - those are the iOS apps on macOS). The former should use CGL and the latter should use EAGL. We have to check this at runtime because there is only a single WebKit binary for both. WebGL content worked fine using OpenGL with the iOS Apps, but there was breakage if the app itself linked to OpenGLES (we can&apos;t have both frameworks loaded at once).

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:42
&gt; +@implementation WebSwapLayerCGL

I noted in the ChangeLog that I had to rename these because there is a configuration that compiled both the WindowSurfaceCGL and WindowSurfaceEAGL files.

I&apos;m not sure if any of this code actually works. It isn&apos;t used by WebKit.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:-30
&gt; -#    define GLES_SILENCE_DEPRECATION

I forgot to mention in the ChangeLog that I moved this into the .xcconfig file.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/EAGLFunctions.h:26
&gt;&gt; +//SOFT_LINK_FUNCTION_HEADER(OpenGL, CGLChoosePixelFormat, CGLError, (const CGLPixelFormatAttribute *attribs, CGLPixelFormatObj *pix, GLint *npix), (attribs, pix, npix))
&gt; 
&gt; Please remove commented-out code.

Oops!

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/EAGLFunctions.mm:23
&gt;&gt; +//SOFT_LINK_FUNCTION_SOURCE(OpenGL, CGLChoosePixelFormat, CGLError, (const CGLPixelFormatAttribute *attribs, CGLPixelFormatObj *pix, GLint *npix), (attribs, pix, npix))
&gt; 
&gt; Same here.

Oops!

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:-25
&gt;&gt; -// TODO(anglebug.com/4275): It&apos;s not clear why this needs to be an EAGLLayer.
&gt; 
&gt; Is this clear now? Could you drop a comment on this bug, or reference it in your upstreaming CL to the ANGLE project?

This code isn&apos;t used by WebKit so I haven&apos;t confirmed anything. I guess it is part of the EGL interface that we don&apos;t use because we provide the framebuffers and compositing externally, whereas this is for a native window showing in an app.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:32
&gt;&gt; +- (BOOL)presentRenderbuffer:(NSUInteger)target;
&gt; 
&gt; Is this like a forward declaration of something in a system header? Can it be pulled in via some other mechanism rather than declared inline here?

Hmmm... good question. There was a reason I did this, related to me removing the OpenGL/EAGL.h include.

Ok, I checked. I can remove the EAGLContext one, but the CAEAGLLayer has to remain due to a quirk in our SDKs. The QuartzCore headers on Mac Catalyst don&apos;t define that class (OpenGL is not available in that configuration, and definitely not OpenGLES).

I have a slight fear that this could cause problems for ANGLE clients outside of WebKit. If they submit to the App Store, they might get flagged as using SPI. But this would be the case anyway for Catalyst apps. Definitely worth investigating.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/renderergl_utils.cpp:1348
&gt;&gt; +    if (angle::GetSystemInfo(&amp;info))
&gt; 
&gt; Will querying the system info at this point have any side-effects, startup time or otherwise? If it&apos;s been queried before, can it be passed in to this point?

I wondered that but found a bunch of other places in ANGLE where it is fetching the SystemInfo on demand. I think I&apos;ll file an ANGLE bug suggesting a global SystemInfo be kept somewhere to avoid this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691345</commentid>
    <comment_count>21</comment_count>
      <attachid>409520</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-23 18:20:23 -0700</bug_when>
    <thetext>Created attachment 409520
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691367</commentid>
    <comment_count>22</comment_count>
      <attachid>409520</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-23 19:58:32 -0700</bug_when>
    <thetext>Comment on attachment 409520
Patch

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

One initial comment / question.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp:284
&gt; +                    impl = new rx::DisplayCGL(state);

I&apos;m still confused about the sense of the &quot;isiOSAppOnMac&quot; flag. The ChangeLog says:

            Apple Silicon Mac Catalyst (with Mac app) -&gt; CGL
            Apple Silicon Mac Catalyst (with iOS app) -&gt; EAGL

Isn&apos;t &quot;isiOSAppOnMac&quot; the &quot;Apple Silicon Mac Catalyst (with iOS app)&quot; case? And if that&apos;s so, then why is this arm using DisplayCGL rather than DisplayEAGL?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691440</commentid>
    <comment_count>23</comment_count>
      <attachid>409520</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 02:43:40 -0700</bug_when>
    <thetext>Comment on attachment 409520
Patch

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

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/Display.cpp:284
&gt;&gt; +                    impl = new rx::DisplayCGL(state);
&gt; 
&gt; I&apos;m still confused about the sense of the &quot;isiOSAppOnMac&quot; flag. The ChangeLog says:
&gt; 
&gt;             Apple Silicon Mac Catalyst (with Mac app) -&gt; CGL
&gt;             Apple Silicon Mac Catalyst (with iOS app) -&gt; EAGL
&gt; 
&gt; Isn&apos;t &quot;isiOSAppOnMac&quot; the &quot;Apple Silicon Mac Catalyst (with iOS app)&quot; case? And if that&apos;s so, then why is this arm using DisplayCGL rather than DisplayEAGL?

You&apos;re right. This patch has them the wrong way around.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691441</commentid>
    <comment_count>24</comment_count>
      <attachid>409547</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 02:44:35 -0700</bug_when>
    <thetext>Created attachment 409547
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691658</commentid>
    <comment_count>25</comment_count>
      <attachid>409547</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-24 13:43:14 -0700</bug_when>
    <thetext>Comment on attachment 409547
Patch

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

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:73
&gt; +    mContext = [[getEAGLContextClass() alloc] initWithAPI:kEAGLRenderingAPIOpenGLES3];

usually want allocEAGLContextInstance() or you&apos;ll get mysterious ambiguous selector warnings years down the road

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:355
&gt; +    context                = [[getEAGLContextClass() alloc] initWithAPI:kEAGLRenderingAPIOpenGLES3];

here too</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691663</commentid>
    <comment_count>26</comment_count>
      <attachid>409547</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 14:06:59 -0700</bug_when>
    <thetext>Comment on attachment 409547
Patch

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

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:73
&gt;&gt; +    mContext = [[getEAGLContextClass() alloc] initWithAPI:kEAGLRenderingAPIOpenGLES3];
&gt; 
&gt; usually want allocEAGLContextInstance() or you&apos;ll get mysterious ambiguous selector warnings years down the road

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691722</commentid>
    <comment_count>27</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-24 17:16:17 -0700</bug_when>
    <thetext>Can I please review this too before committing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691725</commentid>
    <comment_count>28</comment_count>
      <attachid>409640</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 17:17:49 -0700</bug_when>
    <thetext>Created attachment 409640
EWS test</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691726</commentid>
    <comment_count>29</comment_count>
      <attachid>409547</attachid>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2020-09-24 17:21:38 -0700</bug_when>
    <thetext>Comment on attachment 409547
Patch

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

Looks good to me too. Would like to upstream the ANGLE changes as soon as possible after this lands.

&gt; Source/ThirdParty/ANGLE/ChangeLog:20
&gt; +        application is it attempting to run. In that case ANGLE must compile

&quot;on the application is it&quot; -&gt; &quot;on the type of the application it is&quot;?

&gt; Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:631
&gt; +        // FIXME: I think this needs to be a runtime check when running an iOS app on Mac.

Could you perhaps make this &quot;TODO(dino)&quot; instead of FIXME? Here and below. TODO is Chromium&apos;s preferred style.

&gt; Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp:1038
&gt; +        if (!info.isiOSAppOnMac)

Would this read more nicely if it were the positive rather than the negative? &quot;if (info.isiOSAppOnMac) ...&quot;

&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:27
&gt; +// FIXME: Necessary because CAEAGLLayer is not in the public QuartzCore headers in this configuration.

Could you mention any pitfalls about SPI and embedding ANGLE in iOS apps here?

Also: would you mind using TODO(dino) or TODO(dino@apple.com)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691731</commentid>
    <comment_count>30</comment_count>
      <attachid>409643</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 17:45:26 -0700</bug_when>
    <thetext>Created attachment 409643
EWS test 2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1691742</commentid>
    <comment_count>31</comment_count>
      <attachid>409547</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-24 18:31:07 -0700</bug_when>
    <thetext>Comment on attachment 409547
Patch

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

&gt;&gt; Source/ThirdParty/ANGLE/ChangeLog:20
&gt;&gt; +        application is it attempting to run. In that case ANGLE must compile
&gt; 
&gt; &quot;on the application is it&quot; -&gt; &quot;on the type of the application it is&quot;?

Fixed!

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/Caps.cpp:631
&gt;&gt; +        // FIXME: I think this needs to be a runtime check when running an iOS app on Mac.
&gt; 
&gt; Could you perhaps make this &quot;TODO(dino)&quot; instead of FIXME? Here and below. TODO is Chromium&apos;s preferred style.

Sure thing. Fixed through the entire patch.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/formatutils.cpp:1038
&gt;&gt; +        if (!info.isiOSAppOnMac)
&gt; 
&gt; Would this read more nicely if it were the positive rather than the negative? &quot;if (info.isiOSAppOnMac) ...&quot;

Agreed. Fixed.

&gt;&gt; Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:27
&gt;&gt; +// FIXME: Necessary because CAEAGLLayer is not in the public QuartzCore headers in this configuration.
&gt; 
&gt; Could you mention any pitfalls about SPI and embedding ANGLE in iOS apps here?
&gt; 
&gt; Also: would you mind using TODO(dino) or TODO(dino@apple.com)?

Fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1692073</commentid>
    <comment_count>32</comment_count>
    <who name="Dean Jackson">dino</who>
    <bug_when>2020-09-25 15:54:14 -0700</bug_when>
    <thetext>Committed r267602: &lt;https://trac.webkit.org/changeset/267602&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409187</attachid>
            <date>2020-09-18 19:09:02 -0700</date>
            <delta_ts>2020-09-20 03:37:13 -0700</delta_ts>
            <desc>WIP</desc>
            <filename>ios-catalyst.patch</filename>
            <type>text/plain</type>
            <size>33900</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGU4ZTY5MGRkZDY1Ni4uZTllNTBiOWYyNTcxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE1MCw2ICsxNTAsMTIgQEAKIAkJMzE1RUJFMjQxRkNFNDYyQTAwQUM3QTg5IC8q
IHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLzsg
fTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNUVCRTI2MUZDRjgwOEMwMEFD
N0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVCRTI5MUZDRjgwOEMwMEFDN0E4OSAv
KiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi87IH07CisJCTMxNjQ3
RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhG
QiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLzsgfTsKKwkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9f
YXBwbGUuY3BwICovOyB9OworCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0
N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07CisJCTMxNjQ3RkE1
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKKwkJMzE2
NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKIAkJMzFBMzMxQzIxRUE1RUQyNTAwRkQyMjAzIC8q
IGJpdHNldF91dGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFBMzMxQzAxRUE1RUQyNTAwRkQyMjAzIC8qIGJpdHNldF91dGlscy5oICovOyB9Owog
CQkzMUEzMzFDNjFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMzFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgKi87IH07CiAJCTMxQTMzMUM3MUVBNUVE
NUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUM0MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRp
bHMuaCAqLzsgfTsKQEAgLTE1NDcsNiArMTU1Myw3IEBACiAvKiBFbmQgUEJYQ29weUZpbGVzQnVp
bGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAq
LworCQkwRjg1REEyRjI1MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU29mdExpbmtpbmdfYXBwbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMzEwMTJEQTAxOEI5N0I5QjAwMzkwNjJGIC8qIEJhc2VUeXBlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCYXNlVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzEwMTJEQTExOEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxh
dG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1aWx0SW5GdW5j
dGlvbkVtdWxhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEwMTJEQTIx
OEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjgxLDYgKzE2ODgsOSBAQAogCQkzMTVFQkUyMDFGQ0U0
NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbUluZm9fYXBwbGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTMxQTMzMUMwMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gYml0c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNf
bWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGls
c19tYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IHN5c3RlbV91dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjk3Miw2
ICsyOTgyLDcgQEAKIAkJCQk1Q0IzMDExMTFERTM5RjFBMDBEMkM0MDUgLyogVHJhbnNmb3JtRmVl
ZGJhY2tHTC5oICovLAogCQkJCTVDQjMwMTEyMURFMzlGMUEwMEQyQzQwNSAvKiBWZXJ0ZXhBcnJh
eUdMLmNwcCAqLywKIAkJCQk1Q0IzMDExMzFERTM5RjFBMDBEMkM0MDUgLyogVmVydGV4QXJyYXlH
TC5oICovLAorCQkJCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0TGlua2luZ19hcHBs
ZS5oICovLAogCQkJKTsKIAkJCXBhdGggPSBnbDsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CkBAIC0yOTc5LDYgKzI5OTAsOCBAQAogCQk1Q0IzMDE0ODFERTM5RjM2MDBEMkM0MDUgLyogY2ds
ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkzMTY0N0ZB
MjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi8sCisJCQkJMzE2NDdGQTMyNTE1
OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgKi8sCiAJCQkJNUNDRDU5NzIyMjg0RkE4
MjAwMThGMkQ4IC8qIENvbnRleHRDR0wuY3BwICovLAogCQkJCTVDQ0Q1OTc1MjI4NEZBODIwMDE4
RjJEOCAvKiBDb250ZXh0Q0dMLmggKi8sCiAJCQkJNkUzMUEwQTEyMzRFRUVENDAwQzg0Nzg0IC8q
IERldmljZUNHTC5jcHAgKi8sCkBAIC0zMjEwLDYgKzMyMjMsNyBAQAogCQkJCTVDQ0Q1OTk5MjI4
NEZDNzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvLmggKi8sCiAJCQkJMzFCMTU3MjEyMzZCODAzMzAw
Q0FBNEZEIC8qIFN5c3RlbUluZm9faW50ZXJuYWwuaCAqLywKIAkJCQkzMUIxNTcxRjIzNkI3RkFF
MDBDQUE0RkQgLyogU3lzdGVtSW5mb19pb3MuY3BwICovLAorCQkJCTMxNjQ3RjlFMjUxMUExQTYw
MDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1
MDAxOEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSAqLywKIAkJCSk7CiAJCQluYW1lID0gZ3B1
aW5mb3V0aWw7CkBAIC0zNDIxLDYgKzM0MzUsNyBAQAogCQkJCTMxQ0RGRjVCMjQ5MTg0OEMwMDQ4
NkYyNyAvKiBDb2xvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGRTQyNDkxODRBNzAwNDg2
RjI3IC8qIENvbW1vbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDRDAwNkMyNDkxODRGQzAwNDg2
RjI3IC8qIENvbXBpbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTY0N0ZBNTI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkZFNzI0OTE4
NEE3MDA0ODZGMjcgLyogQ29tcGlsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDE1MjQ5
MTg0RTcwMDQ4NkYyNyAvKiBDb21waWxlckdMLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDAz
RjI0OTE4NEY0MDA0ODZGMjcgLyogQ29tcGlsZXJJbXBsLmggaW4gSGVhZGVycyAqLywKQEAgLTM4
MjYsNiArMzg0MSw3IEBACiAJCQkJNUNDRDgxOEUxREJGRUExMDAwNjA2NkI4IC8qIENvbG9yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTAxMkUxNjE4Qjk3QjlCMDAzOTA2MkYgLyogQ29tbW9uLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkRERDFCMDQzOEQzMDAyMzU1NTIgLyogQ29tcGlsZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5j
dGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMURCQzJDMUIwNDM3NUYwMDIzNTU1MiAvKiBD
b21waWxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNCMzAxMUIxREUzOUYxQTAwRDJDNDA1IC8q
IENvbXBpbGVyR0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNERDMURFNDE2NDgwMEQyQzQw
NSAvKiBDb21waWxlckltcGwuaCBpbiBIZWFkZXJzICovLApAQCAtNDQzMyw2ICs0NDQ5LDcgQEAK
IAkJCQkzMUNERkU5NTI0OTE4NDNBMDA0ODZGMjcgLyogSXNBU1REZXB0aEJlbG93TGltaXQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFMzAyNDkxODQyODAwNDg2RjI3IC8qIExleGVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRURDMjQ5MTg0NTgwMDQ4NkYyNyAvKiBsb2FkX2Z1
bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkEwMjUx
MUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRUIyMjQ5MTg0NDIwMDQ4NkYyNyAvKiBsb2FkaW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMzFDREZFQjQyNDkxODQ0MjAwNDg2RjI3IC8qIGxvYWRpbWFnZV9ldGMuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMzFDREZGMUYyNDkxODQ1RjAwNDg2RjI3IC8qIExvZ2dpbmdBbm5vdGF0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NDQxLDYgKzQ0NTgsNyBAQAogCQkJCTMxQ0RGRTE5
MjQ5MTg0MjMwMDQ4NkYyNyAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNE
RkUxQTI0OTE4NDIzMDA0ODZGMjcgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxQ0RGRTFCMjQ5MTg0MjMwMDQ4NkYyNyAvKiBNZW1vcnlCdWZmZXIuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJMzE2NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVFQTI0OTE4NDVGMDA0ODZGMjcgLyogTWVtb3J5T2Jq
ZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUQyMjQ5MTg0NTMwMDQ4NkYyNyAvKiBN
ZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYwRTI0OTE4NDVGMDA0
ODZGMjcgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDc2Niw2
ICs0Nzg0LDcgQEAKIAkJCQkzMTVFQkQ5QzFGQ0U0NDM2MDBBQzdBODkgLyogSXNBU1REZXB0aEJl
bG93TGltaXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTI2NEY4QjYxNjk3NERFRDAwNkZBQTVB
IC8qIExleGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQjMwNEVGMURFNDE2NDgwMEQyQzQw
NSAvKiBsb2FkX2Z1bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTMxNjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDQ0Q1OTk1MjI4NEZDNDAwMDE4RjJEOCAvKiBsb2FkaW1hZ2UuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNDRDU5OTIyMjg0RkM0MDAwMThGMkQ4IC8qIGxvYWRpbWFnZV9l
dGMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE1RUJERTgxRkNFNDUyRDAwQUM3QTg5IC8qIExv
Z2dpbmdBbm5vdGF0b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00Nzc0LDYgKzQ3OTMsNyBAQAog
CQkJCTVDQzdENDcyMTkxMDI2MjEwMDBCOEMxRiAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1QzU1RDcyNTIyODI3NDc3MDBCNUJBMkMgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTVDMURCQkYxMUIwNDM2RUMwMDIzNTU1MiAvKiBNZW1vcnlCdWZmZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1
bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk2NDIyODRGNzk2MDAxOEYyRDgg
LyogTWVtb3J5T2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUEzMDMwNzhCMjMwNUY4RjAw
MDJEQTk3MiAvKiBNZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTVFQkRG
MzFGQ0U0NTJEMDBBQzdBODkgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRp
b25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5kZXggMzE1ODJiOTIyYmRmLi45MDdjNGEyYjE1
NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FO
R0xFLWR5bmFtaWMueGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmln
dXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZwpAQCAtMTEsNyArMTEsNyBAQCBBTkdMRV9P
VEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2
c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3Jr
IE9wZW5HTCAtbHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29y
ayBJT0tpdCAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9L
aXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKE5PUk1BTF9XRUJD
T1JFX0ZSQU1FV09SS1NfRElSKS9XZWJDb3JlLmZyYW1ld29yay9GcmFtZXdvcmtzOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGlj
LnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUt
c3RhdGljLnhjY29uZmlnCmluZGV4IDRkMWQyMjExOTM1YS4uMThkMmI0M2ZiNjVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMu
eGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtc3RhdGljLnhjY29uZmlnCkBAIC0xMSw3ICsxMSw3IEBAIEFOR0xFX09USEVSX0xERkxBR1Nf
d2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9M
REZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVs
YXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAk
KEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxB
R1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1m
cmFtZXdvcmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAt
ZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKIEFOR0xFX09USEVSX0xE
RkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIE9wZW5HTCAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRI
X1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpp
bmRleCAwNGZiZTllZmU3YzkuLjRmYmRiY2I4Y2UyMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dM
RVN2Mi5jbWFrZQpAQCAtMTY3LDcgKzE2Nyw5IEBAIHNldChsaWJhbmdsZV9ncHVfaW5mb191dGls
X2xpYnBjaV9zb3VyY2VzCiBzZXQobGliYW5nbGVfZ3B1X2luZm9fdXRpbF94MTFfc291cmNlcyAi
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb194MTEuY3BwIiApCiAKIAotc2V0KGxpYmFuZ2xl
X2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW0iICkKK3NldChsaWJhbmdsZV9ncHVfaW5mb191dGlsX21hY19zb3VyY2VzCisgICAg
InNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUubW0iCisgICAgInNyYy9ncHVfaW5m
b191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkKIAogCiBzZXQobGliYW5nbGVfaW5jbHVkZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0u
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaAppbmRleCAw
NDE2ZWQyMDFkNTkuLjlkMjUzMzQ4NDg2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTI4LDYgKzEyOCwxMSBAQAogIyAgICAgICAgICAg
IGRlZmluZSBBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYKICMgICAg
ZW5kaWYKKyMgICAgLy8gVGhpcyBtaWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21l
bnQgaXQgaXMgdXNlZAorIyAgICAvLyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIElu
dGVsIGFuZCBBcHBsZSBTaWxpY29uLgorIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVm
aW5lZChfX2FhcmNoNjRfXykKKyMgICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQKKyMgICAg
ZW5kaWYKICNlbmRpZgogCiAvLyBEZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mb19pb3MuY3BwCmluZGV4IGMwZDQzNmY1NjE4Yy4uYmQyMjE5NzA2MmU4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZv
X2lvcy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwv
U3lzdGVtSW5mb19pb3MuY3BwCkBAIC04LDE0ICs4LDE0IEBACiAKICNpbmNsdWRlICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X0lPUykgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3RlbUlu
Zm9faW50ZXJuYWwuaCIKIAogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKLWJvb2wgR2V0U3lzdGVtSW5m
byhTeXN0ZW1JbmZvICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvX2lvcyhTeXN0ZW1JbmZvICpp
bmZvKQogewogICAgIHsKICAgICAgICAgLy8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEdldCB0
aGUgYWN0dWFsIHN5c3RlbSB2ZXJzaW9uLgpAQCAtMjcsNCArMjcsNCBAQCBib29sIEdldFN5c3Rl
bUluZm8oU3lzdGVtSW5mbyAqaW5mbykKIAogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCiAKLSNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
fHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVf
Q1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCmluZGV4IGE4ZWQ3YWYyNmY0Mi4u
MmFiOTJmYzc2NGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1
X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0KQEAgLTE1LDYgKzE1LDgg
QEAKICMgICAgaW1wb3J0IDxDb2NvYS9Db2NvYS5oPgogIyAgICBpbXBvcnQgPElPS2l0L0lPS2l0
TGliLmg+CiAKKyMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0
aW9ucy5oIgorCiBuYW1lc3BhY2UgYW5nbGUKIHsKIApAQCAtMjA4LDcgKzIxMCw3IEBAIHVpbnQ2
NF90IEdldEdwdUlERnJvbU9wZW5HTERpc3BsYXlNYXNrKHVpbnQzMl90IGRpc3BsYXlNYXNrKQog
ICAgIHJldHVybiAwOwogfQogCi1ib29sIEdldFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykK
K2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lzdGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAg
ICAgIGludDMyX3QgbWFqb3IgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL0Rpc3BsYXkuY3BwCmluZGV4IGUzZWJlMzI1ZGFhMi4uZmZmNjhkNjM1MDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3Bw
CkBAIC01Myw2ICs1Myw5IEBACiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9n
bC93Z2wvRGlzcGxheVdHTC5oIgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
T1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAjICAgICAgICBpbmNs
dWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5oIgorIyAgICAgICAgaWYg
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVf
QVJNNjQpCisjICAgICAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
aXNwbGF5RUFHTC5oIgorIyAgICAgICAgZW5kaWYKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykKICMgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
RGlzcGxheUVBR0wuaCIKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJTlVYKQpA
QCAtMjYwLDggKzI2MywyOCBAQCByeDo6RGlzcGxheUltcGwgKkNyZWF0ZURpc3BsYXlGcm9tQXR0
cmlicyhFR0xBdHRyaWIgZGlzcGxheVR5cGUsCiAjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfT1BF
TkdMKQogIyAgICBpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX1dJTkRPV1MpCiAgICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5V0dMKHN0YXRlKTsKLSMgICAgZWxpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KQorICAgICAgICAgICAgYnJlYWs7CisKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ09TKQogICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7Cisg
ICAgICAgICAgICBicmVhazsKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKQorIyAgICAgICAgaWYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisjICAgICAgICAg
ICAvLyBGSVhNRTogRGVjaWRlIGF0IHJ1bnRpbWUKKyAgICAgICAgICAgIGlmICgoMCkpIC8vIHJ1
bm5pbmcgaU9TIHN0dWZmCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaW1wbCA9IG5l
dyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUpOworICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgfQorIyAgICAgICAgZWxzZQorICAgICAgICAgICAgaW1wbCA9IG5ldyBy
eDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICBicmVhazsKKyMgICAgICAgIGVuZGlm
CiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCiAgICAgICAgICAgICBpbXBs
ID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9MSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9mb3JtYXR1dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvZm9ybWF0dXRpbHMuY3BwCmluZGV4IGU0MzQ5NmZjMzQ3MS4uMmQzZmU0MWUwMTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRp
bHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1
dGlscy5jcHAKQEAgLTEwMzAsNyArMTAzMCw4IEBAIHN0YXRpYyBJbnRlcm5hbEZvcm1hdEluZm9N
YXAgQnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXAoKQogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwg
R0xfUkdCQSwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfUkdCQSwgICAg
ICAgICAgIEdMX0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgR0xfU0lHTkVEX05PUk1BTEla
RUQsICAgZmFsc2UsIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgTmV2ZXJTdXBwb3J0ZWQsICBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAgIEFkZFJH
QkFGb3JtYXQoJm1hcCwgR0xfU1JHQiwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgMCwg
MCwgR0xfU1JHQiwgICAgICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xf
VU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnNSR0I+
LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0
ZWQpOwogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQl9BTFBIQV9FWFQsIGZhbHNlLCAg
OCwgIDgsICA4LCAgOCwgMCwgR0xfU1JHQl9BTFBIQV9FWFQsIEdMX1VOU0lHTkVEX0JZVEUsICAg
ICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4
dGVuc2lvbnM6OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1
aXJlRXh0PCZFeHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRl
ZCwgTmV2ZXJTdXBwb3J0ZWQpOwotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykKKyAgICAvLyBJIHRoaW5rIHRoaXMgbmVlZHMgYSBydW50aW1lIGNoZWNrIHRv
by4KICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBmYWxzZSwgIDgs
ICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAg
ICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJlRVM8MiwgMD4s
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWly
ZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQs
IE5ldmVyU3VwcG9ydGVkKTsKICNlbHNlCiAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JB
X0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAg
R0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBm
YWxzZSwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgICBB
bHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JB
ODg4OD4sIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0
aW9ucy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwLi4zODg1OTA2M2QxMTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKQEAg
LTAsMCArMSwzMiBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBh
IEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLy8KKworLy8gQ0dMRnVuY3Rpb25zLmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2Vk
IENHTCBpbnRlcmZhY2UuCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKyNpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKKyNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0FQUExFKQorCitTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShPcGVu
R0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZv
cm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywg
Q0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4
KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBD
R0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dM
Q29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhl
bEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0
dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9y
LCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0Uo
T3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRXJy
b3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVycm9yKSkKK1NPRlRf
TElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4dCwgdm9pZCwgKENH
TENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5H
TCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAo
Y3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2Ny
ZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBz
Y3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFRleEltYWdlSU9T
dXJmYWNlMkQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51bSB0YXJnZXQsIEdM
ZW51bSBpbnRlcm5hbF9mb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBHTGVu
dW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFjZSwgR0x1aW50IHBs
YW5lKSwgKGN0eCwgdGFyZ2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1h
dCwgdHlwZSwgaW9TdXJmYWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChj
dHgpKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5k
ZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0s
IENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVt
LCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVz
dHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChy
ZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVy
SW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmog
KnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKKworI2Vu
ZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9u
cy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Nn
bC9DR0xGdW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu
LmE2ZDgzZDhhMmEwMQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgKQEAgLTAsMCArMSw0
MCBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHls
ZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8K
KworLy8gU29mdExpbmtpbmdfYXBwbGUuY3BwOiBNYWNyb3MgZm9yIHNvZnQtbGlua2luZyBGcmFt
ZXdvcmtzIGFuZCBGdW5jdGlvbnMuCisKKyNpZm5kZWYgQ0dMX0ZVTkNUSU9OU19IXworI2RlZmlu
ZSBDR0xfRlVOQ1RJT05TX0hfCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKworI2lm
IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyNpbmNsdWRlIDxPcGVuR0wvT3BlbkdM
Lmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5o
IgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hFQURFUihPcGVuR0wpCisKK1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25z
dCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBp
eCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElP
Tl9IRUFERVIoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9y
bWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBp
eCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVz
Y3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50
IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwg
KHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVS
KE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgp
LCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95UGl4
ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRXJyb3JTdHJpbmcsIGNvbnN0IGNoYXIg
KiwgKENHTEVycm9yIGVycm9yKSwgKGVycm9yKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIo
T3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0
eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRl
eHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENv
bnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgsIEdMZW51bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9mb3JtYXQs
IEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVudW0gdHlw
ZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFjZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFyZ2V0LCBp
bnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJmYWNlLCBw
bGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4
dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorCitTT0ZUX0xJTktfRlVO
Q1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xS
ZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkg
cHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dM
RXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVp
bnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCks
IChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKKworI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fQVBQTEUpCisKKyNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rp
c3BsYXlDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KaW5kZXggNzlhMTFkNGQyOThhLi5lN2NjMmJhMmZhNjMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvRGlzcGxheUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KQEAgLTI4LDYgKzI4LDggQEAK
ICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wu
aCIKICMgICAgaW5jbHVkZSAicGxhdGZvcm0vUGxhdGZvcm1NZXRob2RzLmgiCiAKKyMgICAgaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3Bh
Y2UKIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcCBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNH
TC5jcHAKaW5kZXggYWZkY2E0ZjJlZjk2Li44ZWQ0MzkxZTAzMGQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNl
U3VyZmFjZUNHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcApAQCAtMjcsNiArMjcsOCBA
QAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9UZXh0dXJlR0wuaCIKICMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKIAorIyAgICBp
bmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKIG5hbWVz
cGFjZSByeAogewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0gYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wu
bW0KaW5kZXggMGZhNTdiZTQzYjc3Li4xYTEyNjlkOWQxODcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFj
ZUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KQEAgLTIzLDYgKzIzLDggQEAKICMgICAgaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuaCIKICMgICAgaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKIAorIyAgICBpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKIEBpbnRlcmZhY2Ug
V2ViU3dhcExheWVyIDogQ0FPcGVuR0xMYXllciB7CiAgICAgQ0dMQ29udGV4dE9iaiBtRGlzcGxh
eUNvbnRleHQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5jcHAKaW5kZXgg
YTk4MzQ2MTkyNDBjLi42NDE5N2ZmZWZkNTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rl
dmljZUVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0u
aCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYm
ICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAg
ICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaCIKIApAQCAt
NTYsNCArNTYsNCBAQCB2b2lkIERldmljZUVBR0w6OmdlbmVyYXRlRXh0ZW5zaW9ucyhlZ2w6OkRl
dmljZUV4dGVuc2lvbnMgKm91dEV4dGVuc2lvbnMpIGNvbnN0CiAKIH0gIC8vIG5hbWVzcGFjZSBy
eAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9B
Uk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgKaW5kZXggNTc2OTY5MjFl
ZjNiLi45M2FiZmZjMDI4NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaAorKysgYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgK
QEAgLTExLDcgKzExLDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNpbmNsdWRlICJsaWJB
TkdMRS9EZXZpY2UuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9EZXZpY2VJbXBsLmgi
CkBAIC0zNCw2ICszNCw2IEBAIGNsYXNzIERldmljZUVBR0wgOiBwdWJsaWMgRGV2aWNlSW1wbAog
CiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8v
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjZW5kaWYgIC8vIExJQkFOR0xFX1JFTkRFUkVS
X0dMX0VBR0xfREVWSUNFRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdM
LmgKaW5kZXggMjYxYmE0MDdkMTkzLi5hNTM2NmU5MTZlOWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdM
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvRGlzcGxheUVBR0wuaApAQCAtMTEsNyArMTEsNyBAQAogCiAjaW1wb3J0ICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0
KSkKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL0Rpc3BsYXlHTC5oIgogCkBAIC05
Nyw2ICs5Nyw2IEBAIGNsYXNzIERpc3BsYXlFQUdMIDogcHVibGljIERpc3BsYXlHTAogCiB9ICAv
LyBuYW1lc3BhY2UgcngKIAotI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAm
JiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAvLyAoZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlmICAvLyBMSUJBTkdMRV9SRU5ERVJFUl9HTF9FQUdM
X0RJU1BMQVlFQUdMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbSBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tCmlu
ZGV4IGNlYjJkMTFmYzc5OS4uZTgwNDgzNjM3ZTVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbQor
KysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9EaXNwbGF5RUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRm
b3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAK
ICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgiCiAK
QEAgLTI3LDggKzI3LDYgQEAKICMgICAgaW1wb3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4K
ICMgICAgaW1wb3J0IDxkbGZjbi5oPgogCi0jICAgIGRlZmluZSBHTEVTX1NJTEVOQ0VfREVQUkVD
QVRJT04KLQogbmFtZXNwYWNlCiB7CiAKQEAgLTM3NCw0ICszNzIsNCBAQCB2b2lkIERpc3BsYXlF
QUdMOjpwb3B1bGF0ZUZlYXR1cmVMaXN0KGFuZ2xlOjpGZWF0dXJlTGlzdCAqZmVhdHVyZXMpCiB9
CiB9CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BV
X0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFj
ZUVBR0wubW0KaW5kZXggZDBiNWM5ODBiYWM5Li5iMDY0OWFkNjU4ZGEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3Vy
ZmFjZVN1cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCkBAIC05LDcgKzks
NyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNp
ZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYm
IGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaCIKIApAQCAtNDI3LDQgKzQyNyw0IEBA
IElPU3VyZmFjZUxvY2tPcHRpb25zIElPU3VyZmFjZVN1cmZhY2VFQUdMOjpnZXRJT1N1cmZhY2VM
b2NrT3B0aW9ucygpIGNvbnN0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FS
TTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wu
Y3BwCmluZGV4IDM2ZjFjMTViOTc1ZC4uY2IxNjZhNGFlZTczIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3Vy
ZmFjZUVBR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAKQEAgLTksNyArOSw3IEBACiAK
ICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5l
ZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmgiCiAKQEAgLTE0NCw0ICsxNDQsNCBAQCBGcmFtZWJ1
ZmZlckltcGwgKlBidWZmZXJTdXJmYWNlRUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNv
bnN0IGdsOjpDb250ZXh0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0
KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL1JlbmRlcmVyRUFHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCmluZGV4IGE0NzM4
YjI1NjZiMy4uNGQzY2ZiYmU3YzM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRl
cmVyRUFHTC5jcHAKQEAgLTgsNyArOCw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5o
IgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAg
IGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCIKICMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuaCIKQEAgLTMx
LDQgKzMxLDQgQEAgV29ya2VyQ29udGV4dCAqUmVuZGVyZXJFQUdMOjpjcmVhdGVXb3JrZXJDb250
ZXh0KHN0ZDo6c3RyaW5nICppbmZvTG9nKQogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlm
ICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkp
IHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xF
X0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbSBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VF
QUdMLm1tCmluZGV4IDM4ZDI1M2ViZGViMy4uOWM4M2NjZTdkNGY5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dT
dXJmYWNlRUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAKIAog
I2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgiCiAKQEAgLTIyLDcgKzIyLDIwIEBACiAjICAgIGltcG9y
dCA8T3BlbkdMRVMvRUFHTC5oPgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5o
PgogCi0vLyBUT0RPKGFuZ2xlYnVnLmNvbS80Mjc1KTogSXQncyBub3QgY2xlYXIgd2h5IHRoaXMg
bmVlZHMgdG8gYmUgYW4gRUFHTExheWVyLgorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQorLy9AcHJvdG9jb2wgRUFHTERy
YXdhYmxlCisvLy0gKEJPT0wpcHJlc2VudFJlbmRlcmJ1ZmZlcjooTlNVSW50ZWdlcil0YXJnZXQ7
CisvL0BlbmQKKy8vCisvL0BpbnRlcmZhY2UgQ0FFQUdMTGF5ZXIgOiBDQUxheWVyIDxFQUdMRHJh
d2FibGU+CitAaW50ZXJmYWNlIENBRUFHTExheWVyIDogQ0FMYXllcgorQGVuZAorCitAaW50ZXJm
YWNlIEVBR0xDb250ZXh0ICgpCistIChCT09MKXByZXNlbnRSZW5kZXJidWZmZXI6KE5TVUludGVn
ZXIpdGFyZ2V0OworQGVuZAorCisjZW5kaWYKIAogQGludGVyZmFjZSBXZWJTd2FwTGF5ZXIgOiBD
QUVBR0xMYXllciB7CiAgICAgRUFHTENvbnRleHRPYmogbURpc3BsYXlDb250ZXh0OwpAQCAtMzA2
LDQgKzMxOSw0IEBAIEZyYW1lYnVmZmVySW1wbCAqV2luZG93U3VyZmFjZUVBR0w6OmNyZWF0ZURl
ZmF1bHRGcmFtZWJ1ZmZlcihjb25zdCBnbDo6Q29udGV4dCAqCiAKIH0gIC8vIG5hbWVzcGFjZSBy
eAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlmICAvLyAo
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0
aWxzLmNwcAppbmRleCA0ZWExMDZhY2U4ODQuLmJlOWJjMTYyNTE0YiAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xf
dXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcApAQCAtMTM0NCw2ICsxMzQ0LDcgQEAgdm9pZCBH
ZW5lcmF0ZUNhcHMoY29uc3QgRnVuY3Rpb25zR0wgKmZ1bmN0aW9ucywKICAgICAgICAgZnVuY3Rp
b25zLT5oYXNHTEVTRXh0ZW5zaW9uKCJHTF9FWFRfY29tcHJlc3NlZF9FVEMxX1JHQjhfc3ViX3Rl
eHR1cmUiKTsKIAogI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisgICAgLy8gRklYTUU6IFJ1bnRpbWUgY2hlY2sg
bm90IEFSTTY0CiAgICAgVmVuZG9ySUQgdmVuZG9yID0gR2V0VmVuZG9ySUQoZnVuY3Rpb25zKTsK
ICAgICBpZiAoKElzQU1EKHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9y
dGVkRVNWZXJzaW9uID49IGdsOjpWZXJzaW9uKDMsIDApKQogICAgIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409199</attachid>
            <date>2020-09-19 06:03:13 -0700</date>
            <delta_ts>2020-09-20 03:37:13 -0700</delta_ts>
            <desc>WIP2</desc>
            <filename>wip2.patch</filename>
            <type>text/plain</type>
            <size>50303</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGU4ZTY5MGRkZDY1Ni4uZTllNTBiOWYyNTcxIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE1MCw2ICsxNTAsMTIgQEAKIAkJMzE1RUJFMjQxRkNFNDYyQTAwQUM3QTg5IC8q
IHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLzsg
fTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNUVCRTI2MUZDRjgwOEMwMEFD
N0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVCRTI5MUZDRjgwOEMwMEFDN0E4OSAv
KiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi87IH07CisJCTMxNjQ3
RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhG
QiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLzsgfTsKKwkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9f
YXBwbGUuY3BwICovOyB9OworCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0
N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07CisJCTMxNjQ3RkE1
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKKwkJMzE2
NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKIAkJMzFBMzMxQzIxRUE1RUQyNTAwRkQyMjAzIC8q
IGJpdHNldF91dGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFBMzMxQzAxRUE1RUQyNTAwRkQyMjAzIC8qIGJpdHNldF91dGlscy5oICovOyB9Owog
CQkzMUEzMzFDNjFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMzFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgKi87IH07CiAJCTMxQTMzMUM3MUVBNUVE
NUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUM0MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRp
bHMuaCAqLzsgfTsKQEAgLTE1NDcsNiArMTU1Myw3IEBACiAvKiBFbmQgUEJYQ29weUZpbGVzQnVp
bGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAq
LworCQkwRjg1REEyRjI1MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU29mdExpbmtpbmdfYXBwbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMzEwMTJEQTAxOEI5N0I5QjAwMzkwNjJGIC8qIEJhc2VUeXBlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCYXNlVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzEwMTJEQTExOEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxh
dG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1aWx0SW5GdW5j
dGlvbkVtdWxhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEwMTJEQTIx
OEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjgxLDYgKzE2ODgsOSBAQAogCQkzMTVFQkUyMDFGQ0U0
NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CisJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbUluZm9fYXBwbGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OworCQkzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTMxQTMzMUMwMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gYml0c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNf
bWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGls
c19tYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IHN5c3RlbV91dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjk3Miw2
ICsyOTgyLDcgQEAKIAkJCQk1Q0IzMDExMTFERTM5RjFBMDBEMkM0MDUgLyogVHJhbnNmb3JtRmVl
ZGJhY2tHTC5oICovLAogCQkJCTVDQjMwMTEyMURFMzlGMUEwMEQyQzQwNSAvKiBWZXJ0ZXhBcnJh
eUdMLmNwcCAqLywKIAkJCQk1Q0IzMDExMzFERTM5RjFBMDBEMkM0MDUgLyogVmVydGV4QXJyYXlH
TC5oICovLAorCQkJCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0TGlua2luZ19hcHBs
ZS5oICovLAogCQkJKTsKIAkJCXBhdGggPSBnbDsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CkBAIC0yOTc5LDYgKzI5OTAsOCBAQAogCQk1Q0IzMDE0ODFERTM5RjM2MDBEMkM0MDUgLyogY2ds
ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkzMTY0N0ZB
MjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi8sCisJCQkJMzE2NDdGQTMyNTE1
OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgKi8sCiAJCQkJNUNDRDU5NzIyMjg0RkE4
MjAwMThGMkQ4IC8qIENvbnRleHRDR0wuY3BwICovLAogCQkJCTVDQ0Q1OTc1MjI4NEZBODIwMDE4
RjJEOCAvKiBDb250ZXh0Q0dMLmggKi8sCiAJCQkJNkUzMUEwQTEyMzRFRUVENDAwQzg0Nzg0IC8q
IERldmljZUNHTC5jcHAgKi8sCkBAIC0zMjEwLDYgKzMyMjMsNyBAQAogCQkJCTVDQ0Q1OTk5MjI4
NEZDNzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvLmggKi8sCiAJCQkJMzFCMTU3MjEyMzZCODAzMzAw
Q0FBNEZEIC8qIFN5c3RlbUluZm9faW50ZXJuYWwuaCAqLywKIAkJCQkzMUIxNTcxRjIzNkI3RkFF
MDBDQUE0RkQgLyogU3lzdGVtSW5mb19pb3MuY3BwICovLAorCQkJCTMxNjQ3RjlFMjUxMUExQTYw
MDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1
MDAxOEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSAqLywKIAkJCSk7CiAJCQluYW1lID0gZ3B1
aW5mb3V0aWw7CkBAIC0zNDIxLDYgKzM0MzUsNyBAQAogCQkJCTMxQ0RGRjVCMjQ5MTg0OEMwMDQ4
NkYyNyAvKiBDb2xvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGRTQyNDkxODRBNzAwNDg2
RjI3IC8qIENvbW1vbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDRDAwNkMyNDkxODRGQzAwNDg2
RjI3IC8qIENvbXBpbGVyLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTY0N0ZBNTI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkZFNzI0OTE4
NEE3MDA0ODZGMjcgLyogQ29tcGlsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDE1MjQ5
MTg0RTcwMDQ4NkYyNyAvKiBDb21waWxlckdMLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDAz
RjI0OTE4NEY0MDA0ODZGMjcgLyogQ29tcGlsZXJJbXBsLmggaW4gSGVhZGVycyAqLywKQEAgLTM4
MjYsNiArMzg0MSw3IEBACiAJCQkJNUNDRDgxOEUxREJGRUExMDAwNjA2NkI4IC8qIENvbG9yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTAxMkUxNjE4Qjk3QjlCMDAzOTA2MkYgLyogQ29tbW9uLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkRERDFCMDQzOEQzMDAyMzU1NTIgLyogQ29tcGlsZXIu
aCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5j
dGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMURCQzJDMUIwNDM3NUYwMDIzNTU1MiAvKiBD
b21waWxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNCMzAxMUIxREUzOUYxQTAwRDJDNDA1IC8q
IENvbXBpbGVyR0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNERDMURFNDE2NDgwMEQyQzQw
NSAvKiBDb21waWxlckltcGwuaCBpbiBIZWFkZXJzICovLApAQCAtNDQzMyw2ICs0NDQ5LDcgQEAK
IAkJCQkzMUNERkU5NTI0OTE4NDNBMDA0ODZGMjcgLyogSXNBU1REZXB0aEJlbG93TGltaXQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFMzAyNDkxODQyODAwNDg2RjI3IC8qIExleGVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRURDMjQ5MTg0NTgwMDQ4NkYyNyAvKiBsb2FkX2Z1
bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkEwMjUx
MUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRUIyMjQ5MTg0NDIwMDQ4NkYyNyAvKiBsb2FkaW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMzFDREZFQjQyNDkxODQ0MjAwNDg2RjI3IC8qIGxvYWRpbWFnZV9ldGMuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMzFDREZGMUYyNDkxODQ1RjAwNDg2RjI3IC8qIExvZ2dpbmdBbm5vdGF0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NDQxLDYgKzQ0NTgsNyBAQAogCQkJCTMxQ0RGRTE5
MjQ5MTg0MjMwMDQ4NkYyNyAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNE
RkUxQTI0OTE4NDIzMDA0ODZGMjcgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxQ0RGRTFCMjQ5MTg0MjMwMDQ4NkYyNyAvKiBNZW1vcnlCdWZmZXIuY3BwIGluIFNvdXJj
ZXMgKi8sCisJCQkJMzE2NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVFQTI0OTE4NDVGMDA0ODZGMjcgLyogTWVtb3J5T2Jq
ZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUQyMjQ5MTg0NTMwMDQ4NkYyNyAvKiBN
ZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYwRTI0OTE4NDVGMDA0
ODZGMjcgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDc2Niw2
ICs0Nzg0LDcgQEAKIAkJCQkzMTVFQkQ5QzFGQ0U0NDM2MDBBQzdBODkgLyogSXNBU1REZXB0aEJl
bG93TGltaXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTI2NEY4QjYxNjk3NERFRDAwNkZBQTVB
IC8qIExleGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQjMwNEVGMURFNDE2NDgwMEQyQzQw
NSAvKiBsb2FkX2Z1bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAorCQkJ
CTMxNjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDQ0Q1OTk1MjI4NEZDNDAwMDE4RjJEOCAvKiBsb2FkaW1hZ2UuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNDRDU5OTIyMjg0RkM0MDAwMThGMkQ4IC8qIGxvYWRpbWFnZV9l
dGMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE1RUJERTgxRkNFNDUyRDAwQUM3QTg5IC8qIExv
Z2dpbmdBbm5vdGF0b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00Nzc0LDYgKzQ3OTMsNyBAQAog
CQkJCTVDQzdENDcyMTkxMDI2MjEwMDBCOEMxRiAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1QzU1RDcyNTIyODI3NDc3MDBCNUJBMkMgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTVDMURCQkYxMUIwNDM2RUMwMDIzNTU1MiAvKiBNZW1vcnlCdWZmZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1
bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk2NDIyODRGNzk2MDAxOEYyRDgg
LyogTWVtb3J5T2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUEzMDMwNzhCMjMwNUY4RjAw
MDJEQTk3MiAvKiBNZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTVFQkRG
MzFGQ0U0NTJEMDBBQzdBODkgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRp
b25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5kZXggMzE1ODJiOTIyYmRmLi45MDdjNGEyYjE1
NTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FO
R0xFLWR5bmFtaWMueGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmln
dXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZwpAQCAtMTEsNyArMTEsNyBAQCBBTkdMRV9P
VEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2
c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3Jr
IE9wZW5HTCAtbHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29y
ayBJT0tpdCAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9L
aXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKE5PUk1BTF9XRUJD
T1JFX0ZSQU1FV09SS1NfRElSKS9XZWJDb3JlLmZyYW1ld29yay9GcmFtZXdvcmtzOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGlj
LnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUt
c3RhdGljLnhjY29uZmlnCmluZGV4IDRkMWQyMjExOTM1YS4uMThkMmI0M2ZiNjVmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMu
eGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtc3RhdGljLnhjY29uZmlnCkBAIC0xMSw3ICsxMSw3IEBAIEFOR0xFX09USEVSX0xERkxBR1Nf
d2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9M
REZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVs
YXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAk
KEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxB
R1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1m
cmFtZXdvcmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAt
ZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKIEFOR0xFX09USEVSX0xE
RkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIE9wZW5HTCAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRI
X1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpp
bmRleCAwNGZiZTllZmU3YzkuLjRmYmRiY2I4Y2UyMCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dM
RVN2Mi5jbWFrZQpAQCAtMTY3LDcgKzE2Nyw5IEBAIHNldChsaWJhbmdsZV9ncHVfaW5mb191dGls
X2xpYnBjaV9zb3VyY2VzCiBzZXQobGliYW5nbGVfZ3B1X2luZm9fdXRpbF94MTFfc291cmNlcyAi
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb194MTEuY3BwIiApCiAKIAotc2V0KGxpYmFuZ2xl
X2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW0iICkKK3NldChsaWJhbmdsZV9ncHVfaW5mb191dGlsX21hY19zb3VyY2VzCisgICAg
InNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUubW0iCisgICAgInNyYy9ncHVfaW5m
b191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkKIAogCiBzZXQobGliYW5nbGVfaW5jbHVkZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0u
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaAppbmRleCAw
NDE2ZWQyMDFkNTkuLjlkMjUzMzQ4NDg2OCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTI4LDYgKzEyOCwxMSBAQAogIyAgICAgICAgICAg
IGRlZmluZSBBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYKICMgICAg
ZW5kaWYKKyMgICAgLy8gVGhpcyBtaWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21l
bnQgaXQgaXMgdXNlZAorIyAgICAvLyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIElu
dGVsIGFuZCBBcHBsZSBTaWxpY29uLgorIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVm
aW5lZChfX2FhcmNoNjRfXykKKyMgICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQKKyMgICAg
ZW5kaWYKICNlbmRpZgogCiAvLyBEZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mb19pb3MuY3BwCmluZGV4IGMwZDQzNmY1NjE4Yy4uYmQyMjE5NzA2MmU4IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZv
X2lvcy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwv
U3lzdGVtSW5mb19pb3MuY3BwCkBAIC04LDE0ICs4LDE0IEBACiAKICNpbmNsdWRlICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X0lPUykgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3RlbUlu
Zm9faW50ZXJuYWwuaCIKIAogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKLWJvb2wgR2V0U3lzdGVtSW5m
byhTeXN0ZW1JbmZvICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvX2lvcyhTeXN0ZW1JbmZvICpp
bmZvKQogewogICAgIHsKICAgICAgICAgLy8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEdldCB0
aGUgYWN0dWFsIHN5c3RlbSB2ZXJzaW9uLgpAQCAtMjcsNCArMjcsNCBAQCBib29sIEdldFN5c3Rl
bUluZm8oU3lzdGVtSW5mbyAqaW5mbykKIAogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCiAKLSNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
fHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVf
Q1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCmluZGV4IGE4ZWQ3YWYyNmY0Mi4u
MmFiOTJmYzc2NGRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1
X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0KQEAgLTE1LDYgKzE1LDgg
QEAKICMgICAgaW1wb3J0IDxDb2NvYS9Db2NvYS5oPgogIyAgICBpbXBvcnQgPElPS2l0L0lPS2l0
TGliLmg+CiAKKyMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0
aW9ucy5oIgorCiBuYW1lc3BhY2UgYW5nbGUKIHsKIApAQCAtMjA4LDcgKzIxMCw3IEBAIHVpbnQ2
NF90IEdldEdwdUlERnJvbU9wZW5HTERpc3BsYXlNYXNrKHVpbnQzMl90IGRpc3BsYXlNYXNrKQog
ICAgIHJldHVybiAwOwogfQogCi1ib29sIEdldFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykK
K2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lzdGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAg
ICAgIGludDMyX3QgbWFqb3IgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL0Rpc3BsYXkuY3BwCmluZGV4IGUzZWJlMzI1ZGFhMi4uZmZmNjhkNjM1MDY2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5j
cHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3Bw
CkBAIC01Myw2ICs1Myw5IEBACiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9n
bC93Z2wvRGlzcGxheVdHTC5oIgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
T1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAjICAgICAgICBpbmNs
dWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5oIgorIyAgICAgICAgaWYg
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVf
QVJNNjQpCisjICAgICAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
aXNwbGF5RUFHTC5oIgorIyAgICAgICAgZW5kaWYKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykKICMgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
RGlzcGxheUVBR0wuaCIKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJTlVYKQpA
QCAtMjYwLDggKzI2MywyOCBAQCByeDo6RGlzcGxheUltcGwgKkNyZWF0ZURpc3BsYXlGcm9tQXR0
cmlicyhFR0xBdHRyaWIgZGlzcGxheVR5cGUsCiAjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfT1BF
TkdMKQogIyAgICBpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX1dJTkRPV1MpCiAgICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5V0dMKHN0YXRlKTsKLSMgICAgZWxpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KQorICAgICAgICAgICAgYnJlYWs7CisKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ09TKQogICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7Cisg
ICAgICAgICAgICBicmVhazsKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKQorIyAgICAgICAgaWYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisjICAgICAgICAg
ICAvLyBGSVhNRTogRGVjaWRlIGF0IHJ1bnRpbWUKKyAgICAgICAgICAgIGlmICgoMCkpIC8vIHJ1
bm5pbmcgaU9TIHN0dWZmCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaW1wbCA9IG5l
dyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICB9CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
aW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUpOworICAgICAgICAgICAgICAgIGJyZWFr
OworICAgICAgICAgICAgfQorIyAgICAgICAgZWxzZQorICAgICAgICAgICAgaW1wbCA9IG5ldyBy
eDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICBicmVhazsKKyMgICAgICAgIGVuZGlm
CiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCiAgICAgICAgICAgICBpbXBs
ID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9MSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9mb3JtYXR1dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvZm9ybWF0dXRpbHMuY3BwCmluZGV4IGU0MzQ5NmZjMzQ3MS4uMmQzZmU0MWUwMTU2IDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRp
bHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1
dGlscy5jcHAKQEAgLTEwMzAsNyArMTAzMCw4IEBAIHN0YXRpYyBJbnRlcm5hbEZvcm1hdEluZm9N
YXAgQnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXAoKQogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwg
R0xfUkdCQSwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfUkdCQSwgICAg
ICAgICAgIEdMX0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgR0xfU0lHTkVEX05PUk1BTEla
RUQsICAgZmFsc2UsIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgTmV2ZXJTdXBwb3J0ZWQsICBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAgIEFkZFJH
QkFGb3JtYXQoJm1hcCwgR0xfU1JHQiwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgMCwg
MCwgR0xfU1JHQiwgICAgICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xf
VU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnNSR0I+
LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCwgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0
ZWQpOwogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQl9BTFBIQV9FWFQsIGZhbHNlLCAg
OCwgIDgsICA4LCAgOCwgMCwgR0xfU1JHQl9BTFBIQV9FWFQsIEdMX1VOU0lHTkVEX0JZVEUsICAg
ICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4
dGVuc2lvbnM6OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1
aXJlRXh0PCZFeHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRl
ZCwgTmV2ZXJTdXBwb3J0ZWQpOwotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykKKyAgICAvLyBJIHRoaW5rIHRoaXMgbmVlZHMgYSBydW50aW1lIGNoZWNrIHRv
by4KICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBmYWxzZSwgIDgs
ICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAg
ICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJlRVM8MiwgMD4s
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWly
ZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQs
IE5ldmVyU3VwcG9ydGVkKTsKICNlbHNlCiAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JB
X0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAg
R0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBm
YWxzZSwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgICBB
bHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JB
ODg4OD4sIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0
aW9ucy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwLi4zODg1OTA2M2QxMTgKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKQEAg
LTAsMCArMSwzMiBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdo
dHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBh
IEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBm
aWxlLgorLy8KKworLy8gQ0dMRnVuY3Rpb25zLmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2Vk
IENHTCBpbnRlcmZhY2UuCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKyNpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKKyNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0FQUExFKQorCitTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShPcGVu
R0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZv
cm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywg
Q0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4
KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBD
R0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dM
Q29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhl
bEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0
dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9y
LCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0Uo
T3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRXJy
b3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVycm9yKSkKK1NPRlRf
TElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4dCwgdm9pZCwgKENH
TENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5H
TCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAo
Y3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2Ny
ZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBz
Y3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFRleEltYWdlSU9T
dXJmYWNlMkQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51bSB0YXJnZXQsIEdM
ZW51bSBpbnRlcm5hbF9mb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBHTGVu
dW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFjZSwgR0x1aW50IHBs
YW5lKSwgKGN0eCwgdGFyZ2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1h
dCwgdHlwZSwgaW9TdXJmYWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChj
dHgpKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5k
ZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0s
IENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVt
LCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVz
dHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChy
ZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVy
SW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmog
KnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKKworI2Vu
ZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9u
cy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Nn
bC9DR0xGdW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu
LjRkNDRmZjVlOGFlOQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgKQEAgLTAsMCArMSwz
OSBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHls
ZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8K
KworLy8gU29mdExpbmtpbmdfYXBwbGUuY3BwOiBNYWNyb3MgZm9yIHNvZnQtbGlua2luZyBGcmFt
ZXdvcmtzIGFuZCBGdW5jdGlvbnMuCisKKyNpZm5kZWYgQ0dMX0ZVTkNUSU9OU19IXworI2RlZmlu
ZSBDR0xfRlVOQ1RJT05TX0hfCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKworI2lm
IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyNpbmNsdWRlIDxPcGVuR0wvT3BlbkdM
Lmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5o
IgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hFQURFUihPcGVuR0wpCisKK1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25z
dCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBp
eCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElP
Tl9IRUFERVIoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9y
bWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBp
eCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVz
Y3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50
IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwg
KHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVS
KE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQg
KnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJ
T05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xE
ZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBp
eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVy
SW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKK1NPRlRf
TElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xFcnJvclN0cmluZywgY29uc3QgY2hhciAq
LCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3IpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihP
cGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21h
c2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFz
aywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFJl
bGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29udGV4dCwgQ0dMRXJyb3Is
IChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihP
cGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgs
IEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVS
KE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2Jq
IGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1hdCwgR0xzaXplaSB3aWR0
aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBJT1N1cmZhY2VS
ZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQsIGludGVybmFsX2Zvcm1h
dCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2UsIHBsYW5lKSkKK1NPRlRf
TElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0LCBDR0xFcnJvciwg
KENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKKyNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0FQUExFKQorCisjZW5kaWYgLy8gQ0dMX0ZVTkNUSU9OU19IXwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNw
bGF5Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9EaXNwbGF5Q0dMLm1tCmluZGV4IDc5YTExZDRkMjk4YS4uZTdjYzJiYTJmYTYzIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCkBAIC0yOCw2ICsyOCw4IEBACiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgi
CiAjICAgIGluY2x1ZGUgInBsYXRmb3JtL1BsYXRmb3JtTWV0aG9kcy5oIgogCisjICAgIGluY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNl
CiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wu
Y3BwCmluZGV4IGFmZGNhNGYyZWY5Ni4uOGVkNDM5MWUwMzBkIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1
cmZhY2VDR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAKQEAgLTI3LDYgKzI3LDggQEAK
ICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvVGV4dHVyZUdMLmgiCiAjICAgIGlu
Y2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCiAKKyMgICAgaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3Bh
Y2UgcngKIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1t
CmluZGV4IDBmYTU3YmU0M2I3Ny4uMWExMjY5ZDlkMTg3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VD
R0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCkBAIC0yMyw2ICsyMyw4IEBACiAjICAgIGluY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmgiCiAjICAgIGluY2x1ZGUg
ImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCiAKKyMgICAgaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBAaW50ZXJmYWNlIFdl
YlN3YXBMYXllciA6IENBT3BlbkdMTGF5ZXIgewogICAgIENHTENvbnRleHRPYmogbURpc3BsYXlD
b250ZXh0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwCmluZGV4IGE5
ODM0NjE5MjQwYy4uNjQxOTdmZmVmZDU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZp
Y2VFQUdMLmNwcApAQCAtOCw3ICs4LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgi
CiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgiCiAKQEAgLTU2
LDQgKzU2LDQgQEAgdm9pZCBEZXZpY2VFQUdMOjpnZW5lcmF0ZUV4dGVuc2lvbnMoZWdsOjpEZXZp
Y2VFeHRlbnNpb25zICpvdXRFeHRlbnNpb25zKSBjb25zdAogCiB9ICAvLyBuYW1lc3BhY2UgcngK
IAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oCmluZGV4IDU3Njk2OTIxZWYz
Yi4uOTNhYmZmYzAyODVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oCkBA
IC0xMSw3ICsxMSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjaW5jbHVkZSAibGliQU5H
TEUvRGV2aWNlLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvRGV2aWNlSW1wbC5oIgpA
QCAtMzQsNiArMzQsNiBAQCBjbGFzcyBEZXZpY2VFQUdMIDogcHVibGljIERldmljZUltcGwKIAog
fSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyAo
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlmICAvLyBMSUJBTkdMRV9SRU5ERVJFUl9H
TF9FQUdMX0RFVklDRUVBR0xfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5o
CmluZGV4IDI2MWJhNDA3ZDE5My4uYTUzNjZlOTE2ZTljIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLmgKQEAgLTExLDcgKzExLDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3Bs
YXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkp
CiAKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9EaXNwbGF5R0wuaCIKIApAQCAtOTcs
NiArOTcsNiBAQCBjbGFzcyBEaXNwbGF5RUFHTCA6IHB1YmxpYyBEaXNwbGF5R0wKIAogfSAgLy8g
bmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgLy8gKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFO
R0xFX0NQVV9BUk02NCkpCiAKICNlbmRpZiAgLy8gTElCQU5HTEVfUkVOREVSRVJfR0xfRUFHTF9E
SVNQTEFZRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbQppbmRl
eCBjZWIyZDExZmM3OTkuLmU4MDQ4MzYzN2U1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0KKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
RGlzcGxheUVBR0wubW0KQEAgLTgsNyArOCw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9y
bS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAj
ICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgogCkBA
IC0yNyw4ICsyNyw2IEBACiAjICAgIGltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpDb3JlLmg+CiAj
ICAgIGltcG9ydCA8ZGxmY24uaD4KIAotIyAgICBkZWZpbmUgR0xFU19TSUxFTkNFX0RFUFJFQ0FU
SU9OCi0KIG5hbWVzcGFjZQogewogCkBAIC0zNzQsNCArMzcyLDQgQEAgdm9pZCBEaXNwbGF5RUFH
TDo6cG9wdWxhdGVGZWF0dXJlTGlzdChhbmdsZTo6RmVhdHVyZUxpc3QgKmZlYXR1cmVzKQogfQog
fQogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9B
Uk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbSBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VF
QUdMLm1tCmluZGV4IGQwYjVjOTgwYmFjOS4uYjA2NDlhZDY1OGRhIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZh
Y2VTdXJmYWNlRUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQpAQCAtOSw3ICs5LDcg
QEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLmgiCiAKQEAgLTQyNyw0ICs0MjcsNCBAQCBJ
T1N1cmZhY2VMb2NrT3B0aW9ucyBJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0SU9TdXJmYWNlTG9j
a09wdGlvbnMoKSBjb25zdAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02
NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNw
cAppbmRleCAzNmYxYzE1Yjk3NWQuLmNiMTY2YTRhZWU3MyAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZh
Y2VFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCkBAIC05LDcgKzksNyBAQAogCiAj
aW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL1BidWZmZXJTdXJmYWNlRUFHTC5oIgogCkBAIC0xNDQsNCArMTQ0LDQgQEAgRnJhbWVidWZm
ZXJJbXBsICpQYnVmZmVyU3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcihjb25z
dCBnbDo6Q29udGV4dAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcAppbmRleCBhNDczOGIy
NTY2YjMuLjRkM2NmYmJlN2MzNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJl
ckVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIK
IAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBp
bmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgiCiAjICAgIGlu
Y2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmgiCkBAIC0zMSw0
ICszMSw0IEBAIFdvcmtlckNvbnRleHQgKlJlbmRlcmVyRUFHTDo6Y3JlYXRlV29ya2VyQ29udGV4
dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAg
Ly8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8
fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9D
UFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFH
TC5tbQppbmRleCAzOGQyNTNlYmRlYjMuLjljODNjY2U3ZDRmOSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3Vy
ZmFjZUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0KQEAgLTgsNyArOCw3IEBACiAKICNp
bXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCkBAIC0yMiw3ICsyMiwyMCBAQAogIyAgICBpbXBvcnQg
PE9wZW5HTEVTL0VBR0wuaD4KICMgICAgaW1wb3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4K
IAotLy8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEl0J3Mgbm90IGNsZWFyIHdoeSB0aGlzIG5l
ZWRzIHRvIGJlIGFuIEVBR0xMYXllci4KKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKy8vQHByb3RvY29sIEVBR0xEcmF3
YWJsZQorLy8tIChCT09MKXByZXNlbnRSZW5kZXJidWZmZXI6KE5TVUludGVnZXIpdGFyZ2V0Owor
Ly9AZW5kCisvLworLy9AaW50ZXJmYWNlIENBRUFHTExheWVyIDogQ0FMYXllciA8RUFHTERyYXdh
YmxlPgorQGludGVyZmFjZSBDQUVBR0xMYXllciA6IENBTGF5ZXIKK0BlbmQKKworQGludGVyZmFj
ZSBFQUdMQ29udGV4dCAoKQorLSAoQk9PTClwcmVzZW50UmVuZGVyYnVmZmVyOihOU1VJbnRlZ2Vy
KXRhcmdldDsKK0BlbmQKKworI2VuZGlmCiAKIEBpbnRlcmZhY2UgV2ViU3dhcExheWVyIDogQ0FF
QUdMTGF5ZXIgewogICAgIEVBR0xDb250ZXh0T2JqIG1EaXNwbGF5Q29udGV4dDsKQEAgLTMwNiw0
ICszMTksNCBAQCBGcmFtZWJ1ZmZlckltcGwgKldpbmRvd1N1cmZhY2VFQUdMOjpjcmVhdGVEZWZh
dWx0RnJhbWVidWZmZXIoY29uc3QgZ2w6OkNvbnRleHQgKgogCiB9ICAvLyBuYW1lc3BhY2UgcngK
IAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKKyNlbmRpZiAgLy8gKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZp
bmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGls
cy5jcHAKaW5kZXggNGVhMTA2YWNlODg0Li5iZTliYzE2MjUxNGIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0
aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKQEAgLTEzNDQsNiArMTM0NCw3IEBAIHZvaWQgR2Vu
ZXJhdGVDYXBzKGNvbnN0IEZ1bmN0aW9uc0dMICpmdW5jdGlvbnMsCiAgICAgICAgIGZ1bmN0aW9u
cy0+aGFzR0xFU0V4dGVuc2lvbigiR0xfRVhUX2NvbXByZXNzZWRfRVRDMV9SR0I4X3N1Yl90ZXh0
dXJlIik7CiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorICAgIC8vIEZJWE1FOiBSdW50aW1lIGNoZWNrIG5v
dCBBUk02NAogICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7CiAg
ICAgaWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1heFN1cHBvcnRl
ZEVTVmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKICAgICB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnIGIvU291cmNlL1dlYkNv
cmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwppbmRleCBiODEwOWU2MzQ2NmQuLjU3
MWU4ZWIwNzA2MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2Vi
Q29yZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnCkBAIC0xMDUsMTYgKzEwNSw2IEBAIFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xE
RkxBR1NfY29jb2F0b3VjaCA9IC1mcmFtZXdvcmsgTW9iaWxlQ29yZVNlcnZpY2VzOwogV0tfTU9C
SUxFX0dFU1RBTFRfTERGTEFHUyA9ICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU18kKFdLX0NP
Q09BX1RPVUNIKSk7CiBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1v
YmlsZUdlc3RhbHQ7CiAKLVdLX09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERGTEFHU18k
KFdLX1BMQVRGT1JNX05BTUUpKTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1l
d29yayBPcGVuR0xFUzsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvciA9IC1mcmFt
ZXdvcmsgT3BlbkdMRVM7Ci1XS19PUEVOR0xfTERGTEFHU193YXRjaG9zID0gJChXS19PUEVOR0xf
TERGTEFHU19pcGhvbmVvcyk7Ci1XS19PUEVOR0xfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQo
V0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLVdLX09QRU5HTF9MREZMQUdTX2Fw
cGxldHZvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxB
R1NfYXBwbGV0dnNpbXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9y
KTsKLVdLX09QRU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBPcGVuR0w7Ci1X
S19PUEVOR0xfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tfU1lTVEVN
X0NPTkZJR1VSQVRJT05fTERGTEFHUyA9ICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFH
U18kKFdLX1BMQVRGT1JNX05BTUUpKTsKIFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1Nf
bWFjb3N4ID0gLWZyYW1ld29yayBTeXN0ZW1Db25maWd1cmF0aW9uOwogCkBAIC0xMjQsNyArMTE0
LDcgQEAgV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyA9ICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERG
TEFHU18kKFdLX0hBVkVfVVJMX0ZPUk1BVFRJTkcKIFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1Nf
WUVTID0gLWZyYW1ld29yayBVUkxGb3JtYXR0aW5nOwogCiAvLyBGSVhNRTogUmVkdWNlIHRoZSBu
dW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudHMgPHJkYXI6Ly9wcm9ibGVtLzMxODIzOTY5PgotT1RI
RVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1FV09SS19MREZM
QUdTKSAtbHNxbGl0ZTMgLWxvYmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRl
c3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2VfbG9hZCAkKEJV
SUxUX1BST0RVQ1RTX0RJUikvbGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29y
ayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAt
ZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBJbWFn
ZUlPIC1mcmFtZXdvcmsgTWV0YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfQ09DT0Ff
VE9VQ0gpKSAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9OQU1FKSkgJChX
S19BUFBLSVRfTERGTEFHUykgJChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tfQVVESU9fVU5J
VF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERGTEFHUykgJChX
S19EQVRBX0RFVEVDVE9SU19DT1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERG
TEFHUykgJChXS19JT1NVUkZBQ0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19MSUJXRUJSVENf
TERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9H
RVNUQUxUX0xERkxBR1MpICQoV0tfT1BFTkdMX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VS
QVRJT05fTERGTEFHUykgJChXS19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJ
TkdfTERGTEFHUyk7CitPVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFC
TEVfRlJBTUVXT1JLX0xERkxBR1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxl
X2NsaWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5
IC1mb3JjZV9sb2FkICQoQlVJTFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENG
TmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJh
bWV3b3JrIENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFj
ZSAtZnJhbWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExB
VEZPUk1fJChXS19DT0NPQV9UT1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BM
QVRGT1JNX05BTUUpKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFH
UykgJChXS19BVURJT19VTklUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09S
RV9VSV9MREZMQUdTKSAkKFdLX0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQ
SElDU19TRVJWSUNFU19MREZMQUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdT
KSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxB
R1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElP
Tl9MREZMQUdTKSAkKFdLX0NPUkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19M
REZMQUdTKTsKIAogT1RIRVJfTERGTEFHU19QTEFURk9STV9jb2NvYXRvdWNoID0gLWFsbG93YWJs
ZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVfY2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGll
bnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2NsaWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQg
VFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBEdW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVu
dCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2FibGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhF
Ul9MREZMQUdTX1BMQVRGT1JNX21hY29zeCA9IC1zdWJfbGlicmFyeSBsaWJvYmpjIC11bWJyZWxs
YSBXZWJLaXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0IGIv
U291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4dAppbmRleCBiZWVhYjZjOTkyN2QuLjI4YmFj
ODNiNzM4ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvU291cmNlc0NvY29hLnR4dAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Tb3VyY2VzQ29jb2EudHh0CkBAIC0zNTgsNiArMzU4LDcgQEAgcGxh
dGZvcm0vZ3JhcGhpY3MvY29jb2EvSU9TdXJmYWNlLm1tCiBwbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9JT1N1cmZhY2VQb29sQ29jb2EubW0KIHBsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0ludFJlY3RD
b2NvYS5tbQogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvTWVkaWFFbmdpbmVDb25maWd1cmF0aW9u
RmFjdG9yeUNvY29hLmNwcAorcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvT3BlbkdMU29mdExpbmtD
b2NvYS5tbQogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU291cmNlQnVmZmVyUGFyc2VyLmNwcAog
cGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvU291cmNlQnVmZmVyUGFyc2VyV2ViTS5jcHAKIHBsYXRm
b3JtL2dyYXBoaWNzL2NvY29hL1N5c3RlbUZvbnREYXRhYmFzZUNvcmVUZXh0LmNwcApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGQ2
MmQ3ODkyZGM1MC4uZDAzNzg4YzVjM2Q1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29y
ZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05MDgsNiArOTA4LDcgQEAKIAkJMzE0ODc3
RTYxRkFBQjAyNTAwQzA1NzU5IC8qIEpTT2Zmc2NyZWVuQ2FudmFzLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTQ4NzdFNDFGQUFCMDIyMDBDMDU3NTkg
LyogSlNPZmZzY3JlZW5DYW52YXMuaCAqLzsgfTsKIAkJMzE0QkUzQTExQjMwRjZCNzAwMTQxOTgy
IC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzE0QkUzQTAxQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VW
YWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJ
CTMxNEJFM0E3MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNEJFM0E1MUIz
MTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCAqLzsgfTsKKwkJMzE2
NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkE4MjUxNjE2QkQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi87IH07CiAJCTMxNkRDQjIwMUU3OENBNTUw
MDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCMUExRTc4Q0E1NTAwMUI1Rjg3IC8qIEpT
UlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggKi87IH07CiAJCTMxNkRDQjIyMUU3OENBNTUwMDFCNUY4
NyAvKiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0IxQzFFNzhDQTU1MDAxQjVGODcgLyogSlNS
VENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5oICovOyB9OwogCQkzMTZEQ0I0QzFFNzkxMEE2MDAx
QjVGODcgLyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjQ2MUU3OTEwQTYwMDFCNUY4NyAvKiBKU1JU
Q0ljZUNvbm5lY3Rpb25TdGF0ZS5oICovOyB9OwpAQCAtNzE4Miw2ICs3MTgzLDggQEAKIAkJMzE0
QkUzQTQxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYW1lZEltYWdlR2VuZXJhdGVkSW1h
Z2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTRCRTNBNTFCMzEwM0ZCMDAx
NDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkzMTU1NzRDQzIxOEY2NkQwMDBEODhGNjYgLyogUG9pbnRlckV2ZW50SU9T
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBvaW50ZXJFdmVudElP
Uy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkE4MjUxNjE2QkQwMDEw
RjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9wZW5HTFNvZnRM
aW5rQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTkyNTE2MTZC
RDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBPcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkz
MTZEQ0IxMjFFNzhCRTQzMDAxQjVGODcgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IHBhdGggPSBSVENPZmZlckFuc3dlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkzMTZEQ0IxNzFFNzhDMzMwMDAxQjVGODcgLyogUlRDUnRwVHJh
bnNjZWl2ZXJEaXJlY3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmlk
bDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTkxRTc4Q0E1NTAwMUI1Rjg3
IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgcGF0aCA9IEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTI2MzA1LDYgKzI2MzA4LDggQEAKIAkJCQk0OUZGQkYzRTExQzkzRUUz
MDA2QTcxMTggLyogV2ViR0xMYXllci5tbSAqLywKIAkJCQkzMTg0MzZEQjIxQjlEQUEwMDBFRDM4
M0UgLyogV2ViR1BVTGF5ZXIuaCAqLywKIAkJCQkzMTg0MzZERDIxQjlEQUEwMDBFRDM4M0UgLyog
V2ViR1BVTGF5ZXIubW0gKi8sCisJCQkJMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5H
TFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkzMTY0N0ZBOTI1MTYxNkJEMDAxMEY4RkIgLyogT3Bl
bkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJCSk7CiAJCQlwYXRoID0gY29jb2E7CiAJCQlzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOwpAQCAtMzEwODEsNiArMzEwODYsNyBAQAogCQkJCTgzMDQwMjgz
MjQ5QTdBNjIwMEE5MEQ4RCAvKiBEaXN0YW5jZU1vZGVsVHlwZS5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJODQ3MzBENzcxMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdodFNvdXJjZS5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJQjJGMzRGRTYwRTgyRjgxNDAwRjYyN0NEIC8qIEROUy5oIGluIEhlYWRl
cnMgKi8sCisJCQkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29j
b2EuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFRTY4NDZGMTJEMjZFMzgwMEU3MzIxNSAvKiBETlNS
ZXNvbHZlUXVldWVDRk5ldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTgxODVGNDAwOTc2NTc2NjAw
NTgyNkQ5IC8qIERvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODE4NUYzRDA5NzY1NzY2
MDA1ODI2RDkgLyogRG9jdW1lbnRGcmFnbWVudC5oIGluIEhlYWRlcnMgKi8sCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRH
TE9wZW5HTENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2Ev
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQppbmRleCBhNjI2YTE1MmY4ZTIuLmZkYTJh
MWQ4ZDE0NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29j
b2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1tCkBA
IC0zOSw2ICszOSw3IEBACiAjaW1wb3J0ICJIb3N0V2luZG93LmgiCiAjaW1wb3J0ICJJbWFnZUJ1
ZmZlci5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgorI2ltcG9ydCAiT3BlbkdMU29mdExpbmtDb2Nv
YS5oIgogI2ltcG9ydCAiV2ViR0xMYXllci5oIgogI2ltcG9ydCAiV2ViR0xPYmplY3QuaCIKICNp
bXBvcnQgIldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCIKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLjJhMzNlMTQyNjI5Ygot
LS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L09wZW5HTFNvZnRMaW5rQ29jb2EuaApAQCAtMCwwICsxLDQ4IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBB
TlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZ
IEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQu
ICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElB
QkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVY
RU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7
IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBU
SU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRI
RSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lC
SUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI3ByYWdtYSBvbmNlCisKKyNpbmNsdWRlIDx3
dGYvU29mdExpbmtpbmcuaD4KKworI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oTUFDQ0FU
QUxZU1QpCisKKyNpbmNsdWRlIDxPcGVuR0wvT3BlbkdMLmg+CisKK1NPRlRfTElOS19GUkFNRVdP
UktfRk9SX0hFQURFUihXZWJDb3JlLCBPcGVuR0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1Jf
SEVBREVSKFdlYkNvcmUsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAo
Y29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2Jq
ICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkpCitTT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX0hFQURFUihXZWJDb3JlLCBPcGVuR0wsIENHTENyZWF0ZUNvbnRleHQsIENHTEVy
cm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNoYXJlLCBDR0xDb250
ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1Jf
SEVBREVSKFdlYkNvcmUsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3Is
IChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0
cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1
ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihXZWJDb3JlLCBPcGVuR0wsIENHTERl
c2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50
IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5k
LCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIo
V2ViQ29yZSwgT3BlbkdMLCBDR0xEZXN0cm95Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwg
T3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5m
b09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29y
ZSwgT3BlbkdMLCBDR0xHZXRQYXJhbWV0ZXIsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgs
IENHTENvbnRleHRQYXJhbWV0ZXIgcG5hbWUsIEdMaW50ICpwYXJhbXMpLCAoY3R4LCBwbmFtZSwg
cGFyYW1zKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFdlYkNvcmUsIE9wZW5HTCwg
Q0dMUXVlcnlSZW5kZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dM
UmVuZGVyZXJJbmZvT2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5k
LCBucmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihXZWJDb3JlLCBPcGVuR0ws
IENHTFJlbGVhc2VQaXhlbEZvcm1hdCwgdm9pZCwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCksIChw
aXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29yZSwgT3BlbkdMLCBDR0xT
ZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3Jl
ZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoV2ViQ29y
ZSwgT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4
KSwgKGN0eCkpCisKKyNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi5mZmQ5YjYxMzlkNGQKLS0tIC9kZXYvbnVsbAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9PcGVuR0xTb2Z0TGlu
a0NvY29hLm1tCkBAIC0wLDAgKzEsNDcgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVT
UyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBU
SEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1Mg
Rk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5U
IFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
UFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0Us
IERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIg
Q0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09O
VFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5D
RSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0Yg
VEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNI
IERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBQTEFURk9STShNQUMp
IHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorCisjaW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgor
I2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9T
T1VSQ0UoV2ViQ29yZSwgT3BlbkdMKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShX
ZWJDb3JlLCBPcGVuR0wsIENHTENob29zZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENH
TFBpeGVsRm9ybWF0QXR0cmlidXRlICphdHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBH
TGludCAqbnBpeCksIChhdHRyaWJzLCBwaXgsIG5waXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9TT1VSQ0UoV2ViQ29yZSwgT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENH
TFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAq
Y3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShX
ZWJDb3JlLCBPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4
ZWxGb3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBh
dHRyaWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgT3BlbkdMLCBDR0xEZXNjcmliZVJl
bmRlcmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCByZW5kX251
bSwgQ0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwgcmVuZF9u
dW0sIHByb3AsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUs
IE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgp
LCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUsIE9wZW5HTCwg
Q0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVu
ZCksIChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUsIE9wZW5H
TCwgQ0dMR2V0UGFyYW1ldGVyLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBDR0xDb250
ZXh0UGFyYW1ldGVyIHBuYW1lLCBHTGludCAqcGFyYW1zKSwgKGN0eCwgcG5hbWUsIHBhcmFtcykp
CitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShXZWJDb3JlLCBPcGVuR0wsIENHTFF1ZXJ5
UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVy
SW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoV2ViQ29yZSwgT3BlbkdMLCBDR0xSZWxl
YXNlUGl4ZWxGb3JtYXQsIHZvaWQsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKK1NP
RlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUsIE9wZW5HTCwgQ0dMU2V0VmlydHVh
bFNjcmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQgc2NyZWVuKSwgKGN0
eCwgc2NyZWVuKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFdlYkNvcmUsIE9wZW5H
TCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgp
KQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0
Zm9ybVNjcmVlbk1hYy5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNj
cmVlbk1hYy5tbQppbmRleCBhMWI5NGNkMWE5MWQuLjI1M2UzZjI0NGRhOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQpAQCAtMzEsNiAr
MzEsNyBAQAogI2ltcG9ydCAiRmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFtZVZpZXcuaCIKICNp
bXBvcnQgIkhvc3RXaW5kb3cuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNp
bXBvcnQgIlNjcmVlblByb3BlcnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3luYy9Db2xvclN5bmMu
aD4KICNpbXBvcnQgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0gYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KaW5kZXggZGJmMzFkOGFhMzkxLi42
YzFkMjZlNDc5YTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJH
TEJsb2NrbGlzdC5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9j
a2xpc3QubW0KQEAgLTI5LDcgKzI5LDcgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbXBvcnQg
IkJsb2NrbGlzdFVwZGF0ZXIuaCIKLSNpbXBvcnQgPE9wZW5HTC9PcGVuR0wuaD4KKyNpbXBvcnQg
Ik9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZVdGlsaXRpZXNT
UEkuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409231</attachid>
            <date>2020-09-20 03:37:13 -0700</date>
            <delta_ts>2020-09-20 03:57:08 -0700</delta_ts>
            <desc>WIP3</desc>
            <filename>wip3.patch</filename>
            <type>text/plain</type>
            <size>60667</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IGU5ZTUwYjlmMjU3MS4uZThlNjkwZGRkNjU2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE1MCwxMiArMTUwLDYgQEAKIAkJMzE1RUJFMjQxRkNFNDYyQTAwQUM3QTg5IC8q
IHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLzsg
fTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNUVCRTI2MUZDRjgwOEMwMEFD
N0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVCRTI5MUZDRjgwOEMwMEFDN0E4OSAv
KiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi87IH07Ci0JCTMxNjQ3
RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhG
QiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLzsgfTsKLQkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9f
YXBwbGUuY3BwICovOyB9OwotCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0
N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07Ci0JCTMxNjQ3RkE1
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCAqLzsgfTsKLQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKLQkJMzE2
NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKIAkJMzFBMzMxQzIxRUE1RUQyNTAwRkQyMjAzIC8q
IGJpdHNldF91dGlscy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzFBMzMxQzAxRUE1RUQyNTAwRkQyMjAzIC8qIGJpdHNldF91dGlscy5oICovOyB9Owog
CQkzMUEzMzFDNjFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMzFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgKi87IH07CiAJCTMxQTMzMUM3MUVBNUVE
NUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUM0MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRp
bHMuaCAqLzsgfTsKQEAgLTE1NTMsNyArMTU0Nyw2IEBACiAvKiBFbmQgUEJYQ29weUZpbGVzQnVp
bGRQaGFzZSBzZWN0aW9uICovCiAKIC8qIEJlZ2luIFBCWEZpbGVSZWZlcmVuY2Ugc2VjdGlvbiAq
LwotCQkwRjg1REEyRjI1MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gU29mdExpbmtpbmdfYXBwbGUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMzEwMTJEQTAxOEI5N0I5QjAwMzkwNjJGIC8qIEJhc2VUeXBlcy5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBCYXNlVHlwZXMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzEwMTJEQTExOEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxh
dG9yLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEJ1aWx0SW5GdW5j
dGlvbkVtdWxhdG9yLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEwMTJEQTIx
OEI5N0I5QjAwMzkwNjJGIC8qIEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmggKi8gPSB7aXNhID0g
UEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBz
b3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJ1aWx0SW5GdW5jdGlvbkVtdWxhdG9yLmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xNjg4LDkgKzE2ODEsNiBAQAogCQkzMTVFQkUyMDFGQ0U0
NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07Ci0JCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbUluZm9fYXBwbGUuY3BwOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwotCQkzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25z
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwotCQkzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTMxQTMzMUMwMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gYml0c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNf
bWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGls
c19tYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVG
MDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IHN5c3RlbV91dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjk4Miw3
ICsyOTcyLDYgQEAKIAkJCQk1Q0IzMDExMTFERTM5RjFBMDBEMkM0MDUgLyogVHJhbnNmb3JtRmVl
ZGJhY2tHTC5oICovLAogCQkJCTVDQjMwMTEyMURFMzlGMUEwMEQyQzQwNSAvKiBWZXJ0ZXhBcnJh
eUdMLmNwcCAqLywKIAkJCQk1Q0IzMDExMzFERTM5RjFBMDBEMkM0MDUgLyogVmVydGV4QXJyYXlH
TC5oICovLAotCQkJCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0TGlua2luZ19hcHBs
ZS5oICovLAogCQkJKTsKIAkJCXBhdGggPSBnbDsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CkBAIC0yOTkwLDggKzI5NzksNiBAQAogCQk1Q0IzMDE0ODFERTM5RjM2MDBEMkM0MDUgLyogY2ds
ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKLQkJCQkzMTY0N0ZB
MjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi8sCi0JCQkJMzE2NDdGQTMyNTE1
OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgKi8sCiAJCQkJNUNDRDU5NzIyMjg0RkE4
MjAwMThGMkQ4IC8qIENvbnRleHRDR0wuY3BwICovLAogCQkJCTVDQ0Q1OTc1MjI4NEZBODIwMDE4
RjJEOCAvKiBDb250ZXh0Q0dMLmggKi8sCiAJCQkJNkUzMUEwQTEyMzRFRUVENDAwQzg0Nzg0IC8q
IERldmljZUNHTC5jcHAgKi8sCkBAIC0zMjIzLDcgKzMyMTAsNiBAQAogCQkJCTVDQ0Q1OTk5MjI4
NEZDNzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvLmggKi8sCiAJCQkJMzFCMTU3MjEyMzZCODAzMzAw
Q0FBNEZEIC8qIFN5c3RlbUluZm9faW50ZXJuYWwuaCAqLywKIAkJCQkzMUIxNTcxRjIzNkI3RkFF
MDBDQUE0RkQgLyogU3lzdGVtSW5mb19pb3MuY3BwICovLAotCQkJCTMxNjQ3RjlFMjUxMUExQTYw
MDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1
MDAxOEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSAqLywKIAkJCSk7CiAJCQluYW1lID0gZ3B1
aW5mb3V0aWw7CkBAIC0zNDM1LDcgKzM0MjEsNiBAQAogCQkJCTMxQ0RGRjVCMjQ5MTg0OEMwMDQ4
NkYyNyAvKiBDb2xvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGRTQyNDkxODRBNzAwNDg2
RjI3IC8qIENvbW1vbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDRDAwNkMyNDkxODRGQzAwNDg2
RjI3IC8qIENvbXBpbGVyLmggaW4gSGVhZGVycyAqLywKLQkJCQkzMTY0N0ZBNTI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkZFNzI0OTE4
NEE3MDA0ODZGMjcgLyogQ29tcGlsZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDE1MjQ5
MTg0RTcwMDQ4NkYyNyAvKiBDb21waWxlckdMLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDAz
RjI0OTE4NEY0MDA0ODZGMjcgLyogQ29tcGlsZXJJbXBsLmggaW4gSGVhZGVycyAqLywKQEAgLTM4
NDEsNyArMzgyNiw2IEBACiAJCQkJNUNDRDgxOEUxREJGRUExMDAwNjA2NkI4IC8qIENvbG9yLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMTAxMkUxNjE4Qjk3QjlCMDAzOTA2MkYgLyogQ29tbW9uLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkRERDFCMDQzOEQzMDAyMzU1NTIgLyogQ29tcGlsZXIu
aCBpbiBIZWFkZXJzICovLAotCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5j
dGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMURCQzJDMUIwNDM3NUYwMDIzNTU1MiAvKiBD
b21waWxlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNCMzAxMUIxREUzOUYxQTAwRDJDNDA1IC8q
IENvbXBpbGVyR0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNERDMURFNDE2NDgwMEQyQzQw
NSAvKiBDb21waWxlckltcGwuaCBpbiBIZWFkZXJzICovLApAQCAtNDQ0OSw3ICs0NDMzLDYgQEAK
IAkJCQkzMUNERkU5NTI0OTE4NDNBMDA0ODZGMjcgLyogSXNBU1REZXB0aEJlbG93TGltaXQuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFMzAyNDkxODQyODAwNDg2RjI3IC8qIExleGVyLmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRURDMjQ5MTg0NTgwMDQ4NkYyNyAvKiBsb2FkX2Z1
bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTMxNjQ3RkEwMjUx
MUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRUIyMjQ5MTg0NDIwMDQ4NkYyNyAvKiBsb2FkaW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJMzFDREZFQjQyNDkxODQ0MjAwNDg2RjI3IC8qIGxvYWRpbWFnZV9ldGMuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJMzFDREZGMUYyNDkxODQ1RjAwNDg2RjI3IC8qIExvZ2dpbmdBbm5vdGF0
b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NDU4LDcgKzQ0NDEsNiBAQAogCQkJCTMxQ0RGRTE5
MjQ5MTg0MjMwMDQ4NkYyNyAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNE
RkUxQTI0OTE4NDIzMDA0ODZGMjcgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxQ0RGRTFCMjQ5MTg0MjMwMDQ4NkYyNyAvKiBNZW1vcnlCdWZmZXIuY3BwIGluIFNvdXJj
ZXMgKi8sCi0JCQkJMzE2NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVFQTI0OTE4NDVGMDA0ODZGMjcgLyogTWVtb3J5T2Jq
ZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUQyMjQ5MTg0NTMwMDQ4NkYyNyAvKiBN
ZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYwRTI0OTE4NDVGMDA0
ODZGMjcgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDc4NCw3
ICs0NzY2LDYgQEAKIAkJCQkzMTVFQkQ5QzFGQ0U0NDM2MDBBQzdBODkgLyogSXNBU1REZXB0aEJl
bG93TGltaXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTI2NEY4QjYxNjk3NERFRDAwNkZBQTVB
IC8qIExleGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQjMwNEVGMURFNDE2NDgwMEQyQzQw
NSAvKiBsb2FkX2Z1bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAotCQkJ
CTMxNjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDQ0Q1OTk1MjI4NEZDNDAwMDE4RjJEOCAvKiBsb2FkaW1hZ2UuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUNDRDU5OTIyMjg0RkM0MDAwMThGMkQ4IC8qIGxvYWRpbWFnZV9l
dGMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE1RUJERTgxRkNFNDUyRDAwQUM3QTg5IC8qIExv
Z2dpbmdBbm5vdGF0b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NzkzLDcgKzQ3NzQsNiBAQAog
CQkJCTVDQzdENDcyMTkxMDI2MjEwMDBCOEMxRiAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1QzU1RDcyNTIyODI3NDc3MDBCNUJBMkMgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTVDMURCQkYxMUIwNDM2RUMwMDIzNTU1MiAvKiBNZW1vcnlCdWZmZXIu
Y3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1
bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk2NDIyODRGNzk2MDAxOEYyRDgg
LyogTWVtb3J5T2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUEzMDMwNzhCMjMwNUY4RjAw
MDJEQTk3MiAvKiBNZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTVFQkRG
MzFGQ0U0NTJEMDBBQzdBODkgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICov
LApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRp
b25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5kZXggOTA3YzRhMmIxNTU1Li4zMTU4MmI5MjJi
ZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FO
R0xFLWR5bmFtaWMueGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmln
dXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZwpAQCAtMTEsNyArMTEsNyBAQCBBTkdMRV9P
VEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2
c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtbHo7CitBTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3Jr
IE9wZW5HTCAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9L
aXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKE5PUk1BTF9XRUJD
T1JFX0ZSQU1FV09SS1NfRElSKS9XZWJDb3JlLmZyYW1ld29yay9GcmFtZXdvcmtzOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGlj
LnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUt
c3RhdGljLnhjY29uZmlnCmluZGV4IDE4ZDJiNDNmYjY1Zi4uNGQxZDIyMTE5MzVhIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMu
eGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtc3RhdGljLnhjY29uZmlnCkBAIC0xMSw3ICsxMSw3IEBAIEFOR0xFX09USEVSX0xERkxBR1Nf
d2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9M
REZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVs
YXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAk
KEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxB
R1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1s
ejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1m
cmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKIEFOR0xFX09USEVSX0xE
RkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIE9wZW5HTCAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRI
X1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpp
bmRleCA0ZmJkYmNiOGNlMjAuLjA0ZmJlOWVmZTdjOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dM
RVN2Mi5jbWFrZQpAQCAtMTY3LDkgKzE2Nyw3IEBAIHNldChsaWJhbmdsZV9ncHVfaW5mb191dGls
X2xpYnBjaV9zb3VyY2VzCiBzZXQobGliYW5nbGVfZ3B1X2luZm9fdXRpbF94MTFfc291cmNlcyAi
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb194MTEuY3BwIiApCiAKIAotc2V0KGxpYmFuZ2xl
X2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMKLSAgICAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVt
SW5mb19hcHBsZS5tbSIKLSAgICAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5t
bSIgKQorc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMgInNyYy9ncHVfaW5m
b191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkKIAogCiBzZXQobGliYW5nbGVfaW5jbHVkZXMK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0u
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaAppbmRleCA5
ZDI1MzM0ODQ4NjguLjA0MTZlZDIwMWQ1OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTI4LDExICsxMjgsNiBAQAogIyAgICAgICAgICAg
IGRlZmluZSBBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYKICMgICAg
ZW5kaWYKLSMgICAgLy8gVGhpcyBtaWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21l
bnQgaXQgaXMgdXNlZAotIyAgICAvLyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIElu
dGVsIGFuZCBBcHBsZSBTaWxpY29uLgotIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVm
aW5lZChfX2FhcmNoNjRfXykKLSMgICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQKLSMgICAg
ZW5kaWYKICNlbmRpZgogCiAvLyBEZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mb19pb3MuY3BwCmluZGV4IGJkMjIxOTcwNjJlOC4uYzBkNDM2ZjU2MThjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZv
X2lvcy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwv
U3lzdGVtSW5mb19pb3MuY3BwCkBAIC04LDE0ICs4LDE0IEBACiAKICNpbmNsdWRlICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQp
KQorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkKIAogIyAgICBpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3RlbUlu
Zm9faW50ZXJuYWwuaCIKIAogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKLWJvb2wgR2V0U3lzdGVtSW5m
b19pb3MoU3lzdGVtSW5mbyAqaW5mbykKK2Jvb2wgR2V0U3lzdGVtSW5mbyhTeXN0ZW1JbmZvICpp
bmZvKQogewogICAgIHsKICAgICAgICAgLy8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEdldCB0
aGUgYWN0dWFsIHN5c3RlbSB2ZXJzaW9uLgpAQCAtMjcsNCArMjcsNCBAQCBib29sIEdldFN5c3Rl
bUluZm9faW9zKFN5c3RlbUluZm8gKmluZm8pCiAKIH0gIC8vIG5hbWVzcGFjZSBhbmdsZQogCi0j
ZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2VuZGlm
ICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbQppbmRleCAyYWI5MmZjNzY0
ZGYuLmE4ZWQ3YWYyNmY0MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCkBAIC0xNSw4ICsx
NSw2IEBACiAjICAgIGltcG9ydCA8Q29jb2EvQ29jb2EuaD4KICMgICAgaW1wb3J0IDxJT0tpdC9J
T0tpdExpYi5oPgogCi0jICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuaCIKLQogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKQEAgLTIxMCw3ICsyMDgsNyBAQCB1
aW50NjRfdCBHZXRHcHVJREZyb21PcGVuR0xEaXNwbGF5TWFzayh1aW50MzJfdCBkaXNwbGF5TWFz
aykKICAgICByZXR1cm4gMDsKIH0KIAotYm9vbCBHZXRTeXN0ZW1JbmZvX21hYyhTeXN0ZW1JbmZv
ICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8pCiB7CiAgICAgewog
ICAgICAgICBpbnQzMl90IG1ham9yID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcAppbmRleCBmZmY2OGQ2MzUwNjYuLmUzZWJlMzI1ZGFh
MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3Bs
YXkuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5
LmNwcApAQCAtNTMsOSArNTMsNiBAQAogIyAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVy
ZXIvZ2wvd2dsL0Rpc3BsYXlXR0wuaCIKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogIyAgICAgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKLSMgICAgICAg
IGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVf
Q1BVX0FSTTY0KQotIyAgICAgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGlzcGxheUVBR0wuaCIKLSMgICAgICAgIGVuZGlmCiAjICAgIGVsaWYgZGVmaW5lZChBTkdM
RV9QTEFURk9STV9JT1MpCiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLmgiCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9MSU5V
WCkKQEAgLTI2MywyOCArMjYwLDggQEAgcng6OkRpc3BsYXlJbXBsICpDcmVhdGVEaXNwbGF5RnJv
bUF0dHJpYnMoRUdMQXR0cmliIGRpc3BsYXlUeXBlLAogI2lmIGRlZmluZWQoQU5HTEVfRU5BQkxF
X09QRU5HTCkKICMgICAgaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9XSU5ET1dTKQogICAgICAg
ICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheVdHTChzdGF0ZSk7Ci0gICAgICAgICAgICBicmVh
azsKLQotIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpCi0gICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0YXRlKTsKLSAgICAgICAgICAgIGJyZWFrOwot
IyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0jICAgICAgICBp
ZiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKLSMgICAgICAgICAgIC8vIEZJWE1FOiBEZWNpZGUg
YXQgcnVudGltZQotICAgICAgICAgICAgaWYgKCgwKSkgLy8gcnVubmluZyBpT1Mgc3R1ZmYKLSAg
ICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0
YXRlKTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0KLSAgICAgICAgICAg
IGVsc2UKLSAgICAgICAgICAgIHsKLSAgICAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNw
bGF5RUFHTChzdGF0ZSk7Ci0gICAgICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICAgICB9Ci0j
ICAgICAgICBlbHNlCisjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwg
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKICAgICAgICAgICAgIGltcGwgPSBu
ZXcgcng6OkRpc3BsYXlDR0woc3RhdGUpOwotICAgICAgICAgICAgYnJlYWs7Ci0jICAgICAgICBl
bmRpZgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQogICAgICAgICAgICAg
aW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUpOwogIyAgICBlbGlmIGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTElOVVgpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcAppbmRleCAyZDNmZTQxZTAxNTYuLmU0MzQ5NmZjMzQ3
MSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Zvcm1h
dHV0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9y
bWF0dXRpbHMuY3BwCkBAIC0xMDMwLDggKzEwMzAsNyBAQCBzdGF0aWMgSW50ZXJuYWxGb3JtYXRJ
bmZvTWFwIEJ1aWxkSW50ZXJuYWxGb3JtYXRJbmZvTWFwKCkKICAgICBBZGRSR0JBRm9ybWF0KCZt
YXAsIEdMX1JHQkEsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX1JHQkEs
ICAgICAgICAgICBHTF9CWVRFLCAgICAgICAgICAgICAgICAgICAgICAgIEdMX1NJR05FRF9OT1JN
QUxJWkVELCAgIGZhbHNlLCBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCAgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKICAgICBB
ZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1NSR0IsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwg
IDAsIDAsIEdMX1NSR0IsICAgICAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAg
IEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjpz
UkdCPiwgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQs
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3Vw
cG9ydGVkKTsKICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1NSR0JfQUxQSEFfRVhULCBmYWxz
ZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX1NSR0JfQUxQSEFfRVhULCBHTF9VTlNJR05FRF9CWVRF
LCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0
PCZFeHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwg
UmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6c1JHQj4sICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBw
b3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykK
LSAgICAvLyBJIHRoaW5rIHRoaXMgbmVlZHMgYSBydW50aW1lIGNoZWNrIHRvby4KKyNpZiBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpCiAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JBX0VYVCwgICAgICAgZmFsc2Us
ICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAgR0xfVU5TSUdORURfQllURSwg
ICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBmYWxzZSwgUmVxdWlyZUVTPDIs
IDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbHdheXNTdXBwb3J0ZWQsIFJl
cXVpcmVFUzwyLCAwPiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldmVyU3VwcG9y
dGVkLCBOZXZlclN1cHBvcnRlZCk7CiAjZWxzZQogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xf
QkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfQkdSQV9FWFQsICAg
ICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpF
RCwgZmFsc2UsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JBODg4OD4s
ICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9ybWF0
QkdSQTg4ODg+LCBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCAzODg1OTA2M2QxMTguLjAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKKysrIC9kZXYv
bnVsbApAQCAtMSwzMiArMCwwIEBACi0vLwotLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVy
bmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKLS8vIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCi0vLwotCi0vLyBDR0xGdW5jdGlvbnMuY3BwOiBFeHBvc2luZyB0aGUgc29m
dC1saW5rZWQgQ0dMIGludGVyZmFjZS4KLQotI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgot
I2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKLQotI2lm
IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCi0KLVNPRlRfTElOS19GUkFNRVdPUktfU09V
UkNFKE9wZW5HTCkKLQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTENob29z
ZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlICph
dHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAqbnBpeCksIChhdHRyaWJzLCBw
aXgsIG5waXgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTENyZWF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNo
YXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKLVNPRlRfTElOS19G
VU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRy
aWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVl
KSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95Q29udGV4dCwg
Q0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotU09GVF9MSU5LX0ZVTkNUSU9O
X1NPVVJDRShPcGVuR0wsIENHTERlc3Ryb3lQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhl
bEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xFcnJvclN0cmluZywgY29uc3QgY2hhciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3Ip
KQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFJlbGVhc2VDb250ZXh0LCB2
b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VS
Q0UoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2Jq
IGN0eCksIChjdHgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFNldFZp
cnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiks
IChjdHgsIHNjcmVlbikpCi1TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMVGV4
SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xlbnVtIHRh
cmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1hdCwgR0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWln
aHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBJT1N1cmZhY2VSZWYgaW9TdXJmYWNlLCBH
THVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQsIGludGVybmFsX2Zvcm1hdCwgd2lkdGgsIGhlaWdo
dCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2UsIHBsYW5lKSkKLVNPRlRfTElOS19GVU5DVElPTl9T
T1VSQ0UoT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmog
Y3R4KSwgKGN0eCkpCi0KLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXNj
cmliZVJlbmRlcmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCBy
ZW5kX251bSwgQ0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwg
cmVuZF9udW0sIHByb3AsIHZhbHVlKSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiBy
ZW5kKSwgKHJlbmQpKQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFF1ZXJ5
UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVy
SW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQp
KQotCi0jZW5kaWYgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dM
RnVuY3Rpb25zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA0
ZDQ0ZmY1ZThhZTkuLjAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oCisrKyAvZGV2L251bGwK
QEAgLTEsMzkgKzAsMCBAQAotLy8KLS8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCi0vLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBi
eSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCi0vLyBmb3VuZCBpbiB0aGUgTElDRU5T
RSBmaWxlLgotLy8KLQotLy8gU29mdExpbmtpbmdfYXBwbGUuY3BwOiBNYWNyb3MgZm9yIHNvZnQt
bGlua2luZyBGcmFtZXdvcmtzIGFuZCBGdW5jdGlvbnMuCi0KLSNpZm5kZWYgQ0dMX0ZVTkNUSU9O
U19IXwotI2RlZmluZSBDR0xfRlVOQ1RJT05TX0hfCi0KLSNpbmNsdWRlICJjb21tb24vcGxhdGZv
cm0uaCIKLQotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCi0KLSNpbmNsdWRlIDxP
cGVuR0wvT3BlbkdMLmg+Ci0KLSNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlu
a2luZ19hcHBsZS5oIgotCi1TT0ZUX0xJTktfRlJBTUVXT1JLX0hFQURFUihPcGVuR0wpCi0KLVNP
RlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dM
RXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxG
b3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKLVNPRlRf
TElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9i
aiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9w
ZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9i
aiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xp
bnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVO
Q1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xS
ZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkg
cHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCi1TT0ZU
X0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9y
LCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIo
T3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4KSwgKHBpeCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVz
dHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChy
ZW5kKSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xFcnJvclN0cmluZywg
Y29uc3QgY2hhciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3IpKQotU09GVF9MSU5LX0ZVTkNU
SU9OX0hFQURFUihPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWlu
dCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwg
KGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihP
cGVuR0wsIENHTFJlbGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4
KSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29udGV4
dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotU09GVF9MSU5LX0ZVTkNU
SU9OX0hFQURFUihPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29u
dGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCi1TT0ZUX0xJTktfRlVO
Q1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3IsIChD
R0xDb250ZXh0T2JqIGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1hdCwg
R0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBl
LCBJT1N1cmZhY2VSZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQsIGlu
dGVybmFsX2Zvcm1hdCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2UsIHBs
YW5lKSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0
LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCi0KLSNlbmRpZiAvLyBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0FQUExFKQotCi0jZW5kaWYgLy8gQ0dMX0ZVTkNUSU9OU19IXwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9EaXNwbGF5Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCmluZGV4IGU3Y2MyYmEyZmE2My4uNzlh
MTFkNGQyOThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCkBAIC0yOCw4
ICsyOCw2IEBACiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dT
dXJmYWNlQ0dMLmgiCiAjICAgIGluY2x1ZGUgInBsYXRmb3JtL1BsYXRmb3JtTWV0aG9kcy5oIgog
Ci0jICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIK
LQogbmFtZXNwYWNlCiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFj
ZVN1cmZhY2VDR0wuY3BwCmluZGV4IDhlZDQzOTFlMDMwZC4uYWZkY2E0ZjJlZjk2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAKQEAgLTI3
LDggKzI3LDYgQEAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvVGV4dHVyZUdM
LmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgi
CiAKLSMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5o
IgotCiBuYW1lc3BhY2UgcngKIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dT
dXJmYWNlQ0dMLm1tCmluZGV4IDFhMTI2OWQ5ZDE4Ny4uMGZhNTdiZTQzYjc3IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dp
bmRvd1N1cmZhY2VDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCkBAIC0yMyw4ICsyMyw2IEBA
CiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmgiCiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCiAKLSMg
ICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgotCiBA
aW50ZXJmYWNlIFdlYlN3YXBMYXllciA6IENBT3BlbkdMTGF5ZXIgewogICAgIENHTENvbnRleHRP
YmogbURpc3BsYXlDb250ZXh0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcCBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wu
Y3BwCmluZGV4IDY0MTk3ZmZlZmQ1Ny4uYTk4MzQ2MTkyNDBjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdM
LmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EZXZpY2VFQUdMLmNwcApAQCAtOCw3ICs4LDcgQEAKIAogI2ltcG9ydCAiY29tbW9u
L3BsYXRmb3JtLmgiCiAKLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpCiAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdM
LmgiCiAKQEAgLTU2LDQgKzU2LDQgQEAgdm9pZCBEZXZpY2VFQUdMOjpnZW5lcmF0ZUV4dGVuc2lv
bnMoZWdsOjpEZXZpY2VFeHRlbnNpb25zICpvdXRFeHRlbnNpb25zKSBjb25zdAogCiB9ICAvLyBu
YW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYm
ICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oCmluZGV4
IDkzYWJmZmMwMjg1Zi4uNTc2OTY5MjFlZjNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2
aWNlRUFHTC5oCkBAIC0xMSw3ICsxMSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5o
IgogCi0jaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogCiAjaW5j
bHVkZSAibGliQU5HTEUvRGV2aWNlLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvRGV2
aWNlSW1wbC5oIgpAQCAtMzQsNiArMzQsNiBAQCBjbGFzcyBEZXZpY2VFQUdMIDogcHVibGljIERl
dmljZUltcGwKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gKGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkp
IHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xF
X0NQVV9BUk02NCkpCisjZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKIAogI2VuZGlmICAvLyBMSUJBTkdM
RV9SRU5ERVJFUl9HTF9FQUdMX0RFVklDRUVBR0xfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
aXNwbGF5RUFHTC5oCmluZGV4IGE1MzY2ZTkxNmU5Yy4uMjYxYmE0MDdkMTkzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
aXNwbGF5RUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKQEAgLTExLDcgKzExLDcgQEAKIAogI2ltcG9y
dCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1Mp
ICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNp
ZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpCiAKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9EaXNwbGF5R0wu
aCIKIApAQCAtOTcsNiArOTcsNiBAQCBjbGFzcyBEaXNwbGF5RUFHTCA6IHB1YmxpYyBEaXNwbGF5
R0wKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAvLyAoZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FS
TTY0KSkKKyNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAKICNlbmRpZiAgLy8gTElCQU5HTEVfUkVOREVS
RVJfR0xfRUFHTF9ESVNQTEFZRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0gYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5
RUFHTC5tbQppbmRleCBlODA0ODM2MzdlNWQuLmNlYjJkMTFmYzc5OSAxMDA2NDQKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxh
eUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0KQEAgLTgsNyArOCw3IEBACiAKICNpbXBvcnQgImNv
bW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisjaWYgZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5
RUFHTC5oIgogCkBAIC0yNyw2ICsyNyw4IEBACiAjICAgIGltcG9ydCA8UXVhcnR6Q29yZS9RdWFy
dHpDb3JlLmg+CiAjICAgIGltcG9ydCA8ZGxmY24uaD4KIAorIyAgICBkZWZpbmUgR0xFU19TSUxF
TkNFX0RFUFJFQ0FUSU9OCisKIG5hbWVzcGFjZQogewogCkBAIC0zNzIsNCArMzc0LDQgQEAgdm9p
ZCBEaXNwbGF5RUFHTDo6cG9wdWxhdGVGZWF0dXJlTGlzdChhbmdsZTo6RmVhdHVyZUxpc3QgKmZl
YXR1cmVzKQogfQogfQogCi0jZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2Vu
ZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbSBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3Vy
ZmFjZVN1cmZhY2VFQUdMLm1tCmluZGV4IGIwNjQ5YWQ2NThkYS4uZDBiNWM5ODBiYWM5IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQpA
QCAtOSw3ICs5LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmlu
ZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAKICMgICAgaW1wb3J0ICJsaWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLmgiCiAKQEAgLTQyNyw0
ICs0MjcsNCBAQCBJT1N1cmZhY2VMb2NrT3B0aW9ucyBJT1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0
SU9TdXJmYWNlTG9ja09wdGlvbnMoKSBjb25zdAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2Vu
ZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNlbmRpZiAgLy8gZGVmaW5lZChBTkdM
RV9QTEFURk9STV9JT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1
cmZhY2VFQUdMLmNwcAppbmRleCBjYjE2NmE0YWVlNzMuLjM2ZjFjMTViOTc1ZCAxMDA2NDQKLS0t
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
UGJ1ZmZlclN1cmZhY2VFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCkBAIC05LDcg
KzksNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
KSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdM
RV9DUFVfQVJNNjQpKQorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5oIgogCkBAIC0xNDQsNCArMTQ0LDQg
QEAgRnJhbWVidWZmZXJJbXBsICpQYnVmZmVyU3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFt
ZWJ1ZmZlcihjb25zdCBnbDo6Q29udGV4dAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlm
ICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
ICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9JT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcApp
bmRleCA0ZDNjZmJiZTdjMzUuLmE0NzM4YjI1NjZiMyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNw
cAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9SZW5kZXJlckVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2lmIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdM
LmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdM
LmgiCkBAIC0zMSw0ICszMSw0IEBAIFdvcmtlckNvbnRleHQgKlJlbmRlcmVyRUFHTDo6Y3JlYXRl
V29ya2VyQ29udGV4dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIAogfSAgLy8gbmFtZXNwYWNlIHJ4
CiAKLSNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisjZW5kaWYgIC8vIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0gYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5k
b3dTdXJmYWNlRUFHTC5tbQppbmRleCA5YzgzY2NlN2Q0ZjkuLjM4ZDI1M2ViZGViMyAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvV2luZG93U3VyZmFjZUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0KQEAgLTgsNyAr
OCw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgKGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkp
IHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xF
X0NQVV9BUk02NCkpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVu
ZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCkBAIC0yMiwyMCArMjIsNyBAQAog
IyAgICBpbXBvcnQgPE9wZW5HTEVTL0VBR0wuaD4KICMgICAgaW1wb3J0IDxRdWFydHpDb3JlL1F1
YXJ0ekNvcmUuaD4KIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYm
IGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQotLy9AcHJvdG9jb2wgRUFHTERyYXdhYmxlCi0vLy0g
KEJPT0wpcHJlc2VudFJlbmRlcmJ1ZmZlcjooTlNVSW50ZWdlcil0YXJnZXQ7Ci0vL0BlbmQKLS8v
Ci0vL0BpbnRlcmZhY2UgQ0FFQUdMTGF5ZXIgOiBDQUxheWVyIDxFQUdMRHJhd2FibGU+Ci1AaW50
ZXJmYWNlIENBRUFHTExheWVyIDogQ0FMYXllcgotQGVuZAotCi1AaW50ZXJmYWNlIEVBR0xDb250
ZXh0ICgpCi0tIChCT09MKXByZXNlbnRSZW5kZXJidWZmZXI6KE5TVUludGVnZXIpdGFyZ2V0Owot
QGVuZAotCi0jZW5kaWYKKy8vIFRPRE8oYW5nbGVidWcuY29tLzQyNzUpOiBJdCdzIG5vdCBjbGVh
ciB3aHkgdGhpcyBuZWVkcyB0byBiZSBhbiBFQUdMTGF5ZXIuCiAKIEBpbnRlcmZhY2UgV2ViU3dh
cExheWVyIDogQ0FFQUdMTGF5ZXIgewogICAgIEVBR0xDb250ZXh0T2JqIG1EaXNwbGF5Q29udGV4
dDsKQEAgLTMxOSw0ICszMDYsNCBAQCBGcmFtZWJ1ZmZlckltcGwgKldpbmRvd1N1cmZhY2VFQUdM
OjpjcmVhdGVEZWZhdWx0RnJhbWVidWZmZXIoY29uc3QgZ2w6OkNvbnRleHQgKgogCiB9ICAvLyBu
YW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYm
ICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVu
ZGVyZXJnbF91dGlscy5jcHAKaW5kZXggYmU5YmMxNjI1MTRiLi40ZWExMDZhY2U4ODQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9y
ZW5kZXJlcmdsX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKQEAgLTEzNDQsNyArMTM0NCw2
IEBAIHZvaWQgR2VuZXJhdGVDYXBzKGNvbnN0IEZ1bmN0aW9uc0dMICpmdW5jdGlvbnMsCiAgICAg
ICAgIGZ1bmN0aW9ucy0+aGFzR0xFU0V4dGVuc2lvbigiR0xfRVhUX2NvbXByZXNzZWRfRVRDMV9S
R0I4X3N1Yl90ZXh0dXJlIik7CiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8
fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQotICAgIC8vIEZJWE1FOiBSdW50
aW1lIGNoZWNrIG5vdCBBUk02NAogICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1
bmN0aW9ucyk7CiAgICAgaWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYg
Km1heFN1cHBvcnRlZEVTVmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKICAgICB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnIGIv
U291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwppbmRleCA1NzFl
OGViMDcwNjAuLmI4MTA5ZTYzNDY2ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0
aW9ucy9XZWJDb3JlLnhjY29uZmlnCkBAIC0xMDUsNiArMTA1LDE2IEBAIFdLX01PQklMRV9DT1JF
X1NFUlZJQ0VTX0xERkxBR1NfY29jb2F0b3VjaCA9IC1mcmFtZXdvcmsgTW9iaWxlQ29yZVNlcnZp
Y2VzOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUyA9ICQoV0tfTU9CSUxFX0dFU1RBTFRfTERG
TEFHU18kKFdLX0NPQ09BX1RPVUNIKSk7CiBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29h
dG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiAKK1dLX09QRU5HTF9MREZMQUdTID0gJChXS19PUEVO
R0xfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKK1dLX09QRU5HTF9MREZMQUdTX2lwaG9u
ZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUzsKK1dLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVs
YXRvciA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7CitXS19PUEVOR0xfTERGTEFHU193YXRjaG9zID0g
JChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7CitXS19PUEVOR0xfTERGTEFHU193YXRjaHNp
bXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKK1dLX09QRU5H
TF9MREZMQUdTX2FwcGxldHZvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MpOworV0tf
T1BFTkdMX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBo
b25lc2ltdWxhdG9yKTsKK1dLX09QRU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29y
ayBPcGVuR0w7CitXS19PUEVOR0xfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsK
KwogV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHUyA9ICQoV0tfU1lTVEVNX0NPTkZJR1VS
QVRJT05fTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKIFdLX1NZU1RFTV9DT05GSUdVUkFU
SU9OX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBTeXN0ZW1Db25maWd1cmF0aW9uOwogCkBA
IC0xMTQsNyArMTI0LDcgQEAgV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyA9ICQoV0tfVVJMX0ZP
Uk1BVFRJTkdfTERGTEFHU18kKFdLX0hBVkVfVVJMX0ZPUk1BVFRJTkcKIFdLX1VSTF9GT1JNQVRU
SU5HX0xERkxBR1NfWUVTID0gLWZyYW1ld29yayBVUkxGb3JtYXR0aW5nOwogCiAvLyBGSVhNRTog
UmVkdWNlIHRoZSBudW1iZXIgb2YgYWxsb3dhYmxlX2NsaWVudHMgPHJkYXI6Ly9wcm9ibGVtLzMx
ODIzOTY5PgotT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZS
QU1FV09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxvYmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGll
bnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9y
Y2VfbG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvbGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdv
cmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29y
ayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZy
YW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JN
XyQoV0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9S
TV9OQU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQo
V0tfQVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlf
TERGTEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19DT1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1Nf
U0VSVklDRVNfTERGTEFHUykgJChXS19JT1NVUkZBQ0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChX
S19MSUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAk
KFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERG
TEFHUykgJChXS19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFH
Uyk7CitPVEhFUl9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJBTUVX
T1JLX0xERkxBR1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVudCBX
ZWJDb3JlVGVzdFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3JjZV9s
b2FkICQoQlVJTFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29yayAt
ZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENv
cmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3
b3JrIEltYWdlSU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChX
S19DT0NPQV9UT1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JNX05B
TUUpKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChXS19B
VURJT19VTklUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9MREZM
QUdTKSAkKFdLX0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJW
SUNFU19MREZMQUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdLX0xJ
QldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tf
TU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19PUEVOR0xfTERGTEFHUykgJChXS19TWVNURU1f
Q09ORklHVVJBVElPTl9MREZMQUdTKSAkKFdLX0NPUkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxf
Rk9STUFUVElOR19MREZMQUdTKTsKIAogT1RIRVJfTERGTEFHU19QTEFURk9STV9jb2NvYXRvdWNo
ID0gLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1hbGxvd2FibGVfY2xpZW50IGlUdW5lc1UgLWFs
bG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxsb3dhYmxlX2NsaWVudCBSZW1vdGUgLWFsbG93
YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxlX2NsaWVudCBEdW1wUmVuZGVyVHJlZSAtYWxs
b3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVyIC1hbGxvd2FibGVfY2xpZW50IFRlc3RXZWJL
aXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNX21hY29zeCA9IC1zdWJfbGlicmFyeSBsaWJv
YmpjIC11bWJyZWxsYSBXZWJLaXQ7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFM
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2Rl
cHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggODI5OTgwMzg0NDQ1Li42MDVmNjA3M2VlOTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oK
QEAgLTExOSw4ICsxMTksNiBAQAogCQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLzsgfTsKIAkJMkUx
MzQyQ0QyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIg
LyogVUlLaXRTb2Z0TGluay5tbSAqLzsgfTsKIAkJMzEzMDhCMTQyMEEyMTcwNTAwM0ZCOTI5IC8q
IFN5c3RlbVByZXZpZXdTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMxMzA4QjEzMjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmgg
Ki87IH07Ci0JCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29h
Lm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdG
QUUyNTE3NTlEQjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi87IH07Ci0JCTMx
NjQ3RkIxMjUxNzU5RUYwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRjI1MTc1OURDMDAx
MEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovOyB9OwogCQk0MTZFOTk1MzIzREFFNkJF
MDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RTk5NTEyM0RBRTZCRDAwRTg3MUNCIC8qIEF1
ZGlvVG9vbGJveFNvZnRMaW5rLmNwcCAqLzsgfTsKIAkJNDE2RTk5NTQyM0RBRTZCRTAwRTg3MUNC
IC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSA0MTZFOTk1MjIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94
U29mdExpbmsuaCAqLzsgfTsKIAkJNDFFMUYzNDQyNDhBNkEwMDAwMjJENURFIC8qIFZpZGVvVG9v
bGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5j
cHAgKi87IH07CkBAIC0zMDcsOCArMzA1LDYgQEAKIAkJMkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQy
IC8qIFVJS2l0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlL
aXRTb2Z0TGluay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkyRTEzNDJDQjIxNUFB
MTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
Lm9iamNwcDsgcGF0aCA9IFVJS2l0U29mdExpbmsubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTMxMzA4QjEzMjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IFN5c3RlbVByZXZpZXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKLQkJMzE2NDdGQUUyNTE3NTlEQjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0g
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5vYmpjcHA7IHBhdGggPSBPcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwotCQkzMTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29m
dExpbmtDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcGVuR0xTb2Z0TGlua0NvY29hLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM3MTE5QTc4MjBDQ0I1RkYwMDJDNkRDOSAvKiBXZWJL
aXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0VGFyZ2V0
Q29uZGl0aW9uYWxzLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTZF
OTk1MTIzREFFNkJEMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTZFOTk1MjIzREFFNkJFMDBFODcxQ0IgLyog
QXVkaW9Ub29sYm94U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
QXVkaW9Ub29sYm94U29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY1
OCw4ICs2NTQsNiBAQAogCQkJCTFDMDIyRUZDMjJDRkU4RTAwMDZERjAxQiAvKiBHdW56aXAuY3Bw
ICovLAogCQkJCUNEQUNCMzVFMjM4NzNFNDgwMDE4RDdDRSAvKiBNZWRpYVRvb2xib3hTb2Z0TGlu
ay5jcHAgKi8sCiAJCQkJQ0RBQ0IzNUYyMzg3M0U0ODAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNv
ZnRMaW5rLmggKi8sCi0JCQkJMzE2NDdGQUYyNTE3NTlEQzAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EuaCAqLywKLQkJCQkzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29m
dExpbmtDb2NvYS5tbSAqLywKIAkJCQlBMUY2M0M5RDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tp
dFNvZnRMaW5rLmggKi8sCiAJCQkJQTFGNjNDOUUyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRT
b2Z0TGluay5tbSAqLywKIAkJCQkwNzYxMURCNDI0M0ZBNUJFMDBEODA3MDQgLyogVXNhZ2VUcmFj
a2luZ1NvZnRMaW5rLmggKi8sCkBAIC04MzAsNyArODI0LDYgQEAKIAkJCQkwQzJEQTE0QzFGM0JF
QjQ5MDBEQkMzMTcgLyogTlNDYWxlbmRhckRhdGVTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCUEx
MTc1QjRCMUY2QjJEN0UwMEM0QjlGMCAvKiBOU0NlbGxTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTBDMkRBMTREMUYzQkVCNDkwMERCQzMxNyAvKiBOU0NvbG9yU1BJLmggaW4gSGVhZGVycyAqLywK
LQkJCQkzMTY0N0ZCMTI1MTc1OUVGMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRTVENDVEMTIyMTA2QTA3NDAwRDJCNzM4IC8qIE5TQ29sb3JXZWxs
U1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzc3ODU4RjFGNDUxMzBGMDBGNEVCQjYgLyogTlNF
dmVudFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEMyREExNEUxRjNCRUI0OTAwREJDMzE3IC8q
IE5TRXh0ZW5zaW9uU1BJLmggaW4gSGVhZGVycyAqLywKQEAgLTk5MCw3ICs5ODMsNiBAQAogCQkJ
CTA3N0U4N0IxMjI2QTQ2MDIwMEEyQUZGMCAvKiBBVkZvdW5kYXRpb25Tb2Z0TGluay5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTBDNUZGRjBGMUY3OEQ5REEwMDlFRkYxQSAvKiBDbG9ja0NNLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMENGOTlDQTgxRjczODQzNzAwN0VFNzkzIC8qIENvcmVNZWRpYVNv
ZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAv
KiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMUMwOUQwNTYxRTMx
QzQ2NTAwNzI1RjE4IC8qIENyeXB0b0RpZ2VzdENvbW1vbkNyeXB0by5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQlBMTE3NUI1ODFGNkI0NzA1MDBDNEI5RjAgLyogRGVmYXVsdFNlYXJjaFByb3ZpZGVy
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUY0NDI5MTY0MUZBNTI2NzAwMDJDQzkzRSAvKiBGaWxl
U2l6ZUZvcm1hdHRlci5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1Bs
YXRmb3JtTWFjLmNtYWtlCmluZGV4IGNkZjAxYjM2NmRkOS4uNjU5MWQ3OTllYTVjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKQEAgLTYsNyArNiw2IEBAIGxpc3Qo
QVBQRU5EIFBBTF9QVUJMSUNfSEVBREVSUwogICAgIGNvY29hL0FwcFNTT1NvZnRMaW5rLmgKICAg
ICBjb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oCiAgICAgY29jb2EvTWVkaWFUb29sYm94U29m
dExpbmsuaAotICAgIGNvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EuaAogICAgIGNvY29hL1Bhc3NL
aXRTb2Z0TGluay5oCiAKICAgICBtYWMvTG9va3VwU29mdExpbmsuaApAQCAtMTI0LDcgKzEyMyw2
IEBAIGxpc3QoQVBQRU5EIFBBTF9TT1VSQ0VTCiAgICAgY29jb2EvRmlsZVNpemVGb3JtYXR0ZXJD
b2NvYS5tbQogICAgIGNvY29hL0d1bnppcC5jcHAKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0
TGluay5jcHAKLSAgICBjb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCiAgICAgY29jb2EvUGFz
c0tpdFNvZnRMaW5rLm1tCiAKICAgICBjcnlwdG8vY29tbW9uY3J5cHRvL0NyeXB0b0RpZ2VzdENv
bW1vbkNyeXB0by5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVu
R0xTb2Z0TGlua0NvY29hLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDNkZTlkMzc2
ZDdiNS4uMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3Bl
bkdMU29mdExpbmtDb2NvYS5oCisrKyAvZGV2L251bGwKQEAgLTEsNDggKzAsMCBAQAotLyoKLSAq
IENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgot
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVU
T1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJ
QUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBC
VVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9S
IFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNT
IElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJ
QUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAot
ICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZ
IE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0Yg
VEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNwcmFnbWEgb25jZQotCi0j
aW5jbHVkZSA8d3RmL1NvZnRMaW5raW5nLmg+Ci0KLSNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRG
T1JNKE1BQ0NBVEFMWVNUKQotCi0jaW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgotCi1TT0ZUX0xJ
TktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wpCi0KLVNPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3Is
IChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRP
YmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKLVNPRlRfTElOS19G
VU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJv
ciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4
dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hF
QURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQ
aXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRl
IGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCi1T
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5k
ZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0s
IENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVt
LCBwcm9wLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5H
TCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4
KSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95
UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQp
KQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTEdldFBhcmFt
ZXRlciwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBw
bmFtZSwgR0xpbnQgKnBhcmFtcyksIChjdHgsIHBuYW1lLCBwYXJhbXMpKQotU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xF
cnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xp
bnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQotU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTFJlbGVhc2VQaXhlbEZvcm1hdCwgdm9pZCwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCksIChwaXgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9I
RUFERVIoUEFMLCBPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29u
dGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCi1TT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3Is
IChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbSBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbQpkZWxldGVkIGZpbGUg
bW9kZSAxMDA2NDQKaW5kZXggZTA2ZWUyZjA1ZjkxLi4wMDAwMDAwMDAwMDAKLS0tIGEvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCisrKyAvZGV2L251
bGwKQEAgLTEsNDggKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAyMCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElN
UExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICog
SU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQ
QVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwg
QVBQTEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwg
SU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVF
TlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJF
TUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwg
T1IKLSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQg
QU5EIE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwg
U1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9U
SEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNP
RlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdF
LgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLQotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExB
VEZPUk0oTUFDQ0FUQUxZU1QpCi0KLSNpbmNsdWRlIDxPcGVuR0wvT3BlbkdMLmg+Ci0jaW5jbHVk
ZSA8d3RmL1NvZnRMaW5raW5nLmg+Ci0KLVNPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJDRV9X
SVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgUEFMX0VYUE9SVCkKLQotU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9TT1VSQ0VfV0lUSF9FWFBPUlQoUEFMLCBPcGVuR0wsIENHTENob29zZVBpeGVsRm9ybWF0
LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlICphdHRyaWJzLCBDR0xQ
aXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAqbnBpeCksIChhdHRyaWJzLCBwaXgsIG5waXgpLCBQ
QUxfRVhQT1JUKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0VfV0lUSF9FWFBPUlQoUEFM
LCBPcGVuR0wsIENHTFJlbGVhc2VQaXhlbEZvcm1hdCwgdm9pZCwgKENHTFBpeGVsRm9ybWF0T2Jq
IHBpeCksIChwaXgpLCBQQUxfRVhQT1JUKQotCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJD
RShQQUwsIE9wZW5HTCwgQ0dMQ3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1h
dE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCksIChwaXgs
IHNoYXJlLCBjdHgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0ws
IENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4
LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdMaW50ICp2
YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQotU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAo
Q0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3Bl
cnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQot
U09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTERlc3Ryb3lDb250
ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCi1TT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dM
RXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKLVNPRlRfTElOS19GVU5D
VElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xHZXRQYXJhbWV0ZXIsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgsIENHTENvbnRleHRQYXJhbWV0ZXIgcG5hbWUsIEdMaW50ICpwYXJh
bXMpLCAoY3R4LCBwbmFtZSwgcGFyYW1zKSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlz
cGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNw
bGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBB
TCwgT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmog
Y3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZP
Ul9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29u
dGV4dE9iaiBjdHgpLCAoY3R4KSkKLQotI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvV2ViQ29yZS9XZWJD
b3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZjZkNWM2MGIyZTQ0Li5kNjJkNzg5
MmRjNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0
LnBieHByb2oKQEAgLTkwOCw3ICs5MDgsNiBAQAogCQkzMTQ4NzdFNjFGQUFCMDI1MDBDMDU3NTkg
LyogSlNPZmZzY3JlZW5DYW52YXMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNDg3N0U0MUZBQUIwMjIwMEMwNTc1OSAvKiBKU09mZnNjcmVlbkNhbnZh
cy5oICovOyB9OwogCQkzMTRCRTNBMTFCMzBGNkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZh
bHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTRC
RTNBMDFCMzBGNkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZhbHVlLmggKi87IHNldHRpbmdz
ID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzE0QkUzQTcxQjMxMDNGQjAw
MTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgyIC8qIE5h
bWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICovOyB9OwotCQkzMTY0N0ZBQjI1MTYxOEUyMDAxMEY4
RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9
OwogCQkzMTZEQ0IyMDFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjFB
MUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oICovOyB9OwogCQkz
MTZEQ0IyMjFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCMUMx
RTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLzsgfTsK
IAkJMzE2RENCNEMxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRlLmgg
aW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0I0NjFF
NzkxMEE2MDAxQjVGODcgLyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaCAqLzsgfTsKQEAgLTcx
ODMsOCArNzE4Miw2IEBACiAJCTMxNEJFM0E0MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdl
R2VuZXJhdGVkSW1hZ2UuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0g
TmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBOYW1lZEltYWdlR2VuZXJhdGVkSW1h
Z2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1NTc0Q0MyMThGNjZEMDAwRDg4
RjY2IC8qIFBvaW50ZXJFdmVudElPUy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBQb2ludGVyRXZlbnRJT1MuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owot
CQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBPcGVuR0xTb2Z0TGlua0NvY29hLmg7IHBhdGggPSAuLi8uLi8uLi9QQUwvcGFs
L2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
LQkJMzE2NDdGQTkyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5vYmpjcHA7IG5hbWUgPSBPcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBwYXRoID0gLi4vLi4v
Li4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkzMTZEQ0IxMjFFNzhCRTQzMDAxQjVGODcgLyogUlRDT2ZmZXJBbnN3ZXJP
cHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENPZmZlckFuc3dlck9wdGlvbnMu
aWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZEQ0IxNzFFNzhDMzMwMDAxQjVG
ODcgLyogUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFRyYW5zY2Vp
dmVyRGlyZWN0aW9uLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTkx
RTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI2MzA4LDggKzI2MzA1LDYgQEAKIAkJCQk0
OUZGQkYzRTExQzkzRUUzMDA2QTcxMTggLyogV2ViR0xMYXllci5tbSAqLywKIAkJCQkzMTg0MzZE
QjIxQjlEQUEwMDBFRDM4M0UgLyogV2ViR1BVTGF5ZXIuaCAqLywKIAkJCQkzMTg0MzZERDIxQjlE
QUEwMDBFRDM4M0UgLyogV2ViR1BVTGF5ZXIubW0gKi8sCi0JCQkJMzE2NDdGQTgyNTE2MTZCRDAw
MTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLywKLQkJCQkzMTY0N0ZBOTI1MTYxNkJE
MDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJCSk7CiAJCQlwYXRoID0g
Y29jb2E7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtMzEwODYsNyArMzEwODEsNiBA
QAogCQkJCTgzMDQwMjgzMjQ5QTdBNjIwMEE5MEQ4RCAvKiBEaXN0YW5jZU1vZGVsVHlwZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJODQ3MzBENzcxMjQ4RjBCMzAwRDNBOUM5IC8qIERpc3RhbnRMaWdo
dFNvdXJjZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJGMzRGRTYwRTgyRjgxNDAwRjYyN0NEIC8q
IEROUy5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9w
ZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCTdFRTY4NDZGMTJEMjZFMzgw
MEU3MzIxNSAvKiBETlNSZXNvbHZlUXVldWVDRk5ldC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTgx
ODVGNDAwOTc2NTc2NjAwNTgyNkQ5IC8qIERvY3VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlB
ODE4NUYzRDA5NzY1NzY2MDA1ODI2RDkgLyogRG9jdW1lbnRGcmFnbWVudC5oIGluIEhlYWRlcnMg
Ki8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9H
cmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQppbmRleCBmZGEy
YTFkOGQxNDYuLmE2MjZhMTUyZjhlMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTE9w
ZW5HTENvY29hLm1tCkBAIC0zOSw3ICszOSw2IEBACiAjaW1wb3J0ICJIb3N0V2luZG93LmgiCiAj
aW1wb3J0ICJJbWFnZUJ1ZmZlci5oIgogI2ltcG9ydCAiTG9nZ2luZy5oIgotI2ltcG9ydCAiT3Bl
bkdMU29mdExpbmtDb2NvYS5oIgogI2ltcG9ydCAiV2ViR0xMYXllci5oIgogI2ltcG9ydCAiV2Vi
R0xPYmplY3QuaCIKICNpbXBvcnQgIldlYkdMUmVuZGVyaW5nQ29udGV4dEJhc2UuaCIKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbSBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQppbmRleCAy
NTNlM2YyNDRkYTkuLmExYjk0Y2QxYTkxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQpAQCAtMzEsNyArMzEsNiBAQAogI2ltcG9ydCAi
RmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFtZVZpZXcuaCIKICNpbXBvcnQgIkhvc3RXaW5kb3cu
aCIKLSNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBvcnQgIlNjcmVlblByb3Bl
cnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3luYy9Db2xvclN5bmMuaD4KICNpbXBvcnQgPHBhbC9z
cGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMv
V2ViR0xCbG9ja2xpc3QubW0KaW5kZXggNmMxZDI2ZTQ3OWEwLi5kYmYzMWQ4YWEzOTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5tbQorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KQEAgLTI5LDcg
KzI5LDcgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbXBvcnQgIkJsb2NrbGlzdFVwZGF0ZXIu
aCIKLSNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKKyNpbXBvcnQgPE9wZW5HTC9PcGVu
R0wuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZVdGlsaXRpZXNTUEkuaD4KIAogbmFtZXNwYWNl
IFdlYkNvcmUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJL
aXQueGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZp
ZwppbmRleCA1Zjc1ZWNiYjE0OWMuLmUxODRjZjZjOTk0NyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWcKKysrIGIvU291cmNlL1dlYktpdC9D
b25maWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWcKQEAgLTg4LDYgKzg4LDE2IEBAIFdLX01PQklM
RV9HRVNUQUxUX0xERkxBR1NfY29jb2F0b3VjaCA9IC1sTW9iaWxlR2VzdGFsdDsKIFdLX0xJQlNB
TkRCT1hfTERGTEFHUyA9ICQoV0tfTElCU0FOREJPWF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFN
RSkpOwogV0tfTElCU0FOREJPWF9MREZMQUdTX21hY29zeCA9IC1sc2FuZGJveDsKIAorV0tfT1BF
TkdMX0xERkxBR1MgPSAkKFdLX09QRU5HTF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwor
V0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIE9wZW5HTEVTOworV0tfT1BF
TkdMX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIE9wZW5HTDsKK1dLX09QRU5HTF9M
REZMQUdTX2lwaG9uZXNpbXVsYXRvciA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7CitXS19PUEVOR0xf
TERGTEFHU193YXRjaG9zID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7CitXS19PUEVO
R0xfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yKTsKK1dLX09QRU5HTF9MREZMQUdTX2FwcGxldHZvcyA9ICQoV0tfT1BFTkdMX0xERkxB
R1NfaXBob25lb3MpOworV0tfT1BFTkdMX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9ICQoV0tf
T1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKK1dLX09QRU5HTF9MREZMQUdTX21hY29z
eCA9IC1mcmFtZXdvcmsgT3BlbkdMOworCiBXS19QREZLSVRfTERGTEFHUyA9ICQoV0tfUERGS0lU
X0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7CiBXS19QREZLSVRfTERGTEFHU19pcGhvbmVv
cyA9IC1mcmFtZXdvcmsgUERGS2l0OwogV0tfUERGS0lUX0xERkxBR1NfaXBob25lb3Nbc2RrPWlw
aG9uZSoxMS4qXSA9IDsKQEAgLTEyMyw3ICsxMzMsNyBAQCBXS19BVVRIS0lUX0xERkxBR1NfSU9T
X1NJTkNFXzEzID0gLWZyYW1ld29yayBBdXRoS2l0OwogV0tfQVVUSEtJVF9MREZMQUdTX21hY29z
eCA9ICQoV0tfQVVUSEtJVF9MREZMQUdTJChXS19NQUNPU18xMDE1KSk7CiBXS19BVVRIS0lUX0xE
RkxBR1NfTUFDT1NfU0lOQ0VfMTAxNSA9IC1mcmFtZXdvcmsgQXV0aEtpdDsKIAotRlJBTUVXT1JL
X0FORF9MSUJSQVJZX0xERkxBR1MgPSAtbG9iamMgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1l
d29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlRm91bmRhdGlvbiAtZnJhbWV3b3JrIENvcmVH
cmFwaGljcyAtZnJhbWV3b3JrIENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3
b3JrIEltYWdlSU8gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3
b3JrIFdlYktpdExlZ2FjeSAtbG5ldHdvcmsgJChXS19BQ0NFU1NJQklMSVRZX0xERkxBR1MpICQo
V0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVNTRVJUSU9OX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tf
UlVOTklOR0JPQVJEX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfQVVUSEtJVF9MREZMQUdTKSAkKFdL
X0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfUFJFRElDVElPTl9MREZMQUdTKSAkKFdLX0NPUkVf
U0VSVklDRVNfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJWSUNFU19MREZMQUdTKSAkKFdLX0xJ
QlNBTkRCT1hfTERGTEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09S
RV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfUERG
S0lUX0xERkxBR1MpICQoV0tfU0FGRV9CUk9XU0lOR19MREZMQUdTKSAkKFdLX1NFQ1VSSVRZX0lO
VEVSRkFDRV9MREZMQUdTKSAkKFdLX1VJS0lUX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdf
TERGTEFHUykgJChXS19XRUJJTlNQRUNUT1JVSV9MREZMQUdTKTsKK0ZSQU1FV09SS19BTkRfTElC
UkFSWV9MREZMQUdTID0gLWxvYmpjIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29y
ZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gLWZyYW1ld29yayBDb3JlR3JhcGhpY3Mg
LWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJbWFn
ZUlPIC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBXZWJL
aXRMZWdhY3kgLWxuZXR3b3JrICQoV0tfQUNDRVNTSUJJTElUWV9MREZMQUdTKSAkKFdLX0FQUEtJ
VF9MREZMQUdTKSAkKFdLX0FTU0VSVElPTl9TRVJWSUNFU19MREZMQUdTKSAkKFdLX1JVTk5JTkdC
T0FSRF9TRVJWSUNFU19MREZMQUdTKSAkKFdLX0FVVEhLSVRfTERGTEFHUykgJChXS19DQVJCT05f
TERGTEFHUykgJChXS19DT1JFX1BSRURJQ1RJT05fTERGTEFHUykgJChXS19DT1JFX1NFUlZJQ0VT
X0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19MSUJTQU5EQk9Y
X0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklD
RVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX09QRU5HTF9MREZM
QUdTKSAkKFdLX1BERktJVF9MREZMQUdTKSAkKFdLX1NBRkVfQlJPV1NJTkdfTERGTEFHUykgJChX
S19TRUNVUklUWV9JTlRFUkZBQ0VfTERGTEFHUykgJChXS19VSUtJVF9MREZMQUdTKSAkKFdLX1VS
TF9GT1JNQVRUSU5HX0xERkxBR1MpICQoV0tfV0VCSU5TUEVDVE9SVUlfTERGTEFHUyk7CiAKIC8v
IFByZXZlbnQgQysrIHN0YW5kYXJkIGxpYnJhcnkgYmFzaWNfc3RyaW5nc3RyZWFtLCBvcGVyYXRv
ciBuZXcsIGRlbGV0ZSBhbmQgdGhlaXIgcmVsYXRlZCBleGNlcHRpb24gdHlwZXMgZnJvbSBiZWlu
ZyBleHBvcnRlZCBhcyB3ZWFrIHN5bWJvbHMuCiBVTkVYUE9SVEVEX1NZTUJPTF9MREZMQUdTID0g
LVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVElTdDliYWRfYWxsb2MgLVdsLC11bmV4cG9y
dGVkX3N5bWJvbCAtV2wsX19aVElTdDlleGNlcHRpb24gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aVFNTdDliYWRfYWxsb2MgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFNTdDll
eGNlcHRpb24gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aZGxQdlNfIC1XbCwtdW5leHBv
cnRlZF9zeW1ib2wgLVdsLF9fWm53bVB2IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWm53
bSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJD
b3JlMTJQb2xpY3lBY3Rpb25FRUVDMkVPUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9f
Wk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRUMxRU9TNF8gLVds
LC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEy
UG9saWN5QWN0aW9uRUVFYVNFRG4gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTktTdDNf
XzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRWNsRVMyXyAtV2wsLXVuZXhw
b3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lB
Y3Rpb25FRUU0c3dhcEVSUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4
ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRUMxRVJLUzRfIC1XbCwtdW5leHBv
cnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFj
dGlvbkVFRUMyRVJLUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVu
Y3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRUQxRXYgLVdsLC11bmV4cG9ydGVkX3N5
bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVF
RDJFdiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdX
ZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVhU0VSS1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1X
bCxfX1pUVk5TdDNfXzExN2JhZF9mdW5jdGlvbl9jYWxsRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9s
IC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0lj
RUVOU185YWxsb2NhdG9ySWNFRUVFMF9OU18xM2Jhc2ljX2lzdHJlYW1JY1MyX0VFIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRDTlN0M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18x
MWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUwX05TXzE0YmFzaWNfaW9zdHJlYW1J
Y1MyX0VFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRDTlN0M19fMTE4YmFzaWNfc3Ry
aW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUxNl9OU18x
M2Jhc2ljX29zdHJlYW1JY1MyX0VFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRUTlN0
M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0
b3JJY0VFRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3QzX18xMTViYXNpY19z
dHJpbmdidWZJY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRSAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVk5TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNf
MTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWlRDTlN0M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRz
SWNFRU5TXzlhbGxvY2F0b3JJY0VFRUU4X05TXzEzYmFzaWNfb3N0cmVhbUljUzJfRUU7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFu
YWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BV
TWFuYWdlci5jcHAKaW5kZXggYTk2ZmMzZDExMzc5Li5kZTkzOTY3ZWZkZjkgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFu
YWdlci5jcHAKQEAgLTI5LDggKzI5LDkgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbmNsdWRl
ICJMb2dnaW5nLmgiCisjaW5jbHVkZSA8T3BlbkdML0NHTFR5cGVzLmg+CisjaW5jbHVkZSA8T3Bl
bkdML09wZW5HTC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xN
YW5hZ2VyLmg+Ci0jaW5jbHVkZSA8V2ViQ29yZS9PcGVuR0xTb2Z0TGlua0NvY29hLmg+CiAKIG5h
bWVzcGFjZSBXZWJLaXQgewogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409232</attachid>
            <date>2020-09-20 03:57:08 -0700</date>
            <delta_ts>2020-09-21 04:26:08 -0700</delta_ts>
            <desc>WIP4</desc>
            <filename>wip4.patch</filename>
            <type>text/plain</type>
            <size>81171</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qCmluZGV4IDJiNmU0OTRlMTBmYS4uZThlNjkwZGRkNjU2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oKQEAgLTE1MCwxNiArMTUwLDYgQEAKIAkJMzE1RUJFMjQxRkNFNDYyQTAwQUM3QTg5IC8q
IHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLzsg
fTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNUVCRTI2MUZDRjgwOEMwMEFD
N0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVCRTI5MUZDRjgwOEMwMEFDN0E4OSAv
KiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggKi87IH07Ci0JCTMxNjQ3
RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhG
QiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCAqLzsgfTsKLQkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9f
YXBwbGUuY3BwICovOyB9OwotCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rp
b25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0
N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07Ci0JCTMxNjQ3RkE1
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCAqLzsgfTsKLQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAz
MTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKLQkJMzE2
NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKLQkJMzE2NDdGQjMyNTE3NjhBQzAwMTBGOEZCIC8q
IEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxNjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi87IH07
Ci0JCTMxNjQ3RkI0MjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggaW4gSGVhZGVy
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZCMjI1MTc2OEFDMDAx
MEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oICovOyB9OwotCQkzMTY0N0ZCNjI1MTc2OEREMDAxMEY4
RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNjQ3RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1t
ICovOyB9OwotCQkzMTY0N0ZCNzI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSBp
biBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkI1MjUx
NzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovOyB9OwogCQkzMUEzMzFDMjFFQTVF
RDI1MDBGRDIyMDMgLyogYml0c2V0X3V0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMDFFQTVFRDI1MDBGRDIyMDMgLyogYml0c2V0X3V0
aWxzLmggKi87IH07CiAJCTMxQTMzMUM2MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNf
bWFjLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMx
QTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLzsgfTsKIAkJ
MzFBMzMxQzcxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlscy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMzMxQzQxRUE1RUQ1RjAwRkQyMjAz
IC8qIHN5c3RlbV91dGlscy5oICovOyB9OwpAQCAtMTU1Nyw3ICsxNTQ3LDYgQEAKIC8qIEVuZCBQ
QlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYRmlsZVJlZmVy
ZW5jZSBzZWN0aW9uICovCi0JCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0TGlua2lu
Z19hcHBsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2Z0TGlua2luZ19hcHBsZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMDE4Qjk3QjlCMDAzOTA2MkYgLyogQmFzZVR5cGVz
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VUeXBlcy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMTE4Qjk3QjlCMDAzOTA2MkYgLyogQnVpbHRJ
bkZ1bmN0aW9uRW11bGF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkzMTAxMkRBMjE4Qjk3QjlCMDAzOTA2MkYgLyogQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3Iu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnVpbHRJbkZ1bmN0aW9uRW11bGF0
b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2OTIsMTEgKzE2ODEsNiBAQAog
CQkzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJI
YXNoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFN5c3RlbUluZm9fYXBwbGUuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwotCQkzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVu
Y3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0aW9ucy5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxNjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVu
Y3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEVBR0xGdW5jdGlvbnMu
aDsgcGF0aCA9IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaDsg
c291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OwotCQkzMTY0N0ZCNTI1MTc2OEREMDAxMEY4RkIg
LyogRUFHTEZ1bmN0aW9ucy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEVBR0xGdW5jdGlvbnMu
bW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTMzMUMwMUVBNUVEMjUwMEZEMjIw
MyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gYml0
c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTMzMUMzMUVBNUVE
NUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGlsc19tYWMuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHN5c3RlbV91dGlscy5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwpAQCAtMjQ4OCw4ICsyNDcyLDYgQEAKIAkJCQkzMTNCQ0U0RDIzNjEx
MzM5MDBGQzM5RTUgLyogRGV2aWNlRUFHTC5oICovLAogCQkJCTMxM0JDRTQ2MjM2MTEzMzgwMEZD
MzlFNSAvKiBEaXNwbGF5RUFHTC5oICovLAogCQkJCTMxM0JDRTUzMjM2MTEzMzkwMEZDMzlFNSAv
KiBEaXNwbGF5RUFHTC5tbSAqLywKLQkJCQkzMTY0N0ZCMjI1MTc2OEFDMDAxMEY4RkIgLyogRUFH
TEZ1bmN0aW9ucy5oICovLAotCQkJCTMxNjQ3RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVu
Y3Rpb25zLm1tICovLAogCQkJCTMxM0JDRTQ3MjM2MTEzMzgwMEZDMzlFNSAvKiBJT1N1cmZhY2VT
dXJmYWNlRUFHTC5oICovLAogCQkJCTMxM0JDRTRFMjM2MTEzMzkwMEZDMzlFNSAvKiBJT1N1cmZh
Y2VTdXJmYWNlRUFHTC5tbSAqLywKIAkJCQkzMTNCQ0U0ODIzNjExMzM4MDBGQzM5RTUgLyogUGJ1
ZmZlclN1cmZhY2VFQUdMLmNwcCAqLywKQEAgLTI5OTAsNyArMjk3Miw2IEBACiAJCQkJNUNCMzAx
MTExREUzOUYxQTAwRDJDNDA1IC8qIFRyYW5zZm9ybUZlZWRiYWNrR0wuaCAqLywKIAkJCQk1Q0Iz
MDExMjFERTM5RjFBMDBEMkM0MDUgLyogVmVydGV4QXJyYXlHTC5jcHAgKi8sCiAJCQkJNUNCMzAx
MTMxREUzOUYxQTAwRDJDNDA1IC8qIFZlcnRleEFycmF5R0wuaCAqLywKLQkJCQkwRjg1REEyRjI1
MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLywKIAkJCSk7CiAJCQlwYXRo
ID0gZ2w7CiAJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOwpAQCAtMjk5OCw4ICsyOTc5LDYgQEAK
IAkJNUNCMzAxNDgxREUzOUYzNjAwRDJDNDA1IC8qIGNnbCAqLyA9IHsKIAkJCWlzYSA9IFBCWEdy
b3VwOwogCQkJY2hpbGRyZW4gPSAoCi0JCQkJMzE2NDdGQTIyNTE1OTc4RDAwMTBGOEZCIC8qIENH
TEZ1bmN0aW9ucy5oICovLAotCQkJCTMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5j
dGlvbnMuY3BwICovLAogCQkJCTVDQ0Q1OTcyMjI4NEZBODIwMDE4RjJEOCAvKiBDb250ZXh0Q0dM
LmNwcCAqLywKIAkJCQk1Q0NENTk3NTIyODRGQTgyMDAxOEYyRDggLyogQ29udGV4dENHTC5oICov
LAogCQkJCTZFMzFBMEExMjM0RUVFRDQwMEM4NDc4NCAvKiBEZXZpY2VDR0wuY3BwICovLApAQCAt
MzIzMSw3ICszMjEwLDYgQEAKIAkJCQk1Q0NENTk5OTIyODRGQzc1MDAxOEYyRDggLyogU3lzdGVt
SW5mby5oICovLAogCQkJCTMxQjE1NzIxMjM2QjgwMzMwMENBQTRGRCAvKiBTeXN0ZW1JbmZvX2lu
dGVybmFsLmggKi8sCiAJCQkJMzFCMTU3MUYyMzZCN0ZBRTAwQ0FBNEZEIC8qIFN5c3RlbUluZm9f
aW9zLmNwcCAqLywKLQkJCQkzMTY0N0Y5RTI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19h
cHBsZS5jcHAgKi8sCiAJCQkJNUNDRDU5OTcyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUluZm9f
bWFjb3MubW0gKi8sCiAJCQkpOwogCQkJbmFtZSA9IGdwdWluZm91dGlsOwpAQCAtMzQ0Myw3ICsz
NDIxLDYgQEAKIAkJCQkzMUNERkY1QjI0OTE4NDhDMDA0ODZGMjcgLyogQ29sb3IuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQ0RGRkU0MjQ5MTg0QTcwMDQ4NkYyNyAvKiBDb21tb24uaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQ0QwMDZDMjQ5MTg0RkMwMDQ4NkYyNyAvKiBDb21waWxlci5oIGluIEhl
YWRlcnMgKi8sCi0JCQkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5o
IGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGRTcyNDkxODRBNzAwNDg2RjI3IC8qIENvbXBpbGVy
LmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDAxNTI0OTE4NEU3MDA0ODZGMjcgLyogQ29tcGls
ZXJHTC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDRDAwM0YyNDkxODRGNDAwNDg2RjI3IC8qIENv
bXBpbGVySW1wbC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zNTExLDcgKzM0ODgsNiBAQAogCQkJCTMx
Q0QwMDcyMjQ5MTg0RkQwMDQ4NkYyNyAvKiBGZW5jZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFD
RDAwMjQyNDkxODRFNzAwNDg2RjI3IC8qIEZlbmNlTlZHTC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MzFDRDAwM0MyNDkxODRGNDAwNDg2RjI3IC8qIEZlbmNlTlZJbXBsLmggaW4gSGVhZGVycyAqLywK
LQkJCQkzMTY0N0ZCNDI1MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMzFDREZGQjIyNDkxODRBMTAwNDg2RjI3IC8qIEZpbmRGdW5jdGlvbi5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGQUYyNDkxODRBMTAwNDg2RjI3IC8qIEZpbmRNYWluLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkZCNjI0OTE4NEExMDA0ODZGMjcgLyogRmluZFN5bWJv
bE5vZGUuaCBpbiBIZWFkZXJzICovLApAQCAtMzg1MCw3ICszODI2LDYgQEAKIAkJCQk1Q0NEODE4
RTFEQkZFQTEwMDA2MDY2QjggLyogQ29sb3IuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxMDEyRTE2
MThCOTdCOUIwMDM5MDYyRiAvKiBDb21tb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTVDMURCRERE
MUIwNDM4RDMwMDIzNTU1MiAvKiBDb21waWxlci5oIGluIEhlYWRlcnMgKi8sCi0JCQkJMzE2NDdG
QTQyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
NUMxREJDMkMxQjA0Mzc1RjAwMjM1NTUyIC8qIENvbXBpbGVyLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk1Q0IzMDExQjFERTM5RjFBMDBEMkM0MDUgLyogQ29tcGlsZXJHTC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJNUNCMzA0REMxREU0MTY0ODAwRDJDNDA1IC8qIENvbXBpbGVySW1wbC5oIGluIEhlYWRl
cnMgKi8sCkBAIC0zOTE4LDcgKzM4OTMsNiBAQAogCQkJCTVDMURCREVGMUIwNDM4RDMwMDIzNTU1
MiAvKiBGZW5jZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNCMzAxMjIxREUzOUYxQTAwRDJDNDA1
IC8qIEZlbmNlTlZHTC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUNCMzA0RTQxREU0MTY0ODAwRDJD
NDA1IC8qIEZlbmNlTlZJbXBsLmggaW4gSGVhZGVycyAqLywKLQkJCQkzMTY0N0ZCMzI1MTc2OEFD
MDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTMwMzA3MDQy
MzA1RjYzNjAwMkRBOTcyIC8qIEZpbmRGdW5jdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUM1
NUQ2RkYyMjgyNkNCMzAwQjVCQTJDIC8qIEZpbmRNYWluLmggaW4gSGVhZGVycyAqLywKIAkJCQk1
QzU1RDZGQjIyODI2Q0IzMDBCNUJBMkMgLyogRmluZFN5bWJvbE5vZGUuaCBpbiBIZWFkZXJzICov
LApAQCAtNDQ1OSw3ICs0NDMzLDYgQEAKIAkJCQkzMUNERkU5NTI0OTE4NDNBMDA0ODZGMjcgLyog
SXNBU1REZXB0aEJlbG93TGltaXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFMzAyNDkx
ODQyODAwNDg2RjI3IC8qIExleGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRURDMjQ5
MTg0NTgwMDQ4NkYyNyAvKiBsb2FkX2Z1bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3Vy
Y2VzICovLAotCQkJCTMxNjQ3RkEwMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxl
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUIyMjQ5MTg0NDIwMDQ4NkYyNyAvKiBsb2Fk
aW1hZ2UuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjQyNDkxODQ0MjAwNDg2RjI3IC8q
IGxvYWRpbWFnZV9ldGMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZGMUYyNDkxODQ1RjAw
NDg2RjI3IC8qIExvZ2dpbmdBbm5vdGF0b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NDY4LDcg
KzQ0NDEsNiBAQAogCQkJCTMxQ0RGRTE5MjQ5MTg0MjMwMDQ4NkYyNyAvKiBtYXRodXRpbC5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQkzMUNERkUxQTI0OTE4NDIzMDA0ODZGMjcgLyogbWF0cml4X3V0
aWxzLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRTFCMjQ5MTg0MjMwMDQ4NkYyNyAvKiBN
ZW1vcnlCdWZmZXIuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzE2NDdGQTcyNTE1OTc4RDAwMTBG
OEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVFQTI0OTE4
NDVGMDA0ODZGMjcgLyogTWVtb3J5T2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RG
RUQyMjQ5MTg0NTMwMDQ4NkYyNyAvKiBNZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkYwRTI0OTE4NDVGMDA0ODZGMjcgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBp
biBTb3VyY2VzICovLApAQCAtNDUyMSw3ICs0NDkzLDYgQEAKIAkJCQkzMUNERkU0QTI0OTE4NDJF
MDA0ODZGMjcgLyogUmVtb3ZlRHluYW1pY0luZGV4aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRTQzMjQ5MTg0MkUwMDQ4NkYyNyAvKiBSZW1vdmVJbmFjdGl2ZUludGVyZmFjZVZhcmlh
Ymxlcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU0QzI0OTE4NDJFMDA0ODZGMjcgLyog
UmVtb3ZlSW52YXJpYW50RGVjbGFyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzE2NDdG
QjcyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gaW4gU291cmNlcyAqLywKIAkJ
CQkzMUNERkU2MjI0OTE4NDJGMDA0ODZGMjcgLyogUmVtb3ZlUG93LmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTMxQ0RGRTUyMjQ5MTg0MkUwMDQ4NkYyNyAvKiBSZW1vdmVTd2l0Y2hGYWxsVGhyb3Vn
aC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkUzQjI0OTE4NDJFMDA0ODZGMjcgLyogUmVt
b3ZlVW5yZWZlcmVuY2VkVmFyaWFibGVzLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDc5NSw3ICs0
NzY2LDYgQEAKIAkJCQkzMTVFQkQ5QzFGQ0U0NDM2MDBBQzdBODkgLyogSXNBU1REZXB0aEJlbG93
TGltaXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTI2NEY4QjYxNjk3NERFRDAwNkZBQTVBIC8q
IExleGVyLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQjMwNEVGMURFNDE2NDgwMEQyQzQwNSAv
KiBsb2FkX2Z1bmN0aW9uc190YWJsZV9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLAotCQkJCTMx
NjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTVDQ0Q1OTk1MjI4NEZDNDAwMDE4RjJEOCAvKiBsb2FkaW1hZ2UuY3BwIGluIFNv
dXJjZXMgKi8sCiAJCQkJNUNDRDU5OTIyMjg0RkM0MDAwMThGMkQ4IC8qIGxvYWRpbWFnZV9ldGMu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE1RUJERTgxRkNFNDUyRDAwQUM3QTg5IC8qIExvZ2dp
bmdBbm5vdGF0b3IuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00ODA0LDcgKzQ3NzQsNiBAQAogCQkJ
CTVDQzdENDcyMTkxMDI2MjEwMDBCOEMxRiAvKiBtYXRodXRpbC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQk1QzU1RDcyNTIyODI3NDc3MDBCNUJBMkMgLyogbWF0cml4X3V0aWxzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDMURCQkYxMUIwNDM2RUMwMDIzNTU1MiAvKiBNZW1vcnlCdWZmZXIuY3Bw
IGluIFNvdXJjZXMgKi8sCi0JCQkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk2NDIyODRGNzk2MDAxOEYyRDggLyog
TWVtb3J5T2JqZWN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUEzMDMwNzhCMjMwNUY4RjAwMDJE
QTk3MiAvKiBNZW1vcnlPYmplY3RHTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTVFQkRGMzFG
Q0U0NTJEMDBBQzdBODkgLyogTWVtb3J5UHJvZ3JhbUNhY2hlLmNwcCBpbiBTb3VyY2VzICovLApA
QCAtNDg1Nyw3ICs0ODI2LDYgQEAKIAkJCQk1QzU1RDZCQzIyODI2QkM4MDBCNUJBMkMgLyogUmVt
b3ZlRHluYW1pY0luZGV4aW5nLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUEzRDMyOTE4MjNDRkNC
NzcwMDM3NTY1NyAvKiBSZW1vdmVJbmFjdGl2ZUludGVyZmFjZVZhcmlhYmxlcy5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQk1QzU1RDZCRDIyODI2QkM4MDBCNUJBMkMgLyogUmVtb3ZlSW52YXJpYW50
RGVjbGFyYXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJMzE2NDdGQjYyNTE3NjhERDAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gaW4gU291cmNlcyAqLywKIAkJCQk1QzU1RDZCRTIyODI2
QkM4MDBCNUJBMkMgLyogUmVtb3ZlUG93LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDNTVENkJG
MjI4MjZCQzgwMEI1QkEyQyAvKiBSZW1vdmVTd2l0Y2hGYWxsVGhyb3VnaC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQk1QzU1RDZDMDIyODI2QkM4MDBCNUJBMkMgLyogUmVtb3ZlVW5yZWZlcmVuY2Vk
VmFyaWFibGVzLmNwcCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5k
ZXggOTA3YzRhMmIxNTU1Li4zMTU4MmI5MjJiZGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZp
ZwpAQCAtMTEsNyArMTEsNyBAQCBBTkdMRV9PVEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xF
X09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVs
YXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RI
RVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZM
QUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0g
LWZyYW1ld29yayBJT0tpdCAtbHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0g
LWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIE9wZW5HTCAtbHo7CiBBTkdMRV9PVEhFUl9MREZM
QUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OwogCiBJ
TlNUQUxMX1BBVEggPSAkKE5PUk1BTF9XRUJDT1JFX0ZSQU1FV09SS1NfRElSKS9XZWJDb3JlLmZy
YW1ld29yay9GcmFtZXdvcmtzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
Q29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnCmluZGV4IDE4ZDJiNDNm
YjY1Zi4uNGQxZDIyMTE5MzVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9D
b25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnCkBAIC0xMSw3ICsx
MSw3IEBAIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChBTkdM
RV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2Fw
cGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9M
REZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElP
S2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0
YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsg
T3BlbkdMIC1sejsKIEFOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tp
dCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIE9wZW5HTCAtbHo7CiAKIElOU1RBTExf
UEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRIX1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQppbmRleCA0ZmJkYmNiOGNlMjAuLjA0ZmJlOWVmZTdj
OSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlCisrKyBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpAQCAtMTY3LDkgKzE2Nyw3IEBA
IHNldChsaWJhbmdsZV9ncHVfaW5mb191dGlsX2xpYnBjaV9zb3VyY2VzCiBzZXQobGliYW5nbGVf
Z3B1X2luZm9fdXRpbF94MTFfc291cmNlcyAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb194
MTEuY3BwIiApCiAKIAotc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMKLSAg
ICAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbSIKLSAgICAic3JjL2dwdV9p
bmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbSIgKQorc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0
aWxfbWFjX3NvdXJjZXMgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkK
IAogCiBzZXQobGliYW5nbGVfaW5jbHVkZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9jb21tb24vcGxhdGZvcm0uaAppbmRleCA5ZDI1MzM0ODQ4NjguLjA0MTZlZDIwMWQ1OSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisr
KyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTI4
LDExICsxMjgsNiBAQAogIyAgICAgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVAogIyAgICAgICAgZW5kaWYKICMgICAgZW5kaWYKLSMgICAgLy8gVGhpcyBtaWdodCBiZSB1
c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21lbnQgaXQgaXMgdXNlZAotIyAgICAvLyB0byBkaWZm
ZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIEludGVsIGFuZCBBcHBsZSBTaWxpY29uLgotIyAgICBp
ZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVmaW5lZChfX2FhcmNoNjRfXykKLSMgICAgICAgIGRl
ZmluZSBBTkdMRV9DUFVfQVJNNjQKLSMgICAgZW5kaWYKICNlbmRpZgogCiAvLyBEZWZpbmUgQU5H
TEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLmNwcApkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMmJlM2VmNzYxYWJkLi4wMDAwMDAwMDAwMDAKLS0tIGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5j
cHAKKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi0vLwotLy8gQ29weXJpZ2h0IDIwMjAg
QXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFVzZSBvZiB0aGlzIHNvdXJjZSBj
b2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKLS8vIGZv
dW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vLwotCi0vLyBTeXN0ZW1JbmZvX2FwcGxlLmNwcDog
aW1wbGVtZW50YXRpb24gb2YgdGhlIEFwcGxlLXNwZWNpZmljIHBhcnRzIG9mIFN5c3RlbUluZm8u
aAotCi0jaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCi0KLSNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0FQUExFKQotCi0jICAgIGluY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19p
bnRlcm5hbC5oIgotCi1uYW1lc3BhY2UgYW5nbGUKLXsKLQotI2lmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi1ib29s
IEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmluZm8pOwotI2VuZGlmCi0KLSNpZiBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKLWJvb2wgR2V0U3lzdGVtSW5mb19p
b3MoU3lzdGVtSW5mbyAqaW5mbyk7Ci0jZW5kaWYKLQotYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3Rl
bUluZm8gKmluZm8pCi17Ci0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkg
JiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCi0gICAgLy8gRklYTUU6IERlY2lkZSBhdCBydW50
aW1lISEKLSAgICByZXR1cm4gR2V0U3lzdGVtSW5mb19pb3MoaW5mbyk7Ci0jZWxpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKQotICAgIHJldHVybiBHZXRTeXN0ZW1JbmZvX21hYyhpbmZvKTsKLSNlbHNlCi0gICAgcmV0
dXJuIEdldFN5c3RlbUluZm9faW9zKGluZm8pOwotI2VuZGlmCi19Ci0KLX0gIC8vIG5hbWVzcGFj
ZSBhbmdsZQotCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1J
bmZvX2lvcy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9T
eXN0ZW1JbmZvX2lvcy5jcHAKaW5kZXggYmQyMjE5NzA2MmU4Li5jMGQ0MzZmNTYxOGMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUlu
Zm9faW9zLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRp
bC9TeXN0ZW1JbmZvX2lvcy5jcHAKQEAgLTgsMTQgKzgsMTQgQEAKIAogI2luY2x1ZGUgImNvbW1v
bi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02
NCkpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKQogCiAjICAgIGluY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVt
SW5mb19pbnRlcm5hbC5oIgogCiBuYW1lc3BhY2UgYW5nbGUKIHsKIAotYm9vbCBHZXRTeXN0ZW1J
bmZvX2lvcyhTeXN0ZW1JbmZvICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8g
KmluZm8pCiB7CiAgICAgewogICAgICAgICAvLyBUT0RPKGFuZ2xlYnVnLmNvbS80Mjc1KTogR2V0
IHRoZSBhY3R1YWwgc3lzdGVtIHZlcnNpb24uCkBAIC0yNyw0ICsyNyw0IEBAIGJvb2wgR2V0U3lz
dGVtSW5mb19pb3MoU3lzdGVtSW5mbyAqaW5mbykKIAogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCiAK
LSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisjZW5k
aWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCmluZGV4IDJhYjkyZmM3
NjRkZi4uYThlZDdhZjI2ZjQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0KQEAgLTE1LDgg
KzE1LDYgQEAKICMgICAgaW1wb3J0IDxDb2NvYS9Db2NvYS5oPgogIyAgICBpbXBvcnQgPElPS2l0
L0lPS2l0TGliLmg+CiAKLSMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NH
TEZ1bmN0aW9ucy5oIgotCiBuYW1lc3BhY2UgYW5nbGUKIHsKIApAQCAtMjEwLDcgKzIwOCw3IEBA
IHVpbnQ2NF90IEdldEdwdUlERnJvbU9wZW5HTERpc3BsYXlNYXNrKHVpbnQzMl90IGRpc3BsYXlN
YXNrKQogICAgIHJldHVybiAwOwogfQogCi1ib29sIEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUlu
Zm8gKmluZm8pCitib29sIEdldFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykKIHsKICAgICB7
CiAgICAgICAgIGludDMyX3QgbWFqb3IgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCmluZGV4IGZmZjY4ZDYzNTA2Ni4uZTNlYmUzMjVk
YWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlz
cGxheS5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3Bs
YXkuY3BwCkBAIC01Myw5ICs1Myw2IEBACiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5k
ZXJlci9nbC93Z2wvRGlzcGxheVdHTC5oIgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAjICAgICAg
ICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5oIgotIyAgICAg
ICAgaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdM
RV9DUFVfQVJNNjQpCi0jICAgICAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9EaXNwbGF5RUFHTC5oIgotIyAgICAgICAgZW5kaWYKICMgICAgZWxpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykKICMgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvRGlzcGxheUVBR0wuaCIKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJ
TlVYKQpAQCAtMjYzLDI4ICsyNjAsOCBAQCByeDo6RGlzcGxheUltcGwgKkNyZWF0ZURpc3BsYXlG
cm9tQXR0cmlicyhFR0xBdHRyaWIgZGlzcGxheVR5cGUsCiAjaWYgZGVmaW5lZChBTkdMRV9FTkFC
TEVfT1BFTkdMKQogIyAgICBpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX1dJTkRPV1MpCiAgICAg
ICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5V0dMKHN0YXRlKTsKLSAgICAgICAgICAgIGJy
ZWFrOwotCi0jICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykKLSAgICAgICAg
ICAgIGltcGwgPSBuZXcgcng6OkRpc3BsYXlDR0woc3RhdGUpOwotICAgICAgICAgICAgYnJlYWs7
Ci0jICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKLSMgICAgICAg
IGlmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQotIyAgICAgICAgICAgLy8gRklYTUU6IERlY2lk
ZSBhdCBydW50aW1lCi0gICAgICAgICAgICBpZiAoKDApKSAvLyBydW5uaW5nIGlPUyBzdHVmZgot
ICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRpc3BsYXlDR0wo
c3RhdGUpOwotICAgICAgICAgICAgICAgIGJyZWFrOwotICAgICAgICAgICAgfQotICAgICAgICAg
ICAgZWxzZQotICAgICAgICAgICAgewotICAgICAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRp
c3BsYXlFQUdMKHN0YXRlKTsKLSAgICAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgICAgIH0K
LSMgICAgICAgIGVsc2UKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8
fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogICAgICAgICAgICAgaW1wbCA9
IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7Ci0gICAgICAgICAgICBicmVhazsKLSMgICAgICAg
IGVuZGlmCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCiAgICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CiAjICAgIGVsaWYgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9MSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCmluZGV4IDJkM2ZlNDFlMDE1Ni4uZTQzNDk2ZmMz
NDcxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9y
bWF0dXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9m
b3JtYXR1dGlscy5jcHAKQEAgLTEwMzAsOCArMTAzMCw3IEBAIHN0YXRpYyBJbnRlcm5hbEZvcm1h
dEluZm9NYXAgQnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXAoKQogICAgIEFkZFJHQkFGb3JtYXQo
Jm1hcCwgR0xfUkdCQSwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfUkdC
QSwgICAgICAgICAgIEdMX0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgR0xfU0lHTkVEX05P
Uk1BTElaRUQsICAgZmFsc2UsIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsICBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAg
IEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQiwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4
LCAgMCwgMCwgR0xfU1JHQiwgICAgICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAg
ICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6
OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRl
ZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJT
dXBwb3J0ZWQpOwogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQl9BTFBIQV9FWFQsIGZh
bHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfU1JHQl9BTFBIQV9FWFQsIEdMX1VOU0lHTkVEX0JZ
VEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVF
eHQ8JkV4dGVuc2lvbnM6OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVk
LCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICBOZXZlclN1
cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KQotICAgIC8vIEkgdGhpbmsgdGhpcyBuZWVkcyBhIHJ1bnRpbWUgY2hlY2sgdG9vLgorI2lmIGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkKICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBmYWxz
ZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9CWVRF
LCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJlRVM8
MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwg
UmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBw
b3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKICNlbHNlCiAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBH
TF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwg
ICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJ
WkVELCBmYWxzZSwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4
PiwgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3Jt
YXRCR1JBODg4OD4sIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExp
bmtpbmdfYXBwbGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBhOTAwMzZjMmMxYmYuLjAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaAorKysgL2Rldi9u
dWxsCkBAIC0xLDIxNiArMCwwIEBACi0vLwotLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVy
bmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKLS8vIGZvdW5kIGluIHRoZSBM
SUNFTlNFIGZpbGUuCi0vLwotCi0vLyBTb2Z0TGlua2luZ19hcHBsZS5jcHA6IE1hY3JvcyBmb3Ig
c29mdC1saW5raW5nIEZyYW1ld29ya3MgYW5kIEZ1bmN0aW9ucy4KLQotI2lmbmRlZiBTT0ZUX0xJ
TktJTkdfQVBQTEVfSF8KLSNkZWZpbmUgU09GVF9MSU5LSU5HX0FQUExFX0hfCi0KLSNpbmNsdWRl
ICJjb21tb24vcGxhdGZvcm0uaCIKLQotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUp
Ci0KLSNpbmNsdWRlICJjb21tb24vZGVidWcuaCIKLQotI2ltcG9ydCA8ZGlzcGF0Y2gvZGlzcGF0
Y2guaD4KLSNpbXBvcnQgPGRsZmNuLmg+Ci0jaW1wb3J0IDxvYmpjL3J1bnRpbWUuaD4KLQotI2Rl
ZmluZSBSRUxFQVNFX0FTU0VSVChleHByZXNzaW9uLCBtZXNzYWdlKSAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAg
ICAoZXhwcmVzc2lvbiA/IHN0YXRpY19jYXN0PHZvaWQ+KDApICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXAotICAgICAgICAg
ICAgICAgICAgICA6IChGQVRBTCgpIDw8ICJcdCEgQXNzZXJ0IGZhaWxlZCBpbiAiIDw8IF9fRlVO
Q1RJT05fXyA8PCAiICgiIDw8IF9fRklMRV9fICAgICAgICAgICAgICAgXAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIDw8ICI6IiA8PCBfX0xJTkVfXyA8PCAiKTogIiA8PCAjZXhwcmVz
c2lvbiA8PCAiXG5cdCEgTWVzc2FnZTogIiA8PCBtZXNzYWdlKSkKLQotCi0jaWZkZWYgX19jcGx1
c3BsdXMKLSNkZWZpbmUgRVhURVJOX0NfQkVHSU4gZXh0ZXJuICJDIiB7Ci0jZGVmaW5lIEVYVEVS
Tl9DX0VORCB9Ci0jZWxzZQotI2RlZmluZSBFWFRFUk5fQ19CRUdJTgotI2RlZmluZSBFWFRFUk5f
Q19FTkQKLSNlbmRpZgotCi0jZGVmaW5lIFNPRlRfTElOS19GUkFNRVdPUktfSEVBREVSKGZyYW1l
d29yaykgXAotICAgIGV4dGVybiB2b2lkKiBmcmFtZXdvcmsjI0xpYnJhcnkoKTsgXAotCi0jZGVm
aW5lIFNPRlRfTElOS19GUkFNRVdPUktfU09VUkNFKGZyYW1ld29yaykgXAotICAgIHZvaWQqIGZy
YW1ld29yayMjTGlicmFyeSgpIFwKLSAgICB7IFwKLSAgICAgICAgc3RhdGljIGRpc3BhdGNoX29u
Y2VfdCBvbmNlID0gMDsgXAotICAgICAgICBzdGF0aWMgdm9pZCogZnJhbWV3b3JrTGlicmFyeSA9
IE5VTEw7IFwKLSAgICAgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsgXAotICAgICAgICAgICAg
ZnJhbWV3b3JrTGlicmFyeSA9IGRsb3BlbigiL1N5c3RlbS9MaWJyYXJ5L0ZyYW1ld29ya3MvIiAj
ZnJhbWV3b3JrICIuZnJhbWV3b3JrLyIgI2ZyYW1ld29yaywgUlRMRF9OT1cpOyBcCi0gICAgICAg
ICAgICBSRUxFQVNFX0FTU0VSVChmcmFtZXdvcmtMaWJyYXJ5LCAiVW5hYmxlIHRvIGxvYWQgIiAj
ZnJhbWV3b3JrICIuZnJhbWV3b3JrIik7IFwKLSAgICAgICAgfSk7IFwKLSAgICAgICAgcmV0dXJu
IGZyYW1ld29ya0xpYnJhcnk7IFwKLSAgICB9Ci0KLSNkZWZpbmUgU09GVF9MSU5LX0ZVTkNUSU9O
X0hFQURFUihmcmFtZXdvcmssIGZ1bmN0aW9uTmFtZSwgcmVzdWx0VHlwZSwgcGFyYW1ldGVyRGVj
bGFyYXRpb25zLCBwYXJhbWV0ZXJOYW1lcykgXAotICAgIEVYVEVSTl9DX0JFR0lOIFwKLSAgICBy
ZXN1bHRUeXBlIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnM7IFwKLSAgICBFWFRF
Uk5fQ19FTkQgXAotICAgIGV4dGVybiByZXN1bHRUeXBlIGluaXQjI2ZyYW1ld29yayMjZnVuY3Rp
b25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9uczsgXAotICAgIGV4dGVybiByZXN1bHRUeXBlKCpz
b2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUpIHBhcmFtZXRlckRlY2xhcmF0aW9uczsg
XAotICAgIGlubGluZSBfX2F0dHJpYnV0ZV9fKChfX2Fsd2F5c19pbmxpbmVfXykpIHJlc3VsdFR5
cGUgZnVuY3Rpb25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9ucyBcCi0gICAgeyBcCi0gICAgICAg
IHJldHVybiBzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyTmFtZXM7
IFwKLSAgICB9IFwKLQotI2RlZmluZSBTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKGZyYW1ld29y
aywgZnVuY3Rpb25OYW1lLCByZXN1bHRUeXBlLCBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMsIHBhcmFt
ZXRlck5hbWVzKSBcCi0gICAgcmVzdWx0VHlwZSgqc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rp
b25OYW1lKSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgPSBpbml0IyNmcmFtZXdvcmsjI2Z1bmN0aW9u
TmFtZTsgXAotICAgIHJlc3VsdFR5cGUgaW5pdCMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFy
YW1ldGVyRGVjbGFyYXRpb25zIFwKLSAgICB7IFwKLSAgICAgICAgc3RhdGljIGRpc3BhdGNoX29u
Y2VfdCBvbmNlOyBcCi0gICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKLSAgICAgICAg
ICAgIHNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSA9IChyZXN1bHRUeXBlICgqKSBw
YXJhbWV0ZXJEZWNsYXJhdGlvbnMpIGRsc3ltKGZyYW1ld29yayMjTGlicmFyeSgpLCAjZnVuY3Rp
b25OYW1lKTsgXAotICAgICAgICB9KTsgXAotICAgICAgICByZXR1cm4gc29mdExpbmsjI2ZyYW1l
d29yayMjZnVuY3Rpb25OYW1lIHBhcmFtZXRlck5hbWVzOyBcCi0gICAgfSBcCi0KLSNkZWZpbmUg
U09GVF9MSU5LX0NMQVNTX0hFQURFUihjbGFzc05hbWUpIFwKLSAgICBAY2xhc3MgY2xhc3NOYW1l
OyBcCi0gICAgZXh0ZXJuIENsYXNzICgqZ2V0IyNjbGFzc05hbWUjI0NsYXNzKSgpOyBcCi0gICAg
Y2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0YW5jZSgpOyBcCi0gICAgaW5saW5lIGNs
YXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFuY2UoKSBcCi0gICAgeyBcCi0gICAgICAg
IHJldHVybiBbZ2V0IyNjbGFzc05hbWUjI0NsYXNzKCkgYWxsb2NdOyBcCi0gICAgfQotCi0jZGVm
aW5lIFNPRlRfTElOS19DTEFTUyhmcmFtZXdvcmssIGNsYXNzTmFtZSkgXAotICAgIEBjbGFzcyBj
bGFzc05hbWU7IFwKLSAgICBzdGF0aWMgQ2xhc3MgaW5pdCMjY2xhc3NOYW1lKCk7IFwKLSAgICBz
dGF0aWMgQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xhc3MpKCkgPSBpbml0IyNjbGFzc05hbWU7
IFwKLSAgICBzdGF0aWMgQ2xhc3MgY2xhc3MjI2NsYXNzTmFtZTsgXAotICAgIFwKLSAgICBzdGF0
aWMgQ2xhc3MgY2xhc3NOYW1lIyNGdW5jdGlvbigpIFwKLSAgICB7IFwKLSAgICAgICAgcmV0dXJu
IGNsYXNzIyNjbGFzc05hbWU7IFwKLSAgICB9IFwKLSAgICBcCi0gICAgc3RhdGljIENsYXNzIGlu
aXQjI2NsYXNzTmFtZSgpIFwKLSAgICB7IFwKLSAgICAgICAgZnJhbWV3b3JrIyNMaWJyYXJ5KCk7
IFwKLSAgICAgICAgY2xhc3MjI2NsYXNzTmFtZSA9IG9iamNfZ2V0Q2xhc3MoI2NsYXNzTmFtZSk7
IFwKLSAgICAgICAgUkVMRUFTRV9BU1NFUlQoY2xhc3MjI2NsYXNzTmFtZSwgIm9iamNfZ2V0Q2xh
c3MgZmFpbGVkIGZvciAiICNjbGFzc05hbWUpOyBcCi0gICAgICAgIGdldCMjY2xhc3NOYW1lIyND
bGFzcyA9IGNsYXNzTmFtZSMjRnVuY3Rpb247IFwKLSAgICAgICAgcmV0dXJuIGNsYXNzIyNjbGFz
c05hbWU7IFwKLSAgICB9IFwKLSAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGljIHB1c2giKSBc
Ci0gICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVd1bnVzZWQtZnVuY3Rp
b25cIiIpIFwKLSAgICBzdGF0aWMgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0YW5j
ZSgpIFwKLSAgICB7IFwKLSAgICAgICAgcmV0dXJuIFtnZXQjI2NsYXNzTmFtZSMjQ2xhc3MoKSBh
bGxvY107IFwKLSAgICB9IFwKLSAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGljIHBvcCIpCi0K
LQotLy8jZGVmaW5lIFNPRlRfTElOS19DTEFTUyhmcmFtZXdvcmssIGNsYXNzTmFtZSkgXAotLy8g
ICAgQGNsYXNzIGNsYXNzTmFtZTsgXAotLy8gICAgc3RhdGljIENsYXNzIGluaXQjI2NsYXNzTmFt
ZSgpOyBcCi0vLyAgICBzdGF0aWMgQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xhc3MpKCkgPSBp
bml0IyNjbGFzc05hbWU7IFwKLS8vICAgIHN0YXRpYyBDbGFzcyBjbGFzcyMjY2xhc3NOYW1lOyBc
Ci0vLyAgICBcCi0vLyAgICBzdGF0aWMgQ2xhc3MgY2xhc3NOYW1lIyNGdW5jdGlvbigpIFwKLS8v
ICAgIHsgXAotLy8gICAgICAgIHJldHVybiBjbGFzcyMjY2xhc3NOYW1lOyBcCi0vLyAgICB9IFwK
LS8vICAgIFwKLS8vICAgIHN0YXRpYyBDbGFzcyBpbml0IyNjbGFzc05hbWUoKSBcCi0vLyAgICB7
IFwKLS8vICAgICAgICBmcmFtZXdvcmsjI0xpYnJhcnkoKTsgXAotLy8gICAgICAgIGNsYXNzIyNj
bGFzc05hbWUgPSBvYmpjX2dldENsYXNzKCNjbGFzc05hbWUpOyBcCi0vLyAgICAgICAgUkVMRUFT
RV9BU1NFUlQoY2xhc3MjI2NsYXNzTmFtZSwgIm9iamNfZ2V0Q2xhc3MgZmFpbGVkIGZvciAiICNj
bGFzc05hbWUpOyBcCi0vLyAgICAgICAgZ2V0IyNjbGFzc05hbWUjI0NsYXNzID0gY2xhc3NOYW1l
IyNGdW5jdGlvbjsgXAotLy8gICAgICAgIHJldHVybiBjbGFzcyMjY2xhc3NOYW1lOyBcCi0vLyAg
ICB9IFwKLS8vICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcHVzaCIpIFwKLS8vICAgIF9Q
cmFnbWEoImNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCBcIi1XdW51c2VkLWZ1bmN0aW9uXCIiKSBc
Ci0vLyAgICBzdGF0aWMgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0YW5jZSgpIFwK
LS8vICAgIHsgXAotLy8gICAgICAgIHJldHVybiBbZ2V0IyNjbGFzc05hbWUjI0NsYXNzKCkgYWxs
b2NdOyBcCi0vLyAgICB9IFwKLS8vICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcG9wIikK
LS8vCi0vLyNkZWZpbmUgU09GVF9MSU5LX0NMQVNTX0ZPUl9IRUFERVIoZnVuY3Rpb25OYW1lc3Bh
Y2UsIGNsYXNzTmFtZSkgXAotLy8gICAgQGNsYXNzIGNsYXNzTmFtZTsgXAotLy8gICAgbmFtZXNw
YWNlIGZ1bmN0aW9uTmFtZXNwYWNlIHsgXAotLy8gICAgZXh0ZXJuIENsYXNzICgqZ2V0IyNjbGFz
c05hbWUjI0NsYXNzKSgpOyBcCi0vLyAgICBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0lu
c3RhbmNlKCk7IFwKLS8vICAgIGlubGluZSBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0lu
c3RhbmNlKCkgXAotLy8gICAgeyBcCi0vLyAgICAgICAgcmV0dXJuIFtnZXQjI2NsYXNzTmFtZSMj
Q2xhc3MoKSBhbGxvY107IFwKLS8vICAgIH0gXAotLy8gICAgfQotLy8KLS8vI2RlZmluZSBTT0ZU
X0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFERVIoZnVuY3Rpb25OYW1lc3BhY2UsIGZyYW1ld29yaykg
XAotLy8gICAgbmFtZXNwYWNlIGZ1bmN0aW9uTmFtZXNwYWNlIHsgXAotLy8gICAgZXh0ZXJuIHZv
aWQqIGZyYW1ld29yayMjTGlicmFyeShib29sIGlzT3B0aW9uYWwgPSBmYWxzZSk7IFwKLS8vICAg
IGJvb2wgaXMjI2ZyYW1ld29yayMjRnJhbWV3b3JrQXZhaWxhYmxlKCk7IFwKLS8vICAgIGlubGlu
ZSBib29sIGlzIyNmcmFtZXdvcmsjI0ZyYW1ld29ya0F2YWlsYWJsZSgpIHsgXAotLy8gICAgICAg
IHJldHVybiBmcmFtZXdvcmsjI0xpYnJhcnkodHJ1ZSkgIT0gbnVsbHB0cjsgXAotLy8gICAgfSBc
Ci0vLyAgICB9Ci0vLwotLy8jZGVmaW5lIFNPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJDRV9X
SVRIX0VYUE9SVChmdW5jdGlvbk5hbWVzcGFjZSwgZnJhbWV3b3JrLCBleHBvcnQpIFwKLS8vICAg
IG5hbWVzcGFjZSBmdW5jdGlvbk5hbWVzcGFjZSB7IFwKLS8vICAgIGV4cG9ydCB2b2lkKiBmcmFt
ZXdvcmsjI0xpYnJhcnkoYm9vbCBpc09wdGlvbmFsID0gZmFsc2UpOyBcCi0vLyAgICB2b2lkKiBm
cmFtZXdvcmsjI0xpYnJhcnkoYm9vbCBpc09wdGlvbmFsKSBcCi0vLyAgICB7IFwKLS8vICAgICAg
ICBzdGF0aWMgdm9pZCogZnJhbWV3b3JrTGlicmFyeTsgXAotLy8gICAgICAgIHN0YXRpYyBkaXNw
YXRjaF9vbmNlX3Qgb25jZTsgXAotLy8gICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwK
LS8vICAgICAgICAgICAgZnJhbWV3b3JrTGlicmFyeSA9IGRsb3BlbigiL1N5c3RlbS9MaWJyYXJ5
L0ZyYW1ld29ya3MvIiAjZnJhbWV3b3JrICIuZnJhbWV3b3JrLyIgI2ZyYW1ld29yaywgUlRMRF9O
T1cpOyBcCi0vLyAgICAgICAgICAgIGlmICghaXNPcHRpb25hbCkgXAotLy8gICAgICAgICAgICAg
ICAgUkVMRUFTRV9BU1NFUlQoZnJhbWV3b3JrTGlicmFyeSwgIkNvdWxkIG5vdCBsb2FkICIgI2Zy
YW1ld29yayAiLmZyYW1ld29yayIpOyBcCi0vLyAgICAgICAgfSk7IFwKLS8vICAgICAgICByZXR1
cm4gZnJhbWV3b3JrTGlicmFyeTsgXAotLy8gICAgfSBcCi0vLyAgICB9Ci0vLwotLy8jZGVmaW5l
IFNPRlRfTElOS19GUkFNRVdPUktfRk9SX1NPVVJDRShmdW5jdGlvbk5hbWVzcGFjZSwgZnJhbWV3
b3JrKSBcCi0vLyAgICBTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0VfV0lUSF9FWFBPUlQo
ZnVuY3Rpb25OYW1lc3BhY2UsIGZyYW1ld29yaywgKQotLy8KLS8vI2RlZmluZSBTT0ZUX0xJTktf
RlVOQ1RJT05fRk9SX0hFQURFUihmdW5jdGlvbk5hbWVzcGFjZSwgZnJhbWV3b3JrLCBmdW5jdGlv
bk5hbWUsIHJlc3VsdFR5cGUsIHBhcmFtZXRlckRlY2xhcmF0aW9ucywgcGFyYW1ldGVyTmFtZXMp
IFwKLS8vICAgIEVYVEVSTl9DX0JFR0lOIFwKLS8vICAgIHJlc3VsdFR5cGUgZnVuY3Rpb25OYW1l
IHBhcmFtZXRlckRlY2xhcmF0aW9uczsgXAotLy8gICAgRVhURVJOX0NfRU5EIFwKLS8vICAgIG5h
bWVzcGFjZSBmdW5jdGlvbk5hbWVzcGFjZSB7IFwKLS8vICAgIGV4dGVybiByZXN1bHRUeXBlICgq
c29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lKSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnM7
IFwKLS8vICAgIGlubGluZSByZXN1bHRUeXBlIHNvZnRMaW5rXyMjZnJhbWV3b3JrIyNfIyNmdW5j
dGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zIFwKLS8vICAgIHsgXAotLy8gICAgICAgIHJl
dHVybiBzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyTmFtZXM7IFwK
LS8vICAgIH0gXAotLy8gICAgfSBcCi0vLyAgICBpbmxpbmUgX19hdHRyaWJ1dGVfXygoX19hbHdh
eXNfaW5saW5lX18pKSByZXN1bHRUeXBlIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlv
bnMgXAotLy8gICAge1wKLS8vICAgICAgICByZXR1cm4gZnVuY3Rpb25OYW1lc3BhY2U6OnNvZnRM
aW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSBwYXJhbWV0ZXJOYW1lczsgXAotLy8gICAgfQot
Ly8KLS8vI2RlZmluZSBTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRIX0VYUE9SVChm
dW5jdGlvbk5hbWVzcGFjZSwgZnJhbWV3b3JrLCBmdW5jdGlvbk5hbWUsIHJlc3VsdFR5cGUsIHBh
cmFtZXRlckRlY2xhcmF0aW9ucywgcGFyYW1ldGVyTmFtZXMsIGV4cG9ydCkgXAotLy8gICAgRVhU
RVJOX0NfQkVHSU4gXAotLy8gICAgcmVzdWx0VHlwZSBmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVj
bGFyYXRpb25zOyBcCi0vLyAgICBFWFRFUk5fQ19FTkQgXAotLy8gICAgbmFtZXNwYWNlIGZ1bmN0
aW9uTmFtZXNwYWNlIHsgXAotLy8gICAgc3RhdGljIHJlc3VsdFR5cGUgaW5pdCMjZnJhbWV3b3Jr
IyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zOyBcCi0vLyAgICBleHBvcnQgcmVz
dWx0VHlwZSgqc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lKSBwYXJhbWV0ZXJEZWNs
YXJhdGlvbnMgPSBpbml0IyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZTsgXAotLy8gICAgc3RhdGlj
IHJlc3VsdFR5cGUgaW5pdCMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFy
YXRpb25zIFwKLS8vICAgIHsgXAotLy8gICAgICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25j
ZTsgXAotLy8gICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKLS8vICAgICAgICAgICAg
c29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lID0gKHJlc3VsdFR5cGUgKCopIHBhcmFt
ZXRlckRlY2xhcmF0aW9ucykgZGxzeW0oZnJhbWV3b3JrIyNMaWJyYXJ5KCksICNmdW5jdGlvbk5h
bWUpOyBcCi0vLyAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKHNvZnRMaW5rIyNmcmFtZXdvcmsj
I2Z1bmN0aW9uTmFtZSwgIkZhaWxlZCB0byBkbHN5bSBmb3IgIiAjZnVuY3Rpb25OYW1lKTsgXAot
Ly8gICAgICAgIH0pOyBcCi0vLyAgICAgICAgcmV0dXJuIHNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1
bmN0aW9uTmFtZSBwYXJhbWV0ZXJOYW1lczsgXAotLy8gICAgfSBcCi0vLyAgICB9Ci0vLwotLy8j
ZGVmaW5lIFNPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKGZ1bmN0aW9uTmFtZXNwYWNlLCBm
cmFtZXdvcmssIGZ1bmN0aW9uTmFtZSwgcmVzdWx0VHlwZSwgcGFyYW1ldGVyRGVjbGFyYXRpb25z
LCBwYXJhbWV0ZXJOYW1lcykgXAotLy8gICAgU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0Vf
V0lUSF9FWFBPUlQoZnVuY3Rpb25OYW1lc3BhY2UsIGZyYW1ld29yaywgZnVuY3Rpb25OYW1lLCBy
ZXN1bHRUeXBlLCBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMsIHBhcmFtZXRlck5hbWVzLCApCi0KLQot
I2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCi0KLSNlbmRpZiAvLyBTT0ZU
X0xJTktJTkdfQVBQTEVfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNw
cApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTU1YjRkZjdkN2QyLi4wMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9DR0xGdW5jdGlvbnMuY3BwCisrKyAvZGV2L251bGwKQEAgLTEsMzIgKzAsMCBAQAotLy8K
LS8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0vLyBV
c2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNl
IHRoYXQgY2FuIGJlCi0vLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgotLy8KLQotLy8gQ0dM
RnVuY3Rpb25zLmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIENHTCBpbnRlcmZhY2UuCi0K
LSNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKLSNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCi0KLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQotCi1TT0ZUX0xJTktf
RlJBTUVXT1JLX1NPVVJDRShPcGVuR0wpCi0KLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3Bl
bkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1h
dEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgp
LCAoYXR0cmlicywgcGl4LCBucGl4KSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dM
Q29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkp
Ci1TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1h
dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBp
eGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwg
YXR0cmliLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVz
dHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLVNPRlRf
TElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVy
cm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMRXJyb3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVy
cm9yKSwgKGVycm9yKSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xSZWxl
YXNlQ29udGV4dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCi1TT0ZUX0xJTktf
RlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3Bl
bkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBH
TGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQotU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShP
cGVuR0wsIENHTFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBj
dHgsIEdMZW51bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9mb3JtYXQsIEdMc2l6ZWkgd2lkdGgs
IEdMc2l6ZWkgaGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSU9TdXJmYWNlUmVm
IGlvU3VyZmFjZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFyZ2V0LCBpbnRlcm5hbF9mb3JtYXQs
IHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJmYWNlLCBwbGFuZSkpCi1TT0ZUX0xJ
TktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChD
R0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotCi1TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmog
cmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZh
bHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5k
ZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKLVNPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3Bl
bkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNr
LCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ss
IHJlbmQsIG5yZW5kKSkKLQotI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1Mp
IHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0
aW9ucy5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9DR0xGdW5jdGlvbnMuaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYThhMWQ3
YzczYmM5Li4wMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaAorKysgL2Rldi9udWxsCkBAIC0x
LDM5ICswLDAgQEAKLS8vCi0vLyBDb3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgotLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KLS8vCi0KLS8vIENHTEZ1bmN0aW9ucy5oOiBFeHBvc2luZyB0aGUgc29mdC1saW5rZWQgQ0dM
IGludGVyZmFjZS4KLQotI2lmbmRlZiBDR0xfRlVOQ1RJT05TX0hfCi0jZGVmaW5lIENHTF9GVU5D
VElPTlNfSF8KLQotI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgotCi0jaWYgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKLQotI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KLQotI2luY2x1ZGUgImxpYkFOR0xFL3Jl
bmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmgiCi0KLVNPRlRfTElOS19GUkFNRVdPUktfSEVB
REVSKE9wZW5HTCkKLQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTENob29z
ZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlICph
dHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAqbnBpeCksIChhdHRyaWJzLCBw
aXgsIG5waXgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTENyZWF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNo
YXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKLVNPRlRfTElOS19G
VU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRy
aWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVl
KSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXNjcmliZVJlbmRlcmVy
LCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCByZW5kX251bSwgQ0dM
UmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwgcmVuZF9udW0sIHBy
b3AsIHZhbHVlKSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95
Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotU09GVF9MSU5L
X0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc3Ryb3lQaXhlbEZvcm1hdCwgQ0dMRXJyb3Is
IChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFE
RVIoT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVy
SW5mb09iaiByZW5kKSwgKHJlbmQpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTEVycm9yU3RyaW5nLCBjb25zdCBjaGFyICosIChDR0xFcnJvciBlcnJvciksIChlcnJvcikp
Ci1TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMUXVlcnlSZW5kZXJlckluZm8s
IENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dMUmVuZGVyZXJJbmZvT2JqICpyZW5k
LCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5kLCBucmVuZCkpCi1TT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMUmVsZWFzZUNvbnRleHQsIHZvaWQsIChDR0xDb250
ZXh0T2JqIGN0eCksIChjdHgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENH
TFNldEN1cnJlbnRDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkp
Ci1TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMU2V0VmlydHVhbFNjcmVlbiwg
Q0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQgc2NyZWVuKSwgKGN0eCwgc2NyZWVu
KSkKLVNPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xUZXhJbWFnZUlPU3VyZmFj
ZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGVudW0gdGFyZ2V0LCBHTGVudW0g
aW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNpemVpIGhlaWdodCwgR0xlbnVtIGZv
cm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1cmZhY2UsIEdMdWludCBwbGFuZSks
IChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIHR5
cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkK
LQotI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0KLSNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KaW5kZXggZTdjYzJiYTJmYTYzLi43OWEx
MWQ0ZDI5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KQEAgLTI4LDgg
KzI4LDYgQEAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1
cmZhY2VDR0wuaCIKICMgICAgaW5jbHVkZSAicGxhdGZvcm0vUGxhdGZvcm1NZXRob2RzLmgiCiAK
LSMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgot
CiBuYW1lc3BhY2UKIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcCBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNl
U3VyZmFjZUNHTC5jcHAKaW5kZXggOGVkNDM5MWUwMzBkLi5hZmRjYTRmMmVmOTYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
SU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcApAQCAtMjcs
OCArMjcsNiBAQAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9UZXh0dXJlR0wu
aCIKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIK
IAotIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgi
Ci0KIG5hbWVzcGFjZSByeAogewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0gYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1
cmZhY2VDR0wubW0KaW5kZXggMWExMjY5ZDlkMTg3Li4wZmE1N2JlNDNiNzcgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2lu
ZG93U3VyZmFjZUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KQEAgLTIzLDggKzIzLDYgQEAK
ICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuaCIKICMg
ICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKIAotIyAg
ICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCi0KIEBp
bnRlcmZhY2UgV2ViU3dhcExheWVyIDogQ0FPcGVuR0xMYXllciB7CiAgICAgQ0dMQ29udGV4dE9i
aiBtRGlzcGxheUNvbnRleHQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5j
cHAKaW5kZXggNjQxOTdmZmVmZDU3Li5hOTgzNDYxOTI0MGMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24v
cGxhdGZvcm0uaCIKIAotI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2lmIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wu
aCIKIApAQCAtNTYsNCArNTYsNCBAQCB2b2lkIERldmljZUVBR0w6OmdlbmVyYXRlRXh0ZW5zaW9u
cyhlZ2w6OkRldmljZUV4dGVuc2lvbnMgKm91dEV4dGVuc2lvbnMpIGNvbnN0CiAKIH0gIC8vIG5h
bWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2VuZGlm
ICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgKaW5kZXgg
OTNhYmZmYzAyODVmLi41NzY5NjkyMWVmM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaAorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZp
Y2VFQUdMLmgKQEAgLTExLDcgKzExLDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgi
CiAKLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAKICNpbmNs
dWRlICJsaWJBTkdMRS9EZXZpY2UuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9EZXZp
Y2VJbXBsLmgiCkBAIC0zNCw2ICszNCw2IEBAIGNsYXNzIERldmljZUVBR0wgOiBwdWJsaWMgRGV2
aWNlSW1wbAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkg
fHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVf
Q1BVX0FSTTY0KSkKKyNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogCiAjZW5kaWYgIC8vIExJQkFOR0xF
X1JFTkRFUkVSX0dMX0VBR0xfREVWSUNFRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rp
c3BsYXlFQUdMLmgKaW5kZXggYTUzNjZlOTE2ZTljLi4yNjFiYTQwN2QxOTMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rp
c3BsYXlFQUdMLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaApAQCAtMTEsNyArMTEsNyBAQAogCiAjaW1wb3J0
ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2lm
IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL0Rpc3BsYXlHTC5o
IgogCkBAIC05Nyw2ICs5Nyw2IEBAIGNsYXNzIERpc3BsYXlFQUdMIDogcHVibGljIERpc3BsYXlH
TAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQorI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKIAogI2VuZGlmICAvLyBMSUJBTkdMRV9SRU5ERVJF
Ul9HTF9FQUdMX0RJU1BMQVlFQUdMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlF
QUdMLm1tCmluZGV4IDU4NjE0ZWVmYTUwYy4uY2ViMmQxMWZjNzk5IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5
RUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAKIAogI2ltcG9ydCAiY29t
bW9uL3BsYXRmb3JtLmgiCiAKLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNpZiBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlF
QUdMLmgiCiAKQEAgLTIzLDEwICsyMywxMSBAQAogIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaCIKIAogIyAgICBpbXBvcnQgPEZvdW5kYXRp
b24vRm91bmRhdGlvbi5oPgorIyAgICBpbXBvcnQgPE9wZW5HTEVTL0VBR0wuaD4KICMgICAgaW1w
b3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4KICMgICAgaW1wb3J0IDxkbGZjbi5oPgogCi0j
ICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgiCisj
ICAgIGRlZmluZSBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT04KIAogbmFtZXNwYWNlCiB7CkBAIC0z
NzMsNCArMzc0LDQgQEAgdm9pZCBEaXNwbGF5RUFHTDo6cG9wdWxhdGVGZWF0dXJlTGlzdChhbmds
ZTo6RmVhdHVyZUxpc3QgKmZlYXR1cmVzKQogfQogfQogCi0jZW5kaWYgIC8vIChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
KSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdM
RV9DUFVfQVJNNjQpKQorI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rp
b25zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9FQUdMRnVuY3Rpb25zLmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDIwNjMy
ZjNkZDJmYi4uMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaAorKysgL2Rldi9udWxsCkBA
IC0xLDQzICswLDAgQEAKLS8vCi0vLyBDb3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgotLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkg
YSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQotLy8gZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KLS8vCi0KLS8vIEVBR0xGdW5jdGlvbnMuaDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2Vk
IEVBR0wgaW50ZXJmYWNlLgotCi0jaWZuZGVmIEVBR0xfRlVOQ1RJT05TX0hfCi0jZGVmaW5lIEVB
R0xfRlVOQ1RJT05TX0hfCi0KLSNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKLQotI2lmIChk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVm
aW5lZChBTkdMRV9DUFVfQVJNNjQpKQotCi0jaW1wb3J0IDxPcGVuR0xFUy9FQUdMLmg+Ci0jaW1w
b3J0IDxPcGVuR0xFUy9FQUdMRHJhd2FibGUuaD4KLSNpbXBvcnQgPE9wZW5HTEVTL0VBR0xJT1N1
cmZhY2UuaD4KLQotI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2Fw
cGxlLmgiCi0KLVNPRlRfTElOS19GUkFNRVdPUktfSEVBREVSKE9wZW5HTEVTKQotCi1TT0ZUX0xJ
TktfQ0xBU1NfSEVBREVSKEVBR0xDb250ZXh0KQotCi0vL1NPRlRfTElOS19GVU5DVElPTl9IRUFE
RVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhl
bEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQg
Km5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURF
UihPcGVuR0wsIENHTENyZWF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmog
cGl4LCBDR0xDb250ZXh0T2JqIHNoYXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFy
ZSwgY3R4KSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc2NyaWJl
UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBHTGludCBwaXhf
bnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdMaW50ICp2YWx1ZSksIChwaXgs
IHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQotLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9w
ZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmog
cmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZh
bHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCi0vL1NPRlRfTElOS19GVU5DVElP
Tl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQotLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dM
RGVzdHJveVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCksIChw
aXgpKQotLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRl
cmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKLS8v
U09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTEVycm9yU3RyaW5nLCBjb25zdCBj
aGFyICosIChDR0xFcnJvciBlcnJvciksIChlcnJvcikpCi0vL1NPRlRfTElOS19GVU5DVElPTl9I
RUFERVIoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlz
cGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNw
bGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVu
R0wsIENHTFJlbGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkK
LS8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFNldEN1cnJlbnRDb250ZXh0
LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCi0vL1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENv
bnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQotLy9TT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3Is
IChDR0xDb250ZXh0T2JqIGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1h
dCwgR0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0
eXBlLCBJT1N1cmZhY2VSZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQs
IGludGVybmFsX2Zvcm1hdCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2Us
IHBsYW5lKSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFVwZGF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLQotI2VuZGlmIC8v
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQotCi0jZW5kaWYgLy8gQ0dMX0ZVTkNUSU9OU19IXwpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMubW0KZGVsZXRlZCBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDRkNzMzMTk0ZDU4Zi4uMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlv
bnMubW0KKysrIC9kZXYvbnVsbApAQCAtMSw0MCArMCwwIEBACi0vLwotLy8gQ29weXJpZ2h0IDIw
MjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLS8vIFVzZSBvZiB0aGlzIHNvdXJj
ZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKLS8v
IGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCi0vLwotCi0vLyBFQUdMRnVuY3Rpb25zLmNwcDog
RXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIEVBR0wgaW50ZXJmYWNlLgotCi0jaW5jbHVkZSAiY29t
bW9uL3BsYXRmb3JtLmgiCi0KLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKLQotI2ltcG9y
dCA8T3BlbkdMRVMvRUFHTC5oPgotI2ltcG9ydCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+Ci0j
aW1wb3J0IDxPcGVuR0xFUy9FQUdMSU9TdXJmYWNlLmg+Ci0KLSNpbmNsdWRlICJsaWJBTkdMRS9y
ZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIgotCi1TT0ZUX0xJTktfRlJBTUVXT1JLX1NP
VVJDRShPcGVuR0xFUykKLQotU09GVF9MSU5LX0NMQVNTKE9wZW5HTEVTLCBFQUdMQ29udGV4dCkK
LQotLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3Jt
YXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENH
TFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkp
Ci0vL1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBD
R0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dM
Q29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCi0vL1NPRlRfTElOS19GVU5DVElP
Tl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBp
eGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUg
YXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVlKSkKLS8v
U09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc3Ryb3lDb250ZXh0LCBDR0xF
cnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCi0vL1NPRlRfTElOS19GVU5DVElPTl9T
T1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxG
b3JtYXRPYmogcGl4KSwgKHBpeCkpCi0vL1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xFcnJvclN0cmluZywgY29uc3QgY2hhciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3Ip
KQotLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMUmVsZWFzZUNvbnRleHQs
IHZvaWQsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotLy9TT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENH
TFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNj
cmVlbiksIChjdHgsIHNjcmVlbikpCi0vL1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xUZXhJbWFnZUlPU3VyZmFjZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBH
TGVudW0gdGFyZ2V0LCBHTGVudW0gaW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNp
emVpIGhlaWdodCwgR0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1
cmZhY2UsIEdMdWludCBwbGFuZSksIChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0
aCwgaGVpZ2h0LCBmb3JtYXQsIHR5cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQotLy9TT0ZUX0xJTktf
RlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xD
b250ZXh0T2JqIGN0eCksIChjdHgpKQotLy8KLS8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShP
cGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2Jq
IHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2
YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQotLy9TT0ZUX0xJTktfRlVOQ1RJ
T05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xS
ZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKLS8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5
X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlf
bWFzaywgcmVuZCwgbnJlbmQpKQotCi0jZW5kaWYgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkp
Ci0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wu
bW0KaW5kZXggYjA2NDlhZDY1OGRhLi5kMGI1Yzk4MGJhYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCkBAIC05LDcgKzksNyBAQAog
CiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wuaCIKIApAQCAtNDI3LDQgKzQyNyw0IEBAIElPU3Vy
ZmFjZUxvY2tPcHRpb25zIElPU3VyZmFjZVN1cmZhY2VFQUdMOjpnZXRJT1N1cmZhY2VMb2NrT3B0
aW9ucygpIGNvbnN0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpKQorI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCmlu
ZGV4IGNiMTY2YTRhZWU3My4uMzZmMWMxNWI5NzVkIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVB
R0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAKQEAgLTksNyArOSw3IEBACiAKICNpbXBv
cnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisj
aWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKQogCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
UGJ1ZmZlclN1cmZhY2VFQUdMLmgiCiAKQEAgLTE0NCw0ICsxNDQsNCBAQCBGcmFtZWJ1ZmZlcklt
cGwgKlBidWZmZXJTdXJmYWNlRUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGds
OjpDb250ZXh0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
KSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdM
RV9DUFVfQVJNNjQpKQorI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1JlbmRlcmVyRUFHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCmluZGV4IDRkM2NmYmJlN2Mz
NS4uYTQ3MzhiMjU2NmIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRlcmVyRUFH
TC5jcHAKQEAgLTgsNyArOCw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0j
aWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogCiAjICAgIGluY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCIKICMgICAgaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuaCIKQEAgLTMxLDQgKzMx
LDQgQEAgV29ya2VyQ29udGV4dCAqUmVuZGVyZXJFQUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KHN0
ZDo6c3RyaW5nICppbmZvTG9nKQogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyAo
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1t
CmluZGV4IDljODNjY2U3ZDRmOS4uMzhkMjUzZWJkZWIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNl
RUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAKIAogI2ltcG9y
dCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1Mp
ICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKyNp
ZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dp
bmRvd1N1cmZhY2VFQUdMLmgiCiAKQEAgLTIyLDIwICsyMiw3IEBACiAjICAgIGltcG9ydCA8T3Bl
bkdMRVMvRUFHTC5oPgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgogCi0j
aWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9D
UFVfQVJNNjQpCi0vL0Bwcm90b2NvbCBFQUdMRHJhd2FibGUKLS8vLSAoQk9PTClwcmVzZW50UmVu
ZGVyYnVmZmVyOihOU1VJbnRlZ2VyKXRhcmdldDsKLS8vQGVuZAotLy8KLS8vQGludGVyZmFjZSBD
QUVBR0xMYXllciA6IENBTGF5ZXIgPEVBR0xEcmF3YWJsZT4KLUBpbnRlcmZhY2UgQ0FFQUdMTGF5
ZXIgOiBDQUxheWVyCi1AZW5kCi0KLUBpbnRlcmZhY2UgRUFHTENvbnRleHQgKCkKLS0gKEJPT0wp
cHJlc2VudFJlbmRlcmJ1ZmZlcjooTlNVSW50ZWdlcil0YXJnZXQ7Ci1AZW5kCi0KLSNlbmRpZgor
Ly8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEl0J3Mgbm90IGNsZWFyIHdoeSB0aGlzIG5lZWRz
IHRvIGJlIGFuIEVBR0xMYXllci4KIAogQGludGVyZmFjZSBXZWJTd2FwTGF5ZXIgOiBDQUVBR0xM
YXllciB7CiAgICAgRUFHTENvbnRleHRPYmogbURpc3BsYXlDb250ZXh0OwpAQCAtMzE5LDQgKzMw
Niw0IEBAIEZyYW1lYnVmZmVySW1wbCAqV2luZG93U3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRG
cmFtZWJ1ZmZlcihjb25zdCBnbDo6Q29udGV4dCAqCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0j
ZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorI2VuZGlmICAvLyBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNw
cAppbmRleCBiZTliYzE2MjUxNGIuLjRlYTEwNmFjZTg4NCAxMDA2NDQKLS0tIGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMu
Y3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9yZW5kZXJlcmdsX3V0aWxzLmNwcApAQCAtMTM0NCw3ICsxMzQ0LDYgQEAgdm9pZCBHZW5lcmF0
ZUNhcHMoY29uc3QgRnVuY3Rpb25zR0wgKmZ1bmN0aW9ucywKICAgICAgICAgZnVuY3Rpb25zLT5o
YXNHTEVTRXh0ZW5zaW9uKCJHTF9FWFRfY29tcHJlc3NlZF9FVEMxX1JHQjhfc3ViX3RleHR1cmUi
KTsKIAogI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0gICAgLy8gRklYTUU6IFJ1bnRpbWUgY2hlY2sgbm90IEFS
TTY0CiAgICAgVmVuZG9ySUQgdmVuZG9yID0gR2V0VmVuZG9ySUQoZnVuY3Rpb25zKTsKICAgICBp
ZiAoKElzQU1EKHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9ydGVkRVNW
ZXJzaW9uID49IGdsOjpWZXJzaW9uKDMsIDApKQogICAgIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9D
b25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCmluZGV4IDU3MWU4ZWIwNzA2MC4uYjgxMDll
NjM0NjZkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3Jl
LnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNj
b25maWcKQEAgLTEwNSw2ICsxMDUsMTYgQEAgV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFH
U19jb2NvYXRvdWNoID0gLWZyYW1ld29yayBNb2JpbGVDb3JlU2VydmljZXM7CiBXS19NT0JJTEVf
R0VTVEFMVF9MREZMQUdTID0gJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTXyQoV0tfQ09DT0Ff
VE9VQ0gpKTsKIFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1NfY29jb2F0b3VjaCA9IC1sTW9iaWxl
R2VzdGFsdDsKIAorV0tfT1BFTkdMX0xERkxBR1MgPSAkKFdLX09QRU5HTF9MREZMQUdTXyQoV0tf
UExBVEZPUk1fTkFNRSkpOworV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3Jr
IE9wZW5HTEVTOworV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yID0gLWZyYW1ld29y
ayBPcGVuR0xFUzsKK1dLX09QRU5HTF9MREZMQUdTX3dhdGNob3MgPSAkKFdLX09QRU5HTF9MREZM
QUdTX2lwaG9uZW9zKTsKK1dLX09QRU5HTF9MREZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChXS19P
UEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOworV0tfT1BFTkdMX0xERkxBR1NfYXBwbGV0
dm9zID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7CitXS19PUEVOR0xfTERGTEFHU19h
cHBsZXR2c2ltdWxhdG9yID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOwor
V0tfT1BFTkdMX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIE9wZW5HTDsKK1dLX09Q
RU5HTF9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgT3BlbkdMOworCiBXS19TWVNURU1fQ09O
RklHVVJBVElPTl9MREZMQUdTID0gJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTXyQo
V0tfUExBVEZPUk1fTkFNRSkpOwogV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHU19tYWNv
c3ggPSAtZnJhbWV3b3JrIFN5c3RlbUNvbmZpZ3VyYXRpb247CiAKQEAgLTExNCw3ICsxMjQsNyBA
QCBXS19VUkxfRk9STUFUVElOR19MREZMQUdTID0gJChXS19VUkxfRk9STUFUVElOR19MREZMQUdT
XyQoV0tfSEFWRV9VUkxfRk9STUFUVElORwogV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHU19ZRVMg
PSAtZnJhbWV3b3JrIFVSTEZvcm1hdHRpbmc7CiAKIC8vIEZJWE1FOiBSZWR1Y2UgdGhlIG51bWJl
ciBvZiBhbGxvd2FibGVfY2xpZW50cyA8cmRhcjovL3Byb2JsZW0vMzE4MjM5Njk+Ci1PVEhFUl9M
REZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJBTUVXT1JLX0xERkxBR1Mp
IC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlVGVzdFN1
cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3JjZV9sb2FkICQoQlVJTFRf
UFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3JrIENv
cmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENvcmVUZXh0IC1mcmFt
ZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIEltYWdlSU8g
LWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19DT0NPQV9UT1VD
SCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JNX05BTUUpKSAkKFdLX0FQ
UEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChXS19BVURJT19VTklUX0xE
RkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9MREZMQUdTKSAkKFdLX0RB
VEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19MREZM
QUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dFU1RB
TFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTKSAkKFdLX0NPUkVf
SU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKTsKK09USEVSX0xERkxB
R1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktfTERGTEFHUykgLWxz
cWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNlX2xvYWQgJChCVUlMVF9QUk9E
VUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1
ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29y
ayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX0NPQ09BX1RPVUNIKSkg
JChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1fTkFNRSkpICQoV0tfQVBQS0lU
X0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdLX0FVRElPX1VOSVRfTERGTEFH
UykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xERkxBR1MpICQoV0tfREFUQV9E
RVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQo
V0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1Mp
ICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9M
REZMQUdTKSAkKFdLX09QRU5HTF9MREZMQUdTKSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xE
RkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxB
R1MpOwogCiBPVEhFUl9MREZMQUdTX1BMQVRGT1JNX2NvY29hdG91Y2ggPSAtYWxsb3dhYmxlX2Ns
aWVudCBXZWJLaXQgLWFsbG93YWJsZV9jbGllbnQgaVR1bmVzVSAtYWxsb3dhYmxlX2NsaWVudCBD
YXNhYmxhbmNhIC1hbGxvd2FibGVfY2xpZW50IFJlbW90ZSAtYWxsb3dhYmxlX2NsaWVudCBUVkJv
b2tzIC1hbGxvd2FibGVfY2xpZW50IER1bXBSZW5kZXJUcmVlIC1hbGxvd2FibGVfY2xpZW50IFdl
YktpdFRlc3RSdW5uZXIgLWFsbG93YWJsZV9jbGllbnQgVGVzdFdlYktpdEFQSTsKIE9USEVSX0xE
RkxBR1NfUExBVEZPUk1fbWFjb3N4ID0gLXN1Yl9saWJyYXJ5IGxpYm9iamMgLXVtYnJlbGxhIFdl
YktpdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA4Mjk5ODAzODQ0NDUuLjYwNWY2MDczZWU5MyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTE5LDggKzExOSw2
IEBACiAJCTJFMTM0MkNDMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLmggaW4gSGVh
ZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQTIxNUFBMTBB
MDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oICovOyB9OwogCQkyRTEzNDJDRDIxNUFBMTBBMDA3
MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5r
Lm1tICovOyB9OwogCQkzMTMwOEIxNDIwQTIxNzA1MDAzRkI5MjkgLyogU3lzdGVtUHJldmlld1NQ
SS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzMDhC
MTMyMEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLzsgfTsKLQkJMzE2NDdG
QjAyNTE3NTlERDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRTI1MTc1OURCMDAxMEY4
RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLzsgfTsKLQkJMzE2NDdGQjEyNTE3NTlFRjAw
MTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkFGMjUxNzU5REMwMDEwRjhGQiAvKiBPcGVuR0xT
b2Z0TGlua0NvY29hLmggKi87IH07CiAJCTQxNkU5OTUzMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRp
b1Rvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSA0MTZFOTk1MTIzREFFNkJEMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExp
bmsuY3BwICovOyB9OwogCQk0MTZFOTk1NDIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94
U29mdExpbmsuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovOyB9
OwogCQk0MUUxRjM0NDI0OEE2QTAwMDAyMkQ1REUgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3Bw
IGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RTk5NTUy
M0RBRUZGNzAwRTg3MUNCIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCAqLzsgfTsKQEAgLTMw
Nyw4ICszMDUsNiBAQAogCQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGlu
ay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBVSUtpdFNvZnRMaW5rLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBV
SUtpdFNvZnRMaW5rLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0g
VUlLaXRTb2Z0TGluay5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMDhCMTMy
MEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lz
dGVtUHJldmlld1NQSS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkzMTY0N0ZBRTI1
MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsg
cGF0aCA9IE9wZW5HTFNvZnRMaW5rQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
Ci0JCTMxNjQ3RkFGMjUxNzU5REMwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmMuaDsgcGF0aCA9IE9wZW5HTFNvZnRMaW5rQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzcxMTlBNzgyMENDQjVGRjAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlv
bmFscy54Y2NvbmZpZyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQueGNjb25maWc7IHBhdGggPSBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNj
b25maWc7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxNkU5OTUxMjNEQUU2QkQwMEU4
NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNw
cC5jcHA7IHBhdGggPSBBdWRpb1Rvb2xib3hTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTQxNkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0
TGluay5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1Rvb2xib3hTb2Z0
TGluay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjU4LDggKzY1NCw2IEBACiAJ
CQkJMUMwMjJFRkMyMkNGRThFMDAwNkRGMDFCIC8qIEd1bnppcC5jcHAgKi8sCiAJCQkJQ0RBQ0Iz
NUUyMzg3M0U0ODAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQlD
REFDQjM1RjIzODczRTQ4MDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExpbmsuaCAqLywKLQkJ
CQkzMTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovLAot
CQkJCTMxNjQ3RkFFMjUxNzU5REIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICov
LAogCQkJCUExRjYzQzlEMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsuaCAqLywK
IAkJCQlBMUY2M0M5RTIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tICovLAog
CQkJCTA3NjExREI0MjQzRkE1QkUwMEQ4MDcwNCAvKiBVc2FnZVRyYWNraW5nU29mdExpbmsuaCAq
LywKQEAgLTgzMCw3ICs4MjQsNiBAQAogCQkJCTBDMkRBMTRDMUYzQkVCNDkwMERCQzMxNyAvKiBO
U0NhbGVuZGFyRGF0ZVNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTExNzVCNEIxRjZCMkQ3RTAw
QzRCOUYwIC8qIE5TQ2VsbFNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEMyREExNEQxRjNCRUI0
OTAwREJDMzE3IC8qIE5TQ29sb3JTUEkuaCBpbiBIZWFkZXJzICovLAotCQkJCTMxNjQ3RkIxMjUx
NzU5RUYwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVycyAqLywKIAkJ
CQlFNUQ0NUQxMjIxMDZBMDc0MDBEMkI3MzggLyogTlNDb2xvcldlbGxTUEkuaCBpbiBIZWFkZXJz
ICovLAogCQkJCTBDNzc4NThGMUY0NTEzMEYwMEY0RUJCNiAvKiBOU0V2ZW50U1BJLmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwQzJEQTE0RTFGM0JFQjQ5MDBEQkMzMTcgLyogTlNFeHRlbnNpb25TUEku
aCBpbiBIZWFkZXJzICovLApAQCAtOTkwLDcgKzk4Myw2IEBACiAJCQkJMDc3RTg3QjEyMjZBNDYw
MjAwQTJBRkYwIC8qIEFWRm91bmRhdGlvblNvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MEM1RkZGMEYxRjc4RDlEQTAwOUVGRjFBIC8qIENsb2NrQ00ubW0gaW4gU291cmNlcyAqLywKIAkJ
CQkwQ0Y5OUNBODFGNzM4NDM3MDA3RUU3OTMgLyogQ29yZU1lZGlhU29mdExpbmsuY3BwIGluIFNv
dXJjZXMgKi8sCi0JCQkJMzE2NDdGQjAyNTE3NTlERDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5r
Q29jb2EubW0gaW4gU291cmNlcyAqLywKIAkJCQkxQzA5RDA1NjFFMzFDNDY1MDA3MjVGMTggLyog
Q3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUExMTc1QjU4
MUY2QjQ3MDUwMEM0QjlGMCAvKiBEZWZhdWx0U2VhcmNoUHJvdmlkZXIuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJRjQ0MjkxNjQxRkE1MjY3MDAwMkNDOTNFIC8qIEZpbGVTaXplRm9ybWF0dGVyLmNw
cCBpbiBTb3VyY2VzICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0
Zm9ybU1hYy5jbWFrZSBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UK
aW5kZXggY2RmMDFiMzY2ZGQ5Li42NTkxZDc5OWVhNWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtNiw3ICs2LDYgQEAgbGlzdChBUFBFTkQgUEFMX1BVQkxJ
Q19IRUFERVJTCiAgICAgY29jb2EvQXBwU1NPU29mdExpbmsuaAogICAgIGNvY29hL0FWRm91bmRh
dGlvblNvZnRMaW5rLmgKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5oCi0gICAgY29j
b2EvT3BlbkdMU29mdExpbmtDb2NvYS5oCiAgICAgY29jb2EvUGFzc0tpdFNvZnRMaW5rLmgKIAog
ICAgIG1hYy9Mb29rdXBTb2Z0TGluay5oCkBAIC0xMjQsNyArMTIzLDYgQEAgbGlzdChBUFBFTkQg
UEFMX1NPVVJDRVMKICAgICBjb2NvYS9GaWxlU2l6ZUZvcm1hdHRlckNvY29hLm1tCiAgICAgY29j
b2EvR3VuemlwLmNwcAogICAgIGNvY29hL01lZGlhVG9vbGJveFNvZnRMaW5rLmNwcAotICAgIGNv
Y29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KICAgICBjb2NvYS9QYXNzS2l0U29mdExpbmsubW0K
IAogICAgIGNyeXB0by9jb21tb25jcnlwdG8vQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0Nv
Y29hLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggM2RlOWQzNzZkN2I1Li4wMDAwMDAwMDAw
MDAKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29h
LmgKKysrIC9kZXYvbnVsbApAQCAtMSw0OCArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAy
MDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAq
IEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBG
SVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBO
TyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFS
WSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVS
IElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5F
R0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UK
LSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI3ByYWdtYSBvbmNlCi0KLSNpbmNsdWRlIDx3dGYvU29m
dExpbmtpbmcuaD4KLQotI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1Qp
Ci0KLSNpbmNsdWRlIDxPcGVuR0wvT3BlbkdMLmg+Ci0KLVNPRlRfTElOS19GUkFNRVdPUktfRk9S
X0hFQURFUihQQUwsIE9wZW5HTCkKLQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFM
LCBPcGVuR0wsIENHTENob29zZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVs
Rm9ybWF0QXR0cmlidXRlICphdHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAq
bnBpeCksIChhdHRyaWJzLCBwaXgsIG5waXgpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFE
RVIoUEFMLCBPcGVuR0wsIENHTENyZWF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3Jt
YXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNoYXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4
LCBzaGFyZSwgY3R4KSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdM
LCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBp
eCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgYXR0cmliLCBHTGludCAq
dmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVlKSkKLVNPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xEZXNjcmliZVJlbmRlcmVyLCBDR0xFcnJvciwg
KENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCByZW5kX251bSwgQ0dMUmVuZGVyZXJQcm9w
ZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwgcmVuZF9udW0sIHByb3AsIHZhbHVlKSkK
LVNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95Q29u
dGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQotU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENH
TEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQpLCAocmVuZCkpCi1TT0ZUX0xJTktfRlVO
Q1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMR2V0UGFyYW1ldGVyLCBDR0xFcnJvciwg
KENHTENvbnRleHRPYmogY3R4LCBDR0xDb250ZXh0UGFyYW1ldGVyIHBuYW1lLCBHTGludCAqcGFy
YW1zKSwgKGN0eCwgcG5hbWUsIHBhcmFtcykpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURF
UihQQUwsIE9wZW5HTCwgQ0dMUXVlcnlSZW5kZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRp
c3BsYXlfbWFzaywgQ0dMUmVuZGVyZXJJbmZvT2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlz
cGxheV9tYXNrLCByZW5kLCBucmVuZCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQ
QUwsIE9wZW5HTCwgQ0dMUmVsZWFzZVBpeGVsRm9ybWF0LCB2b2lkLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4KSwgKHBpeCkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5H
TCwgQ0dMU2V0VmlydHVhbFNjcmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xp
bnQgc2NyZWVuKSwgKGN0eCwgc2NyZWVuKSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVS
KFBBTCwgT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmog
Y3R4KSwgKGN0eCkpCi0KLSNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9j
b2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl
eCBlMDZlZTJmMDVmOTEuLjAwMDAwMDAwMDAwMAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFs
L2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KKysrIC9kZXYvbnVsbApAQCAtMSw0OCArMCww
IEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlT
VCkKLQotI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KLSNpbmNsdWRlIDx3dGYvU29mdExpbmtp
bmcuaD4KLQotU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwg
T3BlbkdMLCBQQUxfRVhQT1JUKQotCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRI
X0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29u
c3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpw
aXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCksIFBBTF9FWFBPUlQpCi1TT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMUmVs
ZWFzZVBpeGVsRm9ybWF0LCB2b2lkLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCksIFBB
TF9FWFBPUlQpCi0KLVNPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBD
R0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29u
dGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCi1T
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhl
bEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0s
IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4
X251bSwgYXR0cmliLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUws
IE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQg
KnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCi1TT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKLVNPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRl
cmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0Uo
UEFMLCBPcGVuR0wsIENHTEdldFBhcmFtZXRlciwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0
eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBwbmFtZSwgR0xpbnQgKnBhcmFtcyksIChjdHgsIHBuYW1l
LCBwYXJhbXMpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENH
TFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJl
bmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwg
bnJlbmQpKQotU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFNl
dFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVl
biksIChjdHgsIHNjcmVlbikpCi1TT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9w
ZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChj
dHgpKQotCi0jZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBmNmQ1YzYwYjJlNDQuLmQ2MmQ3ODkyZGM1MCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBi
L1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtOTA4
LDcgKzkwOCw2IEBACiAJCTMxNDg3N0U2MUZBQUIwMjUwMEMwNTc1OSAvKiBKU09mZnNjcmVlbkNh
bnZhcy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0
ODc3RTQxRkFBQjAyMjAwQzA1NzU5IC8qIEpTT2Zmc2NyZWVuQ2FudmFzLmggKi87IH07CiAJCTMx
NEJFM0ExMUIzMEY2QjcwMDE0MTk4MiAvKiBDU1NOYW1lZEltYWdlVmFsdWUuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNEJFM0EwMUIzMEY2QjcwMDE0
MTk4MiAvKiBDU1NOYW1lZEltYWdlVmFsdWUuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9
IChQcml2YXRlLCApOyB9OyB9OwogCQkzMTRCRTNBNzFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJ
bWFnZUdlbmVyYXRlZEltYWdlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAzMTRCRTNBNTFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRl
ZEltYWdlLmggKi87IH07Ci0JCTMxNjQ3RkFCMjUxNjE4RTIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0
TGlua0NvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovOyBz
ZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTMxNkRDQjIwMUU3
OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCMUExRTc4Q0E1NTAwMUI1Rjg3
IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggKi87IH07CiAJCTMxNkRDQjIyMUU3OENBNTUw
MDFCNUY4NyAvKiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0IxQzFFNzhDQTU1MDAxQjVGODcg
LyogSlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5oICovOyB9OwogCQkzMTZEQ0I0QzFFNzkx
MEE2MDAxQjVGODcgLyogSlNSVENJY2VDb25uZWN0aW9uU3RhdGUuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjQ2MUU3OTEwQTYwMDFCNUY4NyAv
KiBKU1JUQ0ljZUNvbm5lY3Rpb25TdGF0ZS5oICovOyB9OwpAQCAtNzE4Myw4ICs3MTgyLDYgQEAK
IAkJMzE0QkUzQTQxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBOYW1lZEltYWdlR2VuZXJh
dGVkSW1hZ2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTRCRTNBNTFCMzEw
M0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmggKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oOyBzb3VyY2VUcmVl
ID0gIjxncm91cD4iOyB9OwogCQkzMTU1NzRDQzIxOEY2NkQwMDBEODhGNjYgLyogUG9pbnRlckV2
ZW50SU9TLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBvaW50ZXJF
dmVudElPUy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxNjQ3RkE4MjUxNjE2
QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IE9wZW5H
TFNvZnRMaW5rQ29jb2EuaDsgcGF0aCA9IC4uLy4uLy4uL1BBTC9wYWwvY29jb2EvT3BlbkdMU29m
dExpbmtDb2NvYS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwotCQkzMTY0N0ZBOTI1MTYx
NkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgbmFt
ZSA9IE9wZW5HTFNvZnRMaW5rQ29jb2EubW07IHBhdGggPSAuLi8uLi8uLi9QQUwvcGFsL2NvY29h
L09wZW5HTFNvZnRMaW5rQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMx
NkRDQjEyMUU3OEJFNDMwMDFCNUY4NyAvKiBSVENPZmZlckFuc3dlck9wdGlvbnMuaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5pZGw7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTMxNkRDQjE3MUU3OEMzMzAwMDFCNUY4NyAvKiBSVENSdHBUcmFu
c2NlaXZlckRpcmVjdGlvbi5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaWRs
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZEQ0IxOTFFNzhDQTU1MDAxQjVGODcg
LyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
Y3BwOyBwYXRoID0gSlNSVENPZmZlckFuc3dlck9wdGlvbnMuY3BwOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwpAQCAtMjYzMDgsOCArMjYzMDUsNiBAQAogCQkJCTQ5RkZCRjNFMTFDOTNFRTMw
MDZBNzExOCAvKiBXZWJHTExheWVyLm1tICovLAogCQkJCTMxODQzNkRCMjFCOURBQTAwMEVEMzgz
RSAvKiBXZWJHUFVMYXllci5oICovLAogCQkJCTMxODQzNkREMjFCOURBQTAwMEVEMzgzRSAvKiBX
ZWJHUFVMYXllci5tbSAqLywKLQkJCQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdM
U29mdExpbmtDb2NvYS5oICovLAotCQkJCTMxNjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVu
R0xTb2Z0TGlua0NvY29hLm1tICovLAogCQkJKTsKIAkJCXBhdGggPSBjb2NvYTsKIAkJCXNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7CkBAIC0zMTA4Niw3ICszMTA4MSw2IEBACiAJCQkJODMwNDAyODMy
NDlBN0E2MjAwQTkwRDhEIC8qIERpc3RhbmNlTW9kZWxUeXBlLmggaW4gSGVhZGVycyAqLywKIAkJ
CQk4NDczMEQ3NzEyNDhGMEIzMDBEM0E5QzkgLyogRGlzdGFudExpZ2h0U291cmNlLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlCMkYzNEZFNjBFODJGODE0MDBGNjI3Q0QgLyogRE5TLmggaW4gSGVhZGVy
cyAqLywKLQkJCQkzMTY0N0ZBQjI1MTYxOEUyMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2Nv
YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJN0VFNjg0NkYxMkQyNkUzODAwRTczMjE1IC8qIEROU1Jl
c29sdmVRdWV1ZUNGTmV0LmggaW4gSGVhZGVycyAqLywKIAkJCQlBODE4NUY0MDA5NzY1NzY2MDA1
ODI2RDkgLyogRG9jdW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4MTg1RjNEMDk3NjU3NjYw
MDU4MjZEOSAvKiBEb2N1bWVudEZyYWdtZW50LmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdM
T3BlbkdMQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9H
cmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1tCmluZGV4IGZkYTJhMWQ4ZDE0Ni4uYTYyNmEx
NTJmOGUyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2Nv
YS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW0KQEAg
LTM5LDcgKzM5LDYgQEAKICNpbXBvcnQgIkhvc3RXaW5kb3cuaCIKICNpbXBvcnQgIkltYWdlQnVm
ZmVyLmgiCiAjaW1wb3J0ICJMb2dnaW5nLmgiCi0jaW1wb3J0ICJPcGVuR0xTb2Z0TGlua0NvY29h
LmgiCiAjaW1wb3J0ICJXZWJHTExheWVyLmgiCiAjaW1wb3J0ICJXZWJHTE9iamVjdC5oIgogI2lt
cG9ydCAiV2ViR0xSZW5kZXJpbmdDb250ZXh0QmFzZS5oIgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCmluZGV4IDI1M2UzZjI0NGRhOS4uYTFi
OTRjZDFhOTFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZv
cm1TY3JlZW5NYWMubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3Jt
U2NyZWVuTWFjLm1tCkBAIC0zMSw3ICszMSw2IEBACiAjaW1wb3J0ICJGbG9hdFJlY3QuaCIKICNp
bXBvcnQgIkZyYW1lVmlldy5oIgogI2ltcG9ydCAiSG9zdFdpbmRvdy5oIgotI2ltcG9ydCAiT3Bl
bkdMU29mdExpbmtDb2NvYS5oIgogI2ltcG9ydCAiU2NyZWVuUHJvcGVydGllcy5oIgogI2ltcG9y
dCA8Q29sb3JTeW5jL0NvbG9yU3luYy5oPgogI2ltcG9ydCA8cGFsL3NwaS9jZy9Db3JlR3JhcGhp
Y3NTUEkuaD4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJs
b2NrbGlzdC5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5t
bQppbmRleCA2YzFkMjZlNDc5YTAuLmRiZjMxZDhhYTM5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5tbQpAQCAtMjksNyArMjksNyBAQAogI2lmIFBM
QVRGT1JNKE1BQykKIAogI2ltcG9ydCAiQmxvY2tsaXN0VXBkYXRlci5oIgotI2ltcG9ydCAiT3Bl
bkdMU29mdExpbmtDb2NvYS5oIgorI2ltcG9ydCA8T3BlbkdML09wZW5HTC5oPgogI2ltcG9ydCA8
cGFsL3NwaS9jZi9DRlV0aWxpdGllc1NQSS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZyBiL1Nv
dXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCmluZGV4IDVmNzVlY2Ji
MTQ5Yy4uZTE4NGNmNmM5OTQ3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRp
b25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dl
YktpdC54Y2NvbmZpZwpAQCAtODgsNiArODgsMTYgQEAgV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFH
U19jb2NvYXRvdWNoID0gLWxNb2JpbGVHZXN0YWx0OwogV0tfTElCU0FOREJPWF9MREZMQUdTID0g
JChXS19MSUJTQU5EQk9YX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7CiBXS19MSUJTQU5E
Qk9YX0xERkxBR1NfbWFjb3N4ID0gLWxzYW5kYm94OwogCitXS19PUEVOR0xfTERGTEFHUyA9ICQo
V0tfT1BFTkdMX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7CitXS19PUEVOR0xfTERGTEFH
U19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7CitXS19PUEVOR0xfTERGTEFHU19tYWNj
YXRhbHlzdCA9IC1mcmFtZXdvcmsgT3BlbkdMOworV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yID0gLWZyYW1ld29yayBPcGVuR0xFUzsKK1dLX09QRU5HTF9MREZMQUdTX3dhdGNob3Mg
PSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKK1dLX09QRU5HTF9MREZMQUdTX3dhdGNo
c2ltdWxhdG9yID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOworV0tfT1BF
TkdMX0xERkxBR1NfYXBwbGV0dm9zID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7CitX
S19PUEVOR0xfTERGTEFHU19hcHBsZXR2c2ltdWxhdG9yID0gJChXS19PUEVOR0xfTERGTEFHU19p
cGhvbmVzaW11bGF0b3IpOworV0tfT1BFTkdMX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBP
cGVuR0w7CisKIFdLX1BERktJVF9MREZMQUdTID0gJChXS19QREZLSVRfTERGTEFHU18kKFdLX1BM
QVRGT1JNX05BTUUpKTsKIFdLX1BERktJVF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBQ
REZLaXQ7CiBXS19QREZLSVRfTERGTEFHU19pcGhvbmVvc1tzZGs9aXBob25lKjExLipdID0gOwpA
QCAtMTIzLDcgKzEzMyw3IEBAIFdLX0FVVEhLSVRfTERGTEFHU19JT1NfU0lOQ0VfMTMgPSAtZnJh
bWV3b3JrIEF1dGhLaXQ7CiBXS19BVVRIS0lUX0xERkxBR1NfbWFjb3N4ID0gJChXS19BVVRIS0lU
X0xERkxBR1MkKFdLX01BQ09TXzEwMTUpKTsKIFdLX0FVVEhLSVRfTERGTEFHU19NQUNPU19TSU5D
RV8xMDE1ID0gLWZyYW1ld29yayBBdXRoS2l0OwogCi1GUkFNRVdPUktfQU5EX0xJQlJBUllfTERG
TEFHUyA9IC1sb2JqYyAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAt
ZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9uIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdv
cmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgV2ViS2l0TGVnYWN5
IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lCSUxJVFlfTERGTEFHUykgJChXS19BUFBLSVRfTERGTEFH
UykgJChXS19BU1NFUlRJT05fU0VSVklDRVNfTERGTEFHUykgJChXS19SVU5OSU5HQk9BUkRfU0VS
VklDRVNfTERGTEFHUykgJChXS19BVVRIS0lUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1Mp
ICQoV0tfQ09SRV9QUkVESUNUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTElCU0FOREJPWF9MREZMQUdT
KSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxB
R1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChX
S19TQUZFX0JST1dTSU5HX0xERkxBR1MpICQoV0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1Mp
ICQoV0tfVUlLSVRfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dF
QklOU1BFQ1RPUlVJX0xERkxBR1MpOworRlJBTUVXT1JLX0FORF9MSUJSQVJZX0xERkxBR1MgPSAt
bG9iamMgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29y
ayBDb3JlRm91bmRhdGlvbiAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENvcmVU
ZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBJ
T0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIFdlYktpdExlZ2FjeSAtbG5ldHdv
cmsgJChXS19BQ0NFU1NJQklMSVRZX0xERkxBR1MpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tf
QVNTRVJUSU9OX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfUlVOTklOR0JPQVJEX1NFUlZJQ0VTX0xE
RkxBR1MpICQoV0tfQVVUSEtJVF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NP
UkVfUFJFRElDVElPTl9MREZMQUdTKSAkKFdLX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19H
UkFQSElDU19TRVJWSUNFU19MREZMQUdTKSAkKFdLX0xJQlNBTkRCT1hfTERGTEFHUykgJChXS19M
SUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdL
X01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfT1BFTkdMX0xERkxBR1MpICQoV0tfUERGS0lU
X0xERkxBR1MpICQoV0tfU0FGRV9CUk9XU0lOR19MREZMQUdTKSAkKFdLX1NFQ1VSSVRZX0lOVEVS
RkFDRV9MREZMQUdTKSAkKFdLX1VJS0lUX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERG
TEFHUykgJChXS19XRUJJTlNQRUNUT1JVSV9MREZMQUdTKTsKIAogLy8gUHJldmVudCBDKysgc3Rh
bmRhcmQgbGlicmFyeSBiYXNpY19zdHJpbmdzdHJlYW0sIG9wZXJhdG9yIG5ldywgZGVsZXRlIGFu
ZCB0aGVpciByZWxhdGVkIGV4Y2VwdGlvbiB0eXBlcyBmcm9tIGJlaW5nIGV4cG9ydGVkIGFzIHdl
YWsgc3ltYm9scy4KIFVORVhQT1JURURfU1lNQk9MX0xERkxBR1MgPSAtV2wsLXVuZXhwb3J0ZWRf
c3ltYm9sIC1XbCxfX1pUSVN0OWJhZF9hbGxvYyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxf
X1pUSVN0OWV4Y2VwdGlvbiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUU1N0OWJhZF9h
bGxvYyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUU1N0OWV4Y2VwdGlvbiAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pkbFB2U18gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2ws
X19abndtUHYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19abndtIC1XbCwtdW5leHBvcnRl
ZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlv
bkVFRUMyRU9TNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlv
bklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzFFT1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3lt
Ym9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVh
U0VEbiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOS1N0M19fMThmdW5jdGlvbklGdk43
V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFY2xFUzJfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVds
LF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRTRzd2FwRVJT
NF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2Vi
Q29yZTEyUG9saWN5QWN0aW9uRUVFQzFFUktTNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2ws
X19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzJFUktTNF8g
LVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29y
ZTEyUG9saWN5QWN0aW9uRUVFRDFFdiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3Qz
X18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVEMkV2IC1XbCwtdW5leHBv
cnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFj
dGlvbkVFRWFTRVJLUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRWTlN0M19fMTE3
YmFkX2Z1bmN0aW9uX2NhbGxFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRDTlN0M19f
MTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJ
Y0VFRUUwX05TXzEzYmFzaWNfaXN0cmVhbUljUzJfRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VF
TlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTRiYXNpY19pb3N0cmVhbUljUzJfRUUgLVdsLC11bmV4
cG9ydGVkX3N5bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzEx
Y2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTE2X05TXzEzYmFzaWNfb3N0cmVhbUlj
UzJfRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFROU3QzX18xMThiYXNpY19zdHJp
bmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRSAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVk5TdDNfXzExNWJhc2ljX3N0cmluZ2J1ZkljTlNfMTFj
aGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wg
LVdsLF9fWlRWTlN0M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNF
RU5TXzlhbGxvY2F0b3JJY0VFRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVENOU3Qz
X18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRv
ckljRUVFRThfTlNfMTNiYXNpY19vc3RyZWFtSWNTMl9FRTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcAppbmRl
eCBhOTZmYzNkMTEzNzkuLmRlOTM5NjdlZmRmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcApAQCAtMjks
OCArMjksOSBAQAogI2lmIFBMQVRGT1JNKE1BQykKIAogI2luY2x1ZGUgIkxvZ2dpbmcuaCIKKyNp
bmNsdWRlIDxPcGVuR0wvQ0dMVHlwZXMuaD4KKyNpbmNsdWRlIDxPcGVuR0wvT3BlbkdMLmg+CiAj
aW5jbHVkZSA8V2ViQ29yZS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTE1hbmFnZXIuaD4KLSNpbmNs
dWRlIDxXZWJDb3JlL09wZW5HTFNvZnRMaW5rQ29jb2EuaD4KIAogbmFtZXNwYWNlIFdlYktpdCB7
CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409268</attachid>
            <date>2020-09-21 04:26:14 -0700</date>
            <delta_ts>2020-09-23 18:20:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216722-20200921212612.patch</filename>
            <type>text/plain</type>
            <size>101881</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggYTNmYjY4OWRlNjEwNTlmMzdkZTRhMTkwMTJhZmUzZWI1ZmExMTM0MS4uMGFmZDllYzljZDRi
NjgyMmRiMDEwMmFiYjFlZWEyYjI2ZjU1ODQ1NiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEwMyBAQAorMjAyMC0wOS0yMSAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5p
bmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDaGFuZ2UgQU5H
TEUgdG8gZHluYW1pY2FsbHkgbG9hZCBlaXRoZXIgRUFHTCAoT3BlbkdMRVMpIG9yIENHTCAoT3Bl
bkdMKSBkZXBlbmRpbmcKKyAgICAgICAgb24gYm90aCBjb21waWxlIGFuZCBydW50aW1lIGNvbmZp
Z3VyYXRpb25zLgorICAgICAgICAgICAgSW50ZWwgTWFjIC0+IENHTAorICAgICAgICAgICAgSW50
ZWwgTWFjIENhdGFseXN0IC0+IENHTAorICAgICAgICAgICAgSW50ZWwgaU9TIFNpbXVsYXRvciAt
PiBFQUdMCisgICAgICAgICAgICBpT1MgRGV2aWNlIC0+IEVBR0wKKyAgICAgICAgICAgIEFwcGxl
IFNpbGljb24gTWFjIC0+IENHTAorICAgICAgICAgICAgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5
c3QgKHdpdGggTWFjIGFwcCkgLT4gQ0dMCisgICAgICAgICAgICBBcHBsZSBTaWxpY29uIE1hYyBD
YXRhbHlzdCAod2l0aCBpT1MgYXBwKSAtPiBFQUdMCisKKyAgICAgICAgVGhlIHRyaWNraWVzdCBi
aXQgaXMgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5c3QsIHdoaWNoIGRlcGVuZHMgb24gdGhlCisg
ICAgICAgIGFwcGxpY2F0aW9uIGlzIGl0IGF0dGVtcHRpbmcgdG8gcnVuLiBJbiB0aGF0IGNhc2Ug
QU5HTEUgbXVzdCBjb21waWxlCisgICAgICAgIGJvdGggdGhlIENHTCBhbmQgRUFHTCBpbnRlcmZh
Y2VzLgorCisgICAgICAgICogQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajogQWRkIG5l
dyBmaWxlcy4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25m
aWc6IFJlbW92ZSBhbGwgdGhlIE9wZW5HTCogbGlua2luZy4KKyAgICAgICAgKiBDb25maWd1cmF0
aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWc6CisKKyAgICAgICAgKiBHTEVTdjIuY21ha2U6IE5l
dyBmaWxlcy4KKworICAgICAgICAqIHNyYy9jb21tb24vcGxhdGZvcm0uaDogTmV3IGRlZmluaXRp
b25zIGZvciBDUFUgdHlwZSBvbiBBcHBsZSBTeXN0ZW1zLCBhbmQKKyAgICAgICAgdGhlIHZhbHVl
IHJldHVybmVkIGJ5IGR5bGRfZ2V0X2FjdGl2ZV9wbGF0Zm9ybS4KKworICAgICAgICAqIHNyYy9n
cHVfaW5mb191dGlsL1N5c3RlbUluZm8uaDogU3BsaXQgU3lzdGVtSW5mbyBmb3IgQXBwbGUgaW50
byB0d28KKyAgICAgICAgZmlsZXMsIGZvciBpT1MgYW5kIE1hYy4gQWRkZWQgYSBmaWVsZCBmb3Ig
aU9TT25NYWMgdGhhdCB3aWxsIG9ubHkKKyAgICAgICAgYmUgdHJ1ZSB3aGVuIHJ1bm5pbmcgYW4g
aU9TIGJpbmFyeSBvbiBBcHBsZSBTaWxpY29uLgorICAgICAgICAqIHNyYy9ncHVfaW5mb191dGls
L1N5c3RlbUluZm9fYXBwbGUuY3BwOiBBZGRlZC4gRGVjaWRlcyB3aGljaCBTeXN0ZW1JbmZvCisg
ICAgICAgIHRvIGNhbGwuCisgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6CisgICAgICAg
ICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwOgorICAgICAgICAoYW5nbGU6
OkdldFN5c3RlbUluZm9faW9zKToKKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKTogRGVs
ZXRlZC4KKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tOgor
ICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm9fbWFjKToKKyAgICAgICAgKGFuZ2xlOjpHZXRT
eXN0ZW1JbmZvKTogRGVsZXRlZC4KKworICAgICAgICAqIHNyYy9saWJBTkdMRS9DYXBzLmNwcDog
Q2FuIG5vIGxvbmdlciBqdXN0IGNoZWNrIGZvciBQTEFURk9STV9JT1MuIFRoaXMKKyAgICAgICAg
bWlnaHQgc3RpbGwgbmVlZCBhIHJ1bnRpbWUgY2hlY2suCisgICAgICAgIChnbDo6RGV0ZXJtaW5l
RGVwdGhUZXh0dXJlQU5HTEVTdXBwb3J0KToKKyAgICAgICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRl
eHR1cmVPRVNTdXBwb3J0KToKKworICAgICAgICAqIHNyYy9saWJBTkdMRS9EaXNwbGF5LmNwcDog
VGhpcyBpcyB0aGUgbWFpbiBpbml0aWFsaXphdGlvbiBwb2ludCBmb3IKKyAgICAgICAgQU5HTEUs
IHdoaWNoIGRlY2lkZXMgYXQgY29tcGlsZS9ydW50aW1lIHdoaWNoIHZhcmlhbnQgb2YgRGlzcGxh
eSB0bworICAgICAgICBjcmVhdGUuCisKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvZm9ybWF0dXRp
bHMuY3BwOiBBZGQgdGhlIGNvcnJlY3QgZm9ybWF0cy4KKyAgICAgICAgKGdsOjpCdWlsZEludGVy
bmFsRm9ybWF0SW5mb01hcCk6CisKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
U29mdExpbmtpbmdfYXBwbGUuaDogQWRkZWQuIE1hY3JvcyB0byBoZWxwIHNvZnQtbGluaworICAg
ICAgICBmdW5jdGlvbnMgYW5kIE9iakMgY2xhc3Nlcy4KKyAgICAgICAgKiBzcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHA6IEFkZGVkLiBXaGVyZSB3ZSBzb2Z0LWxp
bmsgYWxsCisgICAgICAgIHRoZSBPcGVuR0wvQ0dMIEFQSS4KKyAgICAgICAgKiBzcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oOiBBZGRlZC4KKworICAgICAgICAqIHNy
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbTogVXNlIHRoZSBzb2Z0LWxp
bmtlZCBtZXRob2RzLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9T
dXJmYWNlU3VyZmFjZUNHTC5jcHA6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmg6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tOiBSZW5hbWUgV2ViU3dhcExheWVyIHRvIFdlYlN3
YXBMYXllckNHTAorICAgICAgICBvdGhlcndpc2UgaXQgY2xhc2hlcyB3aXRoIHRoZSBFQUdMIHZl
cnNpb24uCisgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUNHTDo6aW5pdGlhbGl6ZSk6CisgICAg
ICAgICgtW1dlYlN3YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhG
dW5jdGlvbnM6XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMUGl4
ZWxGb3JtYXRGb3JEaXNwbGF5TWFzazpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExh
eWVyIGNvcHlDR0xDb250ZXh0Rm9yUGl4ZWxGb3JtYXQ6XSk6IERlbGV0ZWQuCisgICAgICAgICgt
W1dlYlN3YXBMYXllciBjYW5EcmF3SW5DR0xDb250ZXh0OnBpeGVsRm9ybWF0OmZvckxheWVyVGlt
ZTpkaXNwbGF5VGltZTpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRyYXdJ
bkNHTENvbnRleHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBEZWxl
dGVkLgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFH
TC5jcHA6IFNpbWlsYXIgY2hhbmdlcyB0byB0aGUgQ0dMIGltcGxlbWVudGF0aW9uLgorICAgICAg
ICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaDoKKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oOgorICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tOgorICAgICAgICAo
cng6OkRpc3BsYXlFQUdMOjppbml0aWFsaXplKToKKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6
dGVybWluYXRlKToKKyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRl
eHRFQUdMKToKKyAgICAgICAgKHJ4OjpXb3JrZXJDb250ZXh0RUFHTDo6bWFrZUN1cnJlbnQpOgor
ICAgICAgICAocng6OldvcmtlckNvbnRleHRFQUdMOjp1bm1ha2VDdXJyZW50KToKKyAgICAgICAg
KHJ4OjpEaXNwbGF5RUFHTDo6Y3JlYXRlV29ya2VyQ29udGV4dCk6CisgICAgICAgICogc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oOiBBZGRlZC4KKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLm1tOiBBZGRlZC4K
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNl
RUFHTC5tbToKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVy
U3VyZmFjZUVBR0wuY3BwOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L1JlbmRlcmVyRUFHTC5jcHA6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvV2luZG93U3VyZmFjZUVBR0wuaDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbToKKyAgICAgICAgKC1bV2ViU3dhcExheWVyRUFH
TCBkaXNwbGF5XSk6CisgICAgICAgIChyeDo6V2luZG93U3VyZmFjZUVBR0w6OmluaXRpYWxpemUp
OgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgaW5pdFdpdGhTaGFyZWRTdGF0ZTp3aXRoQ29udGV4
dDp3aXRoRnVuY3Rpb25zOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgZGlz
cGxheV0pOiBEZWxldGVkLgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3Jl
bmRlcmVyZ2xfdXRpbHMuY3BwOiBSdW50aW1lIGNoZWNrLgorICAgICAgICAocng6Om5hdGl2ZWds
X2dsOjpHZW5lcmF0ZUNhcHMpOgorCiAyMDIwLTA5LTExICBKYW1lcyBEYXJwaW5pYW4gIDxqZGFy
cGluaWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbV2ViR0wyXSBTdXBwb3J0IEVYVF9jb2xv
cl9idWZmZXJfaGFsZl9mbG9hdCBvbiBXZWJHTCAyLjAgY29udGV4dHMKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBj
ZDMyYzU2Yzg1OTk3NzU2OTczNGIyNmU0ZmFkYTliZDE1MmY4ZDlhLi5kZTM5OWU3MjQ3NWVkZmVj
YTM3Yjk2NDMzODk5NWM0ZDFmZDFhYjExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIw
MjAtMDktMjEgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdM
IHNob3VsZCB1c2UgR0xFUyBpbiBpT1MgYXBwcyBydW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjcyMgorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNjg5NzYzMzc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmln
OiBSZW1vdmUgYWxsIE9wZW5HTC9PcGVuR0xFUyBsaW5raW5nLgorICAgICAgICAqIFdlYkNvcmUu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW06IFVzZSB0aGUgbmV3IHNvZnQt
bGlua2VkCisgICAgICAgIGZ1bmN0aW9ucyBmcm9tIFBBTC4KKyAgICAgICAgKiBwbGF0Zm9ybS9t
YWMvUGxhdGZvcm1TY3JlZW5NYWMubW06CisgICAgICAgICogcGxhdGZvcm0vbWFjL1dlYkdMQmxv
Y2tsaXN0Lm1tOgorCiAyMDIwLTA5LTE1ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBh
cHBsZS5jb20+CiAKICAgICAgICAgW21hY09TIEJpZyBTdXJdIENHRm9udFJlbmRlcmluZ0dldEZv
bnRTbW9vdGhpbmdEaXNhYmxlZCgpIGlzIG5vIGxvbmdlciB1c2VmdWwKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9n
CmluZGV4IDg4MDlkZDMzYTU3MWQ2ODI4YjZlYmZjMDU1Yzc1YTBmNzhhZGU4MzUuLjk0OTBiZWEw
YTY1OWZjZDQwY2FkZjZjZjJmMTVhZTZiODIxNmM0ZTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwpAQCAt
MSwzICsxLDE4IEBACisyMDIwLTA5LTIxICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNvbT4K
KworICAgICAgICBXZWJHTCBzaG91bGQgdXNlIEdMRVMgaW4gaU9TIGFwcHMgcnVubmluZyBvbiBB
cHBsZSBTaWxpY29uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0yMTY3MjIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY4OTc2MzM3PgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBzb2Z0LWxpbmtpbmcg
Y29udGVudCBmb3IgT3BlbkdML09wZW5HTEVTLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9w
cm9qZWN0LnBieHByb2o6CisgICAgICAgICogcGFsL1BsYXRmb3JtTWFjLmNtYWtlOgorICAgICAg
ICAqIHBhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBh
bC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tOiBBZGRlZC4KKwogMjAyMC0wOS0xNCAgTXls
ZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIFtBcHBsZSBX
aW5dIE1pZ3JhdGUgZnJvbSBGb250UGxhdGZvcm1EYXRhV2luLmNwcCB0byBGb250UGxhdGZvcm1E
YXRhQ29yZVRleHQuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1Nv
dXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDUyZjc5MDE3MTM4ZjhlMzQzYjk3NDI2MDg2NjJi
M2MzMGYyNGRkYWMuLjE5ZmVmZjA3YWNjMzliOWQzYzg2ODI1ZTk0Mzc2Nzg3MGNkNTAxNTMgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIwMjAtMDktMjEgIERlYW4gSmFja3NvbiAgPGRpbm9A
YXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIHNob3VsZCB1c2UgR0xFUyBpbiBpT1MgYXBwcyBy
dW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIxNjcyMgorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjg5NzYzMzc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBDb25m
aWd1cmF0aW9ucy9XZWJLaXQueGNjb25maWc6IFJlbW92ZSBPcGVuR0wgbGlua2luZy4KKyAgICAg
ICAgKiBVSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwOiBVc2UgdGhl
IFBBTCBzb2Z0LWxpbmtlZCBPcGVuR0wgQVBJLgorCiAyMDIwLTA5LTE1ICBQZW5nIExpdSAgPHBl
bmcubGl1NkBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTiAocjI2NzA1Myk6IEFTU0VS
VElPTiBGQUlMRUQ6IHZpZGVvRnVsbHNjcmVlbk1hbmFnZXItPmNsaWVudCgpID09ICZfdmlkZW9G
dWxsc2NyZWVuTWFuYWdlclByb3h5Q2xpZW50IGluIFtXS0Z1bGxTY3JlZW5XaW5kb3dDb250cm9s
bGVyIF9jb21wbGV0ZWRFeGl0RnVsbFNjcmVlbl0KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL0FOR0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IGU4ZTY5MGRk
ZDY1NmI4NjRmMTNkZWQwODY2Yzg0OTQ2ODExNWQ5NTIuLmY4MDBiNTc0MzRiY2JiYWYxMzI5MmQw
MmY2MjE3MTdlZGE3ZjkyMDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FO
R0xFLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTUwLDYgKzE1MCwxNiBAQAog
CQkzMTVFQkUyNDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNUVCRTIwMUZDRTQ2MkEwMEFD
N0E4OSAvKiBzYWZlX21hdGhfaW1wbC5oICovOyB9OwogCQkzMTVFQkUyODFGQ0Y4MDhDMDBBQzdB
ODkgLyogUE11ckhhc2guY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmNwcCAqLzsgfTsK
IAkJMzE1RUJFMjkxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNoLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTVFQkUyNzFGQ0Y4MDhDMDBBQzdBODkg
LyogUE11ckhhc2guaCAqLzsgfTsKKwkJMzE2NDdGOUYyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3Rl
bUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwICov
OyB9OworCQkzMTY0N0ZBMDI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0Y5RTI1
MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5jcHAgKi87IH07CisJCTMxNjQ3RkE0
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2
NDdGQTIyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oICovOyB9OworCQkzMTY0N0ZB
NjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBD
R0xGdW5jdGlvbnMuY3BwICovOyB9OworCQkzMTY0N0ZBNzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dM
RnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwICovOyB9Owor
CQkzMTY0N0ZCMzI1MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjIyNTE3NjhBQzAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQjQyNTE3NjhBQzAwMTBGOEZC
IC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMxNjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi87
IH07CisJCTMxNjQ3RkI2MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjUyNTE3NjhE
RDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi87IH07CisJCTMxNjQ3RkI3MjUxNzY4REQw
MDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjUyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlv
bnMubW0gKi87IH07CiAJCTMxQTMzMUMyMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMu
aCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUMw
MUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLzsgfTsKIAkJMzFBMzMxQzYxRUE1
RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19tYWMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNh
ID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMzMxQzMxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5
c3RlbV91dGlsc19tYWMuY3BwICovOyB9OwogCQkzMUEzMzFDNzFFQTVFRDVGMDBGRDIyMDMgLyog
c3lzdGVtX3V0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAzMUEzMzFDNDFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi87IH07CkBA
IC0xNTQ3LDYgKzE1NTcsNyBAQAogLyogRW5kIFBCWENvcHlGaWxlc0J1aWxkUGhhc2Ugc2VjdGlv
biAqLwogCiAvKiBCZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8KKwkJMEY4NURBMkYy
NTEzNzgwODAwMEE1MDBCIC8qIFNvZnRMaW5raW5nX2FwcGxlLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNv
ZnRMaW5raW5nX2FwcGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEw
MThCOTdCOUIwMDM5MDYyRiAvKiBCYXNlVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gQmFzZVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEy
REExMThCOTdCOUIwMDM5MDYyRiAvKiBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHAgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEyMThCOTdCOUIwMDM5MDYy
RiAvKiBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwpAQCAtMTY4MSw2ICsxNjkyLDExIEBACiAJCTMxNUVCRTIwMUZDRTQ2MkEwMEFDN0E4OSAv
KiBzYWZlX21hdGhfaW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBzYWZl
X21hdGhfaW1wbC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVFQkUyNjFGQ0Y4
MDhDMDBBQzdBODkgLyogUE11ckhhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gUE11ckhhc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVF
QkUyNzFGQ0Y4MDhDMDBBQzdBODkgLyogUE11ckhhc2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gUE11ckhhc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2
NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gU3lzdGVtSW5mb19hcHBsZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gQ0dMRnVuY3Rpb25zLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3
RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRo
ID0gQ0dMRnVuY3Rpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdG
QjIyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBuYW1lID0gRUFHTEZ1bmN0aW9ucy5oOyBwYXRoID0gc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gU09VUkNFX1JPT1Q7IH07
CisJCTMxNjQ3RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAu
b2JqY3BwOyBwYXRoID0gRUFHTEZ1bmN0aW9ucy5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKIAkJMzFBMzMxQzAxRUE1RUQyNTAwRkQyMjAzIC8qIGJpdHNldF91dGlscy5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBiaXRzZXRfdXRpbHMuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMzFBMzMxQzMxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19t
YWMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gc3lzdGVtX3V0aWxz
X21hYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTMzMUM0MUVBNUVENUYw
MEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gc3lzdGVtX3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yNDcyLDYg
KzI0ODgsOCBAQAogCQkJCTMxM0JDRTREMjM2MTEzMzkwMEZDMzlFNSAvKiBEZXZpY2VFQUdMLmgg
Ki8sCiAJCQkJMzEzQkNFNDYyMzYxMTMzODAwRkMzOUU1IC8qIERpc3BsYXlFQUdMLmggKi8sCiAJ
CQkJMzEzQkNFNTMyMzYxMTMzOTAwRkMzOUU1IC8qIERpc3BsYXlFQUdMLm1tICovLAorCQkJCTMx
NjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi8sCisJCQkJMzE2NDdG
QjUyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi8sCiAJCQkJMzEzQkNFNDcy
MzYxMTMzODAwRkMzOUU1IC8qIElPU3VyZmFjZVN1cmZhY2VFQUdMLmggKi8sCiAJCQkJMzEzQkNF
NEUyMzYxMTMzOTAwRkMzOUU1IC8qIElPU3VyZmFjZVN1cmZhY2VFQUdMLm1tICovLAogCQkJCTMx
M0JDRTQ4MjM2MTEzMzgwMEZDMzlFNSAvKiBQYnVmZmVyU3VyZmFjZUVBR0wuY3BwICovLApAQCAt
Mjk2MCw2ICsyOTc4LDcgQEAKIAkJCQlBMzAzMDc4NzIzMDVGOEYwMDAyREE5NzIgLyogU2VtYXBo
b3JlR0wuaCAqLywKIAkJCQk1Q0IzMDEwODFERTM5RjFBMDBEMkM0MDUgLyogU2hhZGVyR0wuY3Bw
ICovLAogCQkJCTVDQjMwMTA5MURFMzlGMUEwMEQyQzQwNSAvKiBTaGFkZXJHTC5oICovLAorCQkJ
CTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0TGlua2luZ19hcHBsZS5oICovLAogCQkJ
CTVDQjMwMTBBMURFMzlGMUEwMEQyQzQwNSAvKiBTdGF0ZU1hbmFnZXJHTC5jcHAgKi8sCiAJCQkJ
NUNCMzAxMEIxREUzOUYxQTAwRDJDNDA1IC8qIFN0YXRlTWFuYWdlckdMLmggKi8sCiAJCQkJNUNC
MzAxMEMxREUzOUYxQTAwRDJDNDA1IC8qIFN1cmZhY2VHTC5jcHAgKi8sCkBAIC0yOTc5LDYgKzI5
OTgsOCBAQAogCQk1Q0IzMDE0ODFERTM5RjM2MDBEMkM0MDUgLyogY2dsICovID0gewogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4
RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLywKKwkJCQkzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIg
LyogQ0dMRnVuY3Rpb25zLmggKi8sCiAJCQkJNUNDRDU5NzIyMjg0RkE4MjAwMThGMkQ4IC8qIENv
bnRleHRDR0wuY3BwICovLAogCQkJCTVDQ0Q1OTc1MjI4NEZBODIwMDE4RjJEOCAvKiBDb250ZXh0
Q0dMLmggKi8sCiAJCQkJNkUzMUEwQTEyMzRFRUVENDAwQzg0Nzg0IC8qIERldmljZUNHTC5jcHAg
Ki8sCkBAIC0zMjA4LDYgKzMyMjksNyBAQAogCQkJY2hpbGRyZW4gPSAoCiAJCQkJNUNDRDU5OTgy
Mjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUluZm8uY3BwICovLAogCQkJCTVDQ0Q1OTk5MjI4NEZD
NzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvLmggKi8sCisJCQkJMzE2NDdGOUUyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwICovLAogCQkJCTMxQjE1NzIxMjM2QjgwMzMwMENB
QTRGRCAvKiBTeXN0ZW1JbmZvX2ludGVybmFsLmggKi8sCiAJCQkJMzFCMTU3MUYyMzZCN0ZBRTAw
Q0FBNEZEIC8qIFN5c3RlbUluZm9faW9zLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1MDAx
OEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSAqLywKQEAgLTM0MTQsNiArMzQzNiw3IEBACiAJ
CQkJMzFDREZGRDgyNDkxODRBNzAwNDg2RjI3IC8qIEJ1aWx0aW5zV29ya2Fyb3VuZEdMU0wuaCBp
biBIZWFkZXJzICovLAogCQkJCTMxQ0RGRkY5MjQ5MTg0QTcwMDQ4NkYyNyAvKiBDYWxsREFHLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDA2MTI0OTE4NEZDMDA0ODZGMjcgLyogQ2Fwcy5oIGlu
IEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGODIyNDkxODQ5ODAwNDg2RjI3IC8qIENsYW1w
RnJhZ0RlcHRoLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkY4QTI0OTE4NDk4MDA0ODZGMjcg
LyogQ2xhbXBQb2ludFNpemUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDExMjQ5MTg0RTcw
MDQ4NkYyNyAvKiBDbGVhck11bHRpdmlld0dMLmggaW4gSGVhZGVycyAqLywKQEAgLTM0NTYsNiAr
MzQ3OSw3IEBACiAJCQkJMzFDRDAwMjMyNDkxODRFNzAwNDg2RjI3IC8qIERpc3BsYXlHTC5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJMzFDRDAwMkYyNDkxODRGNDAwNDg2RjI3IC8qIERpc3BsYXlJbXBs
LmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNEMDAzODI0OTE4NEY0MDA0ODZGMjcgLyogZHJpdmVy
X3V0aWxzLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTY0N0ZCNDI1MTc2OEFDMDAxMEY4RkIgLyog
RUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGOUEyNDkxODQ5ODAwNDg2
RjI3IC8qIEVhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJMzFDREZERkEyNDkxODNBNTAwNDg2RjI3IC8qIGVnbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MzFDREZERjkyNDkxODNBNTAwNDg2RjI3IC8qIGVnbGV4dC5oIGluIEhlYWRlcnMgKi8sCkBAIC0z
ODE5LDYgKzM4NDMsNyBAQAogCQkJCUEzNjk0RkM3MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWlsdGlu
c1dvcmthcm91bmRHTFNMLmggaW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkMyQjFCMDQzNzVGMDAy
MzU1NTIgLyogQ2FsbERBRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUMxREJEREIxQjA0MzhEMzAw
MjM1NTUyIC8qIENhcHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEw
RjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNTVENjY2MjI4MjZC
OUYwMEI1QkEyQyAvKiBDbGFtcEZyYWdEZXB0aC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUM1NUQ2
NUIyMjgyNkI5RjAwQjVCQTJDIC8qIENsYW1wUG9pbnRTaXplLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkzMTVFQkRDMTFGQ0U0NEJGMDBBQzdBODkgLyogQ2xlYXJNdWx0aXZpZXdHTC5oIGluIEhlYWRl
cnMgKi8sCkBAIC0zODYxLDYgKzM4ODYsNyBAQAogCQkJCTVDQjMwMTFGMURFMzlGMUEwMEQyQzQw
NSAvKiBEaXNwbGF5R0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNEUyMURFNDE2NDgwMEQy
QzQwNSAvKiBEaXNwbGF5SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE1RUJEQzkxRkNFNDRF
NDAwQUM3QTg5IC8qIGRyaXZlcl91dGlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjMy
NTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZF
QjAxQzFEMjQ3NzI3OUEwMEU1MEIzNSAvKiBFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24u
aCBpbiBIZWFkZXJzICovLAogCQkJCTMxREI3OTU4MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2wuaCBp
biBIZWFkZXJzICovLAogCQkJCTMxREI3OTU5MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2xleHQuaCBp
biBIZWFkZXJzICovLApAQCAtNDMyMiw2ICs0MzQ4LDcgQEAKIAkJCQkzMUNERkU3RTI0OTE4NDNB
MDA0ODZGMjcgLyogQnVpbHRpbnNXb3JrYXJvdW5kR0xTTC5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkzMUNERkU4NjI0OTE4NDNBMDA0ODZGMjcgLyogQ2FsbERBRy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkYxQzI0OTE4NDVGMDA0ODZGMjcgLyogQ2Fwcy5jcHAgaW4gU291cmNlcyAqLywK
KwkJCQkzMTY0N0ZBNzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxQ0RGRTU4MjQ5MTg0MkUwMDQ4NkYyNyAvKiBDbGFtcEZyYWdEZXB0aC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU2MTI0OTE4NDJGMDA0ODZGMjcgLyogQ2xhbXBQ
b2ludFNpemUuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQzMyNDkxODQ1MzAwNDg2RjI3
IC8qIENsZWFyTXVsdGl2aWV3R0wuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00MzYzLDYgKzQzOTAs
NyBAQAogCQkJCTMxQ0RGRUUxMjQ5MTg0NTgwMDQ4NkYyNyAvKiBEaXNwbGF5SW1wbC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzMUNERkVFNTI0OTE4NDU4MDA0ODZGMjcgLyogZHJpdmVyX3V0aWxz
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0QwMEM2MjQ5MTkxN0UwMDQ4NkYyNyAvKiBkcml2
ZXJfdXRpbHNfbWFjLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQjcyNTE3NjhERDAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU0NDI0OTE4
NDJFMDA0ODZGMjcgLyogRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxQ0RGRjM0MjQ5MTg0NjAwMDQ4NkYyNyAvKiBFR0xTeW5jLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTMxQ0RGRTgzMjQ5MTg0M0EwMDQ4NkYyNyAvKiBlbXVsYXRlZF9idWls
dGluX2Z1bmN0aW9uc19obHNsX2F1dG9nZW4uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NTU1LDYg
KzQ1ODMsNyBAQAogCQkJCTMxQ0RGRTE2MjQ5MTg0MjMwMDQ4NkYyNyAvKiBzeXN0ZW1fdXRpbHNf
bWFjLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0RGRTFFMjQ5MTg0MjMwMDQ4NkYyNyAvKiBz
eXN0ZW1fdXRpbHNfcG9zaXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjEyNDkxODQ0
MjAwNDg2RjI3IC8qIFN5c3RlbUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTAy
NTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUuY3BwIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMzFDREZFQjMyNDkxODQ0MjAwNDg2RjI3IC8qIFN5c3RlbUluZm9faW9zLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxQ0QwMEM3MjQ5MTkxRDEwMDQ4NkYyNyAvKiBTeXN0ZW1JbmZvX21hY29z
Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFRkIyNDkxODQ1RjAwNDg2RjI3IC8qIFRleHR1
cmUuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NjU1LDYgKzQ2ODQsNyBAQAogCQkJCUEzNjk0RkM2
MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWlsdGluc1dvcmthcm91bmRHTFNMLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTVDMURCQzJBMUIwNDM3NUYwMDIzNTU1MiAvKiBDYWxsREFHLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTVDMURCRERBMUIwNDM4RDMwMDIzNTU1MiAvKiBDYXBzLmNwcCBpbiBTb3Vy
Y2VzICovLAorCQkJCTMxNjQ3RkE2MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUM1NUQ2QUMyMjgyNkJDODAwQjVCQTJDIC8qIENsYW1wRnJh
Z0RlcHRoLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDNTVENkFEMjI4MjZCQzgwMEI1QkEyQyAv
KiBDbGFtcFBvaW50U2l6ZS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMTVFQkRCRDFGQ0U0NEJG
MDBBQzdBODkgLyogQ2xlYXJNdWx0aXZpZXdHTC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ2OTYs
NiArNDcyNiw3IEBACiAJCQkJNUNCMzA0RTExREU0MTY0ODAwRDJDNDA1IC8qIERpc3BsYXlJbXBs
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNUVCRENDMUZDRTQ0RTQwMEFDN0E4OSAvKiBkcml2
ZXJfdXRpbHMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQTMwMzA3OUQyMzA2MjU2NTAwMkRBOTcy
IC8qIGRyaXZlcl91dGlsc19tYWMubW0gaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZCNjI1MTc2
OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTZFQjAx
QzFFMjQ3NzI3OUEwMEU1MEIzNSAvKiBFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24uY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNDRDU5NkEyMjg0Rjc5NjAwMThGMkQ4IC8qIEVHTFN5bmMu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzE1RUJEOTcxRkNFNDQzNjAwQUM3QTg5IC8qIGVtdWxh
dGVkX2J1aWx0aW5fZnVuY3Rpb25zX2hsc2xfYXV0b2dlbi5jcHAgaW4gU291cmNlcyAqLywKQEAg
LTQ4ODgsNiArNDkxOSw3IEBACiAJCQkJMzFBMzMxQzYxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3Rl
bV91dGlsc19tYWMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUM1NUQ3MzAyMjgyNzQ3NzAwQjVC
QTJDIC8qIHN5c3RlbV91dGlsc19wb3NpeC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk5
QjIyODRGQzc1MDAxOEYyRDggLyogU3lzdGVtSW5mby5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkz
MTY0N0Y5RjI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMUIxNTcyMDIzNkI3RkFGMDBDQUE0RkQgLyogU3lzdGVtSW5mb19pb3MuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJNUNDRDU5OUEyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUlu
Zm9fbWFjb3MubW0gaW4gU291cmNlcyAqLywKIAkJCQk1QzFEQkYzMDFCMDQzOEQzMDAyMzU1NTIg
LyogVGV4dHVyZS5jcHAgaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnCmlu
ZGV4IDMxNTgyYjkyMmJkZjJhZWE2MjRkMDJlYmE1ZjdmMWE0YTA1YWM3MTEuLjMxMjBlZTJjMjk2
YjMyMGQwZjlmZjNmM2Q2YWNiMDRjZWM4ZTdjNmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZp
ZwpAQCAtNSwxNCArNSwxNCBAQCBQUk9EVUNUX05BTUUgPSBBTkdMRS1zaGFyZWQ7CiBFWEVDVVRB
QkxFX1BSRUZJWCA9IGxpYjsKIAogQU5HTEVfT1RIRVJfTERGTEFHUyA9IC1hbGxvd2FibGVfY2xp
ZW50IFdlYkNvcmUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1mcmFtZXdv
cmsgUXVhcnR6Q29yZSAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIEZvdW5kYXRp
b24gLWZyYW1ld29yayBJT1N1cmZhY2UgJChBTkdMRV9PVEhFUl9MREZMQUdTXyQoV0tfUExBVEZP
Uk1fTkFNRSkpOwotQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3Bl
bkdMRVMgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyA9IC1sejsKIEFOR0xFX09U
SEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9u
ZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChBTkdM
RV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2Fw
cGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9M
REZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElP
S2l0IC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKLUFOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0g
LWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIE9wZW5HTCAtbHo7CitBTkdMRV9PVEhFUl9MREZM
QUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtbHo7CitBTkdMRV9PVEhFUl9MREZM
QUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9LaXQgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKE5P
Uk1BTF9XRUJDT1JFX0ZSQU1FV09SS1NfRElSKS9XZWJDb3JlLmZyYW1ld29yay9GcmFtZXdvcmtz
OwogSU5TVEFMTF9QQVRIW3Nkaz1tYWNvc3gqXSA9ICQoSU5TVEFMTF9QQVRIX1VTRV9PVkVSUklE
RV9GUkFNRVdPUktTX0RJUl8kKFdLX1VTRV9PVkVSUklERV9GUkFNRVdPUktTX0RJUikpOwpAQCAt
MzYsNyArMzYsNyBAQCBQVUJMSUNfSEVBREVSU19GT0xERVJfUEFUSF9tYWNjYXRhbHlzdCA9ICQo
V0tfQUxURVJOQVRFX0ZSQU1FV09SS1NfRElSKS8kKEFOR0xFXwogCiBERUJVR19ERUZJTkVTX2Rl
YnVnID0gOwogREVCVUdfREVGSU5FU19ub3JtYWwgPSBOREVCVUc7Ci1HQ0NfUFJFUFJPQ0VTU09S
X0RFRklOSVRJT05TID0gJChERUJVR19ERUZJTkVTXyQoQ1VSUkVOVF9WQVJJQU5UKSkgTElCR0xF
U1YyX0lNUExFTUVOVEFUSU9OIExJQkFOR0xFX0lNUExFTUVOVEFUSU9OIEFOR0xFX0VOQUJMRV9P
UEVOR0wgQU5HTEVfRU5BQkxFX0dMU0wgQU5HTEVfRU5BQkxFX0VTU0wgR0xfU0lMRU5DRV9ERVBS
RUNBVElPTjsKK0dDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAkKERFQlVHX0RFRklORVNf
JChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVTVjJfSU1QTEVNRU5UQVRJT04gTElCQU5HTEVfSU1Q
TEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09QRU5HTCBBTkdMRV9FTkFCTEVfR0xTTCBBTkdMRV9F
TkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJFQ0FUSU9OIEdMRVNfU0lMRU5DRV9ERVBSRUNBVElP
TjsKIAogSU5TVEFMTEhEUlNfU0NSSVBUX1BIQVNFID0gWUVTOwogVVNFX0hFQURFUk1BUCA9IE5P
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5H
TEUtc3RhdGljLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlv
bnMvQU5HTEUtc3RhdGljLnhjY29uZmlnCmluZGV4IDRkMWQyMjExOTM1YTUxMmI5Njg4NjE4NWVj
MDY2ODViOTI3OTZiMDcuLjgyNGEyN2I1MzEzOTViNWIwMDJjMmJmNTcxZjk3OWU5ZWM2NmZiMDQg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xF
LXN0YXRpYy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0
aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcKQEAgLTUsMTQgKzUsMTQgQEAgUFJPRFVDVF9OQU1F
ID0gQU5HTEU7CiBFWEVDVVRBQkxFX1BSRUZJWCA9IGxpYjsKIAogQU5HTEVfT1RIRVJfTERGTEFH
UyA9IC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRl
c3RTdXBwb3J0ICQoQU5HTEVfT1RIRVJfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKLUFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3
b3JrIE9wZW5HTEVTIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3
b3JrIElPU3VyZmFjZSAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvciA9
ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX3dh
dGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERG
TEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0
b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFOR0xFX09USEVSX0xERkxB
R1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2c2ltdWxhdG9yID0gJChB
TkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdMRV9PVEhFUl9MREZMQUdT
X21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJh
bWV3b3JrIE9wZW5HTCAtbHo7Ci1BTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdv
cmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBPcGVuR0wgLWx6OworQU5H
TEVfT1RIRVJfTERGTEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29y
ayBJT1N1cmZhY2UgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3Jr
IElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKIAogSU5TVEFMTF9QQVRIID0gJChBTkdM
RV9JTlNUQUxMX1BBVEhfUFJFRklYKS91c3IvbG9jYWwvbGliOwogCkBAIC0yNCw3ICsyNCw3IEBA
IFBVQkxJQ19IRUFERVJTX0ZPTERFUl9QQVRIID0gJChBTkdMRV9JTlNUQUxMX1BBVEhfUFJFRklY
KS91c3IvbG9jYWwvaW5jbHVkZS9BTkdMCiAKIERFQlVHX0RFRklORVNfZGVidWcgPSA7CiBERUJV
R19ERUZJTkVTX25vcm1hbCA9IE5ERUJVRzsKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMg
PSAkKERFQlVHX0RFRklORVNfJChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVTVjJfSU1QTEVNRU5U
QVRJT04gTElCQU5HTEVfSU1QTEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09QRU5HTCBBTkdMRV9F
TkFCTEVfR0xTTCBBTkdMRV9FTkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJFQ0FUSU9OOworR0ND
X1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FU18kKENVUlJFTlRfVkFS
SUFOVCkpIExJQkdMRVNWMl9JTVBMRU1FTlRBVElPTiBMSUJBTkdMRV9JTVBMRU1FTlRBVElPTiBB
TkdMRV9FTkFCTEVfT1BFTkdMIEFOR0xFX0VOQUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9FU1NMIEdM
X1NJTEVOQ0VfREVQUkVDQVRJT04gR0xFU19TSUxFTkNFX0RFUFJFQ0FUSU9OOwogCiBJTlNUQUxM
SERSU19TQ1JJUFRfUEhBU0UgPSBZRVM7CiBVU0VfSEVBREVSTUFQID0gTk87CmRpZmYgLS1naXQg
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9HTEVTdjIuY21ha2UgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9HTEVTdjIuY21ha2UKaW5kZXggMDRmYmU5ZWZlN2M5NTM5MTZjNmE1NjhlMTdhMmI1
YTU0YWRkMzNiOS4uNGZiZGJjYjhjZTIwMmQ1N2FhYWUzZjBkNDllNWMzYjk5NGQwMGM0MSAxMDA2
NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQpAQCAtMTY3LDcgKzE2Nyw5IEBAIHNldChs
aWJhbmdsZV9ncHVfaW5mb191dGlsX2xpYnBjaV9zb3VyY2VzCiBzZXQobGliYW5nbGVfZ3B1X2lu
Zm9fdXRpbF94MTFfc291cmNlcyAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb194MTEuY3Bw
IiApCiAKIAotc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMgInNyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkKK3NldChsaWJhbmdsZV9ncHVfaW5mb191
dGlsX21hY19zb3VyY2VzCisgICAgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUu
bW0iCisgICAgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0iICkKIAogCiBz
ZXQobGliYW5nbGVfaW5jbHVkZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9jb21t
b24vcGxhdGZvcm0uaAppbmRleCAwNDE2ZWQyMDFkNTk0ZTU0MDllYTlkN2U2NDBiNjQ4OWM0NzZh
Y2VkLi5jNjM1NzU1NWRjNmUwNmNlNjJhYWY4ZWI4ODgxNzUxZDE1NjMzZjNhIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3BsYXRmb3JtLmgKKysrIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCkBAIC0xMTYsMTEgKzEx
NiwxMiBAQAogCiAjaWZkZWYgQU5HTEVfUExBVEZPUk1fQVBQTEUKICMgICAgaW5jbHVkZSA8VGFy
Z2V0Q29uZGl0aW9uYWxzLmg+CisjICAgIGRlZmluZSBBTkdMRV9EWUxEX1BMQVRGT1JNX01BQ09T
IDEKKyMgICAgZGVmaW5lIEFOR0xFX0RZTERfUExBVEZPUk1fSU9TIDIKICMgICAgaWYgVEFSR0VU
X09TX09TWAogIyAgICAgICAgZGVmaW5lIEFOR0xFX1BMQVRGT1JNX01BQ09TIDEKICMgICAgZWxp
ZiBUQVJHRVRfT1NfSVBIT05FCiAjICAgICAgICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9TIDEK
LSMgICAgICAgIGRlZmluZSBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT04KICMgICAgICAgIGlmIFRB
UkdFVF9PU19TSU1VTEFUT1IKICMgICAgICAgICAgICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9T
X1NJTVVMQVRPUiAxCiAjICAgICAgICBlbmRpZgpAQCAtMTI4LDYgKzEyOSwxMSBAQAogIyAgICAg
ICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYK
ICMgICAgZW5kaWYKKyMgICAgLy8gVGhpcyBtaWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRo
ZSBtb21lbnQgaXQgaXMgdXNlZAorIyAgICAvLyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0
IG9uIEludGVsIGFuZCBBcHBsZSBTaWxpY29uLgorIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykg
fHwgZGVmaW5lZChfX2FhcmNoNjRfXykKKyMgICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQK
KyMgICAgZW5kaWYKICNlbmRpZgogCiAvLyBEZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mby5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lz
dGVtSW5mby5oCmluZGV4IGQyOGU3Y2EyYzA2ZGI3MjIzMGNjNjk3ZTM4YzczOWQ2NmQzZWY5Yzku
LjgwYTU0MzY0YzczMjBiMjlhNjA3ZTgyNDY2OTc1ODM4ZWYxNGIyOGQgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgK
QEAgLTY3LDYgKzY3LDggQEAgc3RydWN0IFN5c3RlbUluZm8KICAgICBib29sIGlzQU1EU3dpdGNo
YWJsZSA9IGZhbHNlOwogICAgIC8vIE9ubHkgdHJ1ZSBvbiBkdWFsLUdQVSBNYWMgbGFwdG9wcy4K
ICAgICBib29sIGlzTWFjU3dpdGNoYWJsZSA9IGZhbHNlOworICAgIC8vIE9ubHkgdHJ1ZSBvbiBB
cHBsZSBTaWxpY29uIE1hY3Mgd2hlbiBydW5uaW5nIGlPUyBiaW5hcmllcy4KKyAgICBib29sIGlz
SU9TT25NYWMgICAgICA9IGZhbHNlOwogCiAgICAgLy8gT25seSBhdmFpbGFibGUgb24gQW5kcm9p
ZAogICAgIHN0ZDo6c3RyaW5nIG1hY2hpbmVNYW51ZmFjdHVyZXI7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLmNw
cCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
YXBwbGUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAuLjkzNzA2NTQ0OTE3MTRlNmI0OTA5OGVhZTM0NzlhOGZhZTQ0
N2FhM2YKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1
X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLmNwcApAQCAtMCwwICsxLDQ5IEBACisvLworLy8g
Q29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBv
ZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhh
dCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBTeXN0ZW1J
bmZvX2FwcGxlLmNwcDogaW1wbGVtZW50YXRpb24gb2YgdGhlIEFwcGxlLXNwZWNpZmljIHBhcnRz
IG9mIFN5c3RlbUluZm8uaAorCisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FQUExFKQorCisjICAgIGluY2x1ZGUgImdwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCitleHRlcm4gIkMiIHsKKyAg
IGV4dGVybiB1aW50MzJfdCBkeWxkX2dldF9hY3RpdmVfcGxhdGZvcm0odm9pZCk7Cit9CisjZW5k
aWYKKworbmFtZXNwYWNlIGFuZ2xlCit7CisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorYm9vbCBHZXRTeXN0
ZW1JbmZvX21hYyhTeXN0ZW1JbmZvICppbmZvKTsKKyNlbmRpZgorCisjaWYgZGVmaW5lZChBTkdM
RV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCitib29sIEdldFN5c3RlbUluZm9faW9zKFN5c3Rl
bUluZm8gKmluZm8pOworI2VuZGlmCisKK2Jvb2wgR2V0U3lzdGVtSW5mbyhTeXN0ZW1JbmZvICpp
bmZvKQoreworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmlu
ZWQoQU5HTEVfQ1BVX0FSTTY0KQorICAgIGlmIChkeWxkX2dldF9hY3RpdmVfcGxhdGZvcm0oKSA9
PSBBTkdMRV9EWUxEX1BMQVRGT1JNX0lPUykKKyAgICB7CisgICAgICAgIHJldHVybiBHZXRTeXN0
ZW1JbmZvX2lvcyhpbmZvKTsKKyAgICB9CisgICAgcmV0dXJuIEdldFN5c3RlbUluZm9fbWFjKGlu
Zm8pOworI2VsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyAgICByZXR1cm4gR2V0U3lzdGVtSW5mb19tYWMoaW5m
byk7CisjZWxzZQorICAgIHJldHVybiBHZXRTeXN0ZW1JbmZvX2lvcyhpbmZvKTsKKyNlbmRpZgor
fQorCit9ICAvLyBuYW1lc3BhY2UgYW5nbGUKKworI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0FQUExFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwCmluZGV4IGMwZDQzNmY1NjE4Y2Yx
Mjc3YjVlYzc5ZDhjMzExM2RjY2YwYzM4YWYuLmVkZGQzODA2MTEyNzg0YjU3OGExODZmZWVjN2Vk
MjAzZWZiOWNkYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAKQEAgLTgsMjMgKzgsMzYgQEAK
IAogI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImdw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgogCisjaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCitleHRlcm4g
IkMiIHsKKyAgIGV4dGVybiB1aW50MzJfdCBkeWxkX2dldF9hY3RpdmVfcGxhdGZvcm0odm9pZCk7
Cit9CisjZW5kaWYKKwogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKLWJvb2wgR2V0U3lzdGVtSW5mbyhT
eXN0ZW1JbmZvICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvX2lvcyhTeXN0ZW1JbmZvICppbmZv
KQogewogICAgIHsKICAgICAgICAgLy8gVE9ETyhhbmdsZWJ1Zy5jb20vNDI3NSk6IEdldCB0aGUg
YWN0dWFsIHN5c3RlbSB2ZXJzaW9uLgogICAgICAgICBpbmZvLT5tYWNoaW5lTW9kZWxWZXJzaW9u
ID0gIjAuMCI7CiAgICAgfQogCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisgICAgaWYgKGR5bGRfZ2V0X2FjdGl2ZV9w
bGF0Zm9ybSgpID09IEFOR0xFX0RZTERfUExBVEZPUk1fSU9TKQorICAgIHsKKyAgICAgICAgaW5m
by0+aXNJT1NPbk1hYyA9IHRydWU7CisgICAgfQorI2VuZGlmCisKICAgICByZXR1cm4gdHJ1ZTsK
IH0KIAogfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2Vu
ZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0
ZW1JbmZvX21hY29zLm1tCmluZGV4IGE4ZWQ3YWYyNmY0MjQ0Yzk0OTNlZDZhODU3YWZhYzE5Mjhh
YThmZTAuLjJhYjkyZmM3NjRkZjg2NzMwNTE4MDQ5MGMxNjlkMjBhOWRkODViNTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9f
bWFjb3MubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwv
U3lzdGVtSW5mb19tYWNvcy5tbQpAQCAtMTUsNiArMTUsOCBAQAogIyAgICBpbXBvcnQgPENvY29h
L0NvY29hLmg+CiAjICAgIGltcG9ydCA8SU9LaXQvSU9LaXRMaWIuaD4KIAorIyAgICBpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKIG5hbWVzcGFjZSBh
bmdsZQogewogCkBAIC0yMDgsNyArMjEwLDcgQEAgdWludDY0X3QgR2V0R3B1SURGcm9tT3BlbkdM
RGlzcGxheU1hc2sodWludDMyX3QgZGlzcGxheU1hc2spCiAgICAgcmV0dXJuIDA7CiB9CiAKLWJv
b2wgR2V0U3lzdGVtSW5mbyhTeXN0ZW1JbmZvICppbmZvKQorYm9vbCBHZXRTeXN0ZW1JbmZvX21h
YyhTeXN0ZW1JbmZvICppbmZvKQogewogICAgIHsKICAgICAgICAgaW50MzJfdCBtYWpvciA9IDA7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5j
cHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvQ2Fwcy5jcHAKaW5kZXgg
ZWU0ZjA5ZTAxZDZhNzE1YWRhM2MwMjVkODkyZmNjYzVmY2JlMDdiMy4uY2VmMTE1YjczNjU2NTIy
Y2U5NDY4ZWJhNmY0ZTdkMmEzY2MzNzI0MiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9DYXBzLmNwcApAQCAtNjI1LDkgKzYyNSwxMCBAQCBzdGF0aWMgYm9vbCBE
ZXRlcm1pbmVEZXB0aFRleHR1cmVBTkdMRVN1cHBvcnQoY29uc3QgVGV4dHVyZUNhcHNNYXAgJnRl
eHR1cmVDYXBzKQogewogICAgIGNvbnN0ZXhwciBHTGVudW0gcmVxdWlyZWRGb3JtYXRzW10gPSB7
CiAgICAgICAgIEdMX0RFUFRIX0NPTVBPTkVOVDE2LAotI2lmICFBTkdMRV9QTEFURk9STV9JT1MK
KyNpZiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICghZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkgfHwgIWRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKICAgICAgICAg
Ly8gRklYTUU6IFRlbXBvcmFyaWx5IFJlbW92aW5nIHRoZSBuZWVkIGZvciBHTF9ERVBUSF9DT01Q
T05FTlQzMl9PRVMKICAgICAgICAgLy8gYmVjYXVzZSBpdCBpcyBub3Qgc3VwcG9ydGVkIG9uIGlP
Uy4KKyAgICAgICAgLy8gRklYTUU6IEkgdGhpbmsgdGhpcyBuZWVkcyB0byBiZSBhIHJ1bnRpbWUg
Y2hlY2sgd2hlbiBydW5uaW5nIGFuIGlPUyBhcHAgb24gTWFjLgogICAgICAgICBHTF9ERVBUSF9D
T01QT05FTlQzMl9PRVMsCiAjZW5kaWYKICAgICAgICAgR0xfREVQVEgyNF9TVEVOQ0lMOF9PRVMs
CkBAIC02NDEsOSArNjQyLDEwIEBAIHN0YXRpYyBib29sIERldGVybWluZURlcHRoVGV4dHVyZU9F
U1N1cHBvcnQoY29uc3QgVGV4dHVyZUNhcHNNYXAgJnRleHR1cmVDYXBzKQogewogICAgIGNvbnN0
ZXhwciBHTGVudW0gcmVxdWlyZWRGb3JtYXRzW10gPSB7CiAgICAgICAgIEdMX0RFUFRIX0NPTVBP
TkVOVDE2LAotI2lmICFBTkdMRV9QTEFURk9STV9JT1MKKyNpZiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICghZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgfHwgIWRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKICAgICAgICAgLy8gRklYTUU6IFRlbXBvcmFyaWx5IFJl
bW92aW5nIHRoZSBuZWVkIGZvciBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMKICAgICAgICAgLy8g
YmVjYXVzZSBpdCBpcyBub3Qgc3VwcG9ydGVkIG9uIGlPUy4KKyAgICAgICAgLy8gRklYTUU6IEkg
dGhpbmsgdGhpcyBuZWVkcyB0byBiZSBhIHJ1bnRpbWUgY2hlY2sgd2hlbiBydW5uaW5nIGFuIGlP
UyBhcHAgb24gTWFjLgogICAgICAgICBHTF9ERVBUSF9DT01QT05FTlQzMl9PRVMsCiAjZW5kaWYK
ICAgICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L0Rpc3BsYXkuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3Bs
YXkuY3BwCmluZGV4IGUzZWJlMzI1ZGFhMjg4ZTg1YzliZjgwMzdhMDA1MzEwNTI0N2I3YTguLjQ1
OWYxODc2NjY1NDFiZjVlZmI5ZWI3MTAzZDliZjNjOWY0OWYzMjUgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKQEAgLTI4LDYgKzI4LDcg
QEAKICNpbmNsdWRlICJjb21tb24vc3lzdGVtX3V0aWxzLmgiCiAjaW5jbHVkZSAiY29tbW9uL3Rs
cy5oIgogI2luY2x1ZGUgImNvbW1vbi91dGlsaXRpZXMuaCIKKyNpbmNsdWRlICJncHVfaW5mb191
dGlsL1N5c3RlbUluZm8uaCIKICNpbmNsdWRlICJsaWJBTkdMRS9Db250ZXh0LmgiCiAjaW5jbHVk
ZSAibGliQU5HTEUvRGV2aWNlLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvRUdMU3luYy5oIgpAQCAt
NTMsNiArNTQsOSBAQAogIyAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvd2ds
L0Rpc3BsYXlXR0wuaCIKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8
fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQogIyAgICAgICAgaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKKyMgICAgICAgIGlmIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0
KQorIyAgICAgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxh
eUVBR0wuaCIKKyMgICAgICAgIGVuZGlmCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpCiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3Bs
YXlFQUdMLmgiCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9MSU5VWCkKQEAgLTI2
MCw4ICsyNjQsMzYgQEAgcng6OkRpc3BsYXlJbXBsICpDcmVhdGVEaXNwbGF5RnJvbUF0dHJpYnMo
RUdMQXR0cmliIGRpc3BsYXlUeXBlLAogI2lmIGRlZmluZWQoQU5HTEVfRU5BQkxFX09QRU5HTCkK
ICMgICAgaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9XSU5ET1dTKQogICAgICAgICAgICAgaW1w
bCA9IG5ldyByeDo6RGlzcGxheVdHTChzdGF0ZSk7Ci0jICAgIGVsaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyAg
ICAgICAgICAgIGJyZWFrOworCisjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNP
UykKKyAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRpc3BsYXlDR0woc3RhdGUpOworICAgICAg
ICAgICAgYnJlYWs7CisjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKyMgICAgICAgIGlmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQorICAgICAgICAgICAgewor
ICAgICAgICAgICAgICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGluZm87CisgICAgICAgICAgICAgICAg
aWYgKCFhbmdsZTo6R2V0U3lzdGVtSW5mbygmaW5mbykpCisgICAgICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgICAgICBpbXBsID0gbnVsbHB0cjsKKyAgICAgICAgICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgaWYgKGluZm8uaXNJT1NP
bk1hYykKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAgIGltcGwgPSBuZXcg
cng6OkRpc3BsYXlDR0woc3RhdGUpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAg
ICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUpOworICAg
ICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICB9
CisjICAgICAgICBlbHNlCiAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0
YXRlKTsKKyAgICAgICAgICAgIGJyZWFrOworIyAgICAgICAgZW5kaWYKICMgICAgZWxpZiBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKICAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRpc3Bs
YXlFQUdMKHN0YXRlKTsKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJTlVYKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0
aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1dGls
cy5jcHAKaW5kZXggZTQzNDk2ZmMzNDcxOTNhOWYxY2JjMTFmYmY2ZTRkZmY5YzkyZTIzZS4uZTdi
YjE3OWRlMTA3NzY2MGQ4ZmFmMzg3ZDk4MDQ4MjUyMmJiMzE2NSAxMDA2NDQKLS0tIGEvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcAorKysgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCkBAIC0xMCw2
ICsxMCw3IEBACiAKICNpbmNsdWRlICJhbmdsZWJhc2Uvbm9fZGVzdHJ1Y3Rvci5oIgogI2luY2x1
ZGUgImNvbW1vbi9tYXRodXRpbC5oIgorI2luY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
by5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0NvbnRleHQuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9G
cmFtZWJ1ZmZlci5oIgogCkBAIC0xMDMwLDggKzEwMzEsMjEgQEAgc3RhdGljIEludGVybmFsRm9y
bWF0SW5mb01hcCBCdWlsZEludGVybmFsRm9ybWF0SW5mb01hcCgpCiAgICAgQWRkUkdCQUZvcm1h
dCgmbWFwLCBHTF9SR0JBLCAgICAgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9S
R0JBLCAgICAgICAgICAgR0xfQllURSwgICAgICAgICAgICAgICAgICAgICAgICBHTF9TSUdORURf
Tk9STUFMSVpFRCwgICBmYWxzZSwgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CiAg
ICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9TUkdCLCAgICAgICAgICAgZmFsc2UsICA4LCAgOCwg
IDgsICAwLCAwLCBHTF9TUkdCLCAgICAgICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAg
ICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCB0cnVlLCAgUmVxdWlyZUV4dDwmRXh0ZW5zaW9u
czo6c1JHQj4sICAgICAgICAgICAgICAgICAgICBBbHdheXNTdXBwb3J0ZWQsIE5ldmVyU3VwcG9y
dGVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZl
clN1cHBvcnRlZCk7CiAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9TUkdCX0FMUEhBX0VYVCwg
ZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9TUkdCX0FMUEhBX0VYVCwgR0xfVU5TSUdORURf
QllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCB0cnVlLCAgUmVxdWly
ZUV4dDwmRXh0ZW5zaW9uczo6c1JHQj4sICAgICAgICAgICAgICAgICAgICBBbHdheXNTdXBwb3J0
ZWQsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnNSR0I+LCAgICAgICAgICAgICAgICAgIE5ldmVy
U3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7Ci0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQotICAgIEFkZFJHQkFG
b3JtYXQoJm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwg
R0xfQkdSQV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5T
SUdORURfTk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVFUzwyLCAwPiwgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRVM8MiwgMD4sICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQp
OworI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGlu
Zm87CisgICAgaWYgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKCZpbmZvKSkKKyAgICB7CisgICAgICAg
IGlmICghaW5mby5pc0lPU09uTWFjKQorICAgICAgICB7CisgICAgICAgICAgICAvLyBVc2luZyBP
cGVuR0wuZnJhbWV3b3JrLgorICAgICAgICAgICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JB
X0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAg
R0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBm
YWxzZSwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgICBB
bHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JB
ODg4OD4sIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CisgICAgICAgIH0KKyAgICAg
ICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgICAvLyBVc2luZyBPcGVuR0xFUy5mcmFtZXdv
cmsuCisgICAgICAgICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBm
YWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9C
WVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJl
RVM8MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRl
ZCwgUmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJT
dXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKKyAgICAgICAgfQorICAgIH0KICNlbHNlCiAgICAg
QWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgs
ICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAg
ICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBmYWxzZSwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6
dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFeHQ8JkV4
dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JBODg4OD4sIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1
cHBvcnRlZCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmgK
bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMC4uMmRmNTdjZTdjOTJiNjJlODMxNzIxYzQ1MmI2ZmQ1MGUwODQwNmYxOQotLS0g
L2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oCkBAIC0wLDAgKzEsMTE0IEBACisvLworLy8gQ29w
eXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0
aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBj
YW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBTb2Z0TGlua2lu
Z19hcHBsZS5jcHA6IE1hY3JvcyBmb3Igc29mdC1saW5raW5nIEZyYW1ld29ya3MgYW5kIEZ1bmN0
aW9ucy4KKworI2lmbmRlZiBTT0ZUX0xJTktJTkdfQVBQTEVfSF8KKyNkZWZpbmUgU09GVF9MSU5L
SU5HX0FQUExFX0hfCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKworI2lmIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyNpbmNsdWRlICJjb21tb24vZGVidWcuaCIKKwor
I2ltcG9ydCA8ZGlzcGF0Y2gvZGlzcGF0Y2guaD4KKyNpbXBvcnQgPGRsZmNuLmg+CisjaW1wb3J0
IDxvYmpjL3J1bnRpbWUuaD4KKworI2RlZmluZSBSRUxFQVNFX0FTU0VSVChleHByZXNzaW9uLCBt
ZXNzYWdlKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgXAorICAgICAgICAoZXhwcmVzc2lvbiA/IHN0YXRpY19jYXN0PHZvaWQ+
KDApICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICA6IChGQVRBTCgpIDw8ICJcdCEgQXNz
ZXJ0IGZhaWxlZCBpbiAiIDw8IF9fRlVOQ1RJT05fXyA8PCAiICgiIDw8IF9fRklMRV9fICAgICAg
ICAgICAgICAgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw8ICI6IiA8PCBfX0xJ
TkVfXyA8PCAiKTogIiA8PCAjZXhwcmVzc2lvbiA8PCAiXG5cdCEgTWVzc2FnZTogIiA8PCBtZXNz
YWdlKSkKKworCisjaWZkZWYgX19jcGx1c3BsdXMKKyNkZWZpbmUgRVhURVJOX0NfQkVHSU4gZXh0
ZXJuICJDIiB7CisjZGVmaW5lIEVYVEVSTl9DX0VORCB9CisjZWxzZQorI2RlZmluZSBFWFRFUk5f
Q19CRUdJTgorI2RlZmluZSBFWFRFUk5fQ19FTkQKKyNlbmRpZgorCisjZGVmaW5lIFNPRlRfTElO
S19GUkFNRVdPUktfSEVBREVSKGZyYW1ld29yaykgXAorICAgIGV4dGVybiB2b2lkKiBmcmFtZXdv
cmsjI0xpYnJhcnkoKTsgXAorCisjZGVmaW5lIFNPRlRfTElOS19GUkFNRVdPUktfU09VUkNFKGZy
YW1ld29yaykgXAorICAgIHZvaWQqIGZyYW1ld29yayMjTGlicmFyeSgpIFwKKyAgICB7IFwKKyAg
ICAgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlID0gMDsgXAorICAgICAgICBzdGF0aWMg
dm9pZCogZnJhbWV3b3JrTGlicmFyeSA9IE5VTEw7IFwKKyAgICAgICAgZGlzcGF0Y2hfb25jZSgm
b25jZSwgXnsgXAorICAgICAgICAgICAgZnJhbWV3b3JrTGlicmFyeSA9IGRsb3BlbigiL1N5c3Rl
bS9MaWJyYXJ5L0ZyYW1ld29ya3MvIiAjZnJhbWV3b3JrICIuZnJhbWV3b3JrLyIgI2ZyYW1ld29y
aywgUlRMRF9OT1cpOyBcCisgICAgICAgICAgICBSRUxFQVNFX0FTU0VSVChmcmFtZXdvcmtMaWJy
YXJ5LCAiVW5hYmxlIHRvIGxvYWQgIiAjZnJhbWV3b3JrICIuZnJhbWV3b3JrIik7IFwKKyAgICAg
ICAgfSk7IFwKKyAgICAgICAgcmV0dXJuIGZyYW1ld29ya0xpYnJhcnk7IFwKKyAgICB9CisKKyNk
ZWZpbmUgU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihmcmFtZXdvcmssIGZ1bmN0aW9uTmFtZSwg
cmVzdWx0VHlwZSwgcGFyYW1ldGVyRGVjbGFyYXRpb25zLCBwYXJhbWV0ZXJOYW1lcykgXAorICAg
IEVYVEVSTl9DX0JFR0lOIFwKKyAgICByZXN1bHRUeXBlIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJE
ZWNsYXJhdGlvbnM7IFwKKyAgICBFWFRFUk5fQ19FTkQgXAorICAgIGV4dGVybiByZXN1bHRUeXBl
IGluaXQjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9uczsgXAor
ICAgIGV4dGVybiByZXN1bHRUeXBlKCpzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUp
IHBhcmFtZXRlckRlY2xhcmF0aW9uczsgXAorICAgIGlubGluZSBfX2F0dHJpYnV0ZV9fKChfX2Fs
d2F5c19pbmxpbmVfXykpIHJlc3VsdFR5cGUgZnVuY3Rpb25OYW1lIHBhcmFtZXRlckRlY2xhcmF0
aW9ucyBcCisgICAgeyBcCisgICAgICAgIHJldHVybiBzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5j
dGlvbk5hbWUgcGFyYW1ldGVyTmFtZXM7IFwKKyAgICB9IFwKKworI2RlZmluZSBTT0ZUX0xJTktf
RlVOQ1RJT05fU09VUkNFKGZyYW1ld29yaywgZnVuY3Rpb25OYW1lLCByZXN1bHRUeXBlLCBwYXJh
bWV0ZXJEZWNsYXJhdGlvbnMsIHBhcmFtZXRlck5hbWVzKSBcCisgICAgcmVzdWx0VHlwZSgqc29m
dExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lKSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgPSBp
bml0IyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZTsgXAorICAgIHJlc3VsdFR5cGUgaW5pdCMjZnJh
bWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zIFwKKyAgICB7IFwKKyAg
ICAgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOyBcCisgICAgICAgIGRpc3BhdGNoX29u
Y2UoJm9uY2UsIF57IFwKKyAgICAgICAgICAgIHNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9u
TmFtZSA9IChyZXN1bHRUeXBlICgqKSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMpIGRsc3ltKGZyYW1l
d29yayMjTGlicmFyeSgpLCAjZnVuY3Rpb25OYW1lKTsgXAorICAgICAgICB9KTsgXAorICAgICAg
ICByZXR1cm4gc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lIHBhcmFtZXRlck5hbWVz
OyBcCisgICAgfSBcCisKKyNkZWZpbmUgU09GVF9MSU5LX0NMQVNTX0hFQURFUihjbGFzc05hbWUp
IFwKKyAgICBAY2xhc3MgY2xhc3NOYW1lOyBcCisgICAgZXh0ZXJuIENsYXNzICgqZ2V0IyNjbGFz
c05hbWUjI0NsYXNzKSgpOyBcCisgICAgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0
YW5jZSgpOyBcCisgICAgaW5saW5lIGNsYXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFu
Y2UoKSBcCisgICAgeyBcCisgICAgICAgIHJldHVybiBbZ2V0IyNjbGFzc05hbWUjI0NsYXNzKCkg
YWxsb2NdOyBcCisgICAgfQorCisjZGVmaW5lIFNPRlRfTElOS19DTEFTUyhmcmFtZXdvcmssIGNs
YXNzTmFtZSkgXAorICAgIEBjbGFzcyBjbGFzc05hbWU7IFwKKyAgICBzdGF0aWMgQ2xhc3MgaW5p
dCMjY2xhc3NOYW1lKCk7IFwKKyAgICBDbGFzcyAoKmdldCMjY2xhc3NOYW1lIyNDbGFzcykoKSA9
IGluaXQjI2NsYXNzTmFtZTsgXAorICAgIHN0YXRpYyBDbGFzcyBjbGFzcyMjY2xhc3NOYW1lOyBc
CisgICAgXAorICAgIHN0YXRpYyBDbGFzcyBjbGFzc05hbWUjI0Z1bmN0aW9uKCkgXAorICAgIHsg
XAorICAgICAgICByZXR1cm4gY2xhc3MjI2NsYXNzTmFtZTsgXAorICAgIH0gXAorICAgIFwKKyAg
ICBzdGF0aWMgQ2xhc3MgaW5pdCMjY2xhc3NOYW1lKCkgXAorICAgIHsgXAorICAgICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7IFwKKyAgICAgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwg
XnsgXAorICAgICAgICAgICAgZnJhbWV3b3JrIyNMaWJyYXJ5KCk7IFwKKyAgICAgICAgICAgIGNs
YXNzIyNjbGFzc05hbWUgPSBvYmpjX2dldENsYXNzKCNjbGFzc05hbWUpOyBcCisgICAgICAgICAg
ICBSRUxFQVNFX0FTU0VSVChjbGFzcyMjY2xhc3NOYW1lLCAib2JqY19nZXRDbGFzcyBmYWlsZWQg
Zm9yICIgI2NsYXNzTmFtZSk7IFwKKyAgICAgICAgICAgIGdldCMjY2xhc3NOYW1lIyNDbGFzcyA9
IGNsYXNzTmFtZSMjRnVuY3Rpb247IFwKKyAgICAgICAgfSk7IFwKKyAgICAgICAgcmV0dXJuIGNs
YXNzIyNjbGFzc05hbWU7IFwKKyAgICB9IFwKKyAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGlj
IHB1c2giKSBcCisgICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBpZ25vcmVkIFwiLVd1bnVz
ZWQtZnVuY3Rpb25cIiIpIFwKKyAgICBzdGF0aWMgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1l
IyNJbnN0YW5jZSgpIFwKKyAgICB7IFwKKyAgICAgICAgcmV0dXJuIFtnZXQjI2NsYXNzTmFtZSMj
Q2xhc3MoKSBhbGxvY107IFwKKyAgICB9IFwKKyAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGlj
IHBvcCIpCisKKyNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0FQUExFKQorCisjZW5k
aWYgLy8gU09GVF9MSU5LSU5HX0FQUExFX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1
bmN0aW9ucy5jcHAKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMTU1YjRkZjdkN2QyZWVlMzlkOTdjZGU5MGY2MGE3YTI3
NGZmOGMyYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNwcApAQCAtMCwwICsxLDMyIEBA
CisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4K
Ky8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxp
Y2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisv
LyBDR0xGdW5jdGlvbnMuY3BwOiBFeHBvc2luZyB0aGUgc29mdC1saW5rZWQgQ0dMIGludGVyZmFj
ZS4KKworI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorI2luY2x1ZGUgImxpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisKK1NPRlRf
TElOS19GUkFNRVdPUktfU09VUkNFKE9wZW5HTCkKKworU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTENob29zZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVs
Rm9ybWF0QXR0cmlidXRlICphdHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAq
bnBpeCksIChhdHRyaWJzLCBwaXgsIG5waXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShP
cGVuR0wsIENHTENyZWF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4
LCBDR0xDb250ZXh0T2JqIHNoYXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwg
Y3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVs
Rm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwg
Q0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhf
bnVtLCBhdHRyaWIsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBD
R0xEZXN0cm95Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQor
U09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc3Ryb3lQaXhlbEZvcm1hdCwg
Q0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKK1NPRlRfTElOS19GVU5D
VElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xFcnJvclN0cmluZywgY29uc3QgY2hhciAqLCAoQ0dMRXJy
b3IgZXJyb3IpLCAoZXJyb3IpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENH
TFJlbGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRf
TElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29udGV4dCwgQ0dMRXJy
b3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBj
dHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09V
UkNFKE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1hdCwgR0xzaXplaSB3
aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0eXBlLCBJT1N1cmZh
Y2VSZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQsIGludGVybmFsX2Zv
cm1hdCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2UsIHBsYW5lKSkKK1NP
RlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xVcGRhdGVDb250ZXh0LCBDR0xFcnJv
ciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKK1NPRlRfTElOS19GVU5DVElPTl9TT1VS
Q0UoT3BlbkdMLCBDR0xEZXNjcmliZVJlbmRlcmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5m
b09iaiByZW5kLCBHTGludCByZW5kX251bSwgQ0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGlu
dCAqdmFsdWUpLCAocmVuZCwgcmVuZF9udW0sIHByb3AsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5D
VElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENH
TFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5
X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlf
bWFzaywgcmVuZCwgbnJlbmQpKQorCisjZW5kaWYgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dM
RnVuY3Rpb25zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmE4YTFkN2M3M2JjOWQ4ZTFjYmJk
OGRkYjM0NzM0MTE5NWVhZDE2MzYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oCkBAIC0w
LDAgKzEsMzkgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBC
U0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmls
ZS4KKy8vCisKKy8vIENHTEZ1bmN0aW9ucy5oOiBFeHBvc2luZyB0aGUgc29mdC1saW5rZWQgQ0dM
IGludGVyZmFjZS4KKworI2lmbmRlZiBDR0xfRlVOQ1RJT05TX0hfCisjZGVmaW5lIENHTF9GVU5D
VElPTlNfSF8KKworI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKworI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KKworI2luY2x1ZGUgImxpYkFOR0xFL3Jl
bmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmgiCisKK1NPRlRfTElOS19GUkFNRVdPUktfSEVB
REVSKE9wZW5HTCkKKworU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTENob29z
ZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlICph
dHRyaWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAqbnBpeCksIChhdHRyaWJzLCBw
aXgsIG5waXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTENyZWF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNo
YXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKK1NPRlRfTElOS19G
VU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRy
aWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVl
KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXNjcmliZVJlbmRlcmVy
LCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCByZW5kX251bSwgQ0dM
UmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwgcmVuZF9udW0sIHBy
b3AsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95
Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5L
X0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc3Ryb3lQaXhlbEZvcm1hdCwgQ0dMRXJyb3Is
IChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFE
RVIoT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVy
SW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTEVycm9yU3RyaW5nLCBjb25zdCBjaGFyICosIChDR0xFcnJvciBlcnJvciksIChlcnJvcikp
CitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMUXVlcnlSZW5kZXJlckluZm8s
IENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dMUmVuZGVyZXJJbmZvT2JqICpyZW5k
LCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5kLCBucmVuZCkpCitTT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMUmVsZWFzZUNvbnRleHQsIHZvaWQsIChDR0xDb250
ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENH
TFNldEN1cnJlbnRDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkp
CitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMU2V0VmlydHVhbFNjcmVlbiwg
Q0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQgc2NyZWVuKSwgKGN0eCwgc2NyZWVu
KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xUZXhJbWFnZUlPU3VyZmFj
ZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGVudW0gdGFyZ2V0LCBHTGVudW0g
aW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNpemVpIGhlaWdodCwgR0xlbnVtIGZv
cm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1cmZhY2UsIEdMdWludCBwbGFuZSks
IChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIHR5
cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkK
KworI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisKKyNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KaW5kZXggNzlhMTFkNGQyOThhMWEzYjI0
MWQ5ODQwZWNhN2JiNTNiZjI1N2IxNS4uZTdjYzJiYTJmYTYzYzZhMzM2MWIwNTdmOGRmMTc4Mjg2
MTM3OWRmMSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5tbQpAQCAtMjgsNiAr
MjgsOCBAQAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3Vy
ZmFjZUNHTC5oIgogIyAgICBpbmNsdWRlICJwbGF0Zm9ybS9QbGF0Zm9ybU1ldGhvZHMuaCIKIAor
IyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisK
IG5hbWVzcGFjZQogewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VT
dXJmYWNlQ0dMLmNwcAppbmRleCBhZmRjYTRmMmVmOTZjODU1Zjg2ZjY5ODhjMGE2NmYzYjNmZjk2
NDdjLi44ZWQ0MzkxZTAzMGQ0YTBiNDU0MDMwMDJiN2M0ZmViZTgxNDRlZTkzIDEwMDY0NAotLS0g
YS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lP
U3VyZmFjZVN1cmZhY2VDR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAKQEAgLTI3LDYg
KzI3LDggQEAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvVGV4dHVyZUdMLmgi
CiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCiAK
KyMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgor
CiBuYW1lc3BhY2UgcngKIHsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmggYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZh
Y2VDR0wuaAppbmRleCBkOGI0Y2MyZjkxYzM0MWJhOGYyMGQxNmUzOWJkNmJkMDM5MDhjZTA0Li5k
OGJhYWJmN2ZjNzhjODE2YzZjMzgzZjZkY2VjYjE1NDBkZTM0ZGIyIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1
cmZhY2VDR0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaApAQCAtMTgsNyArMTgsNyBAQCBzdHJ1Y3Qg
X19JT1N1cmZhY2U7CiB0eXBlZGVmIF9fSU9TdXJmYWNlICpJT1N1cmZhY2VSZWY7CiAKIC8vIFdl
YktpdCdzIGJ1aWxkIHByb2Nlc3MgcmVxdWlyZXMgdGhhdCBldmVyeSBPYmplY3RpdmUtQyBjbGFz
cyBuYW1lIGhhcyB0aGUgcHJlZml4ICJXZWIiLgotQGNsYXNzIFdlYlN3YXBMYXllcjsKK0BjbGFz
cyBXZWJTd2FwTGF5ZXJDR0w7CiAKIG5hbWVzcGFjZSByeAogewpAQCAtODcsNyArODcsNyBAQCBj
bGFzcyBXaW5kb3dTdXJmYWNlQ0dMIDogcHVibGljIFN1cmZhY2VHTAogICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGdsOjpGcmFtZWJ1ZmZlclN0YXRl
ICZzdGF0ZSkgb3ZlcnJpZGU7CiAKICAgcHJpdmF0ZToKLSAgICBXZWJTd2FwTGF5ZXIgKm1Td2Fw
TGF5ZXI7CisgICAgV2ViU3dhcExheWVyQ0dMICptU3dhcExheWVyOwogICAgIFNoYXJlZFN3YXBT
dGF0ZSBtU3dhcFN0YXRlOwogICAgIHVpbnQ2NF90IG1DdXJyZW50U3dhcElkOwogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2ds
L1dpbmRvd1N1cmZhY2VDR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KaW5kZXggMGZhNTdiZTQzYjc3
OWYwZGVlYmNmZGM1MTIwMjY4NTE1YWI5NDU2Zi4uYjhkNTk5MGU2NGU4MmVlNzY3MTNjMjY1MzQ3
M2ZiYmFlNDM1MThmOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFj
ZUNHTC5tbQpAQCAtMjMsNyArMjMsOSBAQAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9TdGF0ZU1hbmFnZXJHTC5oIgogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9jZ2wvRGlzcGxheUNHTC5oIgogCi1AaW50ZXJmYWNlIFdlYlN3YXBMYXllciA6IENBT3BlbkdM
TGF5ZXIgeworIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rp
b25zLmgiCisKK0BpbnRlcmZhY2UgV2ViU3dhcExheWVyQ0dMIDogQ0FPcGVuR0xMYXllciB7CiAg
ICAgQ0dMQ29udGV4dE9iaiBtRGlzcGxheUNvbnRleHQ7CiAKICAgICBib29sIGluaXRpYWxpemVk
OwpAQCAtMzcsNyArMzksNyBAQAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczooY29uc3Qgcng6
OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zOwogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV2ViU3dh
cExheWVyCitAaW1wbGVtZW50YXRpb24gV2ViU3dhcExheWVyQ0dMCiAtIChpZClpbml0V2l0aFNo
YXJlZFN0YXRlOihyeDo6U2hhcmVkU3dhcFN0YXRlICopc3dhcFN0YXRlCiAgICAgICAgICAgICAg
IHdpdGhDb250ZXh0OihDR0xDb250ZXh0T2JqKWRpc3BsYXlDb250ZXh0CiAgICAgICAgICAgICB3
aXRoRnVuY3Rpb25zOihjb25zdCByeDo6RnVuY3Rpb25zR0wgKilmdW5jdGlvbnMKQEAgLTIwOCw5
ICsyMTAsOSBAQCBlZ2w6OkVycm9yIFdpbmRvd1N1cmZhY2VDR0w6OmluaXRpYWxpemUoY29uc3Qg
ZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAgIG1Td2FwU3RhdGUubGFzdFJlbmRlcmVkICAgPSAm
bVN3YXBTdGF0ZS50ZXh0dXJlc1sxXTsKICAgICBtU3dhcFN0YXRlLmJlaW5nUHJlc2VudGVkID0g
Jm1Td2FwU3RhdGUudGV4dHVyZXNbMl07CiAKLSAgICBtU3dhcExheWVyID0gW1tXZWJTd2FwTGF5
ZXIgYWxsb2NdIGluaXRXaXRoU2hhcmVkU3RhdGU6Jm1Td2FwU3RhdGUKLSAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQKLSAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6
bUZ1bmN0aW9uc107CisgICAgbVN3YXBMYXllciA9IFtbV2ViU3dhcExheWVyQ0dMIGFsbG9jXSBp
bml0V2l0aFNoYXJlZFN0YXRlOiZtU3dhcFN0YXRlCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhDb250ZXh0Om1Db250ZXh0CisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOm1GdW5j
dGlvbnNdOwogICAgIFttTGF5ZXIgYWRkU3VibGF5ZXI6bVN3YXBMYXllcl07CiAgICAgW21Td2Fw
TGF5ZXIgc2V0Q29udGVudHNTY2FsZTpbbUxheWVyIGNvbnRlbnRzU2NhbGVdXTsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcAppbmRleCBhOTgzNDYxOTI0MGNlZDAzN2Y1
NGYxMGQxNDhjN2UxZDA2OTM3ZWM1Li42NDE5N2ZmZWZkNTcyMThkNWNiMzM2NWM1ZmIzMjRjZWUz
ODZjNDI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcApAQCAtOCw3
ICs4LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
CisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW5jbHVkZSAibGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgiCiAKQEAgLTU2LDQgKzU2LDQgQEAgdm9pZCBE
ZXZpY2VFQUdMOjpnZW5lcmF0ZUV4dGVuc2lvbnMoZWdsOjpEZXZpY2VFeHRlbnNpb25zICpvdXRF
eHRlbnNpb25zKSBjb25zdAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2
aWNlRUFHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGV2aWNlRUFHTC5oCmluZGV4IDU3Njk2OTIxZWYzYmU1NDg2YWU5MTg1NTBiZDMz
MzhiMGQ0YmMwYTUuLjkzYWJmZmMwMjg1ZjZiMDU1ZTU3ZTJjZGJhZTQwODU1MjNiMmUxNDQgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgKQEAgLTExLDcgKzExLDcgQEAKIAog
I2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCiAKICNpbmNsdWRlICJsaWJBTkdMRS9EZXZpY2UuaCIKICNpbmNs
dWRlICJsaWJBTkdMRS9yZW5kZXJlci9EZXZpY2VJbXBsLmgiCkBAIC0zNCw2ICszNCw2IEBAIGNs
YXNzIERldmljZUVBR0wgOiBwdWJsaWMgRGV2aWNlSW1wbAogCiB9ICAvLyBuYW1lc3BhY2UgcngK
IAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQogCiAjZW5kaWYgIC8vIExJQkFOR0xFX1JFTkRFUkVSX0dMX0VBR0xfREVWSUNFRUFHTF9I
XwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKaW5kZXggMjYxYmE0MDdkMTkz
YmViOTMxMmFkMTEwNmQ4YzZiZTgwZDg3MzlkOS4uYTUzNjZlOTE2ZTljNzU2MDlmMzEwMTMxMmZl
YjYwZjA1N2MxMTExNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oCkBA
IC0xMSw3ICsxMSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjaW5jbHVkZSAibGliQU5H
TEUvcmVuZGVyZXIvZ2wvRGlzcGxheUdMLmgiCiAKQEAgLTk3LDYgKzk3LDYgQEAgY2xhc3MgRGlz
cGxheUVBR0wgOiBwdWJsaWMgRGlzcGxheUdMCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5k
aWYgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAj
ZW5kaWYgIC8vIExJQkFOR0xFX1JFTkRFUkVSX0dMX0VBR0xfRElTUExBWUVBR0xfSF8KZGlmZiAt
LWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0KaW5kZXggY2ViMmQxMWZjNzk5ZTM5NjI1
Yzc3OGE3MjI1NjUyYWFlYzg4OGExMS4uNWQ5YTc3MTZmZTU2YmQ0ZWYyZGUzYTdhYTVhOTQ0ODQ4
ZjYzYzNmYiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW0KQEAgLTgs
NyArOCw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgogCkBAIC0yMywxMSArMjMsMTAgQEAKICMg
ICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgi
CiAKICMgICAgaW1wb3J0IDxGb3VuZGF0aW9uL0ZvdW5kYXRpb24uaD4KLSMgICAgaW1wb3J0IDxP
cGVuR0xFUy9FQUdMLmg+CiAjICAgIGltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpDb3JlLmg+CiAj
ICAgIGltcG9ydCA8ZGxmY24uaD4KIAotIyAgICBkZWZpbmUgR0xFU19TSUxFTkNFX0RFUFJFQ0FU
SU9OCisjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25z
LmgiCiAKIG5hbWVzcGFjZQogewpAQCAtNzEsMTIgKzcwLDEyIEBAIGVnbDo6RXJyb3IgRGlzcGxh
eUVBR0w6OmluaXRpYWxpemUoZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAgICAgICByZXR1cm4g
ZWdsOjpFZ2xOb3RJbml0aWFsaXplZCgpIDw8ICJVbmFibGUgdG8gcXVlcnkgQU5HTEUncyBTeXN0
ZW1JbmZvLiI7CiAgICAgfQogCi0gICAgbUNvbnRleHQgPSBbW0VBR0xDb250ZXh0IGFsbG9jXSBp
bml0V2l0aEFQSTprRUFHTFJlbmRlcmluZ0FQSU9wZW5HTEVTM107CisgICAgbUNvbnRleHQgPSBb
W2dldEVBR0xDb250ZXh0Q2xhc3MoKSBhbGxvY10gaW5pdFdpdGhBUEk6a0VBR0xSZW5kZXJpbmdB
UElPcGVuR0xFUzNdOwogICAgIGlmIChtQ29udGV4dCA9PSBudWxscHRyKQogICAgIHsKICAgICAg
ICAgcmV0dXJuIGVnbDo6RWdsTm90SW5pdGlhbGl6ZWQoKSA8PCAiQ291bGQgbm90IGNyZWF0ZSB0
aGUgRUFHTCBjb250ZXh0LiI7CiAgICAgfQotICAgIFtFQUdMQ29udGV4dCBzZXRDdXJyZW50Q29u
dGV4dDptQ29udGV4dF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29u
dGV4dDptQ29udGV4dF07CiAKICAgICAvLyBUaGVyZSBpcyBubyBlcXVpdmFsZW50IGdldFByb2NB
ZGRyZXNzIGluIEVBR0wgc28gd2Ugb3BlbiB0aGUgZHlsaWIgZGlyZWN0bHkKICAgICB2b2lkICpo
YW5kbGUgPSBkbG9wZW4oa09wZW5HTEVTRHlsaWJOYW1lLCBSVExEX05PVyk7CkBAIC0xMDYsNyAr
MTA1LDcgQEAgdm9pZCBEaXNwbGF5RUFHTDo6dGVybWluYXRlKCkKICAgICBtUmVuZGVyZXIucmVz
ZXQoKTsKICAgICBpZiAobUNvbnRleHQgIT0gbnVsbHB0cikKICAgICB7Ci0gICAgICAgIFtFQUdM
Q29udGV4dCBzZXRDdXJyZW50Q29udGV4dDpuaWxdOworICAgICAgICBbZ2V0RUFHTENvbnRleHRD
bGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om5pbF07CiAgICAgICAgIFttQ29udGV4dCByZWxlYXNl
XTsKICAgICAgICAgbUNvbnRleHQgPSBudWxscHRyOwogICAgIH0KQEAgLTMzMCwxNCArMzI5LDE0
IEBAIFdvcmtlckNvbnRleHRFQUdMOjpXb3JrZXJDb250ZXh0RUFHTChFQUdMQ29udGV4dE9iaiBj
b250ZXh0KSA6IG1Db250ZXh0KGNvbnRleHQpCiAKIFdvcmtlckNvbnRleHRFQUdMOjp+V29ya2Vy
Q29udGV4dEVBR0woKQogewotICAgIFtFQUdMQ29udGV4dCBzZXRDdXJyZW50Q29udGV4dDpuaWxd
OworICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKICAg
ICBbbUNvbnRleHQgcmVsZWFzZV07CiAgICAgbUNvbnRleHQgPSBudWxscHRyOwogfQogCiBib29s
IFdvcmtlckNvbnRleHRFQUdMOjptYWtlQ3VycmVudCgpCiB7Ci0gICAgaWYgKCFbRUFHTENvbnRl
eHQgc2V0Q3VycmVudENvbnRleHQ6c3RhdGljX2Nhc3Q8RUFHTENvbnRleHQgKj4obUNvbnRleHQp
XSkKKyAgICBpZiAoIVtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRleHQ6c3Rh
dGljX2Nhc3Q8RUFHTENvbnRleHQgKj4obUNvbnRleHQpXSkKICAgICB7CiAgICAgICAgIEVSUigp
IDw8ICJVbmFibGUgdG8gbWFrZSBnbCBjb250ZXh0IGN1cnJlbnQuIjsKICAgICAgICAgcmV0dXJu
IGZhbHNlOwpAQCAtMzQ3LDEzICszNDYsMTMgQEAgYm9vbCBXb3JrZXJDb250ZXh0RUFHTDo6bWFr
ZUN1cnJlbnQoKQogCiB2b2lkIFdvcmtlckNvbnRleHRFQUdMOjp1bm1ha2VDdXJyZW50KCkKIHsK
LSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKKyAgICBbZ2V0RUFHTENv
bnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om5pbF07CiB9CiAKIFdvcmtlckNvbnRleHQg
KkRpc3BsYXlFQUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KHN0ZDo6c3RyaW5nICppbmZvTG9nKQog
ewogICAgIEVBR0xDb250ZXh0T2JqIGNvbnRleHQgPSBudWxscHRyOwotICAgIGNvbnRleHQgICAg
ICAgICAgICAgICAgPSBbW0VBR0xDb250ZXh0IGFsbG9jXSBpbml0V2l0aEFQSTprRUFHTFJlbmRl
cmluZ0FQSU9wZW5HTEVTM107CisgICAgY29udGV4dCAgICAgICAgICAgICAgICA9IFtbZ2V0RUFH
TENvbnRleHRDbGFzcygpIGFsbG9jXSBpbml0V2l0aEFQSTprRUFHTFJlbmRlcmluZ0FQSU9wZW5H
TEVTM107CiAgICAgaWYgKCFjb250ZXh0KQogICAgIHsKICAgICAgICAgKmluZm9Mb2cgKz0gIkNv
dWxkIG5vdCBjcmVhdGUgdGhlIEVBR0wgY29udGV4dC4iOwpAQCAtMzc0LDQgKzM3Myw0IEBAIHZv
aWQgRGlzcGxheUVBR0w6OnBvcHVsYXRlRmVhdHVyZUxpc3QoYW5nbGU6OkZlYXR1cmVMaXN0ICpm
ZWF0dXJlcykKIH0KIH0KIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8vIChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5l
ZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9u
cy5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLjIwNjMyZjNkZDJmYmJlZTMzOWMzYzAyZWJjOWE2OTIzZGZkMjQ3MzQK
LS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgKQEAgLTAsMCArMSw0MyBAQAorLy8KKy8v
IENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ug
b2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRo
YXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gRUFHTEZ1
bmN0aW9ucy5oOiBFeHBvc2luZyB0aGUgc29mdC1saW5rZWQgRUFHTCBpbnRlcmZhY2UuCisKKyNp
Zm5kZWYgRUFHTF9GVU5DVElPTlNfSF8KKyNkZWZpbmUgRUFHTF9GVU5DVElPTlNfSF8KKworI2lu
Y2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkp
CisKKyNpbXBvcnQgPE9wZW5HTEVTL0VBR0wuaD4KKyNpbXBvcnQgPE9wZW5HTEVTL0VBR0xEcmF3
YWJsZS5oPgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTElPU3VyZmFjZS5oPgorCisjaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaCIKKworU09GVF9MSU5LX0ZS
QU1FV09SS19IRUFERVIoT3BlbkdMRVMpCisKK1NPRlRfTElOS19DTEFTU19IRUFERVIoRUFHTENv
bnRleHQpCisKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTENob29zZVBp
eGVsRm9ybWF0LCBDR0xFcnJvciwgKGNvbnN0IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlICphdHRy
aWJzLCBDR0xQaXhlbEZvcm1hdE9iaiAqcGl4LCBHTGludCAqbnBpeCksIChhdHRyaWJzLCBwaXgs
IG5waXgpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMQ3JlYXRlQ29u
dGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hh
cmUsIENHTENvbnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorLy9TT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3Is
IChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0
cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1
ZSkpCisvL1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXNjcmliZVJlbmRl
cmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBHTGludCByZW5kX251bSwg
Q0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAocmVuZCwgcmVuZF9udW0s
IHByb3AsIHZhbHVlKSkKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERl
c3Ryb3lDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisvL1NP
RlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENH
TEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCisvL1NPRlRfTElOS19GVU5D
VElPTl9IRUFERVIoT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENH
TFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVB
REVSKE9wZW5HTCwgQ0dMRXJyb3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9y
KSwgKGVycm9yKSkKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFF1ZXJ5
UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVy
SW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQp
KQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMUmVsZWFzZUNvbnRleHQs
IHZvaWQsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05f
SEVBREVSKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENH
TFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNj
cmVlbiksIChjdHgsIHNjcmVlbikpCisvL1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdM
LCBDR0xUZXhJbWFnZUlPU3VyZmFjZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBH
TGVudW0gdGFyZ2V0LCBHTGVudW0gaW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNp
emVpIGhlaWdodCwgR0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1
cmZhY2UsIEdMdWludCBwbGFuZSksIChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0
aCwgaGVpZ2h0LCBmb3JtYXQsIHR5cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQorLy9TT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xD
b250ZXh0T2JqIGN0eCksIChjdHgpKQorCisjZW5kaWYgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02
NCkpCisKKyNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25z
Lm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRUFHTEZ1bmN0aW9ucy5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40ZDczMzE5NGQ1OGZkMmExNTk0MmQ4M2Rj
YjgxYjZmOGMyMjk5ODQ5Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbQpAQCAtMCww
ICsxLDQwIEBACisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNE
LXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUu
CisvLworCisvLyBFQUdMRnVuY3Rpb25zLmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIEVB
R0wgaW50ZXJmYWNlLgorCisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmlu
ZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKworI2ltcG9ydCA8T3BlbkdMRVMvRUFHTC5oPgorI2ltcG9y
dCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+CisjaW1wb3J0IDxPcGVuR0xFUy9FQUdMSU9TdXJm
YWNlLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBs
ZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShPcGVuR0xFUykKKworU09GVF9MSU5L
X0NMQVNTKE9wZW5HTEVTLCBFQUdMQ29udGV4dCkKKworLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09V
UkNFKE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4
ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50
ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkpCisvL1NPRlRfTElOS19GVU5DVElPTl9TT1VS
Q0UoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2Jq
IHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hh
cmUsIGN0eCkpCisvL1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXNjcmli
ZVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4
X251bSwgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4
LCBwaXhfbnVtLCBhdHRyaWIsIHZhbHVlKSkKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShP
cGVuR0wsIENHTERlc3Ryb3lDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwg
KGN0eCkpCisvL1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UGl4
ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCisvL1NP
RlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xFcnJvclN0cmluZywgY29uc3QgY2hh
ciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3IpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09V
UkNFKE9wZW5HTCwgQ0dMUmVsZWFzZUNvbnRleHQsIHZvaWQsIChDR0xDb250ZXh0T2JqIGN0eCks
IChjdHgpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMU2V0Q3VycmVu
dENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKKy8vU09GVF9M
SU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9y
LCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCisvL1NP
RlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xUZXhJbWFnZUlPU3VyZmFjZTJELCBD
R0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGVudW0gdGFyZ2V0LCBHTGVudW0gaW50ZXJu
YWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNpemVpIGhlaWdodCwgR0xlbnVtIGZvcm1hdCwg
R0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1cmZhY2UsIEdMdWludCBwbGFuZSksIChjdHgs
IHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0aCwgaGVpZ2h0LCBmb3JtYXQsIHR5cGUsIGlv
U3VyZmFjZSwgcGxhbmUpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dM
VXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorLy8K
Ky8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIs
IENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xS
ZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJv
cCwgdmFsdWUpKQorLy9TT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJv
eVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5k
KSkKKy8vU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJ
bmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAq
cmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQorCisjZW5k
aWYgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZh
Y2VFQUdMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW0KaW5kZXggZDBiNWM5ODBiYWM5NDMwYzAx
ZWYxMjJjYTY0MWQxOGE0ZDYyNmJiZC4uYjA2NDlhZDY1OGRhOTk3YWNhMGU1MzMwNDY0ZjVkNDc5
OGU1NDQzOSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW0KKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3Vy
ZmFjZUVBR0wubW0KQEAgLTksNyArOSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5o
IgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAg
IGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5o
IgogCkBAIC00MjcsNCArNDI3LDQgQEAgSU9TdXJmYWNlTG9ja09wdGlvbnMgSU9TdXJmYWNlU3Vy
ZmFjZUVBR0w6OmdldElPU3VyZmFjZUxvY2tPcHRpb25zKCkgY29uc3QKIAogfSAgLy8gbmFtZXNw
YWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisjZW5kaWYg
IC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkg
JiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdM
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAKaW5kZXggMzZmMWMxNWI5NzVkZGNiMGEwOTdlYzk5
NjFmYjIzNGQ0YTdjNGYxOS4uY2IxNjZhNGFlZTczM2Y1NzRhOThlZTRlZWZjMmU1ZTE2N2EwZmQx
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wu
Y3BwCkBAIC05LDcgKzksNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lm
IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5oIgogCkBAIC0x
NDQsNCArMTQ0LDQgQEAgRnJhbWVidWZmZXJJbXBsICpQYnVmZmVyU3VyZmFjZUVBR0w6OmNyZWF0
ZURlZmF1bHRGcmFtZWJ1ZmZlcihjb25zdCBnbDo6Q29udGV4dAogCiB9ICAvLyBuYW1lc3BhY2Ug
cngKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKKyNlbmRpZiAgLy8g
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVy
ZXJFQUdMLmNwcAppbmRleCBhNDczOGIyNTY2YjNhMzlmYWZlNzhiNmZhNzYwMGUxYWY2YTYzNjlh
Li40ZDNjZmJiZTdjMzUxMDY2ZmY3ZDA4ODljMjdhMmM0NjBmZmRkOWI1IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5k
ZXJlckVBR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9lYWdsL1JlbmRlcmVyRUFHTC5jcHAKQEAgLTgsNyArOCw3IEBACiAKICNpbXBv
cnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1Mp
ICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
KSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdM
RV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
RGlzcGxheUVBR0wuaCIKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9S
ZW5kZXJlckVBR0wuaCIKQEAgLTMxLDQgKzMxLDQgQEAgV29ya2VyQ29udGV4dCAqUmVuZGVyZXJF
QUdMOjpjcmVhdGVXb3JrZXJDb250ZXh0KHN0ZDo6c3RyaW5nICppbmZvTG9nKQogCiB9ICAvLyBu
YW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKKyNl
bmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNl
RUFHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaAppbmRleCBjZDQ3N2NjM2NhZTI3OTk2MzQ4ZjUxYTky
MTFkOTJlNGJjZjViNzI2Li42OTNlOWNkNjA2YzlkMGZmYzZiMTZhZTEwYTdkNzI2YzcxZDc5MmVk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgKQEAg
LTIyLDcgKzIyLDcgQEAgc3RydWN0IF9fSU9TdXJmYWNlOwogdHlwZWRlZiBfX0lPU3VyZmFjZSAq
SU9TdXJmYWNlUmVmOwogCiAvLyBXZWJLaXQncyBidWlsZCBwcm9jZXNzIHJlcXVpcmVzIHRoYXQg
ZXZlcnkgT2JqZWN0aXZlLUMgY2xhc3MgbmFtZSBoYXMgdGhlIHByZWZpeCAiV2ViIi4KLUBjbGFz
cyBXZWJTd2FwTGF5ZXI7CitAY2xhc3MgV2ViU3dhcExheWVyRUFHTDsKIAogbmFtZXNwYWNlIHJ4
CiB7CkBAIC05MSw3ICs5MSw3IEBAIGNsYXNzIFdpbmRvd1N1cmZhY2VFQUdMIDogcHVibGljIFN1
cmZhY2VHTAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNv
bnN0IGdsOjpGcmFtZWJ1ZmZlclN0YXRlICZzdGF0ZSkgb3ZlcnJpZGU7CiAKICAgcHJpdmF0ZToK
LSAgICBXZWJTd2FwTGF5ZXIgKm1Td2FwTGF5ZXI7CisgICAgV2ViU3dhcExheWVyRUFHTCAqbVN3
YXBMYXllcjsKICAgICBTaGFyZWRTd2FwU3RhdGUgbVN3YXBTdGF0ZTsKICAgICB1aW50NjRfdCBt
Q3VycmVudFN3YXBJZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0gYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJm
YWNlRUFHTC5tbQppbmRleCAzOGQyNTNlYmRlYjNiM2NjMTYzMjM3NDM0OTU0N2IwNTUzOWZlZDNj
Li40OWFjMDY3MWUyMzI1YmIzNGMwOTA2YjQ2YTQxMTYwMmZkMDBjZmYxIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5k
b3dTdXJmYWNlRUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAK
IAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZp
bmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgiCiAKQEAgLTE5LDEyICsxOSwyMiBAQAogIyAgICBp
bXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmgiCiAjICAgIGltcG9y
dCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgogCi0jICAgIGltcG9y
dCA8T3BlbkdMRVMvRUFHTC5oPgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5o
PgogCi0vLyBUT0RPKGFuZ2xlYnVnLmNvbS80Mjc1KTogSXQncyBub3QgY2xlYXIgd2h5IHRoaXMg
bmVlZHMgdG8gYmUgYW4gRUFHTExheWVyLgorIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIgogCi1AaW50ZXJmYWNlIFdlYlN3YXBMYXllciA6IENB
RUFHTExheWVyIHsKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKworQGludGVyZmFjZSBDQUVBR0xMYXllciA6IENBTGF5
ZXIKK0BlbmQKKworQGludGVyZmFjZSBFQUdMQ29udGV4dCAoKQorLSAoQk9PTClwcmVzZW50UmVu
ZGVyYnVmZmVyOihOU1VJbnRlZ2VyKXRhcmdldDsKK0BlbmQKKworI2VuZGlmCisKK0BpbnRlcmZh
Y2UgV2ViU3dhcExheWVyRUFHTCA6IENBRUFHTExheWVyIHsKICAgICBFQUdMQ29udGV4dE9iaiBt
RGlzcGxheUNvbnRleHQ7CiAKICAgICBib29sIGluaXRpYWxpemVkOwpAQCAtMzgsNyArNDgsNyBA
QAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczooY29uc3Qgcng6OkZ1bmN0aW9uc0dMICopZnVu
Y3Rpb25zOwogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV2ViU3dhcExheWVyCitAaW1wbGVtZW50
YXRpb24gV2ViU3dhcExheWVyRUFHTAogLSAoaWQpaW5pdFdpdGhTaGFyZWRTdGF0ZToocng6OlNo
YXJlZFN3YXBTdGF0ZSAqKXN3YXBTdGF0ZQogICAgICAgICAgICAgICB3aXRoQ29udGV4dDooRUFH
TENvbnRleHRPYmopZGlzcGxheUNvbnRleHQKICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6KGNv
bnN0IHJ4OjpGdW5jdGlvbnNHTCAqKWZ1bmN0aW9ucwpAQCAtNjksNyArNzksNyBAQAogICAgIH0K
ICAgICBwdGhyZWFkX211dGV4X3VubG9jaygmbVN3YXBTdGF0ZS0+bXV0ZXgpOwogCi0gICAgW0VB
R0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om1EaXNwbGF5Q29udGV4dF07CisgICAgW2dldEVB
R0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDptRGlzcGxheUNvbnRleHRdOwogCiAg
ICAgaWYgKCFpbml0aWFsaXplZCkKICAgICB7CkBAIC0xMDUsNyArMTE1LDcgQEAKIAogICAgIG1G
dW5jdGlvbnMtPmJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVSQlVGRkVSLCB0ZXh0dXJlLnRleHR1
cmUpOwogICAgIFttRGlzcGxheUNvbnRleHQgcHJlc2VudFJlbmRlcmJ1ZmZlcjpHTF9SRU5ERVJC
VUZGRVJdOwotICAgIFtFQUdMQ29udGV4dCBzZXRDdXJyZW50Q29udGV4dDpuaWxdOworICAgIFtn
ZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKIH0KIEBlbmQKIApA
QCAtMTc0LDkgKzE4NCw5IEBAIGVnbDo6RXJyb3IgV2luZG93U3VyZmFjZUVBR0w6OmluaXRpYWxp
emUoY29uc3QgZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAgIG1Td2FwU3RhdGUubGFzdFJlbmRl
cmVkICAgPSAmbVN3YXBTdGF0ZS50ZXh0dXJlc1sxXTsKICAgICBtU3dhcFN0YXRlLmJlaW5nUHJl
c2VudGVkID0gJm1Td2FwU3RhdGUudGV4dHVyZXNbMl07CiAKLSAgICBtU3dhcExheWVyID0gW1tX
ZWJTd2FwTGF5ZXIgYWxsb2NdIGluaXRXaXRoU2hhcmVkU3RhdGU6Jm1Td2FwU3RhdGUKLSAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aENvbnRleHQ6bUNv
bnRleHQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhG
dW5jdGlvbnM6bUZ1bmN0aW9uc107CisgICAgbVN3YXBMYXllciA9IFtbV2ViU3dhcExheWVyRUFH
TCBhbGxvY10gaW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBTdGF0ZQorICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRnVu
Y3Rpb25zOm1GdW5jdGlvbnNdOwogICAgIFttTGF5ZXIgYWRkU3VibGF5ZXI6bVN3YXBMYXllcl07
CiAgICAgW21Td2FwTGF5ZXIgc2V0Q29udGVudHNTY2FsZTpbbUxheWVyIGNvbnRlbnRzU2NhbGVd
XTsKIApAQCAtMzA2LDQgKzMxNiw0IEBAIEZyYW1lYnVmZmVySW1wbCAqV2luZG93U3VyZmFjZUVB
R0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcihjb25zdCBnbDo6Q29udGV4dCAqCiAKIH0gIC8v
IG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQor
I2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxz
LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9y
ZW5kZXJlcmdsX3V0aWxzLmNwcAppbmRleCA0ZWExMDZhY2U4ODRlMzVlYjFkNDIyNGNlZWY5MDhh
MTc2MWNlMzAxLi4wMTEzZmFmMDg0YzBkZTBjZTY4OTI0ZTQzMWI2Mjk2YTk1NDM5ZGU2IDEwMDY0
NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
cmVuZGVyZXJnbF91dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwCkBAIC0xMzQ0LDEyICsxMzQ0
LDE5IEBAIHZvaWQgR2VuZXJhdGVDYXBzKGNvbnN0IEZ1bmN0aW9uc0dMICpmdW5jdGlvbnMsCiAg
ICAgICAgIGZ1bmN0aW9ucy0+aGFzR0xFU0V4dGVuc2lvbigiR0xfRVhUX2NvbXByZXNzZWRfRVRD
MV9SR0I4X3N1Yl90ZXh0dXJlIik7CiAKICNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09T
KSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQotICAgIFZlbmRvcklEIHZl
bmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7Ci0gICAgaWYgKChJc0FNRCh2ZW5kb3IpIHx8
IElzSW50ZWwodmVuZG9yKSkgJiYgKm1heFN1cHBvcnRlZEVTVmVyc2lvbiA+PSBnbDo6VmVyc2lv
bigzLCAwKSkKKyAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZvOworICAgIGlmIChhbmdsZTo6R2V0
U3lzdGVtSW5mbygmaW5mbykpCiAgICAgewotICAgICAgICAvLyBBcHBsZSBJbnRlbC9BTUQgZHJp
dmVycyBkbyBub3QgY29ycmVjdGx5IHVzZSB0aGUgVEVYVFVSRV9TUkdCX0RFQ09ERSBwcm9wZXJ0
eSBvZiBzYW1wbGVyCi0gICAgICAgIC8vIHN0YXRlcy4gIERpc2FibGUgdGhpcyBleHRlbnNpb24g
d2hlbiB3ZSB3b3VsZCBhZHZlcnRpc2UgYW55IEVTIHZlcnNpb24gdGhhdCBoYXMgc2FtcGxlcnMu
Ci0gICAgICAgIGV4dGVuc2lvbnMtPnRleHR1cmVTUkdCRGVjb2RlID0gZmFsc2U7CisgICAgICAg
IGlmICghaW5mby5pc0lPU09uTWFjKQorICAgICAgICB7CisgICAgICAgICAgICBWZW5kb3JJRCB2
ZW5kb3IgPSBHZXRWZW5kb3JJRChmdW5jdGlvbnMpOworICAgICAgICAgICAgaWYgKChJc0FNRCh2
ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1heFN1cHBvcnRlZEVTVmVyc2lvbiA+PSBn
bDo6VmVyc2lvbigzLCAwKSkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAvLyBBcHBs
ZSBJbnRlbC9BTUQgZHJpdmVycyBkbyBub3QgY29ycmVjdGx5IHVzZSB0aGUgVEVYVFVSRV9TUkdC
X0RFQ09ERSBwcm9wZXJ0eSBvZiBzYW1wbGVyCisgICAgICAgICAgICAgICAgLy8gc3RhdGVzLiAg
RGlzYWJsZSB0aGlzIGV4dGVuc2lvbiB3aGVuIHdlIHdvdWxkIGFkdmVydGlzZSBhbnkgRVMgdmVy
c2lvbiB0aGF0IGhhcyBzYW1wbGVycy4KKyAgICAgICAgICAgICAgICBleHRlbnNpb25zLT50ZXh0
dXJlU1JHQkRlY29kZSA9IGZhbHNlOworICAgICAgICAgICAgfQorICAgICAgICB9CiAgICAgfQog
I2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNv
cmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29u
ZmlnCmluZGV4IGI4MTA5ZTYzNDY2ZGFhNmE0N2MxNDVhNzExYzE4OWEyOTAzMGIxOTUuLjU3MWU4
ZWIwNzA2MGMxOTdjYzNlOTU0MTFiYmE0Mzc1N2U4NTFiNTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcKKysrIGIvU291cmNlL1dlYkNv
cmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZwpAQCAtMTA1LDE2ICsxMDUsNiBAQCBX
S19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTX2NvY29hdG91Y2ggPSAtZnJhbWV3b3JrIE1v
YmlsZUNvcmVTZXJ2aWNlczsKIFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MgPSAkKFdLX01PQklM
RV9HRVNUQUxUX0xERkxBR1NfJChXS19DT0NPQV9UT1VDSCkpOwogV0tfTU9CSUxFX0dFU1RBTFRf
TERGTEFHU19jb2NvYXRvdWNoID0gLWxNb2JpbGVHZXN0YWx0OwogCi1XS19PUEVOR0xfTERGTEFH
UyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1XS19PUEVOR0xf
TERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7Ci1XS19PUEVOR0xfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE9wZW5HTEVTOwotV0tfT1BFTkdMX0xERkxB
R1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xE
RkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRv
cik7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2b3MgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lw
aG9uZW9zKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKFdLX09QRU5H
TF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19tYWNjYXRhbHlz
dCA9IC1mcmFtZXdvcmsgT3BlbkdMOwotV0tfT1BFTkdMX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1l
d29yayBPcGVuR0w7Ci0KIFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MgPSAkKFdLX1NZ
U1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7CiBXS19TWVNU
RU1fQ09ORklHVVJBVElPTl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgU3lzdGVtQ29uZmln
dXJhdGlvbjsKIApAQCAtMTI0LDcgKzExNCw3IEBAIFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1Mg
PSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfJChXS19IQVZFX1VSTF9GT1JNQVRUSU5HCiBX
S19VUkxfRk9STUFUVElOR19MREZMQUdTX1lFUyA9IC1mcmFtZXdvcmsgVVJMRm9ybWF0dGluZzsK
IAogLy8gRklYTUU6IFJlZHVjZSB0aGUgbnVtYmVyIG9mIGFsbG93YWJsZV9jbGllbnRzIDxyZGFy
Oi8vcHJvYmxlbS8zMTgyMzk2OT4KLU9USEVSX0xERkxBR1MgPSAkKGluaGVyaXRlZCkgJChXS19S
RUxPQ0FUQUJMRV9GUkFNRVdPUktfTERGTEFHUykgLWxzcWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1h
bGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAtYWxsb3dhYmxlX2NsaWVudCBXZWJL
aXRMZWdhY3kgLWZvcmNlX2xvYWQgJChCVUlMVF9QUk9EVUNUU19ESVIpL2xpYlBBTC5hIC1mcmFt
ZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBo
aWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsg
SU9TdXJmYWNlIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIE1ldGFsICQoT1RIRVJfTERG
TEFHU19QTEFURk9STV8kKFdLX0NPQ09BX1RPVUNIKSkgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JN
XyQoV0tfUExBVEZPUk1fTkFNRSkpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVBQU1VQUE9S
VF9MREZMQUdTKSAkKFdLX0FVRElPX1VOSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykg
JChXS19DT1JFX1VJX0xERkxBR1MpICQoV0tfREFUQV9ERVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAk
KFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9S
X0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklD
RVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX09QRU5HTF9MREZM
QUdTKSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9JTUFHRV9M
REZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpOworT1RIRVJfTERGTEFHUyA9ICQo
aW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1FV09SS19MREZMQUdTKSAtbHNxbGl0ZTMg
LWxvYmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxv
d2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2VfbG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJ
UikvbGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZy
YW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5k
YXRpb24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsg
TWV0YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVS
X0xERkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9OQU1FKSkgJChXS19BUFBLSVRfTERGTEFH
UykgJChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tfQVVESU9fVU5JVF9MREZMQUdTKSAkKFdL
X0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERGTEFHUykgJChXS19EQVRBX0RFVEVDVE9S
U19DT1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19JT1NV
UkZBQ0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19N
T0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1Mp
ICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHUykgJChXS19DT1JFX0lNQUdFX0xERkxB
R1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7CiAKIE9USEVSX0xERkxBR1NfUExBVEZP
Uk1fY29jb2F0b3VjaCA9IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdCAtYWxsb3dhYmxlX2NsaWVu
dCBpVHVuZXNVIC1hbGxvd2FibGVfY2xpZW50IENhc2FibGFuY2EgLWFsbG93YWJsZV9jbGllbnQg
UmVtb3RlIC1hbGxvd2FibGVfY2xpZW50IFRWQm9va3MgLWFsbG93YWJsZV9jbGllbnQgRHVtcFJl
bmRlclRyZWUgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0VGVzdFJ1bm5lciAtYWxsb3dhYmxlX2Ns
aWVudCBUZXN0V2ViS2l0QVBJOwogT1RIRVJfTERGTEFHU19QTEFURk9STV9tYWNvc3ggPSAtc3Vi
X2xpYnJhcnkgbGlib2JqYyAtdW1icmVsbGEgV2ViS2l0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUv
UEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDYwNWY2MDczZWU5Mzc1YzFm
ZDAwMzIzYzdlNmFmYWVlNzVkMzk3NTMuLjg3MjkwZWZmYmMzZTI4MGMzYmViOTE2OTA3NTcyYmEx
MGFjNmZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9q
ZWN0LnBieHByb2oKQEAgLTExOSw2ICsxMTksOCBAQAogCQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5
RDIgLyogVUlLaXRTb2Z0TGluay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAq
LzsgfTsKIAkJMkUxMzQyQ0QyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsubW0gaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFB
MTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAqLzsgfTsKIAkJMzEzMDhCMTQyMEEyMTcw
NTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzA4QjEzMjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1Q
cmV2aWV3U1BJLmggKi87IH07CisJCTMxNjQ3RkIwMjUxNzU5REQwMDEwRjhGQiAvKiBPcGVuR0xT
b2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE2NDdGQUUyNTE3NTlEQjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0g
Ki87IH07CisJCTMxNjQ3RkIxMjUxNzU5RUYwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29h
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZB
RjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovOyB9OwogCQk0MTZF
OTk1MzIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwIGluIFNvdXJj
ZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RTk5NTEyM0RBRTZCRDAw
RTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5rLmNwcCAqLzsgfTsKIAkJNDE2RTk5NTQyM0RB
RTZCRTAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZFOTk1MjIzREFFNkJFMDBFODcxQ0IgLyog
QXVkaW9Ub29sYm94U29mdExpbmsuaCAqLzsgfTsKIAkJNDFFMUYzNDQyNDhBNkEwMDAwMjJENURF
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkU5OTU1MjNEQUVGRjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xi
b3hTb2Z0TGluay5jcHAgKi87IH07CkBAIC0zMDUsNiArMzA3LDggQEAKIAkJMkUxMzQyQ0EyMTVB
QTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5o
OyBwYXRoID0gVUlLaXRTb2Z0TGluay5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQky
RTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFVJS2l0U29mdExpbmsubW07IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTMxMzA4QjEzMjBBMjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2
aWV3U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN5c3RlbVByZXZpZXdTUEkuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQUUyNTE3NTlEQjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBPcGVuR0xTb2Z0TGlua0NvY29hLm1t
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBPcGVuR0xTb2Z0TGlua0Nv
Y29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTM3MTE5QTc4MjBDQ0I1RkYwMDJD
NkRDOSAvKiBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWcgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LnhjY29uZmlnOyBwYXRoID0g
V2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmlnOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTZFOTk1MTIzREFFNkJEMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQXVkaW9Ub29sYm94U29m
dExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTZFOTk1MjIzREFFNkJF
MDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKQEAgLTY1NCw2ICs2NTgsOCBAQAogCQkJCTFDMDIyRUZDMjJDRkU4RTAwMDZERjAxQiAv
KiBHdW56aXAuY3BwICovLAogCQkJCUNEQUNCMzVFMjM4NzNFNDgwMDE4RDdDRSAvKiBNZWRpYVRv
b2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJQ0RBQ0IzNUYyMzg3M0U0ODAwMThEN0NFIC8qIE1l
ZGlhVG9vbGJveFNvZnRMaW5rLmggKi8sCisJCQkJMzE2NDdGQUYyNTE3NTlEQzAwMTBGOEZCIC8q
IE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJCQlBMUY2M0M5RDIxQTREQkY3MDA2RkI0
M0IgLyogUGFzc0tpdFNvZnRMaW5rLmggKi8sCiAJCQkJQTFGNjNDOUUyMUE0REJGNzAwNkZCNDNC
IC8qIFBhc3NLaXRTb2Z0TGluay5tbSAqLywKIAkJCQkwNzYxMURCNDI0M0ZBNUJFMDBEODA3MDQg
LyogVXNhZ2VUcmFja2luZ1NvZnRMaW5rLmggKi8sCkBAIC04NTksNiArODY1LDcgQEAKIAkJCQkw
Qzc3ODU5RDFGNDUxMzBGMDBGNEVCQjYgLyogTlNXaW5kb3dTUEkuaCBpbiBIZWFkZXJzICovLAog
CQkJCTU3MEFCOEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBOU1hQQ0Nvbm5lY3Rpb25TUEkuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBDNUFGOTFGMUY0M0E0QzcwMDJFQUMwMiAvKiBPcGVuR0xFU1NQSS5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjEyNTE3NTlFRjAwMTBGOEZCIC8qIE9wZW5HTFNv
ZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUExNjlCMDQxMjQ4RUYwNTIwMEVFOEI3
QiAvKiBQYXNzS2l0SW5zdGFsbG1lbnRzU1BJLmggaW4gSGVhZGVycyAqLywKIAkJCQlBMUY2M0M5
RjIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLywKIAkJ
CQkwQzJEQTE1NTFGM0JFQjQ5MDBEQkMzMTcgLyogUGFzc0tpdFNQSS5oIGluIEhlYWRlcnMgKi8s
CkBAIC05OTUsNiArMTAwMiw3IEBACiAJCQkJNUM3Qzc4NzQyM0FDM0U3NzAwNjVGNDdFIC8qIE1h
bmFnZWRDb25maWd1cmF0aW9uU29mdExpbmsubW0gaW4gU291cmNlcyAqLywKIAkJCQkwQ0Y5OUNB
NDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZGb3VuZGF0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdDRSAvKiBNZWRpYVRvb2xib3hTb2Z0TGlu
ay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZCMDI1MTc1OUREMDAxMEY4RkIgLyogT3Bl
bkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICovLAogCQkJCUExRjYzQ0EwMjFBNERCRjcw
MDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLywKIAkJCQlBMTE3NUI0
RjFGNkIzMzczMDBDNEI5RjAgLyogUG9wdXBNZW51Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNDQ1
MEZDOUYyMUY1RjYwMjAwNERGQTU2IC8qIFF1aWNrTG9va1NvZnRMaW5rLm1tIGluIFNvdXJjZXMg
Ki8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtl
IGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9ybU1hYy5jbWFrZQppbmRleCA2NTkxZDc5
OWVhNWNhOTQzOGEzOWI5ZDM4ODg2NDY2ZjAzNTY1MjUzLi5jZGYwMWIzNjZkZDk4OTZlNTdiOTll
ZjM3MjRkMzJlYzM0NjEyMzc5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1Bs
YXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMu
Y21ha2UKQEAgLTYsNiArNiw3IEBAIGxpc3QoQVBQRU5EIFBBTF9QVUJMSUNfSEVBREVSUwogICAg
IGNvY29hL0FwcFNTT1NvZnRMaW5rLmgKICAgICBjb2NvYS9BVkZvdW5kYXRpb25Tb2Z0TGluay5o
CiAgICAgY29jb2EvTWVkaWFUb29sYm94U29mdExpbmsuaAorICAgIGNvY29hL09wZW5HTFNvZnRM
aW5rQ29jb2EuaAogICAgIGNvY29hL1Bhc3NLaXRTb2Z0TGluay5oCiAKICAgICBtYWMvTG9va3Vw
U29mdExpbmsuaApAQCAtMTIzLDYgKzEyNCw3IEBAIGxpc3QoQVBQRU5EIFBBTF9TT1VSQ0VTCiAg
ICAgY29jb2EvRmlsZVNpemVGb3JtYXR0ZXJDb2NvYS5tbQogICAgIGNvY29hL0d1bnppcC5jcHAK
ICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5jcHAKKyAgICBjb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLm1tCiAgICAgY29jb2EvUGFzc0tpdFNvZnRMaW5rLm1tCiAKICAgICBjcnlwdG8v
Y29tbW9uY3J5cHRvL0NyeXB0b0RpZ2VzdENvbW1vbkNyeXB0by5jcHAKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5oIGIvU291cmNl
L1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLmgKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
M2RlOWQzNzZkN2I1YmNjYTM5MDNjZmExNjYxMWRkNDc3MGNhNTVjNQotLS0gL2Rldi9udWxsCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5oCkBA
IC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVE
IFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJ
RUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElD
VUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExF
IElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElS
RUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFM
IERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQg
T0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisg
KiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBP
TiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklD
VCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJ
U0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FS
RSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAq
LworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCisjaWYg
UExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKKworI2luY2x1ZGUgPE9wZW5H
TC9PcGVuR0wuaD4KKworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfSEVBREVSKFBBTCwgT3BlbkdM
KQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMQ2hvb3Nl
UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0
dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBp
eCwgbnBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dM
Q3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRl
eHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxG
b3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBD
R0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9u
dW0sIGF0dHJpYiwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBP
cGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2Jq
IHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2
YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc3Ryb3lDb250ZXh0LCBDR0xFcnJvciwgKENH
TENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQ
QUwsIE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJl
ckluZm9PYmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBB
TCwgT3BlbkdMLCBDR0xHZXRQYXJhbWV0ZXIsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgs
IENHTENvbnRleHRQYXJhbWV0ZXIgcG5hbWUsIEdMaW50ICpwYXJhbXMpLCAoY3R4LCBwbmFtZSwg
cGFyYW1zKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xR
dWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5k
ZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5y
ZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xSZWxl
YXNlUGl4ZWxGb3JtYXQsIHZvaWQsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSkKK1NP
RlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2Ny
ZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBz
Y3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTFVw
ZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKKworI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRM
aW5rQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5r
Q29jb2EubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uZTA2ZWUyZjA1ZjkxZjJkNTljZjBiZGI2ZTdhYWUyZWZlMmM1
ZmQzYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3Bl
bkdMU29mdExpbmtDb2NvYS5tbQpAQCAtMCwwICsxLDQ4IEBACisvKgorICogQ29weXJpZ2h0IChD
KSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1
dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQK
KyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dp
bmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3Vy
Y2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAy
LiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3Zl
IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
IGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Ig
b3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBU
SElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxF
IEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1Q
TEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRF
RCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExP
U1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9O
KSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVU
SEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5H
IE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBV
U0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJ
VFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisjaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKKworI2luY2x1ZGUgPE9wZW5HTC9P
cGVuR0wuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtpbmcuaD4KKworU09GVF9MSU5LX0ZSQU1F
V09SS19GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwgT3BlbkdMLCBQQUxfRVhQT1JUKQorCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dM
Q2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1
dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJp
YnMsIHBpeCwgbnBpeCksIFBBTF9FWFBPUlQpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJD
RV9XSVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMUmVsZWFzZVBpeGVsRm9ybWF0LCB2b2lkLCAo
Q0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCksIFBBTF9FWFBPUlQpCisKK1NPRlRfTElOS19G
VU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJv
ciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4
dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NP
VVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQ
aXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRl
IGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5k
ZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0s
IENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVt
LCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5H
TCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4
KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95
UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTEdldFBhcmFt
ZXRlciwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBw
bmFtZSwgR0xpbnQgKnBhcmFtcyksIChjdHgsIHBuYW1lLCBwYXJhbXMpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xF
cnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xp
bnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNU
SU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9y
LCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwg
Q0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorCisjZW5kaWYKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1Nv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBkNjJk
Nzg5MmRjNTAyMTQ1MGUxOTk5NDIxMmYyYjUwNGRhN2M0ZTNkLi4yYTg5NDQ2MDdhZWY4Y2QxNDlj
NDBkMjc0NzBjNmIyYTUxNWQ0ZWM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3Jl
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05MDgsNiArOTA4LDcgQEAKIAkJMzE0ODc3RTYx
RkFBQjAyNTAwQzA1NzU5IC8qIEpTT2Zmc2NyZWVuQ2FudmFzLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTQ4NzdFNDFGQUFCMDIyMDBDMDU3NTkgLyog
SlNPZmZzY3JlZW5DYW52YXMuaCAqLzsgfTsKIAkJMzE0QkUzQTExQjMwRjZCNzAwMTQxOTgyIC8q
IENTU05hbWVkSW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMzE0QkUzQTAxQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1
ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTMx
NEJFM0E3MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNEJFM0E1MUIzMTAz
RkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCAqLzsgfTsKKwkJMzE2NDdG
QUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkE4MjUxNjE2QkQwMDEwRjhG
QiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzE2RENCMjAxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2Zm
ZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZp
bGVSZWYgPSAzMTZEQ0IxQTFFNzhDQTU1MDAxQjVGODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlv
bnMuaCAqLzsgfTsKIAkJMzE2RENCMjIxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNj
ZWl2ZXJEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxNkRDQjFDMUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGly
ZWN0aW9uLmggKi87IH07CiAJCTMxNkRDQjRDMUU3OTEwQTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUNv
bm5lY3Rpb25TdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE2RENCNDYxRTc5MTBBNjAwMUI1Rjg3IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRl
LmggKi87IH07CkBAIC03MTgyLDYgKzcxODMsOCBAQAogCQkzMTRCRTNBNDFCMzEwM0ZCMDAxNDE5
ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Y3BwLmNwcDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5jcHA7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTMxNEJFM0E1MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdl
R2VuZXJhdGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTmFtZWRJ
bWFnZUdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNTU3
NENDMjE4RjY2RDAwMEQ4OEY2NiAvKiBQb2ludGVyRXZlbnRJT1MuY3BwICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2ZW50SU9TLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gT3BlbkdMU29mdExpbmtDb2NvYS5oOyBwYXRoID0g
Li4vLi4vLi4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0
TGlua0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1lID0gT3BlbkdMU29mdExpbmtDb2NvYS5t
bTsgcGF0aCA9IC4uLy4uLy4uL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbTsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTIxRTc4QkU0MzAwMUI1Rjg3IC8q
IFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBwYXRoID0gUlRDT2Zm
ZXJBbnN3ZXJPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENC
MTcxRTc4QzMzMDAwMUI1Rjg3IC8qIFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGgg
PSBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTMxNkRDQjE5MUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9u
cy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBKU1JUQ09mZmVyQW5z
d2VyT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0yNjI4Myw2ICsy
NjI4Niw4IEBACiAJCQkJQUQ5RkY2RTAxOTA4MzkxRDAwM0I2MUUwIC8qIElPU3VyZmFjZVBvb2xD
b2NvYS5tbSAqLywKIAkJCQlDREM0OEFDODIxNDlDRjJBMDAyNEZENTkgLyogTWVkaWFFbmdpbmVD
b25maWd1cmF0aW9uRmFjdG9yeUNvY29hLmNwcCAqLywKIAkJCQlDREM0OEFDNzIxNDlDRjJBMDAy
NEZENTkgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeUNvY29hLmggKi8sCisJCQkJ
MzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJ
CQkzMTY0N0ZBOTI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLywK
IAkJCQlDREVCM0Q3MjI0QzQxQTZFMDAxRkJFRUYgLyogU291cmNlQnVmZmVyUGFyc2VyLmNwcCAq
LywKIAkJCQlDREVCM0Q3MzI0QzQxQTZFMDAxRkJFRUYgLyogU291cmNlQnVmZmVyUGFyc2VyLmgg
Ki8sCiAJCQkJQ0Q4RjY2NzAyNEMwRjIwODAwMEM0MjFDIC8qIFNvdXJjZUJ1ZmZlclBhcnNlcldl
Yk0uY3BwICovLApAQCAtMzMwNzgsNiArMzMwODMsNyBAQAogCQkJCUZEQTNFOTVDMTM0QTQ5RUYw
MDhENEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlvbk5vZGUuaCBpbiBIZWFkZXJzICovLAog
CQkJCTMxNDg3N0UzMUZBQThGRTkwMEMwNTc1OSAvKiBPZmZzY3JlZW5DYW52YXMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxNDBDNTIwMUZERjE1MUEwMEQyQTg3MyAvKiBPZmZzY3JlZW5DYW52YXNS
ZW5kZXJpbmdDb250ZXh0MkQuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkFCMjUxNjE4RTIw
MDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkQz
REE2NTBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVDRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QjJEM0RBNjUwRDAwNkNENjAwRUY2RjI3IC8qIE9wZW5UeXBlTWF0aERhdGEuaCBpbiBIZWFkZXJz
ICovLAogCQkJCUIyRDNFQTY1MEQwMDZDRDYwMEVGNkYyOCAvKiBPcGVuVHlwZVR5cGVzLmggaW4g
SGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0NvbnRleHRHTE9wZW5HTENvY29hLm1tCmlu
ZGV4IGE2MjZhMTUyZjhlMjM5NDQwYmU5MGQ1YThhN2Y1OTQzMzc0ODk2MzMuLmZkYTJhMWQ4ZDE0
NmE1ZDY3ZTZiMzNkYzBjZGUxYzVlZjVkZmI2MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW0K
KysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250
ZXh0R0xPcGVuR0xDb2NvYS5tbQpAQCAtMzksNiArMzksNyBAQAogI2ltcG9ydCAiSG9zdFdpbmRv
dy5oIgogI2ltcG9ydCAiSW1hZ2VCdWZmZXIuaCIKICNpbXBvcnQgIkxvZ2dpbmcuaCIKKyNpbXBv
cnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBvcnQgIldlYkdMTGF5ZXIuaCIKICNpbXBv
cnQgIldlYkdMT2JqZWN0LmgiCiAjaW1wb3J0ICJXZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgi
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5N
YWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0K
aW5kZXggYTFiOTRjZDFhOTFkOTk1ODZmNTZkNmZkZjUzMmZjNDFjZmRkMzI1Yi4uMjUzZTNmMjQ0
ZGE5ZGE4NDc5M2VkNWI1Yjg2NDQwYTI1YjA5M2NjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQpAQCAtMzEsNiArMzEsNyBAQAogI2lt
cG9ydCAiRmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFtZVZpZXcuaCIKICNpbXBvcnQgIkhvc3RX
aW5kb3cuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBvcnQgIlNjcmVl
blByb3BlcnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3luYy9Db2xvclN5bmMuaD4KICNpbXBvcnQg
PHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KaW5kZXggZGJmMzFkOGFhMzkxZmI1ZDQ1ZjBhNmY1NGZl
ZjMxOWE1NjVlYmFkNC4uNmMxZDI2ZTQ3OWEwMjgxN2JkZDViMTg2ZmFhMmFhNzZhNWVjYmRiYyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1t
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5tbQpAQCAt
MjksNyArMjksNyBAQAogI2lmIFBMQVRGT1JNKE1BQykKIAogI2ltcG9ydCAiQmxvY2tsaXN0VXBk
YXRlci5oIgotI2ltcG9ydCA8T3BlbkdML09wZW5HTC5oPgorI2ltcG9ydCAiT3BlbkdMU29mdExp
bmtDb2NvYS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRlV0aWxpdGllc1NQSS5oPgogCiBuYW1l
c3BhY2UgV2ViQ29yZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25z
L1dlYktpdC54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0Lnhj
Y29uZmlnCmluZGV4IGUxODRjZjZjOTk0N2FiYTVjZjdkNWQyYjA2M2NhNDVjZmM5NDJmYzEuLjVm
NzVlY2JiMTQ5YzU1MWE0NTExYTkwNmZkN2Y0M2MxN2U5ODg5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJL
aXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCkBAIC04OCwxNiArODgsNiBAQCBXS19N
T0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiBXS19M
SUJTQU5EQk9YX0xERkxBR1MgPSAkKFdLX0xJQlNBTkRCT1hfTERGTEFHU18kKFdLX1BMQVRGT1JN
X05BTUUpKTsKIFdLX0xJQlNBTkRCT1hfTERGTEFHU19tYWNvc3ggPSAtbHNhbmRib3g7CiAKLVdL
X09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUp
KTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUzsKLVdL
X09QRU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBPcGVuR0w7Ci1XS19PUEVO
R0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE9wZW5HTEVTOwotV0tfT1BF
TkdMX0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tf
T1BFTkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9u
ZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2b3MgPSAkKFdLX09QRU5HTF9M
REZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAk
KFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19t
YWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tfUERGS0lUX0xERkxBR1MgPSAkKFdLX1BE
RktJVF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwogV0tfUERGS0lUX0xERkxBR1NfaXBo
b25lb3MgPSAtZnJhbWV3b3JrIFBERktpdDsKIFdLX1BERktJVF9MREZMQUdTX2lwaG9uZW9zW3Nk
az1pcGhvbmUqMTEuKl0gPSA7CkBAIC0xMzMsNyArMTIzLDcgQEAgV0tfQVVUSEtJVF9MREZMQUdT
X0lPU19TSU5DRV8xMyA9IC1mcmFtZXdvcmsgQXV0aEtpdDsKIFdLX0FVVEhLSVRfTERGTEFHU19t
YWNvc3ggPSAkKFdLX0FVVEhLSVRfTERGTEFHUyQoV0tfTUFDT1NfMTAxNSkpOwogV0tfQVVUSEtJ
VF9MREZMQUdTX01BQ09TX1NJTkNFXzEwMTUgPSAtZnJhbWV3b3JrIEF1dGhLaXQ7CiAKLUZSQU1F
V09SS19BTkRfTElCUkFSWV9MREZMQUdTID0gLWxvYmpjIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1m
cmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gLWZyYW1ld29yayBD
b3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZy
YW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZy
YW1ld29yayBXZWJLaXRMZWdhY3kgLWxuZXR3b3JrICQoV0tfQUNDRVNTSUJJTElUWV9MREZMQUdT
KSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FTU0VSVElPTl9TRVJWSUNFU19MREZMQUdTKSAk
KFdLX1JVTk5JTkdCT0FSRF9TRVJWSUNFU19MREZMQUdTKSAkKFdLX0FVVEhLSVRfTERGTEFHUykg
JChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1BSRURJQ1RJT05fTERGTEFHUykgJChXS19D
T1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChX
S19MSUJTQU5EQk9YX0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxF
X0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdL
X09QRU5HTF9MREZMQUdTKSAkKFdLX1BERktJVF9MREZMQUdTKSAkKFdLX1NBRkVfQlJPV1NJTkdf
TERGTEFHUykgJChXS19TRUNVUklUWV9JTlRFUkZBQ0VfTERGTEFHUykgJChXS19VSUtJVF9MREZM
QUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpICQoV0tfV0VCSU5TUEVDVE9SVUlfTERG
TEFHUyk7CitGUkFNRVdPUktfQU5EX0xJQlJBUllfTERGTEFHUyA9IC1sb2JqYyAtZnJhbWV3b3Jr
IENGTmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9u
IC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29yayBG
b3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsg
SU9TdXJmYWNlIC1mcmFtZXdvcmsgV2ViS2l0TGVnYWN5IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lC
SUxJVFlfTERGTEFHUykgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BU1NFUlRJT05fU0VSVklD
RVNfTERGTEFHUykgJChXS19SVU5OSU5HQk9BUkRfU0VSVklDRVNfTERGTEFHUykgJChXS19BVVRI
S0lUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9QUkVESUNUSU9OX0xE
RkxBR1MpICQoV0tfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VT
X0xERkxBR1MpICQoV0tfTElCU0FOREJPWF9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19MREZMQUdT
KSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dFU1RBTFRf
TERGTEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChXS19TQUZFX0JST1dTSU5HX0xERkxBR1Mp
ICQoV0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1MpICQoV0tfVUlLSVRfTERGTEFHUykgJChX
S19VUkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dFQklOU1BFQ1RPUlVJX0xERkxBR1MpOwog
CiAvLyBQcmV2ZW50IEMrKyBzdGFuZGFyZCBsaWJyYXJ5IGJhc2ljX3N0cmluZ3N0cmVhbSwgb3Bl
cmF0b3IgbmV3LCBkZWxldGUgYW5kIHRoZWlyIHJlbGF0ZWQgZXhjZXB0aW9uIHR5cGVzIGZyb20g
YmVpbmcgZXhwb3J0ZWQgYXMgd2VhayBzeW1ib2xzLgogVU5FWFBPUlRFRF9TWU1CT0xfTERGTEFH
UyA9IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5YmFkX2FsbG9jIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWlRTU3Q5YmFkX2FsbG9jIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRT
U3Q5ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWmRsUHZTXyAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pud21QdiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxf
X1pud20gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43
V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzJFT1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1X
bCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMUVPUzRf
IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNv
cmUxMlBvbGljeUFjdGlvbkVFRWFTRURuIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5L
U3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVjbEVTMl8gLVdsLC11
bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9s
aWN5QWN0aW9uRUVFNHN3YXBFUlM0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3Qz
X18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMUVSS1M0XyAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xp
Y3lBY3Rpb25FRUVDMkVSS1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18x
OGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVEMUV2IC1XbCwtdW5leHBvcnRl
ZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlv
bkVFRUQyRXYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklG
dk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFYVNFUktTNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJv
bCAtV2wsX19aVFZOU3QzX18xMTdiYWRfZnVuY3Rpb25fY2FsbEUgLVdsLC11bmV4cG9ydGVkX3N5
bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFp
dHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTNiYXNpY19pc3RyZWFtSWNTMl9FRSAtV2ws
LXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUlj
TlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFMF9OU18xNGJhc2ljX2lvc3Ry
ZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2lj
X3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFMTZf
TlNfMTNiYXNpY19vc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pU
VE5TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxs
b2NhdG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRWTlN0M19fMTE1YmFz
aWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUgLVds
LC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1J
Y05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRSAtV2wsLXVuZXhwb3J0ZWRf
c3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3Ry
YWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFOF9OU18xM2Jhc2ljX29zdHJlYW1JY1MyX0VFOwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQ
VU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5j
ZUdQVU1hbmFnZXIuY3BwCmluZGV4IGRlOTM5NjdlZmRmOTJiM2M4ZjdiODM0NGM0OWQwMGI2NTZk
OWNhMzkuLmE5NmZjM2QxMTM3OThlNzlhZmMwZmRiNjI2NWZkZGFmZDAzZDBhZTAgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2Vy
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BV
TWFuYWdlci5jcHAKQEAgLTI5LDkgKzI5LDggQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbmNs
dWRlICJMb2dnaW5nLmgiCi0jaW5jbHVkZSA8T3BlbkdML0NHTFR5cGVzLmg+Ci0jaW5jbHVkZSA8
T3BlbkdML09wZW5HTC5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0xNYW5hZ2VyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9PcGVuR0xTb2Z0TGlua0NvY29hLmg+CiAK
IG5hbWVzcGFjZSBXZWJLaXQgewogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409520</attachid>
            <date>2020-09-23 18:20:23 -0700</date>
            <delta_ts>2020-09-24 02:44:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216722-20200924112022.patch</filename>
            <type>text/plain</type>
            <size>98428</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggYTNmYjY4OWRlNjEwNTlmMzdkZTRhMTkwMTJhZmUzZWI1ZmExMTM0MS4uNGU5MDdjYWI1NWU5
MzIzN2E0ZjEyZDIzOTEwZDU2YWZhYmE5ZjNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEwMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5p
bmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDaGFuZ2UgQU5H
TEUgdG8gZHluYW1pY2FsbHkgbG9hZCBlaXRoZXIgRUFHTCAoT3BlbkdMRVMpIG9yIENHTCAoT3Bl
bkdMKSBkZXBlbmRpbmcKKyAgICAgICAgb24gYm90aCBjb21waWxlIGFuZCBydW50aW1lIGNvbmZp
Z3VyYXRpb25zLgorICAgICAgICAgICAgSW50ZWwgTWFjIC0+IENHTAorICAgICAgICAgICAgSW50
ZWwgTWFjIENhdGFseXN0IC0+IENHTAorICAgICAgICAgICAgSW50ZWwgaU9TIFNpbXVsYXRvciAt
PiBFQUdMCisgICAgICAgICAgICBpT1MgRGV2aWNlIC0+IEVBR0wKKyAgICAgICAgICAgIEFwcGxl
IFNpbGljb24gTWFjIC0+IENHTAorICAgICAgICAgICAgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5
c3QgKHdpdGggTWFjIGFwcCkgLT4gQ0dMCisgICAgICAgICAgICBBcHBsZSBTaWxpY29uIE1hYyBD
YXRhbHlzdCAod2l0aCBpT1MgYXBwKSAtPiBFQUdMCisKKyAgICAgICAgVGhlIHRyaWNraWVzdCBi
aXQgaXMgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5c3QsIHdoaWNoIGRlcGVuZHMgb24gdGhlCisg
ICAgICAgIGFwcGxpY2F0aW9uIGlzIGl0IGF0dGVtcHRpbmcgdG8gcnVuLiBJbiB0aGF0IGNhc2Ug
QU5HTEUgbXVzdCBjb21waWxlCisgICAgICAgIGJvdGggdGhlIENHTCBhbmQgRUFHTCBpbnRlcmZh
Y2VzIGFuZCB0aGVuIHBpY2sgb25lIHRvIHVzZSBhZnRlciBsYXVuY2guCisKKyAgICAgICAgKiBB
TkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzogUmVtb3ZlIGFsbCB0aGUg
T3BlbkdMKiBsaW5raW5nLgorICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54
Y2NvbmZpZzoKKworICAgICAgICAqIEdMRVN2Mi5jbWFrZTogTmV3IGZpbGVzLgorCisgICAgICAg
ICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOiBOZXcgZGVmaW5pdGlvbnMgZm9yIENQVSB0eXBlIG9u
IEFwcGxlIFN5c3RlbXMuCisKKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZv
Lmg6IFNwbGl0IFN5c3RlbUluZm8gZm9yIEFwcGxlIGludG8gdHdvCisgICAgICAgIGZpbGVzLCBm
b3IgaU9TIGFuZCBNYWMuIEFkZGVkIGEgZmllbGQgZm9yIGlzaU9TQXBwT25NYWMgdGhhdCB3aWxs
IG9ubHkKKyAgICAgICAgYmUgdHJ1ZSB3aGVuIHJ1bm5pbmcgYW4gaU9TIGJpbmFyeSBvbiBBcHBs
ZSBTaWxpY29uLgorICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUu
bW06IEFkZGVkLiBEZWNpZGVzIHdoaWNoIFN5c3RlbUluZm8KKyAgICAgICAgdG8gY2FsbC4KKyAg
ICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRp
bC9TeXN0ZW1JbmZvX2lvcy5jcHA6CisgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mb19pb3Mp
OgorICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOiBEZWxldGVkLgorICAgICAgICAqIHNy
Yy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW06CisgICAgICAgIChhbmdsZTo6R2V0
U3lzdGVtSW5mb19tYWMpOgorICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOiBEZWxldGVk
LgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOiBDYW4gbm8gbG9uZ2VyIGp1c3Qg
Y2hlY2sgZm9yIFBMQVRGT1JNX0lPUy4gVGhpcworICAgICAgICBtaWdodCBzdGlsbCBuZWVkIGEg
cnVudGltZSBjaGVjay4KKyAgICAgICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRleHR1cmVBTkdMRVN1
cHBvcnQpOgorICAgICAgICAoZ2w6OkRldGVybWluZURlcHRoVGV4dHVyZU9FU1N1cHBvcnQpOgor
CisgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOiBUaGlzIGlzIHRoZSBtYWluIGlu
aXRpYWxpemF0aW9uIHBvaW50IGZvcgorICAgICAgICBBTkdMRSwgd2hpY2ggZGVjaWRlcyBhdCBj
b21waWxlL3J1bnRpbWUgd2hpY2ggdmFyaWFudCBvZiBEaXNwbGF5IHRvCisgICAgICAgIGNyZWF0
ZS4KKworICAgICAgICAqIHNyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHA6IEFkZCB0aGUgY29y
cmVjdCBmb3JtYXRzLgorICAgICAgICAoZ2w6OkJ1aWxkSW50ZXJuYWxGb3JtYXRJbmZvTWFwKToK
KworICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5o
OiBBZGRlZC4gTWFjcm9zIHRvIGhlbHAgc29mdC1saW5rCisgICAgICAgIGZ1bmN0aW9ucyBhbmQg
T2JqQyBjbGFzc2VzLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dM
RnVuY3Rpb25zLmNwcDogQWRkZWQuIFdoZXJlIHdlIHNvZnQtbGluayBhbGwKKyAgICAgICAgdGhl
IE9wZW5HTC9DR0wgQVBJLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmg6IEFkZGVkLgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9EaXNwbGF5Q0dMLm1tOiBVc2UgdGhlIHNvZnQtbGlua2VkIG1ldGhvZHMuCisgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNw
cDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VD
R0wuaDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZh
Y2VDR0wubW06IFJlbmFtZSBXZWJTd2FwTGF5ZXIgdG8gV2ViU3dhcExheWVyQ0dMCisgICAgICAg
IG90aGVyd2lzZSBpdCBjbGFzaGVzIHdpdGggdGhlIEVBR0wgdmVyc2lvbi4KKyAgICAgICAgKHJ4
OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKyAgICAgICAgKC1bV2ViU3dhcExheWVy
IGluaXRXaXRoU2hhcmVkU3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVsZXRl
ZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNvcHlDR0xQaXhlbEZvcm1hdEZvckRpc3BsYXlN
YXNrOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY29weUNHTENvbnRleHRG
b3JQaXhlbEZvcm1hdDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNhbkRy
YXdJbkNHTENvbnRleHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBE
ZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgZHJhd0luQ0dMQ29udGV4dDpwaXhlbEZv
cm1hdDpmb3JMYXllclRpbWU6ZGlzcGxheVRpbWU6XSk6IERlbGV0ZWQuCisKKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogU2ltaWxhciBjaGFu
Z2VzIHRvIHRoZSBDR0wgaW1wbGVtZW50YXRpb24uCisgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmg6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Omlu
aXRpYWxpemUpOgorICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp0ZXJtaW5hdGUpOgorICAgICAg
ICAocng6OldvcmtlckNvbnRleHRFQUdMOjp+V29ya2VyQ29udGV4dEVBR0wpOgorICAgICAgICAo
cng6OldvcmtlckNvbnRleHRFQUdMOjptYWtlQ3VycmVudCk6CisgICAgICAgIChyeDo6V29ya2Vy
Q29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQpOgorICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpj
cmVhdGVXb3JrZXJDb250ZXh0KToKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9FQUdMRnVuY3Rpb25zLmg6IEFkZGVkLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMubW06IEFkZGVkLgorICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgorICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHA6Cisg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcDoK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFH
TC5oOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZh
Y2VFQUdMLm1tOgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXJFQUdMIGRpc3BsYXldKToKKyAgICAg
ICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aW5pdGlhbGl6ZSk6CisgICAgICAgICgtW1dlYlN3
YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6
IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBkaXNwbGF5XSk6IERlbGV0ZWQuCisK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6
IFJ1bnRpbWUgY2hlY2suCisgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6
CisKIDIwMjAtMDktMTEgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFtXZWJHTDJdIFN1cHBvcnQgRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0
IG9uIFdlYkdMIDIuMCBjb250ZXh0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGNkMzJjNTZjODU5OTc3NTY5NzM0
YjI2ZTRmYWRhOWJkMTUyZjhkOWEuLjk4OTE0MDA5YmZlNjRhNjRhNDQ1MjU5MWY4YTc5Y2E0MTNh
NGFkMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNr
c29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGlu
IGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWc6IFJlbW92ZSBhbGwgT3BlbkdM
L09wZW5HTEVTIGxpbmtpbmcuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250
ZXh0R0xPcGVuR0xDb2NvYS5tbTogVXNlIHRoZSBuZXcgc29mdC1saW5rZWQKKyAgICAgICAgZnVu
Y3Rpb25zIGZyb20gUEFMLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1h
Yy5tbToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW06CisKIDIwMjAt
MDktMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbbWFjT1MgQmlnIFN1cl0gQ0dGb250UmVuZGVyaW5nR2V0Rm9udFNtb290aGluZ0Rpc2FibGVk
KCkgaXMgbm8gbG9uZ2VyIHVzZWZ1bApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggODgwOWRkMzNhNTcx
ZDY4MjhiNmViZmMwNTVjNzVhMGY3OGFkZTgzNS4uMGU2MTY1OWU0OWFjMjVkY2U0YzkwYjc3YTcw
NDQxNWJiMDczMDY5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjAt
MDktMjQgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIHNo
b3VsZCB1c2UgR0xFUyBpbiBpT1MgYXBwcyBydW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjcyMgorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNjg5NzYzMzc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIHNvZnQtbGlua2luZyBjb250ZW50IGZvciBPcGVuR0wv
T3BlbkdMRVMuCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBwYWwvUGxhdGZvcm1NYWMuY21ha2U6CisgICAgICAgICogcGFsL2NvY29hL09wZW5H
TFNvZnRMaW5rQ29jb2EuaDogQWRkZWQuCisgICAgICAgICogcGFsL2NvY29hL09wZW5HTFNvZnRM
aW5rQ29jb2EubW06IEFkZGVkLgorCiAyMDIwLTA5LTE0ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFdpbl0gTWlncmF0ZSBmcm9tIEZv
bnRQbGF0Zm9ybURhdGFXaW4uY3BwIHRvIEZvbnRQbGF0Zm9ybURhdGFDb3JlVGV4dC5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cKaW5kZXggNTJmNzkwMTcxMzhmOGUzNDNiOTc0MjYwODY2MmIzYzMwZjI0ZGRhYy4uZjA4OTUz
ODI2ZjUwNTQ0MDZlMzk3MDllOTgwN2U3ZGQzMTZkZTRmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NCBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAg
ICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2ls
aWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdC54
Y2NvbmZpZzogUmVtb3ZlIE9wZW5HTCBsaW5raW5nLgorICAgICAgICAqIFVJUHJvY2Vzcy9tYWMv
SGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHA6IFVzZSB0aGUgUEFMIHNvZnQtbGlua2VkIE9w
ZW5HTCBBUEkuCisKIDIwMjAtMDktMTUgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4K
IAogICAgICAgICBSRUdSRVNTSU9OIChyMjY3MDUzKTogQVNTRVJUSU9OIEZBSUxFRDogdmlkZW9G
dWxsc2NyZWVuTWFuYWdlci0+Y2xpZW50KCkgPT0gJl92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHlDbGllbnQgaW4gW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX2NvbXBsZXRlZEV4aXRG
dWxsU2NyZWVuXQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZThlNjkwZGRkNjU2Yjg2NGYxM2RlZDA4NjZj
ODQ5NDY4MTE1ZDk1Mi4uNmIxMzZmZDNkNzZlYWIzZWMxODdhMzE3YzVhYTU2ZGNhM2JhNDc0YyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0xNTAsNiArMTUwLDE2IEBACiAJCTMxNUVCRTI0MUZDRTQ2MkEw
MEFDN0E4OSAvKiBzYWZlX21hdGhfaW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE1RUJFMjAxRkNFNDYyQTAwQUM3QTg5IC8qIHNhZmVfbWF0aF9p
bXBsLmggKi87IH07CiAJCTMxNUVCRTI4MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTVFQkUyNjFG
Q0Y4MDhDMDBBQzdBODkgLyogUE11ckhhc2guY3BwICovOyB9OwogCQkzMTVFQkUyOTFGQ0Y4MDhD
MDBBQzdBODkgLyogUE11ckhhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNUVCRTI3MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5oICovOyB9
OworCQkzMTY0N0Y5RjI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUEx
QTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tICovOyB9OworCQkzMTY0N0ZBMDI1MTFB
MUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tICovOyB9OworCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dM
RnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07CisJCTMx
NjQ3RkE1MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAv
KiBDR0xGdW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENH
TEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsK
KwkJMzE2NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKKwkJMzE2NDdGQjMyNTE3NjhBQzAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmgg
Ki87IH07CisJCTMxNjQ3RkI0MjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZCMjI1MTc2
OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oICovOyB9OworCQkzMTY0N0ZCNjI1MTc2OERE
MDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rp
b25zLm1tICovOyB9OworCQkzMTY0N0ZCNzI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9u
cy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3
RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovOyB9OwogCQkzMUEzMzFD
MjFFQTVFRDI1MDBGRDIyMDMgLyogYml0c2V0X3V0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMDFFQTVFRDI1MDBGRDIyMDMgLyogYml0
c2V0X3V0aWxzLmggKi87IH07CiAJCTMxQTMzMUM2MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1f
dXRpbHNfbWFjLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLzsg
fTsKIAkJMzFBMzMxQzcxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlscy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMzMxQzQxRUE1RUQ1RjAw
RkQyMjAzIC8qIHN5c3RlbV91dGlscy5oICovOyB9OwpAQCAtMTU0Nyw2ICsxNTU3LDcgQEAKIC8q
IEVuZCBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYRmls
ZVJlZmVyZW5jZSBzZWN0aW9uICovCisJCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0
TGlua2luZ19hcHBsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2Z0TGlua2luZ19hcHBsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMDE4Qjk3QjlCMDAzOTA2MkYgLyogQmFz
ZVR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VUeXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMTE4Qjk3QjlCMDAzOTA2MkYgLyog
QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkzMTAxMkRBMjE4Qjk3QjlCMDAzOTA2MkYgLyogQnVpbHRJbkZ1bmN0aW9uRW11
bGF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnVpbHRJbkZ1bmN0aW9u
RW11bGF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2ODEsNiArMTY5Miwx
MSBAQAogCQkzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNo
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8q
IFBNdXJIYXNoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAv
KiBTeXN0ZW1JbmZvX2FwcGxlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU3lzdGVtSW5mb19h
cHBsZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTIyNTE1OTc4RDAw
MTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDR0xGdW5jdGlvbnMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTMyNTE1OTc4RDAwMTBGOEZCIC8q
IENHTEZ1bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDR0xGdW5jdGlvbnMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZCMjI1MTc2OEFDMDAxMEY4RkIgLyog
RUFHTEZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBFQUdMRnVu
Y3Rpb25zLmg7IHBhdGggPSBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rp
b25zLmg7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJMzE2NDdGQjUyNTE3NjhERDAw
MTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBFQUdMRnVu
Y3Rpb25zLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDMDFFQTVFRDI1
MDBGRDIyMDMgLyogYml0c2V0X3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IGJpdHNldF91dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFD
MzFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBzeXN0ZW1fdXRpbHNfbWFjLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMzFBMzMxQzQxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGls
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBzeXN0ZW1fdXRpbHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI0NzIsNiArMjQ4OCw4IEBACiAJCQkJMzEzQkNF
NEQyMzYxMTMzOTAwRkMzOUU1IC8qIERldmljZUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U0NjIzNjEx
MzM4MDBGQzM5RTUgLyogRGlzcGxheUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U1MzIzNjExMzM5MDBG
QzM5RTUgLyogRGlzcGxheUVBR0wubW0gKi8sCisJCQkJMzE2NDdGQjIyNTE3NjhBQzAwMTBGOEZC
IC8qIEVBR0xGdW5jdGlvbnMuaCAqLywKKwkJCQkzMTY0N0ZCNTI1MTc2OEREMDAxMEY4RkIgLyog
RUFHTEZ1bmN0aW9ucy5tbSAqLywKIAkJCQkzMTNCQ0U0NzIzNjExMzM4MDBGQzM5RTUgLyogSU9T
dXJmYWNlU3VyZmFjZUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U0RTIzNjExMzM5MDBGQzM5RTUgLyog
SU9TdXJmYWNlU3VyZmFjZUVBR0wubW0gKi8sCiAJCQkJMzEzQkNFNDgyMzYxMTMzODAwRkMzOUU1
IC8qIFBidWZmZXJTdXJmYWNlRUFHTC5jcHAgKi8sCkBAIC0yOTYwLDYgKzI5NzgsNyBAQAogCQkJ
CUEzMDMwNzg3MjMwNUY4RjAwMDJEQTk3MiAvKiBTZW1hcGhvcmVHTC5oICovLAogCQkJCTVDQjMw
MTA4MURFMzlGMUEwMEQyQzQwNSAvKiBTaGFkZXJHTC5jcHAgKi8sCiAJCQkJNUNCMzAxMDkxREUz
OUYxQTAwRDJDNDA1IC8qIFNoYWRlckdMLmggKi8sCisJCQkJMEY4NURBMkYyNTEzNzgwODAwMEE1
MDBCIC8qIFNvZnRMaW5raW5nX2FwcGxlLmggKi8sCiAJCQkJNUNCMzAxMEExREUzOUYxQTAwRDJD
NDA1IC8qIFN0YXRlTWFuYWdlckdMLmNwcCAqLywKIAkJCQk1Q0IzMDEwQjFERTM5RjFBMDBEMkM0
MDUgLyogU3RhdGVNYW5hZ2VyR0wuaCAqLywKIAkJCQk1Q0IzMDEwQzFERTM5RjFBMDBEMkM0MDUg
LyogU3VyZmFjZUdMLmNwcCAqLywKQEAgLTI5NzksNiArMjk5OCw4IEBACiAJCTVDQjMwMTQ4MURF
MzlGMzYwMEQyQzQwNSAvKiBjZ2wgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxk
cmVuID0gKAorCQkJCTMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3Bw
ICovLAorCQkJCTMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCAqLywK
IAkJCQk1Q0NENTk3MjIyODRGQTgyMDAxOEYyRDggLyogQ29udGV4dENHTC5jcHAgKi8sCiAJCQkJ
NUNDRDU5NzUyMjg0RkE4MjAwMThGMkQ4IC8qIENvbnRleHRDR0wuaCAqLywKIAkJCQk2RTMxQTBB
MTIzNEVFRUQ0MDBDODQ3ODQgLyogRGV2aWNlQ0dMLmNwcCAqLywKQEAgLTMyMDgsNiArMzIyOSw3
IEBACiAJCQljaGlsZHJlbiA9ICgKIAkJCQk1Q0NENTk5ODIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mby5jcHAgKi8sCiAJCQkJNUNDRDU5OTkyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUlu
Zm8uaCAqLywKKwkJCQkzMTY0N0Y5RTI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBs
ZS5tbSAqLywKIAkJCQkzMUIxNTcyMTIzNkI4MDMzMDBDQUE0RkQgLyogU3lzdGVtSW5mb19pbnRl
cm5hbC5oICovLAogCQkJCTMxQjE1NzFGMjM2QjdGQUUwMENBQTRGRCAvKiBTeXN0ZW1JbmZvX2lv
cy5jcHAgKi8sCiAJCQkJNUNDRDU5OTcyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUluZm9fbWFj
b3MubW0gKi8sCkBAIC0zNDE0LDYgKzM0MzYsNyBAQAogCQkJCTMxQ0RGRkQ4MjQ5MTg0QTcwMDQ4
NkYyNyAvKiBCdWlsdGluc1dvcmthcm91bmRHTFNMLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNE
RkZGOTI0OTE4NEE3MDA0ODZGMjcgLyogQ2FsbERBRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFD
RDAwNjEyNDkxODRGQzAwNDg2RjI3IC8qIENhcHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3
RkE1MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxQ0RGRjgyMjQ5MTg0OTgwMDQ4NkYyNyAvKiBDbGFtcEZyYWdEZXB0aC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMzFDREZGOEEyNDkxODQ5ODAwNDg2RjI3IC8qIENsYW1wUG9pbnRTaXplLmggaW4g
SGVhZGVycyAqLywKIAkJCQkzMUNEMDAxMTI0OTE4NEU3MDA0ODZGMjcgLyogQ2xlYXJNdWx0aXZp
ZXdHTC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zNDU2LDYgKzM0NzksNyBAQAogCQkJCTMxQ0QwMDIz
MjQ5MTg0RTcwMDQ4NkYyNyAvKiBEaXNwbGF5R0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0Qw
MDJGMjQ5MTg0RjQwMDQ4NkYyNyAvKiBEaXNwbGF5SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MzFDRDAwMzgyNDkxODRGNDAwNDg2RjI3IC8qIGRyaXZlcl91dGlscy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2NDdGQjQyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQ0RGRjlBMjQ5MTg0OTgwMDQ4NkYyNyAvKiBFYXJseUZyYWdtZW50VGVz
dHNPcHRpbWl6YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0RGREZBMjQ5MTgzQTUwMDQ4
NkYyNyAvKiBlZ2wuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0RGREY5MjQ5MTgzQTUwMDQ4NkYy
NyAvKiBlZ2xleHQuaCBpbiBIZWFkZXJzICovLApAQCAtMzgxOSw2ICszODQzLDcgQEAKIAkJCQlB
MzY5NEZDNzIzMjAyQzUyMDBBODNEOEYgLyogQnVpbHRpbnNXb3JrYXJvdW5kR0xTTC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNUMxREJDMkIxQjA0Mzc1RjAwMjM1NTUyIC8qIENhbGxEQUcuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTVDMURCRERCMUIwNDM4RDMwMDIzNTU1MiAvKiBDYXBzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1QzU1RDY2NjIyODI2QjlGMDBCNUJBMkMgLyogQ2xhbXBGcmFn
RGVwdGguaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNTVENjVCMjI4MjZCOUYwMEI1QkEyQyAvKiBD
bGFtcFBvaW50U2l6ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE1RUJEQzExRkNFNDRCRjAwQUM3
QTg5IC8qIENsZWFyTXVsdGl2aWV3R0wuaCBpbiBIZWFkZXJzICovLApAQCAtMzg2MSw2ICszODg2
LDcgQEAKIAkJCQk1Q0IzMDExRjFERTM5RjFBMDBEMkM0MDUgLyogRGlzcGxheUdMLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk1Q0IzMDRFMjFERTQxNjQ4MDBEMkM0MDUgLyogRGlzcGxheUltcGwuaCBp
biBIZWFkZXJzICovLAogCQkJCTMxNUVCREM5MUZDRTQ0RTQwMEFDN0E4OSAvKiBkcml2ZXJfdXRp
bHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkIzMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdM
RnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RUIwMUMxRDI0NzcyNzlBMDBFNTBCMzUg
LyogRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
MURCNzk1ODI0OTFDODQ1MDA5ODI4NzggLyogZWdsLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMURC
Nzk1OTI0OTFDODQ1MDA5ODI4NzggLyogZWdsZXh0LmggaW4gSGVhZGVycyAqLywKQEAgLTQzMjIs
NiArNDM0OCw3IEBACiAJCQkJMzFDREZFN0UyNDkxODQzQTAwNDg2RjI3IC8qIEJ1aWx0aW5zV29y
a2Fyb3VuZEdMU0wuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFODYyNDkxODQzQTAwNDg2
RjI3IC8qIENhbGxEQUcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZGMUMyNDkxODQ1RjAw
NDg2RjI3IC8qIENhcHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTcyNTE1OTc4RDAw
MTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU1ODI0
OTE4NDJFMDA0ODZGMjcgLyogQ2xhbXBGcmFnRGVwdGguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDREZFNjEyNDkxODQyRjAwNDg2RjI3IC8qIENsYW1wUG9pbnRTaXplLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTMxQ0RGRUMzMjQ5MTg0NTMwMDQ4NkYyNyAvKiBDbGVhck11bHRpdmlld0dMLmNw
cCBpbiBTb3VyY2VzICovLApAQCAtNDM2Myw2ICs0MzkwLDcgQEAKIAkJCQkzMUNERkVFMTI0OTE4
NDU4MDA0ODZGMjcgLyogRGlzcGxheUltcGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZF
RTUyNDkxODQ1ODAwNDg2RjI3IC8qIGRyaXZlcl91dGlscy5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkzMUNEMDBDNjI0OTE5MTdFMDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzX21hYy5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCTMxNjQ3RkI3MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFNDQyNDkxODQyRTAwNDg2RjI3IC8qIEVhcmx5RnJh
Z21lbnRUZXN0c09wdGltaXphdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYzNDI0
OTE4NDYwMDA0ODZGMjcgLyogRUdMU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU4
MzI0OTE4NDNBMDA0ODZGMjcgLyogZW11bGF0ZWRfYnVpbHRpbl9mdW5jdGlvbnNfaGxzbF9hdXRv
Z2VuLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDU1NSw2ICs0NTgzLDcgQEAKIAkJCQkzMUNERkUx
NjI0OTE4NDIzMDA0ODZGMjcgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkUxRTI0OTE4NDIzMDA0ODZGMjcgLyogc3lzdGVtX3V0aWxzX3Bvc2l4LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUIxMjQ5MTg0NDIwMDQ4NkYyNyAvKiBTeXN0ZW1JbmZv
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkEwMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjMyNDkxODQ0MjAwNDg2
RjI3IC8qIFN5c3RlbUluZm9faW9zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0QwMEM3MjQ5
MTkxRDEwMDQ4NkYyNyAvKiBTeXN0ZW1JbmZvX21hY29zLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDREZFRkIyNDkxODQ1RjAwNDg2RjI3IC8qIFRleHR1cmUuY3BwIGluIFNvdXJjZXMgKi8sCkBA
IC00NjU1LDYgKzQ2ODQsNyBAQAogCQkJCUEzNjk0RkM2MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWls
dGluc1dvcmthcm91bmRHTFNMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDMURCQzJBMUIwNDM3
NUYwMDIzNTU1MiAvKiBDYWxsREFHLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDMURCRERBMUIw
NDM4RDMwMDIzNTU1MiAvKiBDYXBzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkE2MjUx
NTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUM1
NUQ2QUMyMjgyNkJDODAwQjVCQTJDIC8qIENsYW1wRnJhZ0RlcHRoLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTVDNTVENkFEMjI4MjZCQzgwMEI1QkEyQyAvKiBDbGFtcFBvaW50U2l6ZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzMTVFQkRCRDFGQ0U0NEJGMDBBQzdBODkgLyogQ2xlYXJNdWx0aXZp
ZXdHTC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ2OTYsNiArNDcyNiw3IEBACiAJCQkJNUNCMzA0
RTExREU0MTY0ODAwRDJDNDA1IC8qIERpc3BsYXlJbXBsLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxNUVCRENDMUZDRTQ0RTQwMEFDN0E4OSAvKiBkcml2ZXJfdXRpbHMuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTMwMzA3OUQyMzA2MjU2NTAwMkRBOTcyIC8qIGRyaXZlcl91dGlsc19tYWMubW0g
aW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZCNjI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0
aW9ucy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTZFQjAxQzFFMjQ3NzI3OUEwMEU1MEIzNSAvKiBF
YXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUND
RDU5NkEyMjg0Rjc5NjAwMThGMkQ4IC8qIEVHTFN5bmMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzE1RUJEOTcxRkNFNDQzNjAwQUM3QTg5IC8qIGVtdWxhdGVkX2J1aWx0aW5fZnVuY3Rpb25zX2hs
c2xfYXV0b2dlbi5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ4ODgsNiArNDkxOSw3IEBACiAJCQkJ
MzFBMzMxQzYxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19tYWMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNUM1NUQ3MzAyMjgyNzQ3NzAwQjVCQTJDIC8qIHN5c3RlbV91dGlsc19wb3Np
eC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk5QjIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mby5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0Y5RjI1MTFBMUE2MDAxMEY4RkIg
LyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTMxQjE1NzIwMjM2QjdG
QUYwMENBQTRGRCAvKiBTeXN0ZW1JbmZvX2lvcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NE
NTk5QTIyODRGQzc1MDAxOEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTVDMURCRjMwMUIwNDM4RDMwMDIzNTU1MiAvKiBUZXh0dXJlLmNwcCBpbiBTb3VyY2Vz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMv
QU5HTEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3Vy
YXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5kZXggMzE1ODJiOTIyYmRmMmFlYTYyNGQw
MmViYTVmN2YxYTRhMDVhYzcxMS4uMzEyMGVlMmMyOTZiMzIwZDBmOWZmM2YzZDZhY2IwNGNlYzhl
N2M2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMv
QU5HTEUtZHluYW1pYy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnCkBAIC01LDE0ICs1LDE0IEBAIFBST0RV
Q1RfTkFNRSA9IEFOR0xFLXNoYXJlZDsKIEVYRUNVVEFCTEVfUFJFRklYID0gbGliOwogCiBBTkdM
RV9PVEhFUl9MREZMQUdTID0gLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZSAtYWxsb3dhYmxlX2Ns
aWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWZyYW1ld29yayBRdWFydHpDb3JlIC1mcmFtZXdvcmsg
Q29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAk
KEFOR0xFX09USEVSX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1BTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUyAtbHo7CitBTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zID0gLWx6OwogQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0
b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFH
U193YXRjaG9zID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVS
X0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yKTsKIEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dm9zID0gJChBTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9
ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOwotQU5HTEVfT1RIRVJfTERG
TEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBPcGVuR0wgLWx6
OwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdv
cmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3
b3JrIElPS2l0IC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJ
T0tpdCAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoTk9STUFMX1dFQkNPUkVfRlJBTUVXT1JLU19E
SVIpL1dlYkNvcmUuZnJhbWV3b3JrL0ZyYW1ld29ya3M7CiBJTlNUQUxMX1BBVEhbc2RrPW1hY29z
eCpdID0gJChJTlNUQUxMX1BBVEhfVVNFX09WRVJSSURFX0ZSQU1FV09SS1NfRElSXyQoV0tfVVNF
X09WRVJSSURFX0ZSQU1FV09SS1NfRElSKSk7CkBAIC0zNiw3ICszNiw3IEBAIFBVQkxJQ19IRUFE
RVJTX0ZPTERFUl9QQVRIX21hY2NhdGFseXN0ID0gJChXS19BTFRFUk5BVEVfRlJBTUVXT1JLU19E
SVIpLyQoQU5HTEVfCiAKIERFQlVHX0RFRklORVNfZGVidWcgPSA7CiBERUJVR19ERUZJTkVTX25v
cm1hbCA9IE5ERUJVRzsKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAkKERFQlVHX0RF
RklORVNfJChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVTVjJfSU1QTEVNRU5UQVRJT04gTElCQU5H
TEVfSU1QTEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09QRU5HTCBBTkdMRV9FTkFCTEVfR0xTTCBB
TkdMRV9FTkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJFQ0FUSU9OOworR0NDX1BSRVBST0NFU1NP
Ul9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FU18kKENVUlJFTlRfVkFSSUFOVCkpIExJQkdM
RVNWMl9JTVBMRU1FTlRBVElPTiBMSUJBTkdMRV9JTVBMRU1FTlRBVElPTiBBTkdMRV9FTkFCTEVf
T1BFTkdMIEFOR0xFX0VOQUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9FU1NMIEdMX1NJTEVOQ0VfREVQ
UkVDQVRJT04gR0xFU19TSUxFTkNFX0RFUFJFQ0FUSU9OOwogCiBJTlNUQUxMSERSU19TQ1JJUFRf
UEhBU0UgPSBZRVM7CiBVU0VfSEVBREVSTUFQID0gTk87CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcK
aW5kZXggNGQxZDIyMTE5MzVhNTEyYjk2ODg2MTg1ZWMwNjY4NWI5Mjc5NmIwNy4uODI0YTI3YjUz
MTM5NWI1YjAwMmMyYmY1NzFmOTc5ZTllYzY2ZmIwNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2NvbmZp
ZwpAQCAtNSwxNCArNSwxNCBAQCBQUk9EVUNUX05BTUUgPSBBTkdMRTsKIEVYRUNVVEFCTEVfUFJF
RklYID0gbGliOwogCiBBTkdMRV9PVEhFUl9MREZMQUdTID0gLWFsbG93YWJsZV9jbGllbnQgV2Vi
Q29yZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgJChBTkdMRV9PVEhFUl9M
REZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwotQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVv
cyA9IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMRVMgLWx6OworQU5HTEVf
T1RIRVJfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKIEFOR0xF
X09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lw
aG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChB
TkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdT
X2FwcGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhF
Ul9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25l
c2ltdWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3Jr
IElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKLUFOR0xF
X09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3Vy
ZmFjZSAtZnJhbWV3b3JrIE9wZW5HTCAtbHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFs
eXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtbHo7CitBTkdMRV9P
VEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZh
Y2UgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKEFOR0xFX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vz
ci9sb2NhbC9saWI7CiAKQEAgLTI0LDcgKzI0LDcgQEAgUFVCTElDX0hFQURFUlNfRk9MREVSX1BB
VEggPSAkKEFOR0xFX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vzci9sb2NhbC9pbmNsdWRlL0FOR0wK
IAogREVCVUdfREVGSU5FU19kZWJ1ZyA9IDsKIERFQlVHX0RFRklORVNfbm9ybWFsID0gTkRFQlVH
OwotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FU18kKENVUlJF
TlRfVkFSSUFOVCkpIExJQkdMRVNWMl9JTVBMRU1FTlRBVElPTiBMSUJBTkdMRV9JTVBMRU1FTlRB
VElPTiBBTkdMRV9FTkFCTEVfT1BFTkdMIEFOR0xFX0VOQUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9F
U1NMIEdMX1NJTEVOQ0VfREVQUkVDQVRJT047CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05T
ID0gJChERUJVR19ERUZJTkVTXyQoQ1VSUkVOVF9WQVJJQU5UKSkgTElCR0xFU1YyX0lNUExFTUVO
VEFUSU9OIExJQkFOR0xFX0lNUExFTUVOVEFUSU9OIEFOR0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVf
RU5BQkxFX0dMU0wgQU5HTEVfRU5BQkxFX0VTU0wgR0xfU0lMRU5DRV9ERVBSRUNBVElPTiBHTEVT
X1NJTEVOQ0VfREVQUkVDQVRJT047CiAKIElOU1RBTExIRFJTX1NDUklQVF9QSEFTRSA9IFlFUzsK
IFVTRV9IRUFERVJNQVAgPSBOTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQppbmRl
eCAwNGZiZTllZmU3Yzk1MzkxNmM2YTU2OGUxN2EyYjVhNTRhZGQzM2I5Li40ZmJkYmNiOGNlMjAy
ZDU3YWFhZTNmMGQ0OWU1YzNiOTk0ZDAwYzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9HTEVTdjIuY21ha2UKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3Yy
LmNtYWtlCkBAIC0xNjcsNyArMTY3LDkgQEAgc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbGli
cGNpX3NvdXJjZXMKIHNldChsaWJhbmdsZV9ncHVfaW5mb191dGlsX3gxMV9zb3VyY2VzICJzcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX3gxMS5jcHAiICkKIAogCi1zZXQobGliYW5nbGVfZ3B1
X2luZm9fdXRpbF9tYWNfc291cmNlcyAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNv
cy5tbSIgKQorc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMKKyAgICAic3Jj
L2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbSIKKyAgICAic3JjL2dwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19tYWNvcy5tbSIgKQogCiAKIHNldChsaWJhbmdsZV9pbmNsdWRlcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCmluZGV4IDA0MTZl
ZDIwMWQ1OTRlNTQwOWVhOWQ3ZTY0MGI2NDg5YzQ3NmFjZWQuLmIzNDFhZjFmNWY5OGY1ZDQ1MTQw
MDEzM2MzODlkNzM2NjVmN2E2YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tbW9uL3BsYXRmb3JtLmgKQEAgLTEyMCw3ICsxMjAsNiBAQAogIyAgICAgICAgZGVmaW5lIEFO
R0xFX1BMQVRGT1JNX01BQ09TIDEKICMgICAgZWxpZiBUQVJHRVRfT1NfSVBIT05FCiAjICAgICAg
ICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9TIDEKLSMgICAgICAgIGRlZmluZSBHTEVTX1NJTEVO
Q0VfREVQUkVDQVRJT04KICMgICAgICAgIGlmIFRBUkdFVF9PU19TSU1VTEFUT1IKICMgICAgICAg
ICAgICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9TX1NJTVVMQVRPUiAxCiAjICAgICAgICBlbmRp
ZgpAQCAtMTI4LDYgKzEyNywxMSBAQAogIyAgICAgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYKICMgICAgZW5kaWYKKyMgICAgLy8gVGhpcyBt
aWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21lbnQgaXQgaXMgdXNlZAorIyAgICAv
LyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIEludGVsIGFuZCBBcHBsZSBTaWxpY29u
LgorIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVmaW5lZChfX2FhcmNoNjRfXykKKyMg
ICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQKKyMgICAgZW5kaWYKICNlbmRpZgogCiAvLyBE
ZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oCmluZGV4IGQyOGU3Y2EyYzA2
ZGI3MjIzMGNjNjk3ZTM4YzczOWQ2NmQzZWY5YzkuLjcxZjc2ZWI1ZjY0NjRlMjVlZGNkNGY5ZWUy
ZDFlN2NkMTgzM2JiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9n
cHVfaW5mb191dGlsL1N5c3RlbUluZm8uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgKQEAgLTY3LDYgKzY3LDkgQEAgc3RydWN0IFN5
c3RlbUluZm8KICAgICBib29sIGlzQU1EU3dpdGNoYWJsZSA9IGZhbHNlOwogICAgIC8vIE9ubHkg
dHJ1ZSBvbiBkdWFsLUdQVSBNYWMgbGFwdG9wcy4KICAgICBib29sIGlzTWFjU3dpdGNoYWJsZSA9
IGZhbHNlOworICAgIC8vIE9ubHkgdHJ1ZSBvbiBBcHBsZSBTaWxpY29uIE1hY3Mgd2hlbiBydW5u
aW5nIGlPUyBiaW5hcmllcy4KKyAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29t
L2RvY3VtZW50YXRpb24vZm91bmRhdGlvbi9uc3Byb2Nlc3NpbmZvLzM2MDg1NTYtaW9zYXBwb25t
YWMKKyAgICBib29sIGlzaU9TQXBwT25NYWMgICA9IGZhbHNlOwogCiAgICAgLy8gT25seSBhdmFp
bGFibGUgb24gQW5kcm9pZAogICAgIHN0ZDo6c3RyaW5nIG1hY2hpbmVNYW51ZmFjdHVyZXI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0
ZW1JbmZvX2FwcGxlLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19hcHBsZS5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ODk3M2NmNTJkMmQzMjc1ZDJjYmI5
OTMzNDA5MTIzMDk2NGIzMWI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbQpAQCAtMCwwICsxLDQ5
IEBACisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxl
IGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLwor
CisvLyBTeXN0ZW1JbmZvX2FwcGxlLmNwcDogaW1wbGVtZW50YXRpb24gb2YgdGhlIEFwcGxlLXNw
ZWNpZmljIHBhcnRzIG9mIFN5c3RlbUluZm8uaAorCisjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0u
aCIKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyMgICAgaW1wb3J0ICJn
cHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJuYWwuaCIKKyMgICAgaW1wb3J0IDxkaXNwYXRj
aC9kaXNwYXRjaC5oPgorIyAgICBpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgorCitu
YW1lc3BhY2UgYW5nbGUKK3sKKworYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8p
Cit7CisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpCisgICAgc3RhdGljIGJvb2wgaXNpT1NBcHBPbk1hYyA9IGZhbHNlOwor
ICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNl
LCBeeworICAgICAgICBpc2lPU0FwcE9uTWFjID0gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZv
XSBpc2lPU0FwcE9uTWFjXTsKKyAgICB9KTsKKworICAgIGlmIChpc2lPU0FwcE9uTWFjKQorICAg
IHsKKyAgICAgICAgR2V0U3lzdGVtSW5mb19pb3MoaW5mbyk7CisgICAgICAgIGlmIChpbmZvKQor
ICAgICAgICB7CisgICAgICAgICAgICBpbmZvLT5pc2lPU0FwcE9uTWFjID0gdHJ1ZTsKKyAgICAg
ICAgfQorICAgICAgICByZXR1cm4gaW5mbzsKKyAgICB9CisKKyAgICByZXR1cm4gR2V0U3lzdGVt
SW5mb19tYWMoaW5mbyk7CisjZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorICAgIHJldHVybiBHZXRTeXN0ZW1J
bmZvX21hYyhpbmZvKTsKKyNlbHNlCisgICAgcmV0dXJuIEdldFN5c3RlbUluZm9faW9zKGluZm8p
OworI2VuZGlmCit9CisKK30gIC8vIG5hbWVzcGFjZSBhbmdsZQorCisjZW5kaWYgIC8vIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmgKaW5k
ZXggMjFhNzc2MmVlYWRkYTAwNjVkMTRkMTJmNzQ1MTNhMWZhNDBhMjEyZC4uZDMwMGJkODFhOTBh
ODc0ZjdiOWUyMDg1NmE3ZGYwNTI3ZmQ5NTE1NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJu
YWwuaApAQCAtMjksNiArMjksMTQgQEAgYm9vbCBQYXJzZU1hY01hY2hpbmVNb2RlbChjb25zdCBz
dGQ6OnN0cmluZyAmaWRlbnRpZmllciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJf
dCAqbWlub3IpOwogYm9vbCBDTURldmljZUlEVG9EZXZpY2VBbmRWZW5kb3JJRChjb25zdCBzdGQ6
OnN0cmluZyAmaWQsIHVpbnQzMl90ICp2ZW5kb3JJZCwgdWludDMyX3QgKmRldmljZUlkKTsKIAor
I2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpCitib29sIEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmluZm8p
OworI2VuZGlmCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
K2Jvb2wgR2V0U3lzdGVtSW5mb19pb3MoU3lzdGVtSW5mbyAqaW5mbyk7CisjZW5kaWYKKwogfSAg
Ly8gbmFtZXNwYWNlIGFuZ2xlCiAKICNlbmRpZiAgLy8gR1BVX0lORk9fVVRJTF9TWVNURU1fSU5G
T19JTlRFUk5BTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwCmluZGV4IGMwZDQzNmY1NjE4Y2Yx
Mjc3YjVlYzc5ZDhjMzExM2RjY2YwYzM4YWYuLmJkMjIxOTcwNjJlOGM5ODVmNGQ0MjFlNWNlNjMy
N2EzYTk5YjQxYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAKQEAgLTgsMTQgKzgsMTQgQEAK
IAogI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImdw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgogCiBuYW1lc3BhY2UgYW5nbGUKIHsK
IAotYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8pCitib29sIEdldFN5c3RlbUlu
Zm9faW9zKFN5c3RlbUluZm8gKmluZm8pCiB7CiAgICAgewogICAgICAgICAvLyBUT0RPKGFuZ2xl
YnVnLmNvbS80Mjc1KTogR2V0IHRoZSBhY3R1YWwgc3lzdGVtIHZlcnNpb24uCkBAIC0yNyw0ICsy
Nyw0IEBAIGJvb2wgR2V0U3lzdGVtSW5mbyhTeXN0ZW1JbmZvICppbmZvKQogCiB9ICAvLyBuYW1l
c3BhY2UgYW5nbGUKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0K
aW5kZXggYThlZDdhZjI2ZjQyNDRjOTQ5M2VkNmE4NTdhZmFjMTkyOGFhOGZlMC4uMmFiOTJmYzc2
NGRmODY3MzA1MTgwNDkwYzE2OWQyMGE5ZGQ4NWI1MCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tCkBAIC0xNSw2ICsxNSw4IEBACiAjICAgIGltcG9ydCA8Q29jb2EvQ29jb2EuaD4KICMgICAg
aW1wb3J0IDxJT0tpdC9JT0tpdExpYi5oPgogCisjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKQEAgLTIw
OCw3ICsyMTAsNyBAQCB1aW50NjRfdCBHZXRHcHVJREZyb21PcGVuR0xEaXNwbGF5TWFzayh1aW50
MzJfdCBkaXNwbGF5TWFzaykKICAgICByZXR1cm4gMDsKIH0KIAotYm9vbCBHZXRTeXN0ZW1JbmZv
KFN5c3RlbUluZm8gKmluZm8pCitib29sIEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmlu
Zm8pCiB7CiAgICAgewogICAgICAgICBpbnQzMl90IG1ham9yID0gMDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9DYXBzLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9DYXBzLmNwcAppbmRleCBlZTRmMDllMDFkNmE3MTVh
ZGEzYzAyNWQ4OTJmY2NjNWZjYmUwN2IzLi5jZWYxMTViNzM2NTY1MjJjZTk0NjhlYmE2ZjRlN2Qy
YTNjYzM3MjQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvQ2Fwcy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Nh
cHMuY3BwCkBAIC02MjUsOSArNjI1LDEwIEBAIHN0YXRpYyBib29sIERldGVybWluZURlcHRoVGV4
dHVyZUFOR0xFU3VwcG9ydChjb25zdCBUZXh0dXJlQ2Fwc01hcCAmdGV4dHVyZUNhcHMpCiB7CiAg
ICAgY29uc3RleHByIEdMZW51bSByZXF1aXJlZEZvcm1hdHNbXSA9IHsKICAgICAgICAgR0xfREVQ
VEhfQ09NUE9ORU5UMTYsCi0jaWYgIUFOR0xFX1BMQVRGT1JNX0lPUworI2lmICFkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgKCFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSB8fCAhZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogICAgICAgICAvLyBGSVhNRTogVGVtcG9y
YXJpbHkgUmVtb3ZpbmcgdGhlIG5lZWQgZm9yIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUwogICAg
ICAgICAvLyBiZWNhdXNlIGl0IGlzIG5vdCBzdXBwb3J0ZWQgb24gaU9TLgorICAgICAgICAvLyBG
SVhNRTogSSB0aGluayB0aGlzIG5lZWRzIHRvIGJlIGEgcnVudGltZSBjaGVjayB3aGVuIHJ1bm5p
bmcgYW4gaU9TIGFwcCBvbiBNYWMuCiAgICAgICAgIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUywK
ICNlbmRpZgogICAgICAgICBHTF9ERVBUSDI0X1NURU5DSUw4X09FUywKQEAgLTY0MSw5ICs2NDIs
MTAgQEAgc3RhdGljIGJvb2wgRGV0ZXJtaW5lRGVwdGhUZXh0dXJlT0VTU3VwcG9ydChjb25zdCBU
ZXh0dXJlQ2Fwc01hcCAmdGV4dHVyZUNhcHMpCiB7CiAgICAgY29uc3RleHByIEdMZW51bSByZXF1
aXJlZEZvcm1hdHNbXSA9IHsKICAgICAgICAgR0xfREVQVEhfQ09NUE9ORU5UMTYsCi0jaWYgIUFO
R0xFX1BMQVRGT1JNX0lPUworI2lmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgKCFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSB8fCAhZGVmaW5lZChBTkdMRV9DUFVf
QVJNNjQpKQogICAgICAgICAvLyBGSVhNRTogVGVtcG9yYXJpbHkgUmVtb3ZpbmcgdGhlIG5lZWQg
Zm9yIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUwogICAgICAgICAvLyBiZWNhdXNlIGl0IGlzIG5v
dCBzdXBwb3J0ZWQgb24gaU9TLgorICAgICAgICAvLyBGSVhNRTogSSB0aGluayB0aGlzIG5lZWRz
IHRvIGJlIGEgcnVudGltZSBjaGVjayB3aGVuIHJ1bm5pbmcgYW4gaU9TIGFwcCBvbiBNYWMuCiAg
ICAgICAgIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUywKICNlbmRpZgogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKaW5kZXggZTNl
YmUzMjVkYWEyODhlODVjOWJmODAzN2EwMDUzMTA1MjQ3YjdhOC4uYmJkNGZmNGMyMjZmYjZhNjIy
NDRkNzkyNWMwZWJjY2RkMTI0ZTEwNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgImNv
bW1vbi9zeXN0ZW1fdXRpbHMuaCIKICNpbmNsdWRlICJjb21tb24vdGxzLmgiCiAjaW5jbHVkZSAi
Y29tbW9uL3V0aWxpdGllcy5oIgorI2luY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5o
IgogI2luY2x1ZGUgImxpYkFOR0xFL0NvbnRleHQuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9EZXZp
Y2UuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9FR0xTeW5jLmgiCkBAIC01Myw2ICs1NCw5IEBACiAj
ICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC93Z2wvRGlzcGxheVdHTC5oIgog
IyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvRGlzcGxheUNHTC5oIgorIyAgICAgICAgaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisjICAgICAgICAgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgorIyAgICAg
ICAgZW5kaWYKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKICMgICAgICAg
IGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCIKICMgICAg
ZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJTlVYKQpAQCAtMjYwLDggKzI2NCwzNiBAQCBy
eDo6RGlzcGxheUltcGwgKkNyZWF0ZURpc3BsYXlGcm9tQXR0cmlicyhFR0xBdHRyaWIgZGlzcGxh
eVR5cGUsCiAjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfT1BFTkdMKQogIyAgICBpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX1dJTkRPV1MpCiAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNw
bGF5V0dMKHN0YXRlKTsKLSMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8
fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorICAgICAgICAgICAgYnJlYWs7
CisKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKQorICAgICAgICAgICAg
aW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICBicmVhazsKKyMg
ICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorIyAgICAgICAgaWYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
YW5nbGU6OlN5c3RlbUluZm8gaW5mbzsKKyAgICAgICAgICAgICAgICBpZiAoIWFuZ2xlOjpHZXRT
eXN0ZW1JbmZvKCZpbmZvKSkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IGltcGwgPSBudWxscHRyOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICBpZiAoaW5mby5pc2lPU0FwcE9uTWFjKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNH
TChzdGF0ZSk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0K
KyAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
ICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CisgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyMgICAgICAgIGVs
c2UKICAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRpc3BsYXlDR0woc3RhdGUpOworICAgICAg
ICAgICAgYnJlYWs7CisjICAgICAgICBlbmRpZgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKQogICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUp
OwogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTElOVVgpCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcAppbmRleCBl
NDM0OTZmYzM0NzE5M2E5ZjFjYmMxMWZiZjZlNGRmZjljOTJlMjNlLi5hYThkOWVjMzkxODY5MTE4
YTliNzNkOWY1MTgwNjkxYTMzNTI0M2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAKQEAgLTEwLDYgKzEwLDcgQEAKIAog
I2luY2x1ZGUgImFuZ2xlYmFzZS9ub19kZXN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiY29tbW9uL21h
dGh1dGlsLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgiCiAjaW5jbHVk
ZSAibGliQU5HTEUvQ29udGV4dC5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0ZyYW1lYnVmZmVyLmgi
CiAKQEAgLTEwMzAsOCArMTAzMSwyMSBAQCBzdGF0aWMgSW50ZXJuYWxGb3JtYXRJbmZvTWFwIEJ1
aWxkSW50ZXJuYWxGb3JtYXRJbmZvTWFwKCkKICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1JH
QkEsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX1JHQkEsICAgICAgICAg
ICBHTF9CWVRFLCAgICAgICAgICAgICAgICAgICAgICAgIEdMX1NJR05FRF9OT1JNQUxJWkVELCAg
IGZhbHNlLCBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE5ldmVyU3VwcG9ydGVkLCAgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKICAgICBBZGRSR0JBRm9y
bWF0KCZtYXAsIEdMX1NSR0IsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDAsIDAsIEdM
X1NSR0IsICAgICAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lH
TkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjpzUkdCPiwgICAg
ICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsK
ICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1NSR0JfQUxQSEFfRVhULCBmYWxzZSwgIDgsICA4
LCAgOCwgIDgsIDAsIEdMX1NSR0JfQUxQSEFfRVhULCBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAg
ICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0PCZFeHRlbnNp
b25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUV4
dDwmRXh0ZW5zaW9uczo6c1JHQj4sICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5l
dmVyU3VwcG9ydGVkKTsKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0gICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBH
TF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwg
ICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJ
WkVELCBmYWxzZSwgUmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFUzwyLCAwPiwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CisjaWYgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCisgICAgYW5nbGU6OlN5c3RlbUluZm8gaW5mbzsKKyAgICBpZiAo
YW5nbGU6OkdldFN5c3RlbUluZm8oJmluZm8pKQorICAgIHsKKyAgICAgICAgaWYgKCFpbmZvLmlz
aU9TQXBwT25NYWMpCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIFVzaW5nIE9wZW5HTC5mcmFt
ZXdvcmsuCisgICAgICAgICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAg
ICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05F
RF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1
aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9ybWF0QkdSQTg4ODg+LCAgIEFsd2F5c1N1cHBv
cnRlZCwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgTmV2
ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisg
ICAgICAgIHsKKyAgICAgICAgICAgIC8vIFVzaW5nIE9wZW5HTEVTLmZyYW1ld29yay4KKyAgICAg
ICAgICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwg
IDgsICA4LCAgOCwgMCwgR0xfQkdSQV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAg
ICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVFUzwyLCAwPiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJl
RVM8MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwg
TmV2ZXJTdXBwb3J0ZWQpOworICAgICAgICB9CisgICAgfQogI2Vsc2UKICAgICBBZGRSR0JBRm9y
bWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdM
X0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lH
TkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9y
bWF0QkdSQTg4ODg+LCAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6
dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yZGY1N2NlN2M5MmI2MmU4MzE3MjFjNDUyYjZmZDUwZTA4NDA2ZjE5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1Nv
ZnRMaW5raW5nX2FwcGxlLmgKQEAgLTAsMCArMSwxMTQgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAy
MCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNl
IGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8g
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIFNvZnRMaW5raW5nX2FwcGxlLmNw
cDogTWFjcm9zIGZvciBzb2Z0LWxpbmtpbmcgRnJhbWV3b3JrcyBhbmQgRnVuY3Rpb25zLgorCisj
aWZuZGVmIFNPRlRfTElOS0lOR19BUFBMRV9IXworI2RlZmluZSBTT0ZUX0xJTktJTkdfQVBQTEVf
SF8KKworI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9BUFBMRSkKKworI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgorCisjaW1wb3J0IDxk
aXNwYXRjaC9kaXNwYXRjaC5oPgorI2ltcG9ydCA8ZGxmY24uaD4KKyNpbXBvcnQgPG9iamMvcnVu
dGltZS5oPgorCisjZGVmaW5lIFJFTEVBU0VfQVNTRVJUKGV4cHJlc3Npb24sIG1lc3NhZ2UpICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIChleHByZXNzaW9uID8gc3RhdGljX2Nhc3Q8dm9pZD4oMCkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICAgICAgICAgIDogKEZBVEFMKCkgPDwgIlx0ISBBc3NlcnQgZmFpbGVk
IGluICIgPDwgX19GVU5DVElPTl9fIDw8ICIgKCIgPDwgX19GSUxFX18gICAgICAgICAgICAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIjoiIDw8IF9fTElORV9fIDw8ICIp
OiAiIDw8ICNleHByZXNzaW9uIDw8ICJcblx0ISBNZXNzYWdlOiAiIDw8IG1lc3NhZ2UpKQorCisK
KyNpZmRlZiBfX2NwbHVzcGx1cworI2RlZmluZSBFWFRFUk5fQ19CRUdJTiBleHRlcm4gIkMiIHsK
KyNkZWZpbmUgRVhURVJOX0NfRU5EIH0KKyNlbHNlCisjZGVmaW5lIEVYVEVSTl9DX0JFR0lOCisj
ZGVmaW5lIEVYVEVSTl9DX0VORAorI2VuZGlmCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZSQU1FV09S
S19IRUFERVIoZnJhbWV3b3JrKSBcCisgICAgZXh0ZXJuIHZvaWQqIGZyYW1ld29yayMjTGlicmFy
eSgpOyBcCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZSQU1FV09SS19TT1VSQ0UoZnJhbWV3b3JrKSBc
CisgICAgdm9pZCogZnJhbWV3b3JrIyNMaWJyYXJ5KCkgXAorICAgIHsgXAorICAgICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2UgPSAwOyBcCisgICAgICAgIHN0YXRpYyB2b2lkKiBmcmFt
ZXdvcmtMaWJyYXJ5ID0gTlVMTDsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBc
CisgICAgICAgICAgICBmcmFtZXdvcmtMaWJyYXJ5ID0gZGxvcGVuKCIvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy8iICNmcmFtZXdvcmsgIi5mcmFtZXdvcmsvIiAjZnJhbWV3b3JrLCBSVExEX05P
Vyk7IFwKKyAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGZyYW1ld29ya0xpYnJhcnksICJVbmFi
bGUgdG8gbG9hZCAiICNmcmFtZXdvcmsgIi5mcmFtZXdvcmsiKTsgXAorICAgICAgICB9KTsgXAor
ICAgICAgICByZXR1cm4gZnJhbWV3b3JrTGlicmFyeTsgXAorICAgIH0KKworI2RlZmluZSBTT0ZU
X0xJTktfRlVOQ1RJT05fSEVBREVSKGZyYW1ld29yaywgZnVuY3Rpb25OYW1lLCByZXN1bHRUeXBl
LCBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMsIHBhcmFtZXRlck5hbWVzKSBcCisgICAgRVhURVJOX0Nf
QkVHSU4gXAorICAgIHJlc3VsdFR5cGUgZnVuY3Rpb25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9u
czsgXAorICAgIEVYVEVSTl9DX0VORCBcCisgICAgZXh0ZXJuIHJlc3VsdFR5cGUgaW5pdCMjZnJh
bWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zOyBcCisgICAgZXh0ZXJu
IHJlc3VsdFR5cGUoKnNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSkgcGFyYW1ldGVy
RGVjbGFyYXRpb25zOyBcCisgICAgaW5saW5lIF9fYXR0cmlidXRlX18oKF9fYWx3YXlzX2lubGlu
ZV9fKSkgcmVzdWx0VHlwZSBmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zIFwKKyAg
ICB7IFwKKyAgICAgICAgcmV0dXJuIHNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSBw
YXJhbWV0ZXJOYW1lczsgXAorICAgIH0gXAorCisjZGVmaW5lIFNPRlRfTElOS19GVU5DVElPTl9T
T1VSQ0UoZnJhbWV3b3JrLCBmdW5jdGlvbk5hbWUsIHJlc3VsdFR5cGUsIHBhcmFtZXRlckRlY2xh
cmF0aW9ucywgcGFyYW1ldGVyTmFtZXMpIFwKKyAgICByZXN1bHRUeXBlKCpzb2Z0TGluayMjZnJh
bWV3b3JrIyNmdW5jdGlvbk5hbWUpIHBhcmFtZXRlckRlY2xhcmF0aW9ucyA9IGluaXQjI2ZyYW1l
d29yayMjZnVuY3Rpb25OYW1lOyBcCisgICAgcmVzdWx0VHlwZSBpbml0IyNmcmFtZXdvcmsjI2Z1
bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgXAorICAgIHsgXAorICAgICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7IFwKKyAgICAgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwg
XnsgXAorICAgICAgICAgICAgc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lID0gKHJl
c3VsdFR5cGUgKCopIHBhcmFtZXRlckRlY2xhcmF0aW9ucykgZGxzeW0oZnJhbWV3b3JrIyNMaWJy
YXJ5KCksICNmdW5jdGlvbk5hbWUpOyBcCisgICAgICAgIH0pOyBcCisgICAgICAgIHJldHVybiBz
b2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyTmFtZXM7IFwKKyAgICB9
IFwKKworI2RlZmluZSBTT0ZUX0xJTktfQ0xBU1NfSEVBREVSKGNsYXNzTmFtZSkgXAorICAgIEBj
bGFzcyBjbGFzc05hbWU7IFwKKyAgICBleHRlcm4gQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xh
c3MpKCk7IFwKKyAgICBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNlKCk7IFwK
KyAgICBpbmxpbmUgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0YW5jZSgpIFwKKyAg
ICB7IFwKKyAgICAgICAgcmV0dXJuIFtnZXQjI2NsYXNzTmFtZSMjQ2xhc3MoKSBhbGxvY107IFwK
KyAgICB9CisKKyNkZWZpbmUgU09GVF9MSU5LX0NMQVNTKGZyYW1ld29yaywgY2xhc3NOYW1lKSBc
CisgICAgQGNsYXNzIGNsYXNzTmFtZTsgXAorICAgIHN0YXRpYyBDbGFzcyBpbml0IyNjbGFzc05h
bWUoKTsgXAorICAgIENsYXNzICgqZ2V0IyNjbGFzc05hbWUjI0NsYXNzKSgpID0gaW5pdCMjY2xh
c3NOYW1lOyBcCisgICAgc3RhdGljIENsYXNzIGNsYXNzIyNjbGFzc05hbWU7IFwKKyAgICBcCisg
ICAgc3RhdGljIENsYXNzIGNsYXNzTmFtZSMjRnVuY3Rpb24oKSBcCisgICAgeyBcCisgICAgICAg
IHJldHVybiBjbGFzcyMjY2xhc3NOYW1lOyBcCisgICAgfSBcCisgICAgXAorICAgIHN0YXRpYyBD
bGFzcyBpbml0IyNjbGFzc05hbWUoKSBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBkaXNwYXRj
aF9vbmNlX3Qgb25jZTsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBcCisgICAg
ICAgICAgICBmcmFtZXdvcmsjI0xpYnJhcnkoKTsgXAorICAgICAgICAgICAgY2xhc3MjI2NsYXNz
TmFtZSA9IG9iamNfZ2V0Q2xhc3MoI2NsYXNzTmFtZSk7IFwKKyAgICAgICAgICAgIFJFTEVBU0Vf
QVNTRVJUKGNsYXNzIyNjbGFzc05hbWUsICJvYmpjX2dldENsYXNzIGZhaWxlZCBmb3IgIiAjY2xh
c3NOYW1lKTsgXAorICAgICAgICAgICAgZ2V0IyNjbGFzc05hbWUjI0NsYXNzID0gY2xhc3NOYW1l
IyNGdW5jdGlvbjsgXAorICAgICAgICB9KTsgXAorICAgICAgICByZXR1cm4gY2xhc3MjI2NsYXNz
TmFtZTsgXAorICAgIH0gXAorICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcHVzaCIpIFwK
KyAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgXCItV3VudXNlZC1mdW5jdGlv
blwiIikgXAorICAgIHN0YXRpYyBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNl
KCkgXAorICAgIHsgXAorICAgICAgICByZXR1cm4gW2dldCMjY2xhc3NOYW1lIyNDbGFzcygpIGFs
bG9jXTsgXAorICAgIH0gXAorICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcG9wIikKKwor
I2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyNlbmRpZiAvLyBTT0ZU
X0xJTktJTkdfQVBQTEVfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xNTViNGRmN2Q3ZDJlZWUzOWQ5N2NkZTkwZjYwYTdhMjc0ZmY4YzJjCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwCkBAIC0wLDAgKzEsMzIgQEAKKy8vCisvLyBD
b3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0
IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIENHTEZ1bmN0
aW9ucy5jcHA6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBDR0wgaW50ZXJmYWNlLgorCisjaW5j
bHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL0NHTEZ1bmN0aW9ucy5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykg
fHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKworU09GVF9MSU5LX0ZSQU1F
V09SS19TT1VSQ0UoT3BlbkdMKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRy
aWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0
dHJpYnMsIHBpeCwgbnBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dM
Q3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRl
eHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENH
TEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZv
cm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJp
YiwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc3Ryb3lD
b250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktf
RlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveVBpeGVsRm9ybWF0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTEVycm9yU3RyaW5nLCBjb25zdCBjaGFyICosIChDR0xFcnJvciBlcnJvciks
IChlcnJvcikpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMUmVsZWFzZUNv
bnRleHQsIHZvaWQsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNU
SU9OX1NPVVJDRShPcGVuR0wsIENHTFNldEN1cnJlbnRDb250ZXh0LCBDR0xFcnJvciwgKENHTENv
bnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMU2V0VmlydHVhbFNjcmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQg
c2NyZWVuKSwgKGN0eCwgc2NyZWVuKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xUZXhJbWFnZUlPU3VyZmFjZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBH
TGVudW0gdGFyZ2V0LCBHTGVudW0gaW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNp
emVpIGhlaWdodCwgR0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1
cmZhY2UsIEdMdWludCBwbGFuZSksIChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0
aCwgaGVpZ2h0LCBmb3JtYXQsIHR5cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29u
dGV4dE9iaiBjdHgpLCAoY3R4KSkKKworU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0ws
IENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQs
IEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSks
IChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJ
bmZvT2JqIHJlbmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMUXVlcnlSZW5kZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dM
UmVuZGVyZXJJbmZvT2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5k
LCBucmVuZCkpCisKKyNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYThhMWQ3YzczYmM5ZDhlMWNiYmQ4ZGRiMzQ3MzQx
MTk1ZWFkMTYzNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgKQEAgLTAsMCArMSwzOSBA
QAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBs
aWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKwor
Ly8gQ0dMRnVuY3Rpb25zLmg6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBDR0wgaW50ZXJmYWNl
LgorCisjaWZuZGVmIENHTF9GVU5DVElPTlNfSF8KKyNkZWZpbmUgQ0dMX0ZVTkNUSU9OU19IXwor
CisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorCisjaW5j
bHVkZSA8T3BlbkdML09wZW5HTC5oPgorCisjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wv
U29mdExpbmtpbmdfYXBwbGUuaCIKKworU09GVF9MSU5LX0ZSQU1FV09SS19IRUFERVIoT3BlbkdM
KQorCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3Jt
YXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENH
TFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkp
CitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMQ3JlYXRlQ29udGV4dCwgQ0dM
RXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hhcmUsIENHTENv
bnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hF
QURFUihPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxG
b3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRy
aWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQorU09GVF9M
SU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9y
LCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclBy
b3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc3Ryb3lDb250ZXh0LCBD
R0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
SEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVs
Rm9ybWF0T2JqIHBpeCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJl
bmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRXJyb3JT
dHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVycm9yKSkKK1NPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3Is
IChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpu
cmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9I
RUFERVIoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4
KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMU2V0Q3VycmVu
dENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwg
KENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9M
SU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9m
b3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVu
dW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFjZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFy
Z2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJm
YWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVXBkYXRl
Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorCisjZW5kaWYg
Ly8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkKKworI2VuZGlmIC8vIENHTF9GVU5DVElPTlNfSF8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlz
cGxheUNHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvRGlzcGxheUNHTC5tbQppbmRleCA3OWExMWQ0ZDI5OGExYTNiMjQxZDk4NDBlY2E3
YmI1M2JmMjU3YjE1Li5lN2NjMmJhMmZhNjNjNmEzMzYxYjA1N2Y4ZGYxNzgyODYxMzc5ZGYxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCkBAIC0yOCw2ICsyOCw4IEBACiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgi
CiAjICAgIGluY2x1ZGUgInBsYXRmb3JtL1BsYXRmb3JtTWV0aG9kcy5oIgogCisjICAgIGluY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNl
CiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wu
Y3BwCmluZGV4IGFmZGNhNGYyZWY5NmM4NTVmODZmNjk4OGMwYTY2ZjNiM2ZmOTY0N2MuLjhlZDQz
OTFlMDMwZDRhMGI0NTQwMzAwMmI3YzRmZWJlODE0NGVlOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3Vy
ZmFjZUNHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcApAQCAtMjcsNiArMjcsOCBAQAog
IyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9UZXh0dXJlR0wuaCIKICMgICAgaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKIAorIyAgICBpbmNs
dWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKIG5hbWVzcGFj
ZSByeAogewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oCmlu
ZGV4IGQ4YjRjYzJmOTFjMzQxYmE4ZjIwZDE2ZTM5YmQ2YmQwMzkwOGNlMDQuLmQ4YmFhYmY3ZmM3
OGM4MTZjNmMzODNmNmRjZWNiMTU0MGRlMzRkYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvV2luZG93U3VyZmFjZUNHTC5oCkBAIC0xOCw3ICsxOCw3IEBAIHN0cnVjdCBfX0lPU3VyZmFj
ZTsKIHR5cGVkZWYgX19JT1N1cmZhY2UgKklPU3VyZmFjZVJlZjsKIAogLy8gV2ViS2l0J3MgYnVp
bGQgcHJvY2VzcyByZXF1aXJlcyB0aGF0IGV2ZXJ5IE9iamVjdGl2ZS1DIGNsYXNzIG5hbWUgaGFz
IHRoZSBwcmVmaXggIldlYiIuCi1AY2xhc3MgV2ViU3dhcExheWVyOworQGNsYXNzIFdlYlN3YXBM
YXllckNHTDsKIAogbmFtZXNwYWNlIHJ4CiB7CkBAIC04Nyw3ICs4Nyw3IEBAIGNsYXNzIFdpbmRv
d1N1cmZhY2VDR0wgOiBwdWJsaWMgU3VyZmFjZUdMCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkZyYW1lYnVmZmVyU3RhdGUgJnN0YXRlKSBv
dmVycmlkZTsKIAogICBwcml2YXRlOgotICAgIFdlYlN3YXBMYXllciAqbVN3YXBMYXllcjsKKyAg
ICBXZWJTd2FwTGF5ZXJDR0wgKm1Td2FwTGF5ZXI7CiAgICAgU2hhcmVkU3dhcFN0YXRlIG1Td2Fw
U3RhdGU7CiAgICAgdWludDY0X3QgbUN1cnJlbnRTd2FwSWQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3Vy
ZmFjZUNHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbQppbmRleCAwZmE1N2JlNDNiNzc5ZjBkZWViY2Zk
YzUxMjAyNjg1MTVhYjk0NTZmLi5iOGQ1OTkwZTY0ZTgyZWU3NjcxM2MyNjUzNDczZmJiYWU0MzUx
OGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCkBA
IC0yMyw3ICsyMyw5IEBACiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRl
TWFuYWdlckdMLmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNw
bGF5Q0dMLmgiCiAKLUBpbnRlcmZhY2UgV2ViU3dhcExheWVyIDogQ0FPcGVuR0xMYXllciB7Cisj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwor
QGludGVyZmFjZSBXZWJTd2FwTGF5ZXJDR0wgOiBDQU9wZW5HTExheWVyIHsKICAgICBDR0xDb250
ZXh0T2JqIG1EaXNwbGF5Q29udGV4dDsKIAogICAgIGJvb2wgaW5pdGlhbGl6ZWQ7CkBAIC0zNyw3
ICszOSw3IEBACiAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOihjb25zdCByeDo6RnVuY3Rpb25z
R0wgKilmdW5jdGlvbnM7CiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXIKK0Bp
bXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXJDR0wKIC0gKGlkKWluaXRXaXRoU2hhcmVkU3RhdGU6
KHJ4OjpTaGFyZWRTd2FwU3RhdGUgKilzd2FwU3RhdGUKICAgICAgICAgICAgICAgd2l0aENvbnRl
eHQ6KENHTENvbnRleHRPYmopZGlzcGxheUNvbnRleHQKICAgICAgICAgICAgIHdpdGhGdW5jdGlv
bnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAqKWZ1bmN0aW9ucwpAQCAtMjA4LDkgKzIxMCw5IEBA
IGVnbDo6RXJyb3IgV2luZG93U3VyZmFjZUNHTDo6aW5pdGlhbGl6ZShjb25zdCBlZ2w6OkRpc3Bs
YXkgKmRpc3BsYXkpCiAgICAgbVN3YXBTdGF0ZS5sYXN0UmVuZGVyZWQgICA9ICZtU3dhcFN0YXRl
LnRleHR1cmVzWzFdOwogICAgIG1Td2FwU3RhdGUuYmVpbmdQcmVzZW50ZWQgPSAmbVN3YXBTdGF0
ZS50ZXh0dXJlc1syXTsKIAotICAgIG1Td2FwTGF5ZXIgPSBbW1dlYlN3YXBMYXllciBhbGxvY10g
aW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBTdGF0ZQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB3aXRoQ29udGV4dDptQ29udGV4dAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25z
XTsKKyAgICBtU3dhcExheWVyID0gW1tXZWJTd2FwTGF5ZXJDR0wgYWxsb2NdIGluaXRXaXRoU2hh
cmVkU3RhdGU6Jm1Td2FwU3RhdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CiAg
ICAgW21MYXllciBhZGRTdWJsYXllcjptU3dhcExheWVyXTsKICAgICBbbVN3YXBMYXllciBzZXRD
b250ZW50c1NjYWxlOlttTGF5ZXIgY29udGVudHNTY2FsZV1dOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VF
QUdMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuY3BwCmluZGV4IGE5ODM0NjE5MjQwY2VkMDM3ZjU0ZjEwZDE0OGM3
ZTFkMDY5MzdlYzUuLjY0MTk3ZmZlZmQ1NzIxOGQ1Y2IzMzY1YzVmYjMyNGNlZTM4NmM0MjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAog
CiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmlu
ZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuaCIKIApAQCAtNTYsNCArNTYsNCBAQCB2b2lkIERldmljZUVBR0w6
OmdlbmVyYXRlRXh0ZW5zaW9ucyhlZ2w6OkRldmljZUV4dGVuc2lvbnMgKm91dEV4dGVuc2lvbnMp
IGNvbnN0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNl
bmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
ZXZpY2VFQUdMLmgKaW5kZXggNTc2OTY5MjFlZjNiZTU0ODZhZTkxODU1MGJkMzMzOGIwZDRiYzBh
NS4uOTNhYmZmYzAyODVmNmIwNTVlNTdlMmNkYmFlNDA4NTUyM2IyZTE0NCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2
aWNlRUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaApAQCAtMTEsNyArMTEsNyBAQAogCiAjaW1wb3J0ICJj
b21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BV
X0FSTTY0KSkKIAogI2luY2x1ZGUgImxpYkFOR0xFL0RldmljZS5oIgogI2luY2x1ZGUgImxpYkFO
R0xFL3JlbmRlcmVyL0RldmljZUltcGwuaCIKQEAgLTM0LDYgKzM0LDYgQEAgY2xhc3MgRGV2aWNl
RUFHTCA6IHB1YmxpYyBEZXZpY2VJbXBsCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYg
IC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAm
JiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNl
bmRpZiAgLy8gTElCQU5HTEVfUkVOREVSRVJfR0xfRUFHTF9ERVZJQ0VFQUdMX0hfCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9EaXNwbGF5RUFHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaAppbmRleCAyNjFiYTQwN2QxOTNiZWI5MzEyYWQx
MTA2ZDhjNmJlODBkODczOWQ5Li5hNTM2NmU5MTZlOWM3NTYwOWYzMTAxMzEyZmViNjBmMDU3YzEx
MTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKQEAgLTExLDcgKzEx
LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisj
aWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9EaXNwbGF5R0wuaCIKIApAQCAtOTcsNiArOTcsNiBAQCBjbGFzcyBEaXNwbGF5RUFHTCA6
IHB1YmxpYyBEaXNwbGF5R0wKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAvLyBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpCisjZW5kaWYgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNlbmRpZiAgLy8g
TElCQU5HTEVfUkVOREVSRVJfR0xfRUFHTF9ESVNQTEFZRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxh
eUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbQppbmRleCBjZWIyZDExZmM3OTllMzk2MjVjNzc4YTcyMjU2
NTJhYWVjODg4YTExLi41ZDlhNzcxNmZlNTZiZDRlZjJkZTNhN2FhNWE5NDQ4NDhmNjNjM2ZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAK
IAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZp
bmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0Rpc3BsYXlFQUdMLmgiCiAKQEAgLTIzLDExICsyMywxMCBAQAogIyAgICBpbXBvcnQg
ImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaCIKIAogIyAgICBp
bXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgotIyAgICBpbXBvcnQgPE9wZW5HTEVTL0VB
R0wuaD4KICMgICAgaW1wb3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4KICMgICAgaW1wb3J0
IDxkbGZjbi5oPgogCi0jICAgIGRlZmluZSBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT04KKyMgICAg
aW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaCIKIAogbmFt
ZXNwYWNlCiB7CkBAIC03MSwxMiArNzAsMTIgQEAgZWdsOjpFcnJvciBEaXNwbGF5RUFHTDo6aW5p
dGlhbGl6ZShlZ2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgICAgIHJldHVybiBlZ2w6OkVnbE5v
dEluaXRpYWxpemVkKCkgPDwgIlVuYWJsZSB0byBxdWVyeSBBTkdMRSdzIFN5c3RlbUluZm8uIjsK
ICAgICB9CiAKLSAgICBtQ29udGV4dCA9IFtbRUFHTENvbnRleHQgYWxsb2NdIGluaXRXaXRoQVBJ
OmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKKyAgICBtQ29udGV4dCA9IFtbZ2V0RUFHTENv
bnRleHRDbGFzcygpIGFsbG9jXSBpbml0V2l0aEFQSTprRUFHTFJlbmRlcmluZ0FQSU9wZW5HTEVT
M107CiAgICAgaWYgKG1Db250ZXh0ID09IG51bGxwdHIpCiAgICAgewogICAgICAgICByZXR1cm4g
ZWdsOjpFZ2xOb3RJbml0aWFsaXplZCgpIDw8ICJDb3VsZCBub3QgY3JlYXRlIHRoZSBFQUdMIGNv
bnRleHQuIjsKICAgICB9Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om1Db250
ZXh0XTsKKyAgICBbZ2V0RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om1Db250
ZXh0XTsKIAogICAgIC8vIFRoZXJlIGlzIG5vIGVxdWl2YWxlbnQgZ2V0UHJvY0FkZHJlc3MgaW4g
RUFHTCBzbyB3ZSBvcGVuIHRoZSBkeWxpYiBkaXJlY3RseQogICAgIHZvaWQgKmhhbmRsZSA9IGRs
b3BlbihrT3BlbkdMRVNEeWxpYk5hbWUsIFJUTERfTk9XKTsKQEAgLTEwNiw3ICsxMDUsNyBAQCB2
b2lkIERpc3BsYXlFQUdMOjp0ZXJtaW5hdGUoKQogICAgIG1SZW5kZXJlci5yZXNldCgpOwogICAg
IGlmIChtQ29udGV4dCAhPSBudWxscHRyKQogICAgIHsKLSAgICAgICAgW0VBR0xDb250ZXh0IHNl
dEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0
Q3VycmVudENvbnRleHQ6bmlsXTsKICAgICAgICAgW21Db250ZXh0IHJlbGVhc2VdOwogICAgICAg
ICBtQ29udGV4dCA9IG51bGxwdHI7CiAgICAgfQpAQCAtMzMwLDE0ICszMjksMTQgQEAgV29ya2Vy
Q29udGV4dEVBR0w6OldvcmtlckNvbnRleHRFQUdMKEVBR0xDb250ZXh0T2JqIGNvbnRleHQpIDog
bUNvbnRleHQoY29udGV4dCkKIAogV29ya2VyQ29udGV4dEVBR0w6On5Xb3JrZXJDb250ZXh0RUFH
TCgpCiB7Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgW2dl
dEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpuaWxdOwogICAgIFttQ29udGV4
dCByZWxlYXNlXTsKICAgICBtQ29udGV4dCA9IG51bGxwdHI7CiB9CiAKIGJvb2wgV29ya2VyQ29u
dGV4dEVBR0w6Om1ha2VDdXJyZW50KCkKIHsKLSAgICBpZiAoIVtFQUdMQ29udGV4dCBzZXRDdXJy
ZW50Q29udGV4dDpzdGF0aWNfY2FzdDxFQUdMQ29udGV4dCAqPihtQ29udGV4dCldKQorICAgIGlm
ICghW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpzdGF0aWNfY2FzdDxF
QUdMQ29udGV4dCAqPihtQ29udGV4dCldKQogICAgIHsKICAgICAgICAgRVJSKCkgPDwgIlVuYWJs
ZSB0byBtYWtlIGdsIGNvbnRleHQgY3VycmVudC4iOwogICAgICAgICByZXR1cm4gZmFsc2U7CkBA
IC0zNDcsMTMgKzM0NiwxMyBAQCBib29sIFdvcmtlckNvbnRleHRFQUdMOjptYWtlQ3VycmVudCgp
CiAKIHZvaWQgV29ya2VyQ29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQoKQogewotICAgIFtFQUdM
Q29udGV4dCBzZXRDdXJyZW50Q29udGV4dDpuaWxdOworICAgIFtnZXRFQUdMQ29udGV4dENsYXNz
KCkgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKIH0KIAogV29ya2VyQ29udGV4dCAqRGlzcGxheUVB
R0w6OmNyZWF0ZVdvcmtlckNvbnRleHQoc3RkOjpzdHJpbmcgKmluZm9Mb2cpCiB7CiAgICAgRUFH
TENvbnRleHRPYmogY29udGV4dCA9IG51bGxwdHI7Ci0gICAgY29udGV4dCAgICAgICAgICAgICAg
ICA9IFtbRUFHTENvbnRleHQgYWxsb2NdIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3Bl
bkdMRVMzXTsKKyAgICBjb250ZXh0ICAgICAgICAgICAgICAgID0gW1tnZXRFQUdMQ29udGV4dENs
YXNzKCkgYWxsb2NdIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKICAg
ICBpZiAoIWNvbnRleHQpCiAgICAgewogICAgICAgICAqaW5mb0xvZyArPSAiQ291bGQgbm90IGNy
ZWF0ZSB0aGUgRUFHTCBjb250ZXh0LiI7CkBAIC0zNzQsNCArMzczLDQgQEAgdm9pZCBEaXNwbGF5
RUFHTDo6cG9wdWxhdGVGZWF0dXJlTGlzdChhbmdsZTo6RmVhdHVyZUxpc3QgKmZlYXR1cmVzKQog
fQogfQogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQ
VV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uY2QzNjE5NWI5OTU4NmM5ZmVhNGVjOGM2NmZhNWQwYjEzZWFkNzE5YQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0VBR0xGdW5jdGlvbnMuaApAQCAtMCwwICsxLDI4IEBACisvLworLy8gQ29weXJpZ2h0
IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNv
dXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUK
Ky8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBFQUdMRnVuY3Rpb25zLmg6
IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBFQUdMIGludGVyZmFjZS4KKworI2lmbmRlZiBFQUdM
X0ZVTkNUSU9OU19IXworI2RlZmluZSBFQUdMX0ZVTkNUSU9OU19IXworCisjaW5jbHVkZSAiY29t
bW9uL3BsYXRmb3JtLmgiCisKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKworI2ltcG9y
dCA8T3BlbkdMRVMvRUFHTC5oPgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+Cisj
aW1wb3J0IDxPcGVuR0xFUy9FQUdMSU9TdXJmYWNlLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9y
ZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hF
QURFUihPcGVuR0xFUykKKworU09GVF9MSU5LX0NMQVNTX0hFQURFUihFQUdMQ29udGV4dCkKKwor
I2VuZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCisjZW5kaWYgLy8gQ0dMX0ZVTkNU
SU9OU19IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMubW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYTdkZmEyMWJiNzIzNGZiYjI4MjcwYmY4ZTVlMGY3MzhkY2ExYzZhNAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0VBR0xGdW5jdGlvbnMubW0KQEAgLTAsMCArMSwyNCBAQAorLy8KKy8vIENvcHlyaWdo
dCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBz
b3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJl
CisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gRUFHTEZ1bmN0aW9ucy5j
cHA6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBFQUdMIGludGVyZmFjZS4KKworI2luY2x1ZGUg
ImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAm
JiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisKKyNp
bXBvcnQgPE9wZW5HTEVTL0VBR0wuaD4KKyNpbXBvcnQgPE9wZW5HTEVTL0VBR0xEcmF3YWJsZS5o
PgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTElPU3VyZmFjZS5oPgorCisjaW5jbHVkZSAibGliQU5H
TEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaCIKKworU09GVF9MSU5LX0ZSQU1FV09S
S19TT1VSQ0UoT3BlbkdMRVMpCisKK1NPRlRfTElOS19DTEFTUyhPcGVuR0xFUywgRUFHTENvbnRl
eHQpCisKKyNlbmRpZiAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9T
dXJmYWNlU3VyZmFjZUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQppbmRleCBkMGI1Yzk4
MGJhYzk0MzBjMDFlZjEyMmNhNjQxZDE4YTRkNjI2YmJkLi5iMDY0OWFkNjU4ZGE5OTdhY2EwZTUz
MzA0NjRmNWQ0Nzk4ZTU0NDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9J
T1N1cmZhY2VTdXJmYWNlRUFHTC5tbQpAQCAtOSw3ICs5LDcgQEAKIAogI2ltcG9ydCAiY29tbW9u
L3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02
NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLmgiCiAKQEAgLTQyNyw0ICs0MjcsNCBAQCBJT1N1cmZhY2VMb2NrT3B0aW9ucyBJ
T1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0SU9TdXJmYWNlTG9ja09wdGlvbnMoKSBjb25zdAogCiB9
ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lP
UykKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVy
U3VyZmFjZUVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcAppbmRleCAzNmYxYzE1Yjk3NWRk
Y2IwYTA5N2VjOTk2MWZiMjM0ZDRhN2M0ZjE5Li5jYjE2NmE0YWVlNzMzZjU3NGE5OGVlNGVlZmMy
ZTVlMTY3YTBmZDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJT
dXJmYWNlRUFHTC5jcHAKQEAgLTksNyArOSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9y
bS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdM
LmgiCiAKQEAgLTE0NCw0ICsxNDQsNCBAQCBGcmFtZWJ1ZmZlckltcGwgKlBidWZmZXJTdXJmYWNl
RUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0CiAKIH0gIC8v
IG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQor
I2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRlcmVyRUFH
TC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9SZW5kZXJlckVBR0wuY3BwCmluZGV4IGE0NzM4YjI1NjZiM2EzOWZhZmU3OGI2ZmE3NjAw
ZTFhZjZhNjM2OWEuLjRkM2NmYmJlN2MzNTEwNjZmZjdkMDg4OWMyN2EyYzQ2MGZmZGQ5YjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1JlbmRlcmVyRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcApAQCAtOCw3ICs4LDcg
QEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL1JlbmRlcmVyRUFHTC5oIgpAQCAtMzEsNCArMzEsNCBAQCBXb3JrZXJDb250ZXh0
ICpSZW5kZXJlckVBR0w6OmNyZWF0ZVdvcmtlckNvbnRleHQoc3RkOjpzdHJpbmcgKmluZm9Mb2cp
CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dp
bmRvd1N1cmZhY2VFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oCmluZGV4IGNkNDc3Y2MzY2FlMjc5
OTYzNDhmNTFhOTIxMWQ5MmU0YmNmNWI3MjYuLjY5M2U5Y2Q2MDZjOWQwZmZjNmIxNmFlMTBhN2Q3
MjZjNzFkNzkyZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFj
ZUVBR0wuaApAQCAtMjIsNyArMjIsNyBAQCBzdHJ1Y3QgX19JT1N1cmZhY2U7CiB0eXBlZGVmIF9f
SU9TdXJmYWNlICpJT1N1cmZhY2VSZWY7CiAKIC8vIFdlYktpdCdzIGJ1aWxkIHByb2Nlc3MgcmVx
dWlyZXMgdGhhdCBldmVyeSBPYmplY3RpdmUtQyBjbGFzcyBuYW1lIGhhcyB0aGUgcHJlZml4ICJX
ZWIiLgotQGNsYXNzIFdlYlN3YXBMYXllcjsKK0BjbGFzcyBXZWJTd2FwTGF5ZXJFQUdMOwogCiBu
YW1lc3BhY2UgcngKIHsKQEAgLTkxLDcgKzkxLDcgQEAgY2xhc3MgV2luZG93U3VyZmFjZUVBR0wg
OiBwdWJsaWMgU3VyZmFjZUdMCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgZ2w6OkZyYW1lYnVmZmVyU3RhdGUgJnN0YXRlKSBvdmVycmlkZTsKIAog
ICBwcml2YXRlOgotICAgIFdlYlN3YXBMYXllciAqbVN3YXBMYXllcjsKKyAgICBXZWJTd2FwTGF5
ZXJFQUdMICptU3dhcExheWVyOwogICAgIFNoYXJlZFN3YXBTdGF0ZSBtU3dhcFN0YXRlOwogICAg
IHVpbnQ2NF90IG1DdXJyZW50U3dhcElkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5t
bSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L1dpbmRvd1N1cmZhY2VFQUdMLm1tCmluZGV4IDM4ZDI1M2ViZGViM2IzY2MxNjMyMzc0MzQ5NTQ3
YjA1NTM5ZmVkM2MuLjdhMzRiOGZjMzUzNzBkNDM0ZTNlZWU2MTcyMjU1ODg0YmU0ZDRjMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tCkBAIC04
LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaCIKIApAQCAtMTgsMTMgKzE4LDE5
IEBACiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvUmVuZGVyZXJHTC5oIgogIyAg
ICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmgiCiAjICAgIGlt
cG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgorIyAgICBpbXBv
cnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIgogCi0jICAgIGlt
cG9ydCA8T3BlbkdMRVMvRUFHTC5oPgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29y
ZS5oPgogCi0vLyBUT0RPKGFuZ2xlYnVnLmNvbS80Mjc1KTogSXQncyBub3QgY2xlYXIgd2h5IHRo
aXMgbmVlZHMgdG8gYmUgYW4gRUFHTExheWVyLgorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQogCi1AaW50ZXJmYWNlIFdl
YlN3YXBMYXllciA6IENBRUFHTExheWVyIHsKKy8vIEZJWE1FOiBOZWNlc3NhcnkgYmVjYXVzZSBD
QUVBR0xMYXllciBpcyBub3QgaW4gdGhlIHB1YmxpYyBRdWFydHpDb3JlIGhlYWRlcnMgaW4gdGhp
cyBjb25maWd1cmF0aW9uLgorQGludGVyZmFjZSBDQUVBR0xMYXllciA6IENBTGF5ZXIKK0BlbmQK
KworI2VuZGlmCisKK0BpbnRlcmZhY2UgV2ViU3dhcExheWVyRUFHTCA6IENBRUFHTExheWVyIHsK
ICAgICBFQUdMQ29udGV4dE9iaiBtRGlzcGxheUNvbnRleHQ7CiAKICAgICBib29sIGluaXRpYWxp
emVkOwpAQCAtMzgsNyArNDQsNyBAQAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczooY29uc3Qg
cng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zOwogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV2Vi
U3dhcExheWVyCitAaW1wbGVtZW50YXRpb24gV2ViU3dhcExheWVyRUFHTAogLSAoaWQpaW5pdFdp
dGhTaGFyZWRTdGF0ZToocng6OlNoYXJlZFN3YXBTdGF0ZSAqKXN3YXBTdGF0ZQogICAgICAgICAg
ICAgICB3aXRoQ29udGV4dDooRUFHTENvbnRleHRPYmopZGlzcGxheUNvbnRleHQKICAgICAgICAg
ICAgIHdpdGhGdW5jdGlvbnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAqKWZ1bmN0aW9ucwpAQCAt
NjksNyArNzUsNyBAQAogICAgIH0KICAgICBwdGhyZWFkX211dGV4X3VubG9jaygmbVN3YXBTdGF0
ZS0+bXV0ZXgpOwogCi0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om1EaXNwbGF5
Q29udGV4dF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpt
RGlzcGxheUNvbnRleHRdOwogCiAgICAgaWYgKCFpbml0aWFsaXplZCkKICAgICB7CkBAIC0xMDUs
NyArMTExLDcgQEAKIAogICAgIG1GdW5jdGlvbnMtPmJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVS
QlVGRkVSLCB0ZXh0dXJlLnRleHR1cmUpOwogICAgIFttRGlzcGxheUNvbnRleHQgcHJlc2VudFJl
bmRlcmJ1ZmZlcjpHTF9SRU5ERVJCVUZGRVJdOwotICAgIFtFQUdMQ29udGV4dCBzZXRDdXJyZW50
Q29udGV4dDpuaWxdOworICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRl
eHQ6bmlsXTsKIH0KIEBlbmQKIApAQCAtMTc0LDkgKzE4MCw5IEBAIGVnbDo6RXJyb3IgV2luZG93
U3VyZmFjZUVBR0w6OmluaXRpYWxpemUoY29uc3QgZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAg
IG1Td2FwU3RhdGUubGFzdFJlbmRlcmVkICAgPSAmbVN3YXBTdGF0ZS50ZXh0dXJlc1sxXTsKICAg
ICBtU3dhcFN0YXRlLmJlaW5nUHJlc2VudGVkID0gJm1Td2FwU3RhdGUudGV4dHVyZXNbMl07CiAK
LSAgICBtU3dhcExheWVyID0gW1tXZWJTd2FwTGF5ZXIgYWxsb2NdIGluaXRXaXRoU2hhcmVkU3Rh
dGU6Jm1Td2FwU3RhdGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CisgICAgbVN3YXBMYXll
ciA9IFtbV2ViU3dhcExheWVyRUFHTCBhbGxvY10gaW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBT
dGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
d2l0aENvbnRleHQ6bUNvbnRleHQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOm1GdW5jdGlvbnNdOwogICAgIFttTGF5ZXIgYWRk
U3VibGF5ZXI6bVN3YXBMYXllcl07CiAgICAgW21Td2FwTGF5ZXIgc2V0Q29udGVudHNTY2FsZTpb
bUxheWVyIGNvbnRlbnRzU2NhbGVdXTsKIApAQCAtMzA2LDQgKzMxMiw0IEBAIEZyYW1lYnVmZmVy
SW1wbCAqV2luZG93U3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcihjb25zdCBn
bDo6Q29udGV4dCAqCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcAppbmRleCA0ZWExMDZhY2U4
ODRlMzVlYjFkNDIyNGNlZWY5MDhhMTc2MWNlMzAxLi41ZTI4OTg1YWQ5YjE5YWRiYzgyYjcxYjdh
ZTRkZDVkOTFkNjE1ZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMu
Y3BwCkBAIC0xMzQ0LDEyICsxMzQ0LDE5IEBAIHZvaWQgR2VuZXJhdGVDYXBzKGNvbnN0IEZ1bmN0
aW9uc0dMICpmdW5jdGlvbnMsCiAgICAgICAgIGZ1bmN0aW9ucy0+aGFzR0xFU0V4dGVuc2lvbigi
R0xfRVhUX2NvbXByZXNzZWRfRVRDMV9SR0I4X3N1Yl90ZXh0dXJlIik7CiAKICNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKQotICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7Ci0gICAg
aWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1heFN1cHBvcnRlZEVT
VmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKKyAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZv
OworICAgIGlmIChhbmdsZTo6R2V0U3lzdGVtSW5mbygmaW5mbykpCiAgICAgewotICAgICAgICAv
LyBBcHBsZSBJbnRlbC9BTUQgZHJpdmVycyBkbyBub3QgY29ycmVjdGx5IHVzZSB0aGUgVEVYVFVS
RV9TUkdCX0RFQ09ERSBwcm9wZXJ0eSBvZiBzYW1wbGVyCi0gICAgICAgIC8vIHN0YXRlcy4gIERp
c2FibGUgdGhpcyBleHRlbnNpb24gd2hlbiB3ZSB3b3VsZCBhZHZlcnRpc2UgYW55IEVTIHZlcnNp
b24gdGhhdCBoYXMgc2FtcGxlcnMuCi0gICAgICAgIGV4dGVuc2lvbnMtPnRleHR1cmVTUkdCRGVj
b2RlID0gZmFsc2U7CisgICAgICAgIGlmICghaW5mby5pc2lPU0FwcE9uTWFjKQorICAgICAgICB7
CisgICAgICAgICAgICBWZW5kb3JJRCB2ZW5kb3IgPSBHZXRWZW5kb3JJRChmdW5jdGlvbnMpOwor
ICAgICAgICAgICAgaWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1h
eFN1cHBvcnRlZEVTVmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAvLyBBcHBsZSBJbnRlbC9BTUQgZHJpdmVycyBkbyBub3QgY29ycmVj
dGx5IHVzZSB0aGUgVEVYVFVSRV9TUkdCX0RFQ09ERSBwcm9wZXJ0eSBvZiBzYW1wbGVyCisgICAg
ICAgICAgICAgICAgLy8gc3RhdGVzLiAgRGlzYWJsZSB0aGlzIGV4dGVuc2lvbiB3aGVuIHdlIHdv
dWxkIGFkdmVydGlzZSBhbnkgRVMgdmVyc2lvbiB0aGF0IGhhcyBzYW1wbGVycy4KKyAgICAgICAg
ICAgICAgICBleHRlbnNpb25zLT50ZXh0dXJlU1JHQkRlY29kZSA9IGZhbHNlOworICAgICAgICAg
ICAgfQorICAgICAgICB9CiAgICAgfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25m
aWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCmluZGV4IGI4MTA5ZTYzNDY2ZGFhNmE0N2MxNDVh
NzExYzE4OWEyOTAzMGIxOTUuLjU3MWU4ZWIwNzA2MGMxOTdjYzNlOTU0MTFiYmE0Mzc1N2U4NTFi
NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNj
b25maWcKKysrIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZp
ZwpAQCAtMTA1LDE2ICsxMDUsNiBAQCBXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTX2Nv
Y29hdG91Y2ggPSAtZnJhbWV3b3JrIE1vYmlsZUNvcmVTZXJ2aWNlczsKIFdLX01PQklMRV9HRVNU
QUxUX0xERkxBR1MgPSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1NfJChXS19DT0NPQV9UT1VD
SCkpOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU19jb2NvYXRvdWNoID0gLWxNb2JpbGVHZXN0
YWx0OwogCi1XS19PUEVOR0xfTERGTEFHUyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfJChXS19QTEFU
Rk9STV9OQU1FKSk7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3Bl
bkdMRVM7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE9w
ZW5HTEVTOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1Nf
aXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKFdLX09QRU5H
TF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2b3Mg
PSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxl
dHZzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19P
UEVOR0xfTERGTEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgT3BlbkdMOwotV0tfT1BFTkdM
X0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBPcGVuR0w7Ci0KIFdLX1NZU1RFTV9DT05GSUdV
UkFUSU9OX0xERkxBR1MgPSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfJChXS19Q
TEFURk9STV9OQU1FKSk7CiBXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTX21hY29zeCA9
IC1mcmFtZXdvcmsgU3lzdGVtQ29uZmlndXJhdGlvbjsKIApAQCAtMTI0LDcgKzExNCw3IEBAIFdL
X1VSTF9GT1JNQVRUSU5HX0xERkxBR1MgPSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfJChX
S19IQVZFX1VSTF9GT1JNQVRUSU5HCiBXS19VUkxfRk9STUFUVElOR19MREZMQUdTX1lFUyA9IC1m
cmFtZXdvcmsgVVJMRm9ybWF0dGluZzsKIAogLy8gRklYTUU6IFJlZHVjZSB0aGUgbnVtYmVyIG9m
IGFsbG93YWJsZV9jbGllbnRzIDxyZGFyOi8vcHJvYmxlbS8zMTgyMzk2OT4KLU9USEVSX0xERkxB
R1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktfTERGTEFHUykgLWxz
cWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNlX2xvYWQgJChCVUlMVF9QUk9E
VUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1
ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29y
ayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX0NPQ09BX1RPVUNIKSkg
JChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1fTkFNRSkpICQoV0tfQVBQS0lU
X0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdLX0FVRElPX1VOSVRfTERGTEFH
UykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xERkxBR1MpICQoV0tfREFUQV9E
RVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQo
V0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1Mp
ICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9M
REZMQUdTKSAkKFdLX09QRU5HTF9MREZMQUdTKSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xE
RkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxB
R1MpOworT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1F
V09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxvYmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2Vf
bG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvbGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsg
LWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBD
b3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1l
d29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQo
V0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9O
QU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tf
QVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERG
TEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19DT1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VS
VklDRVNfTERGTEFHUykgJChXS19JT1NVUkZBQ0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19M
SUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdL
X01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFH
UykgJChXS19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7
CiAKIE9USEVSX0xERkxBR1NfUExBVEZPUk1fY29jb2F0b3VjaCA9IC1hbGxvd2FibGVfY2xpZW50
IFdlYktpdCAtYWxsb3dhYmxlX2NsaWVudCBpVHVuZXNVIC1hbGxvd2FibGVfY2xpZW50IENhc2Fi
bGFuY2EgLWFsbG93YWJsZV9jbGllbnQgUmVtb3RlIC1hbGxvd2FibGVfY2xpZW50IFRWQm9va3Mg
LWFsbG93YWJsZV9jbGllbnQgRHVtcFJlbmRlclRyZWUgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0
VGVzdFJ1bm5lciAtYWxsb3dhYmxlX2NsaWVudCBUZXN0V2ViS2l0QVBJOwogT1RIRVJfTERGTEFH
U19QTEFURk9STV9tYWNvc3ggPSAtc3ViX2xpYnJhcnkgbGlib2JqYyAtdW1icmVsbGEgV2ViS2l0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDYwNWY2MDczZWU5Mzc1YzFmZDAwMzIzYzdlNmFmYWVlNzVkMzk3NTMuLjg3MjkwZWZm
YmMzZTI4MGMzYmViOTE2OTA3NTcyYmExMGFjNmZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExOSw2ICsxMTksOCBAQAog
CQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUxMzQyQ0EyMTVBQTEwQTAwNzE5
OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLzsgfTsKIAkJMkUxMzQyQ0QyMTVBQTEwQTAwNzE5OUQy
IC8qIFVJS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAq
LzsgfTsKIAkJMzEzMDhCMTQyMEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzA4QjEzMjBB
MjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggKi87IH07CisJCTMxNjQ3RkIwMjUx
NzU5REQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQUUyNTE3NTlEQjAwMTBGOEZCIC8q
IE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi87IH07CisJCTMxNjQ3RkIxMjUxNzU5RUYwMDEwRjhG
QiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExp
bmtDb2NvYS5oICovOyB9OwogCQk0MTZFOTk1MzIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29s
Ym94U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDE2RTk5NTEyM0RBRTZCRDAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5rLmNw
cCAqLzsgfTsKIAkJNDE2RTk5NTQyM0RBRTZCRTAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRM
aW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZF
OTk1MjIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLzsgfTsKIAkJ
NDFFMUYzNDQyNDhBNkEwMDAwMjJENURFIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkU5OTU1MjNEQUVG
RjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi87IH07CkBAIC0zMDUsNiAr
MzA3LDggQEAKIAkJMkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlLaXRTb2Z0TGluay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFVJS2l0
U29mdExpbmsubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMzA4QjEzMjBBMjE3
MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN5c3RlbVBy
ZXZpZXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQUUyNTE3NTlE
QjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBPcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBPcGVuR0xTb2Z0TGlua0NvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTM3MTE5QTc4MjBDQ0I1RkYwMDJDNkRDOSAvKiBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMu
eGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmln
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTZFOTk1MTIzREFFNkJEMDBFODcxQ0Ig
LyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTZFOTk1MjIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY1NCw2ICs2NTgsOCBAQAogCQkJCTFD
MDIyRUZDMjJDRkU4RTAwMDZERjAxQiAvKiBHdW56aXAuY3BwICovLAogCQkJCUNEQUNCMzVFMjM4
NzNFNDgwMDE4RDdDRSAvKiBNZWRpYVRvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJQ0RBQ0Iz
NUYyMzg3M0U0ODAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmggKi8sCisJCQkJMzE2
NDdGQUYyNTE3NTlEQzAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkz
MTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJ
CQlBMUY2M0M5RDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLmggKi8sCiAJCQkJ
QTFGNjNDOUUyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSAqLywKIAkJCQkw
NzYxMURCNDI0M0ZBNUJFMDBEODA3MDQgLyogVXNhZ2VUcmFja2luZ1NvZnRMaW5rLmggKi8sCkBA
IC04NTksNiArODY1LDcgQEAKIAkJCQkwQzc3ODU5RDFGNDUxMzBGMDBGNEVCQjYgLyogTlNXaW5k
b3dTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MEFCOEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBO
U1hQQ0Nvbm5lY3Rpb25TUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNUFGOTFGMUY0M0E0Qzcw
MDJFQUMwMiAvKiBPcGVuR0xFU1NQSS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjEyNTE3
NTlFRjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUExNjlCMDQxMjQ4RUYwNTIwMEVFOEI3QiAvKiBQYXNzS2l0SW5zdGFsbG1lbnRzU1BJLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBMUY2M0M5RjIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRM
aW5rLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzJEQTE1NTFGM0JFQjQ5MDBEQkMzMTcgLyogUGFz
c0tpdFNQSS5oIGluIEhlYWRlcnMgKi8sCkBAIC05OTUsNiArMTAwMiw3IEBACiAJCQkJNUM3Qzc4
NzQyM0FDM0U3NzAwNjVGNDdFIC8qIE1hbmFnZWRDb25maWd1cmF0aW9uU29mdExpbmsubW0gaW4g
U291cmNlcyAqLywKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZG
b3VuZGF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdD
RSAvKiBNZWRpYVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZC
MDI1MTc1OUREMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsubW0gaW4g
U291cmNlcyAqLywKIAkJCQlBMTE3NUI0RjFGNkIzMzczMDBDNEI5RjAgLyogUG9wdXBNZW51Lm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJNDQ1MEZDOUYyMUY1RjYwMjAwNERGQTU2IC8qIFF1aWNrTG9v
a1NvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9y
bU1hYy5jbWFrZQppbmRleCA2NTkxZDc5OWVhNWNhOTQzOGEzOWI5ZDM4ODg2NDY2ZjAzNTY1MjUz
Li5jZGYwMWIzNjZkZDk4OTZlNTdiOTllZjM3MjRkMzJlYzM0NjEyMzc5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKQEAgLTYsNiArNiw3IEBAIGxpc3QoQVBQRU5E
IFBBTF9QVUJMSUNfSEVBREVSUwogICAgIGNvY29hL0FwcFNTT1NvZnRMaW5rLmgKICAgICBjb2Nv
YS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oCiAgICAgY29jb2EvTWVkaWFUb29sYm94U29mdExpbmsu
aAorICAgIGNvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EuaAogICAgIGNvY29hL1Bhc3NLaXRTb2Z0
TGluay5oCiAKICAgICBtYWMvTG9va3VwU29mdExpbmsuaApAQCAtMTIzLDYgKzEyNCw3IEBAIGxp
c3QoQVBQRU5EIFBBTF9TT1VSQ0VTCiAgICAgY29jb2EvRmlsZVNpemVGb3JtYXR0ZXJDb2NvYS5t
bQogICAgIGNvY29hL0d1bnppcC5jcHAKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5j
cHAKKyAgICBjb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCiAgICAgY29jb2EvUGFzc0tpdFNv
ZnRMaW5rLm1tCiAKICAgICBjcnlwdG8vY29tbW9uY3J5cHRvL0NyeXB0b0RpZ2VzdENvbW1vbkNy
eXB0by5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdM
U29mdExpbmtDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RlOWQzNzZkN2I1YmNjYTM5MDNjZmExNjYxMWRkNDc3
MGNhNTVjNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0
Zi9Tb2Z0TGlua2luZy5oPgorCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRB
TFlTVCkKKworI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KKworU09GVF9MSU5LX0ZSQU1FV09S
S19GT1JfSEVBREVSKFBBTCwgT3BlbkdMKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURF
UihQQUwsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dM
UGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdM
aW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9S
X0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMQ3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhl
bEZvcm1hdE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCks
IChwaXgsIHNoYXJlLCBjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBP
cGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdM
aW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVy
cm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJl
clByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFs
dWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc3Ry
b3lDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5m
bywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElO
S19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xHZXRQYXJhbWV0ZXIsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIENHTENvbnRleHRQYXJhbWV0ZXIgcG5hbWUsIEdMaW50
ICpwYXJhbXMpLCAoY3R4LCBwbmFtZSwgcGFyYW1zKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1Jf
SEVBREVSKFBBTCwgT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVp
bnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCks
IChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVB
REVSKFBBTCwgT3BlbkdMLCBDR0xSZWxlYXNlUGl4ZWxGb3JtYXQsIHZvaWQsIChDR0xQaXhlbEZv
cm1hdE9iaiBwaXgpLCAocGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwg
T3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4
LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9I
RUFERVIoUEFMLCBPcGVuR0wsIENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTA2ZWUyZjA1Zjkx
ZjJkNTljZjBiZGI2ZTdhYWUyZWZlMmM1ZmQzYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbQpAQCAtMCwwICsxLDQ4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlT
VCkKKworI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtp
bmcuaD4KKworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwg
T3BlbkdMLCBQQUxfRVhQT1JUKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRI
X0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29u
c3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpw
aXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCksIFBBTF9FWFBPUlQpCitTT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMUmVs
ZWFzZVBpeGVsRm9ybWF0LCB2b2lkLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCksIFBB
TF9FWFBPUlQpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBD
R0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29u
dGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhl
bEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0s
IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4
X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUws
IE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQg
KnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRl
cmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0Uo
UEFMLCBPcGVuR0wsIENHTEdldFBhcmFtZXRlciwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0
eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBwbmFtZSwgR0xpbnQgKnBhcmFtcyksIChjdHgsIHBuYW1l
LCBwYXJhbXMpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENH
TFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJl
bmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwg
bnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFNl
dFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVl
biksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9w
ZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChj
dHgpKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBkNjJkNzg5MmRjNTAyMTQ1MGUxOTk5NDIxMmYyYjUwNGRhN2M0
ZTNkLi4yYTg5NDQ2MDdhZWY4Y2QxNDljNDBkMjc0NzBjNmIyYTUxNWQ0ZWM1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05MDgs
NiArOTA4LDcgQEAKIAkJMzE0ODc3RTYxRkFBQjAyNTAwQzA1NzU5IC8qIEpTT2Zmc2NyZWVuQ2Fu
dmFzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTQ4
NzdFNDFGQUFCMDIyMDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCAqLzsgfTsKIAkJMzE0
QkUzQTExQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0QkUzQTAxQjMwRjZCNzAwMTQx
OTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTMxNEJFM0E3MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZElt
YWdlR2VuZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMxNEJFM0E1MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVk
SW1hZ2UuaCAqLzsgfTsKKwkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxNjQ3RkE4MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzE2RENCMjAxRTc4
Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0IxQTFFNzhDQTU1MDAxQjVGODcg
LyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuaCAqLzsgfTsKIAkJMzE2RENCMjIxRTc4Q0E1NTAw
MUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjFDMUU3OENBNTUwMDFCNUY4NyAv
KiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmggKi87IH07CiAJCTMxNkRDQjRDMUU3OTEw
QTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUNvbm5lY3Rpb25TdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCNDYxRTc5MTBBNjAwMUI1Rjg3IC8q
IEpTUlRDSWNlQ29ubmVjdGlvblN0YXRlLmggKi87IH07CkBAIC03MTgyLDYgKzcxODMsOCBAQAog
CQkzMTRCRTNBNDFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0
ZWRJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNEJFM0E1MUIzMTAz
RkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTMxNTU3NENDMjE4RjY2RDAwMEQ4OEY2NiAvKiBQb2ludGVyRXZl
bnRJT1MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2
ZW50SU9TLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTgyNTE2MTZC
RDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gT3BlbkdM
U29mdExpbmtDb2NvYS5oOyBwYXRoID0gLi4vLi4vLi4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkE5MjUxNjE2
QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1l
ID0gT3BlbkdMU29mdExpbmtDb2NvYS5tbTsgcGF0aCA9IC4uLy4uLy4uL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2
RENCMTIxRTc4QkU0MzAwMUI1Rjg3IC8qIFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTcxRTc4QzMzMDAwMUI1Rjg3IC8qIFJUQ1J0cFRyYW5z
Y2VpdmVyRGlyZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNkRDQjE5MUU3OENBNTUwMDFCNUY4NyAv
KiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0yNjI4Myw2ICsyNjI4Niw4IEBACiAJCQkJQUQ5RkY2RTAxOTA4MzkxRDAw
M0I2MUUwIC8qIElPU3VyZmFjZVBvb2xDb2NvYS5tbSAqLywKIAkJCQlDREM0OEFDODIxNDlDRjJB
MDAyNEZENTkgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeUNvY29hLmNwcCAqLywK
IAkJCQlDREM0OEFDNzIxNDlDRjJBMDAyNEZENTkgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9u
RmFjdG9yeUNvY29hLmggKi8sCisJCQkJMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5H
TFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkzMTY0N0ZBOTI1MTYxNkJEMDAxMEY4RkIgLyogT3Bl
bkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJCQlDREVCM0Q3MjI0QzQxQTZFMDAxRkJFRUYgLyog
U291cmNlQnVmZmVyUGFyc2VyLmNwcCAqLywKIAkJCQlDREVCM0Q3MzI0QzQxQTZFMDAxRkJFRUYg
LyogU291cmNlQnVmZmVyUGFyc2VyLmggKi8sCiAJCQkJQ0Q4RjY2NzAyNEMwRjIwODAwMEM0MjFD
IC8qIFNvdXJjZUJ1ZmZlclBhcnNlcldlYk0uY3BwICovLApAQCAtMzMwNzgsNiArMzMwODMsNyBA
QAogCQkJCUZEQTNFOTVDMTM0QTQ5RUYwMDhENEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlv
bk5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNDg3N0UzMUZBQThGRTkwMEMwNTc1OSAvKiBP
ZmZzY3JlZW5DYW52YXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNDBDNTIwMUZERjE1MUEwMEQy
QTg3MyAvKiBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTMxNjQ3RkFCMjUxNjE4RTIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMkQzREE2NTBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVD
Ry5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJEM0RBNjUwRDAwNkNENjAwRUY2RjI3IC8qIE9wZW5U
eXBlTWF0aERhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyRDNFQTY1MEQwMDZDRDYwMEVGNkYy
OCAvKiBPcGVuVHlwZVR5cGVzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29j
b2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0Nv
bnRleHRHTE9wZW5HTENvY29hLm1tCmluZGV4IGE2MjZhMTUyZjhlMjM5NDQwYmU5MGQ1YThhN2Y1
OTQzMzc0ODk2MzMuLmZkYTJhMWQ4ZDE0NmE1ZDY3ZTZiMzNkYzBjZGUxYzVlZjVkZmI2MTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNz
Q29udGV4dEdMT3BlbkdMQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQpAQCAtMzksNiArMzks
NyBAQAogI2ltcG9ydCAiSG9zdFdpbmRvdy5oIgogI2ltcG9ydCAiSW1hZ2VCdWZmZXIuaCIKICNp
bXBvcnQgIkxvZ2dpbmcuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBv
cnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYkdMT2JqZWN0LmgiCiAjaW1wb3J0ICJXZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvUGxhdGZvcm1TY3JlZW5NYWMubW0KaW5kZXggYTFiOTRjZDFhOTFkOTk1ODZmNTZkNmZkZjUz
MmZjNDFjZmRkMzI1Yi4uMjUzZTNmMjQ0ZGE5ZGE4NDc5M2VkNWI1Yjg2NDQwYTI1YjA5M2NjZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5t
bQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9ydCAiRmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFt
ZVZpZXcuaCIKICNpbXBvcnQgIkhvc3RXaW5kb3cuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5r
Q29jb2EuaCIKICNpbXBvcnQgIlNjcmVlblByb3BlcnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3lu
Yy9Db2xvclN5bmMuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KaW5kZXggZGJm
MzFkOGFhMzkxZmI1ZDQ1ZjBhNmY1NGZlZjMxOWE1NjVlYmFkNC4uNmMxZDI2ZTQ3OWEwMjgxN2Jk
ZDViMTg2ZmFhMmFhNzZhNWVjYmRiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJHTEJsb2NrbGlzdC5tbQpAQCAtMjksNyArMjksNyBAQAogI2lmIFBMQVRGT1JNKE1BQykK
IAogI2ltcG9ydCAiQmxvY2tsaXN0VXBkYXRlci5oIgotI2ltcG9ydCA8T3BlbkdML09wZW5HTC5o
PgorI2ltcG9ydCAiT3BlbkdMU29mdExpbmtDb2NvYS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9D
RlV0aWxpdGllc1NQSS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQv
Q29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCmluZGV4IGUxODRjZjZjOTk0N2FiYTVjZjdk
NWQyYjA2M2NhNDVjZmM5NDJmYzEuLjVmNzVlY2JiMTQ5YzU1MWE0NTExYTkwNmZkN2Y0M2MxN2U5
ODg5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0Lnhj
Y29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmln
CkBAIC04OCwxNiArODgsNiBAQCBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2gg
PSAtbE1vYmlsZUdlc3RhbHQ7CiBXS19MSUJTQU5EQk9YX0xERkxBR1MgPSAkKFdLX0xJQlNBTkRC
T1hfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKIFdLX0xJQlNBTkRCT1hfTERGTEFHU19t
YWNvc3ggPSAtbHNhbmRib3g7CiAKLVdLX09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERG
TEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0g
LWZyYW1ld29yayBPcGVuR0xFUzsKLVdLX09QRU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZy
YW1ld29yayBPcGVuR0w7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJh
bWV3b3JrIE9wZW5HTEVTOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdM
X0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAk
KFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19h
cHBsZXR2b3MgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZM
QUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRv
cik7Ci1XS19PUEVOR0xfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tf
UERGS0lUX0xERkxBR1MgPSAkKFdLX1BERktJVF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkp
OwogV0tfUERGS0lUX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIFBERktpdDsKIFdLX1BE
RktJVF9MREZMQUdTX2lwaG9uZW9zW3Nkaz1pcGhvbmUqMTEuKl0gPSA7CkBAIC0xMzMsNyArMTIz
LDcgQEAgV0tfQVVUSEtJVF9MREZMQUdTX0lPU19TSU5DRV8xMyA9IC1mcmFtZXdvcmsgQXV0aEtp
dDsKIFdLX0FVVEhLSVRfTERGTEFHU19tYWNvc3ggPSAkKFdLX0FVVEhLSVRfTERGTEFHUyQoV0tf
TUFDT1NfMTAxNSkpOwogV0tfQVVUSEtJVF9MREZMQUdTX01BQ09TX1NJTkNFXzEwMTUgPSAtZnJh
bWV3b3JrIEF1dGhLaXQ7CiAKLUZSQU1FV09SS19BTkRfTElCUkFSWV9MREZMQUdTID0gLWxvYmpj
IC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29y
ZUZvdW5kYXRpb24gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAt
ZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgSU9LaXQg
LWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBXZWJLaXRMZWdhY3kgLWxuZXR3b3JrICQo
V0tfQUNDRVNTSUJJTElUWV9MREZMQUdTKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FTU0VS
VElPTl9TRVJWSUNFU19MREZMQUdTKSAkKFdLX1JVTk5JTkdCT0FSRF9TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0FVVEhLSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1BS
RURJQ1RJT05fTERGTEFHUykgJChXS19DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfR1JBUEhJ
Q1NfU0VSVklDRVNfTERGTEFHUykgJChXS19MSUJTQU5EQk9YX0xERkxBR1MpICQoV0tfTElCV0VC
UlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJ
TEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX09QRU5HTF9MREZMQUdTKSAkKFdLX1BERktJVF9MREZM
QUdTKSAkKFdLX1NBRkVfQlJPV1NJTkdfTERGTEFHUykgJChXS19TRUNVUklUWV9JTlRFUkZBQ0Vf
TERGTEFHUykgJChXS19VSUtJVF9MREZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1Mp
ICQoV0tfV0VCSU5TUEVDVE9SVUlfTERGTEFHUyk7CitGUkFNRVdPUktfQU5EX0xJQlJBUllfTERG
TEFHUyA9IC1sb2JqYyAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAt
ZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9uIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdv
cmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgV2ViS2l0TGVnYWN5
IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lCSUxJVFlfTERGTEFHUykgJChXS19BUFBLSVRfTERGTEFH
UykgJChXS19BU1NFUlRJT05fU0VSVklDRVNfTERGTEFHUykgJChXS19SVU5OSU5HQk9BUkRfU0VS
VklDRVNfTERGTEFHUykgJChXS19BVVRIS0lUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1Mp
ICQoV0tfQ09SRV9QUkVESUNUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTElCU0FOREJPWF9MREZMQUdT
KSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxB
R1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChX
S19TQUZFX0JST1dTSU5HX0xERkxBR1MpICQoV0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1Mp
ICQoV0tfVUlLSVRfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dF
QklOU1BFQ1RPUlVJX0xERkxBR1MpOwogCiAvLyBQcmV2ZW50IEMrKyBzdGFuZGFyZCBsaWJyYXJ5
IGJhc2ljX3N0cmluZ3N0cmVhbSwgb3BlcmF0b3IgbmV3LCBkZWxldGUgYW5kIHRoZWlyIHJlbGF0
ZWQgZXhjZXB0aW9uIHR5cGVzIGZyb20gYmVpbmcgZXhwb3J0ZWQgYXMgd2VhayBzeW1ib2xzLgog
VU5FWFBPUlRFRF9TWU1CT0xfTERGTEFHUyA9IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9f
WlRJU3Q5YmFkX2FsbG9jIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5ZXhjZXB0
aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRTU3Q5YmFkX2FsbG9jIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRTU3Q5ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWmRsUHZTXyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pud21QdiAtV2ws
LXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pud20gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2ws
X19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzJFT1M0XyAt
V2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3Jl
MTJQb2xpY3lBY3Rpb25FRUVDMUVPUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5T
dDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRWFTRURuIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5LU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xp
Y3lBY3Rpb25FRUVjbEVTMl8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThm
dW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFNHN3YXBFUlM0XyAtV2wsLXVuZXhw
b3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lB
Y3Rpb25FRUVDMUVSS1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1
bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMkVSS1M0XyAtV2wsLXVuZXhwb3J0
ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rp
b25FRUVEMUV2IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25J
RnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRUQyRXYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFYVNFUktT
NF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3QzX18xMTdiYWRfZnVuY3Rpb25f
Y2FsbEUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJp
bmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTNi
YXNpY19pc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNf
XzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9y
SWNFRUVFMF9OU18xNGJhc2ljX2lvc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9s
IC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0lj
RUVOU185YWxsb2NhdG9ySWNFRUVFMTZfTlNfMTNiYXNpY19vc3RyZWFtSWNTMl9FRSAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVE5TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNf
MTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWlRWTlN0M19fMTE1YmFzaWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNF
RU5TXzlhbGxvY2F0b3JJY0VFRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3Qz
X18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRv
ckljRUVFRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0
cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFOF9OU18x
M2Jhc2ljX29zdHJlYW1JY1MyX0VFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwCmluZGV4IGRlOTM5NjdlZmRm
OTJiM2M4ZjdiODM0NGM0OWQwMGI2NTZkOWNhMzkuLmE5NmZjM2QxMTM3OThlNzlhZmMwZmRiNjI2
NWZkZGFmZDAzZDBhZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9I
aWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHAKQEAgLTI5LDkgKzI5LDggQEAKICNp
ZiBQTEFURk9STShNQUMpCiAKICNpbmNsdWRlICJMb2dnaW5nLmgiCi0jaW5jbHVkZSA8T3BlbkdM
L0NHTFR5cGVzLmg+Ci0jaW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9P
cGVuR0xTb2Z0TGlua0NvY29hLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409547</attachid>
            <date>2020-09-24 02:44:35 -0700</date>
            <delta_ts>2020-09-24 13:43:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216722-20200924194433.patch</filename>
            <type>text/plain</type>
            <size>98428</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3MTE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggYTNmYjY4OWRlNjEwNTlmMzdkZTRhMTkwMTJhZmUzZWI1ZmExMTM0MS4uNGU5MDdjYWI1NWU5
MzIzN2E0ZjEyZDIzOTEwZDU2YWZhYmE5ZjNiNyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEwMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5p
bmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDaGFuZ2UgQU5H
TEUgdG8gZHluYW1pY2FsbHkgbG9hZCBlaXRoZXIgRUFHTCAoT3BlbkdMRVMpIG9yIENHTCAoT3Bl
bkdMKSBkZXBlbmRpbmcKKyAgICAgICAgb24gYm90aCBjb21waWxlIGFuZCBydW50aW1lIGNvbmZp
Z3VyYXRpb25zLgorICAgICAgICAgICAgSW50ZWwgTWFjIC0+IENHTAorICAgICAgICAgICAgSW50
ZWwgTWFjIENhdGFseXN0IC0+IENHTAorICAgICAgICAgICAgSW50ZWwgaU9TIFNpbXVsYXRvciAt
PiBFQUdMCisgICAgICAgICAgICBpT1MgRGV2aWNlIC0+IEVBR0wKKyAgICAgICAgICAgIEFwcGxl
IFNpbGljb24gTWFjIC0+IENHTAorICAgICAgICAgICAgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5
c3QgKHdpdGggTWFjIGFwcCkgLT4gQ0dMCisgICAgICAgICAgICBBcHBsZSBTaWxpY29uIE1hYyBD
YXRhbHlzdCAod2l0aCBpT1MgYXBwKSAtPiBFQUdMCisKKyAgICAgICAgVGhlIHRyaWNraWVzdCBi
aXQgaXMgQXBwbGUgU2lsaWNvbiBNYWMgQ2F0YWx5c3QsIHdoaWNoIGRlcGVuZHMgb24gdGhlCisg
ICAgICAgIGFwcGxpY2F0aW9uIGlzIGl0IGF0dGVtcHRpbmcgdG8gcnVuLiBJbiB0aGF0IGNhc2Ug
QU5HTEUgbXVzdCBjb21waWxlCisgICAgICAgIGJvdGggdGhlIENHTCBhbmQgRUFHTCBpbnRlcmZh
Y2VzIGFuZCB0aGVuIHBpY2sgb25lIHRvIHVzZSBhZnRlciBsYXVuY2guCisKKyAgICAgICAgKiBB
TkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAg
ICogQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZzogUmVtb3ZlIGFsbCB0aGUg
T3BlbkdMKiBsaW5raW5nLgorICAgICAgICAqIENvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54
Y2NvbmZpZzoKKworICAgICAgICAqIEdMRVN2Mi5jbWFrZTogTmV3IGZpbGVzLgorCisgICAgICAg
ICogc3JjL2NvbW1vbi9wbGF0Zm9ybS5oOiBOZXcgZGVmaW5pdGlvbnMgZm9yIENQVSB0eXBlIG9u
IEFwcGxlIFN5c3RlbXMuCisKKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZv
Lmg6IFNwbGl0IFN5c3RlbUluZm8gZm9yIEFwcGxlIGludG8gdHdvCisgICAgICAgIGZpbGVzLCBm
b3IgaU9TIGFuZCBNYWMuIEFkZGVkIGEgZmllbGQgZm9yIGlzaU9TQXBwT25NYWMgdGhhdCB3aWxs
IG9ubHkKKyAgICAgICAgYmUgdHJ1ZSB3aGVuIHJ1bm5pbmcgYW4gaU9TIGJpbmFyeSBvbiBBcHBs
ZSBTaWxpY29uLgorICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fYXBwbGUu
bW06IEFkZGVkLiBEZWNpZGVzIHdoaWNoIFN5c3RlbUluZm8KKyAgICAgICAgdG8gY2FsbC4KKyAg
ICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKToKKyAgICAgICAgKiBzcmMvZ3B1X2luZm9fdXRp
bC9TeXN0ZW1JbmZvX2lvcy5jcHA6CisgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mb19pb3Mp
OgorICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOiBEZWxldGVkLgorICAgICAgICAqIHNy
Yy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW06CisgICAgICAgIChhbmdsZTo6R2V0
U3lzdGVtSW5mb19tYWMpOgorICAgICAgICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOiBEZWxldGVk
LgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL0NhcHMuY3BwOiBDYW4gbm8gbG9uZ2VyIGp1c3Qg
Y2hlY2sgZm9yIFBMQVRGT1JNX0lPUy4gVGhpcworICAgICAgICBtaWdodCBzdGlsbCBuZWVkIGEg
cnVudGltZSBjaGVjay4KKyAgICAgICAgKGdsOjpEZXRlcm1pbmVEZXB0aFRleHR1cmVBTkdMRVN1
cHBvcnQpOgorICAgICAgICAoZ2w6OkRldGVybWluZURlcHRoVGV4dHVyZU9FU1N1cHBvcnQpOgor
CisgICAgICAgICogc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwOiBUaGlzIGlzIHRoZSBtYWluIGlu
aXRpYWxpemF0aW9uIHBvaW50IGZvcgorICAgICAgICBBTkdMRSwgd2hpY2ggZGVjaWRlcyBhdCBj
b21waWxlL3J1bnRpbWUgd2hpY2ggdmFyaWFudCBvZiBEaXNwbGF5IHRvCisgICAgICAgIGNyZWF0
ZS4KKworICAgICAgICAqIHNyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHA6IEFkZCB0aGUgY29y
cmVjdCBmb3JtYXRzLgorICAgICAgICAoZ2w6OkJ1aWxkSW50ZXJuYWxGb3JtYXRJbmZvTWFwKToK
KworICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5o
OiBBZGRlZC4gTWFjcm9zIHRvIGhlbHAgc29mdC1saW5rCisgICAgICAgIGZ1bmN0aW9ucyBhbmQg
T2JqQyBjbGFzc2VzLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dM
RnVuY3Rpb25zLmNwcDogQWRkZWQuIFdoZXJlIHdlIHNvZnQtbGluayBhbGwKKyAgICAgICAgdGhl
IE9wZW5HTC9DR0wgQVBJLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmg6IEFkZGVkLgorCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2NnbC9EaXNwbGF5Q0dMLm1tOiBVc2UgdGhlIHNvZnQtbGlua2VkIG1ldGhvZHMuCisgICAg
ICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNw
cDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VD
R0wuaDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZh
Y2VDR0wubW06IFJlbmFtZSBXZWJTd2FwTGF5ZXIgdG8gV2ViU3dhcExheWVyQ0dMCisgICAgICAg
IG90aGVyd2lzZSBpdCBjbGFzaGVzIHdpdGggdGhlIEVBR0wgdmVyc2lvbi4KKyAgICAgICAgKHJ4
OjpXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKToKKyAgICAgICAgKC1bV2ViU3dhcExheWVy
IGluaXRXaXRoU2hhcmVkU3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVsZXRl
ZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNvcHlDR0xQaXhlbEZvcm1hdEZvckRpc3BsYXlN
YXNrOl0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY29weUNHTENvbnRleHRG
b3JQaXhlbEZvcm1hdDpdKTogRGVsZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGNhbkRy
YXdJbkNHTENvbnRleHQ6cGl4ZWxGb3JtYXQ6Zm9yTGF5ZXJUaW1lOmRpc3BsYXlUaW1lOl0pOiBE
ZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgZHJhd0luQ0dMQ29udGV4dDpwaXhlbEZv
cm1hdDpmb3JMYXllclRpbWU6ZGlzcGxheVRpbWU6XSk6IERlbGV0ZWQuCisKKyAgICAgICAgKiBz
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmNwcDogU2ltaWxhciBjaGFu
Z2VzIHRvIHRoZSBDR0wgaW1wbGVtZW50YXRpb24uCisgICAgICAgICogc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5oOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmg6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wubW06CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6Omlu
aXRpYWxpemUpOgorICAgICAgICAocng6OkRpc3BsYXlFQUdMOjp0ZXJtaW5hdGUpOgorICAgICAg
ICAocng6OldvcmtlckNvbnRleHRFQUdMOjp+V29ya2VyQ29udGV4dEVBR0wpOgorICAgICAgICAo
cng6OldvcmtlckNvbnRleHRFQUdMOjptYWtlQ3VycmVudCk6CisgICAgICAgIChyeDo6V29ya2Vy
Q29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQpOgorICAgICAgICAocng6OkRpc3BsYXlFQUdMOjpj
cmVhdGVXb3JrZXJDb250ZXh0KToKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9FQUdMRnVuY3Rpb25zLmg6IEFkZGVkLgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMubW06IEFkZGVkLgorICAgICAgICAqIHNyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tOgorICAgICAgICAq
IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHA6Cisg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcDoK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFH
TC5oOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZh
Y2VFQUdMLm1tOgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXJFQUdMIGRpc3BsYXldKToKKyAgICAg
ICAgKHJ4OjpXaW5kb3dTdXJmYWNlRUFHTDo6aW5pdGlhbGl6ZSk6CisgICAgICAgICgtW1dlYlN3
YXBMYXllciBpbml0V2l0aFNoYXJlZFN0YXRlOndpdGhDb250ZXh0OndpdGhGdW5jdGlvbnM6XSk6
IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBkaXNwbGF5XSk6IERlbGV0ZWQuCisK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHA6
IFJ1bnRpbWUgY2hlY2suCisgICAgICAgIChyeDo6bmF0aXZlZ2xfZ2w6OkdlbmVyYXRlQ2Fwcyk6
CisKIDIwMjAtMDktMTEgIEphbWVzIERhcnBpbmlhbiAgPGpkYXJwaW5pYW5AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFtXZWJHTDJdIFN1cHBvcnQgRVhUX2NvbG9yX2J1ZmZlcl9oYWxmX2Zsb2F0
IG9uIFdlYkdMIDIuMCBjb250ZXh0cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGNkMzJjNTZjODU5OTc3NTY5NzM0
YjI2ZTRmYWRhOWJkMTUyZjhkOWEuLjk4OTE0MDA5YmZlNjRhNjRhNDQ1MjU5MWY4YTc5Y2E0MTNh
NGFkMWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNr
c29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGlu
IGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxl
bS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWc6IFJlbW92ZSBhbGwgT3BlbkdM
L09wZW5HTEVTIGxpbmtpbmcuCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qOgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250
ZXh0R0xPcGVuR0xDb2NvYS5tbTogVXNlIHRoZSBuZXcgc29mdC1saW5rZWQKKyAgICAgICAgZnVu
Y3Rpb25zIGZyb20gUEFMLgorICAgICAgICAqIHBsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1h
Yy5tbToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW06CisKIDIwMjAt
MDktMTUgIE15bGVzIEMuIE1heGZpZWxkICA8bW1heGZpZWxkQGFwcGxlLmNvbT4KIAogICAgICAg
ICBbbWFjT1MgQmlnIFN1cl0gQ0dGb250UmVuZGVyaW5nR2V0Rm9udFNtb290aGluZ0Rpc2FibGVk
KCkgaXMgbm8gbG9uZ2VyIHVzZWZ1bApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKaW5kZXggODgwOWRkMzNhNTcx
ZDY4MjhiNmViZmMwNTVjNzVhMGY3OGFkZTgzNS4uMGU2MTY1OWU0OWFjMjVkY2U0YzkwYjc3YTcw
NDQxNWJiMDczMDY5NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwor
KysgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAKKzIwMjAt
MDktMjQgIERlYW4gSmFja3NvbiAgPGRpbm9AYXBwbGUuY29tPgorCisgICAgICAgIFdlYkdMIHNo
b3VsZCB1c2UgR0xFUyBpbiBpT1MgYXBwcyBydW5uaW5nIG9uIEFwcGxlIFNpbGljb24KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjcyMgorICAgICAg
ICA8cmRhcjovL3Byb2JsZW0vNjg5NzYzMzc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkIHNvZnQtbGlua2luZyBjb250ZW50IGZvciBPcGVuR0wv
T3BlbkdMRVMuCisKKyAgICAgICAgKiBQQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvajoKKyAg
ICAgICAgKiBwYWwvUGxhdGZvcm1NYWMuY21ha2U6CisgICAgICAgICogcGFsL2NvY29hL09wZW5H
TFNvZnRMaW5rQ29jb2EuaDogQWRkZWQuCisgICAgICAgICogcGFsL2NvY29hL09wZW5HTFNvZnRM
aW5rQ29jb2EubW06IEFkZGVkLgorCiAyMDIwLTA5LTE0ICBNeWxlcyBDLiBNYXhmaWVsZCAgPG1t
YXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW0FwcGxlIFdpbl0gTWlncmF0ZSBmcm9tIEZv
bnRQbGF0Zm9ybURhdGFXaW4uY3BwIHRvIEZvbnRQbGF0Zm9ybURhdGFDb3JlVGV4dC5jcHAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFuZ2VM
b2cKaW5kZXggNTJmNzkwMTcxMzhmOGUzNDNiOTc0MjYwODY2MmIzYzMwZjI0ZGRhYy4uZjA4OTUz
ODI2ZjUwNTQ0MDZlMzk3MDllOTgwN2U3ZGQzMTZkZTRmYSAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwx
NCBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAg
ICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2ls
aWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2
NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIENvbmZpZ3VyYXRpb25zL1dlYktpdC54
Y2NvbmZpZzogUmVtb3ZlIE9wZW5HTCBsaW5raW5nLgorICAgICAgICAqIFVJUHJvY2Vzcy9tYWMv
SGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHA6IFVzZSB0aGUgUEFMIHNvZnQtbGlua2VkIE9w
ZW5HTCBBUEkuCisKIDIwMjAtMDktMTUgIFBlbmcgTGl1ICA8cGVuZy5saXU2QGFwcGxlLmNvbT4K
IAogICAgICAgICBSRUdSRVNTSU9OIChyMjY3MDUzKTogQVNTRVJUSU9OIEZBSUxFRDogdmlkZW9G
dWxsc2NyZWVuTWFuYWdlci0+Y2xpZW50KCkgPT0gJl92aWRlb0Z1bGxzY3JlZW5NYW5hZ2VyUHJv
eHlDbGllbnQgaW4gW1dLRnVsbFNjcmVlbldpbmRvd0NvbnRyb2xsZXIgX2NvbXBsZXRlZEV4aXRG
dWxsU2NyZWVuXQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xFLnhj
b2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggZThlNjkwZGRkNjU2Yjg2NGYxM2RlZDA4NjZj
ODQ5NDY4MTE1ZDk1Mi4uNmIxMzZmZDNkNzZlYWIzZWMxODdhMzE3YzVhYTU2ZGNhM2JhNDc0YyAx
MDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQU5HTEUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCkBAIC0xNTAsNiArMTUwLDE2IEBACiAJCTMxNUVCRTI0MUZDRTQ2MkEw
MEFDN0E4OSAvKiBzYWZlX21hdGhfaW1wbC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMzE1RUJFMjAxRkNFNDYyQTAwQUM3QTg5IC8qIHNhZmVfbWF0aF9p
bXBsLmggKi87IH07CiAJCTMxNUVCRTI4MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTVFQkUyNjFG
Q0Y4MDhDMDBBQzdBODkgLyogUE11ckhhc2guY3BwICovOyB9OwogCQkzMTVFQkUyOTFGQ0Y4MDhD
MDBBQzdBODkgLyogUE11ckhhc2guaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNUVCRTI3MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5oICovOyB9
OworCQkzMTY0N0Y5RjI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUEx
QTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tICovOyB9OworCQkzMTY0N0ZBMDI1MTFB
MUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tICovOyB9OworCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dM
RnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAzMTY0N0ZBMjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi87IH07CisJCTMx
NjQ3RkE1MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAv
KiBDR0xGdW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENH
TEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVS
ZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsK
KwkJMzE2NDdGQTcyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNl
cyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBMzI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLzsgfTsKKwkJMzE2NDdGQjMyNTE3NjhBQzAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmgg
Ki87IH07CisJCTMxNjQ3RkI0MjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZCMjI1MTc2
OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oICovOyB9OworCQkzMTY0N0ZCNjI1MTc2OERE
MDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rp
b25zLm1tICovOyB9OworCQkzMTY0N0ZCNzI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9u
cy5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3
RkI1MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovOyB9OwogCQkzMUEzMzFD
MjFFQTVFRDI1MDBGRDIyMDMgLyogYml0c2V0X3V0aWxzLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFDMDFFQTVFRDI1MDBGRDIyMDMgLyogYml0
c2V0X3V0aWxzLmggKi87IH07CiAJCTMxQTMzMUM2MUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1f
dXRpbHNfbWFjLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLzsg
fTsKIAkJMzFBMzMxQzcxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlscy5oIGluIEhlYWRl
cnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzFBMzMxQzQxRUE1RUQ1RjAw
RkQyMjAzIC8qIHN5c3RlbV91dGlscy5oICovOyB9OwpAQCAtMTU0Nyw2ICsxNTU3LDcgQEAKIC8q
IEVuZCBQQlhDb3B5RmlsZXNCdWlsZFBoYXNlIHNlY3Rpb24gKi8KIAogLyogQmVnaW4gUEJYRmls
ZVJlZmVyZW5jZSBzZWN0aW9uICovCisJCTBGODVEQTJGMjUxMzc4MDgwMDBBNTAwQiAvKiBTb2Z0
TGlua2luZ19hcHBsZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBTb2Z0TGlua2luZ19hcHBsZS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMDE4Qjk3QjlCMDAzOTA2MkYgLyogQmFz
ZVR5cGVzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEJhc2VUeXBlcy5oOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTAxMkRBMTE4Qjk3QjlCMDAzOTA2MkYgLyog
QnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQnVpbHRJbkZ1bmN0aW9uRW11bGF0b3IuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkzMTAxMkRBMjE4Qjk3QjlCMDAzOTA2MkYgLyogQnVpbHRJbkZ1bmN0aW9uRW11
bGF0b3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQnVpbHRJbkZ1bmN0aW9u
RW11bGF0b3IuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTE2ODEsNiArMTY5Miwx
MSBAQAogCQkzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyogc2FmZV9tYXRoX2ltcGwuaCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gc2FmZV9tYXRoX2ltcGwuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjYxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJIYXNo
LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBNdXJIYXNoLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8q
IFBNdXJIYXNoLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0g
NDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFBNdXJIYXNoLmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAv
KiBTeXN0ZW1JbmZvX2FwcGxlLm1tICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gU3lzdGVtSW5mb19h
cHBsZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTIyNTE1OTc4RDAw
MTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBDR0xGdW5jdGlvbnMuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTMyNTE1OTc4RDAwMTBGOEZCIC8q
IENHTEZ1bmN0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDR0xGdW5jdGlvbnMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZCMjI1MTc2OEFDMDAxMEY4RkIgLyog
RUFHTEZ1bmN0aW9ucy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBFQUdMRnVu
Y3Rpb25zLmg7IHBhdGggPSBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rp
b25zLmg7IHNvdXJjZVRyZWUgPSBTT1VSQ0VfUk9PVDsgfTsKKwkJMzE2NDdGQjUyNTE3NjhERDAw
MTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBFQUdMRnVu
Y3Rpb25zLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDMDFFQTVFRDI1
MDBGRDIyMDMgLyogYml0c2V0X3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IGJpdHNldF91dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFD
MzFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgKi8gPSB7aXNhID0gUEJY
RmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBzeXN0ZW1fdXRpbHNfbWFjLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMzFBMzMxQzQxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGls
cy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBzeXN0ZW1fdXRpbHMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTI0NzIsNiArMjQ4OCw4IEBACiAJCQkJMzEzQkNF
NEQyMzYxMTMzOTAwRkMzOUU1IC8qIERldmljZUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U0NjIzNjEx
MzM4MDBGQzM5RTUgLyogRGlzcGxheUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U1MzIzNjExMzM5MDBG
QzM5RTUgLyogRGlzcGxheUVBR0wubW0gKi8sCisJCQkJMzE2NDdGQjIyNTE3NjhBQzAwMTBGOEZC
IC8qIEVBR0xGdW5jdGlvbnMuaCAqLywKKwkJCQkzMTY0N0ZCNTI1MTc2OEREMDAxMEY4RkIgLyog
RUFHTEZ1bmN0aW9ucy5tbSAqLywKIAkJCQkzMTNCQ0U0NzIzNjExMzM4MDBGQzM5RTUgLyogSU9T
dXJmYWNlU3VyZmFjZUVBR0wuaCAqLywKIAkJCQkzMTNCQ0U0RTIzNjExMzM5MDBGQzM5RTUgLyog
SU9TdXJmYWNlU3VyZmFjZUVBR0wubW0gKi8sCiAJCQkJMzEzQkNFNDgyMzYxMTMzODAwRkMzOUU1
IC8qIFBidWZmZXJTdXJmYWNlRUFHTC5jcHAgKi8sCkBAIC0yOTYwLDYgKzI5NzgsNyBAQAogCQkJ
CUEzMDMwNzg3MjMwNUY4RjAwMDJEQTk3MiAvKiBTZW1hcGhvcmVHTC5oICovLAogCQkJCTVDQjMw
MTA4MURFMzlGMUEwMEQyQzQwNSAvKiBTaGFkZXJHTC5jcHAgKi8sCiAJCQkJNUNCMzAxMDkxREUz
OUYxQTAwRDJDNDA1IC8qIFNoYWRlckdMLmggKi8sCisJCQkJMEY4NURBMkYyNTEzNzgwODAwMEE1
MDBCIC8qIFNvZnRMaW5raW5nX2FwcGxlLmggKi8sCiAJCQkJNUNCMzAxMEExREUzOUYxQTAwRDJD
NDA1IC8qIFN0YXRlTWFuYWdlckdMLmNwcCAqLywKIAkJCQk1Q0IzMDEwQjFERTM5RjFBMDBEMkM0
MDUgLyogU3RhdGVNYW5hZ2VyR0wuaCAqLywKIAkJCQk1Q0IzMDEwQzFERTM5RjFBMDBEMkM0MDUg
LyogU3VyZmFjZUdMLmNwcCAqLywKQEAgLTI5NzksNiArMjk5OCw4IEBACiAJCTVDQjMwMTQ4MURF
MzlGMzYwMEQyQzQwNSAvKiBjZ2wgKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxk
cmVuID0gKAorCQkJCTMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3Bw
ICovLAorCQkJCTMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCAqLywK
IAkJCQk1Q0NENTk3MjIyODRGQTgyMDAxOEYyRDggLyogQ29udGV4dENHTC5jcHAgKi8sCiAJCQkJ
NUNDRDU5NzUyMjg0RkE4MjAwMThGMkQ4IC8qIENvbnRleHRDR0wuaCAqLywKIAkJCQk2RTMxQTBB
MTIzNEVFRUQ0MDBDODQ3ODQgLyogRGV2aWNlQ0dMLmNwcCAqLywKQEAgLTMyMDgsNiArMzIyOSw3
IEBACiAJCQljaGlsZHJlbiA9ICgKIAkJCQk1Q0NENTk5ODIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mby5jcHAgKi8sCiAJCQkJNUNDRDU5OTkyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUlu
Zm8uaCAqLywKKwkJCQkzMTY0N0Y5RTI1MTFBMUE2MDAxMEY4RkIgLyogU3lzdGVtSW5mb19hcHBs
ZS5tbSAqLywKIAkJCQkzMUIxNTcyMTIzNkI4MDMzMDBDQUE0RkQgLyogU3lzdGVtSW5mb19pbnRl
cm5hbC5oICovLAogCQkJCTMxQjE1NzFGMjM2QjdGQUUwMENBQTRGRCAvKiBTeXN0ZW1JbmZvX2lv
cy5jcHAgKi8sCiAJCQkJNUNDRDU5OTcyMjg0RkM3NTAwMThGMkQ4IC8qIFN5c3RlbUluZm9fbWFj
b3MubW0gKi8sCkBAIC0zNDE0LDYgKzM0MzYsNyBAQAogCQkJCTMxQ0RGRkQ4MjQ5MTg0QTcwMDQ4
NkYyNyAvKiBCdWlsdGluc1dvcmthcm91bmRHTFNMLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMUNE
RkZGOTI0OTE4NEE3MDA0ODZGMjcgLyogQ2FsbERBRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFD
RDAwNjEyNDkxODRGQzAwNDg2RjI3IC8qIENhcHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3
RkE1MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJ
CTMxQ0RGRjgyMjQ5MTg0OTgwMDQ4NkYyNyAvKiBDbGFtcEZyYWdEZXB0aC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJMzFDREZGOEEyNDkxODQ5ODAwNDg2RjI3IC8qIENsYW1wUG9pbnRTaXplLmggaW4g
SGVhZGVycyAqLywKIAkJCQkzMUNEMDAxMTI0OTE4NEU3MDA0ODZGMjcgLyogQ2xlYXJNdWx0aXZp
ZXdHTC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zNDU2LDYgKzM0NzksNyBAQAogCQkJCTMxQ0QwMDIz
MjQ5MTg0RTcwMDQ4NkYyNyAvKiBEaXNwbGF5R0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0Qw
MDJGMjQ5MTg0RjQwMDQ4NkYyNyAvKiBEaXNwbGF5SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MzFDRDAwMzgyNDkxODRGNDAwNDg2RjI3IC8qIGRyaXZlcl91dGlscy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2NDdGQjQyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTMxQ0RGRjlBMjQ5MTg0OTgwMDQ4NkYyNyAvKiBFYXJseUZyYWdtZW50VGVz
dHNPcHRpbWl6YXRpb24uaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0RGREZBMjQ5MTgzQTUwMDQ4
NkYyNyAvKiBlZ2wuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0RGREY5MjQ5MTgzQTUwMDQ4NkYy
NyAvKiBlZ2xleHQuaCBpbiBIZWFkZXJzICovLApAQCAtMzgxOSw2ICszODQzLDcgQEAKIAkJCQlB
MzY5NEZDNzIzMjAyQzUyMDBBODNEOEYgLyogQnVpbHRpbnNXb3JrYXJvdW5kR0xTTC5oIGluIEhl
YWRlcnMgKi8sCiAJCQkJNUMxREJDMkIxQjA0Mzc1RjAwMjM1NTUyIC8qIENhbGxEQUcuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTVDMURCRERCMUIwNDM4RDMwMDIzNTU1MiAvKiBDYXBzLmggaW4gSGVh
ZGVycyAqLywKKwkJCQkzMTY0N0ZBNDI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmgg
aW4gSGVhZGVycyAqLywKIAkJCQk1QzU1RDY2NjIyODI2QjlGMDBCNUJBMkMgLyogQ2xhbXBGcmFn
RGVwdGguaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNTVENjVCMjI4MjZCOUYwMEI1QkEyQyAvKiBD
bGFtcFBvaW50U2l6ZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE1RUJEQzExRkNFNDRCRjAwQUM3
QTg5IC8qIENsZWFyTXVsdGl2aWV3R0wuaCBpbiBIZWFkZXJzICovLApAQCAtMzg2MSw2ICszODg2
LDcgQEAKIAkJCQk1Q0IzMDExRjFERTM5RjFBMDBEMkM0MDUgLyogRGlzcGxheUdMLmggaW4gSGVh
ZGVycyAqLywKIAkJCQk1Q0IzMDRFMjFERTQxNjQ4MDBEMkM0MDUgLyogRGlzcGxheUltcGwuaCBp
biBIZWFkZXJzICovLAogCQkJCTMxNUVCREM5MUZDRTQ0RTQwMEFDN0E4OSAvKiBkcml2ZXJfdXRp
bHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkIzMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdM
RnVuY3Rpb25zLmggaW4gSGVhZGVycyAqLywKIAkJCQk2RUIwMUMxRDI0NzcyNzlBMDBFNTBCMzUg
LyogRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uLmggaW4gSGVhZGVycyAqLywKIAkJCQkz
MURCNzk1ODI0OTFDODQ1MDA5ODI4NzggLyogZWdsLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMURC
Nzk1OTI0OTFDODQ1MDA5ODI4NzggLyogZWdsZXh0LmggaW4gSGVhZGVycyAqLywKQEAgLTQzMjIs
NiArNDM0OCw3IEBACiAJCQkJMzFDREZFN0UyNDkxODQzQTAwNDg2RjI3IC8qIEJ1aWx0aW5zV29y
a2Fyb3VuZEdMU0wuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFODYyNDkxODQzQTAwNDg2
RjI3IC8qIENhbGxEQUcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZGMUMyNDkxODQ1RjAw
NDg2RjI3IC8qIENhcHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTcyNTE1OTc4RDAw
MTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU1ODI0
OTE4NDJFMDA0ODZGMjcgLyogQ2xhbXBGcmFnRGVwdGguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDREZFNjEyNDkxODQyRjAwNDg2RjI3IC8qIENsYW1wUG9pbnRTaXplLmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTMxQ0RGRUMzMjQ5MTg0NTMwMDQ4NkYyNyAvKiBDbGVhck11bHRpdmlld0dMLmNw
cCBpbiBTb3VyY2VzICovLApAQCAtNDM2Myw2ICs0MzkwLDcgQEAKIAkJCQkzMUNERkVFMTI0OTE4
NDU4MDA0ODZGMjcgLyogRGlzcGxheUltcGwuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZF
RTUyNDkxODQ1ODAwNDg2RjI3IC8qIGRyaXZlcl91dGlscy5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkzMUNEMDBDNjI0OTE5MTdFMDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzX21hYy5tbSBpbiBTb3Vy
Y2VzICovLAorCQkJCTMxNjQ3RkI3MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFNDQyNDkxODQyRTAwNDg2RjI3IC8qIEVhcmx5RnJh
Z21lbnRUZXN0c09wdGltaXphdGlvbi5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYzNDI0
OTE4NDYwMDA0ODZGMjcgLyogRUdMU3luYy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU4
MzI0OTE4NDNBMDA0ODZGMjcgLyogZW11bGF0ZWRfYnVpbHRpbl9mdW5jdGlvbnNfaGxzbF9hdXRv
Z2VuLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDU1NSw2ICs0NTgzLDcgQEAKIAkJCQkzMUNERkUx
NjI0OTE4NDIzMDA0ODZGMjcgLyogc3lzdGVtX3V0aWxzX21hYy5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkUxRTI0OTE4NDIzMDA0ODZGMjcgLyogc3lzdGVtX3V0aWxzX3Bvc2l4LmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTMxQ0RGRUIxMjQ5MTg0NDIwMDQ4NkYyNyAvKiBTeXN0ZW1JbmZv
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkEwMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjMyNDkxODQ0MjAwNDg2
RjI3IC8qIFN5c3RlbUluZm9faW9zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxQ0QwMEM3MjQ5
MTkxRDEwMDQ4NkYyNyAvKiBTeXN0ZW1JbmZvX21hY29zLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDREZFRkIyNDkxODQ1RjAwNDg2RjI3IC8qIFRleHR1cmUuY3BwIGluIFNvdXJjZXMgKi8sCkBA
IC00NjU1LDYgKzQ2ODQsNyBAQAogCQkJCUEzNjk0RkM2MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWls
dGluc1dvcmthcm91bmRHTFNMLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDMURCQzJBMUIwNDM3
NUYwMDIzNTU1MiAvKiBDYWxsREFHLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDMURCRERBMUIw
NDM4RDMwMDIzNTU1MiAvKiBDYXBzLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkE2MjUx
NTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUM1
NUQ2QUMyMjgyNkJDODAwQjVCQTJDIC8qIENsYW1wRnJhZ0RlcHRoLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTVDNTVENkFEMjI4MjZCQzgwMEI1QkEyQyAvKiBDbGFtcFBvaW50U2l6ZS5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkzMTVFQkRCRDFGQ0U0NEJGMDBBQzdBODkgLyogQ2xlYXJNdWx0aXZp
ZXdHTC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ2OTYsNiArNDcyNiw3IEBACiAJCQkJNUNCMzA0
RTExREU0MTY0ODAwRDJDNDA1IC8qIERpc3BsYXlJbXBsLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxNUVCRENDMUZDRTQ0RTQwMEFDN0E4OSAvKiBkcml2ZXJfdXRpbHMuY3BwIGluIFNvdXJjZXMg
Ki8sCiAJCQkJQTMwMzA3OUQyMzA2MjU2NTAwMkRBOTcyIC8qIGRyaXZlcl91dGlsc19tYWMubW0g
aW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZCNjI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0
aW9ucy5tbSBpbiBTb3VyY2VzICovLAogCQkJCTZFQjAxQzFFMjQ3NzI3OUEwMEU1MEIzNSAvKiBF
YXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUND
RDU5NkEyMjg0Rjc5NjAwMThGMkQ4IC8qIEVHTFN5bmMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzE1RUJEOTcxRkNFNDQzNjAwQUM3QTg5IC8qIGVtdWxhdGVkX2J1aWx0aW5fZnVuY3Rpb25zX2hs
c2xfYXV0b2dlbi5jcHAgaW4gU291cmNlcyAqLywKQEAgLTQ4ODgsNiArNDkxOSw3IEBACiAJCQkJ
MzFBMzMxQzYxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19tYWMuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJNUM1NUQ3MzAyMjgyNzQ3NzAwQjVCQTJDIC8qIHN5c3RlbV91dGlsc19wb3Np
eC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NENTk5QjIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mby5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0Y5RjI1MTFBMUE2MDAxMEY4RkIg
LyogU3lzdGVtSW5mb19hcHBsZS5tbSBpbiBTb3VyY2VzICovLAogCQkJCTMxQjE1NzIwMjM2QjdG
QUYwMENBQTRGRCAvKiBTeXN0ZW1JbmZvX2lvcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk1Q0NE
NTk5QTIyODRGQzc1MDAxOEYyRDggLyogU3lzdGVtSW5mb19tYWNvcy5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTVDMURCRjMwMUIwNDM4RDMwMDIzNTU1MiAvKiBUZXh0dXJlLmNwcCBpbiBTb3VyY2Vz
ICovLApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMv
QU5HTEUtZHluYW1pYy54Y2NvbmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3Vy
YXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKaW5kZXggMzE1ODJiOTIyYmRmMmFlYTYyNGQw
MmViYTVmN2YxYTRhMDVhYzcxMS4uMzEyMGVlMmMyOTZiMzIwZDBmOWZmM2YzZDZhY2IwNGNlYzhl
N2M2YiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMv
QU5HTEUtZHluYW1pYy54Y2NvbmZpZworKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnCkBAIC01LDE0ICs1LDE0IEBAIFBST0RV
Q1RfTkFNRSA9IEFOR0xFLXNoYXJlZDsKIEVYRUNVVEFCTEVfUFJFRklYID0gbGliOwogCiBBTkdM
RV9PVEhFUl9MREZMQUdTID0gLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZSAtYWxsb3dhYmxlX2Ns
aWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgLWZyYW1ld29yayBRdWFydHpDb3JlIC1mcmFtZXdvcmsg
Q29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAk
KEFOR0xFX09USEVSX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1BTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUyAtbHo7CitBTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zID0gLWx6OwogQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0
b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFH
U193YXRjaG9zID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVS
X0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2lt
dWxhdG9yKTsKIEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dm9zID0gJChBTkdMRV9PVEhFUl9M
REZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9
ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOwotQU5HTEVfT1RIRVJfTERG
TEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBPcGVuR0wgLWx6
OwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdv
cmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3
b3JrIElPS2l0IC1sejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJ
T0tpdCAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoTk9STUFMX1dFQkNPUkVfRlJBTUVXT1JLU19E
SVIpL1dlYkNvcmUuZnJhbWV3b3JrL0ZyYW1ld29ya3M7CiBJTlNUQUxMX1BBVEhbc2RrPW1hY29z
eCpdID0gJChJTlNUQUxMX1BBVEhfVVNFX09WRVJSSURFX0ZSQU1FV09SS1NfRElSXyQoV0tfVVNF
X09WRVJSSURFX0ZSQU1FV09SS1NfRElSKSk7CkBAIC0zNiw3ICszNiw3IEBAIFBVQkxJQ19IRUFE
RVJTX0ZPTERFUl9QQVRIX21hY2NhdGFseXN0ID0gJChXS19BTFRFUk5BVEVfRlJBTUVXT1JLU19E
SVIpLyQoQU5HTEVfCiAKIERFQlVHX0RFRklORVNfZGVidWcgPSA7CiBERUJVR19ERUZJTkVTX25v
cm1hbCA9IE5ERUJVRzsKLUdDQ19QUkVQUk9DRVNTT1JfREVGSU5JVElPTlMgPSAkKERFQlVHX0RF
RklORVNfJChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVTVjJfSU1QTEVNRU5UQVRJT04gTElCQU5H
TEVfSU1QTEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09QRU5HTCBBTkdMRV9FTkFCTEVfR0xTTCBB
TkdMRV9FTkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJFQ0FUSU9OOworR0NDX1BSRVBST0NFU1NP
Ul9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FU18kKENVUlJFTlRfVkFSSUFOVCkpIExJQkdM
RVNWMl9JTVBMRU1FTlRBVElPTiBMSUJBTkdMRV9JTVBMRU1FTlRBVElPTiBBTkdMRV9FTkFCTEVf
T1BFTkdMIEFOR0xFX0VOQUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9FU1NMIEdMX1NJTEVOQ0VfREVQ
UkVDQVRJT04gR0xFU19TSUxFTkNFX0RFUFJFQ0FUSU9OOwogCiBJTlNUQUxMSERSU19TQ1JJUFRf
UEhBU0UgPSBZRVM7CiBVU0VfSEVBREVSTUFQID0gTk87CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcgYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25maWcK
aW5kZXggNGQxZDIyMTE5MzVhNTEyYjk2ODg2MTg1ZWMwNjY4NWI5Mjc5NmIwNy4uODI0YTI3YjUz
MTM5NWI1YjAwMmMyYmY1NzFmOTc5ZTllYzY2ZmIwNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29uZmlnCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2NvbmZp
ZwpAQCAtNSwxNCArNSwxNCBAQCBQUk9EVUNUX05BTUUgPSBBTkdMRTsKIEVYRUNVVEFCTEVfUFJF
RklYID0gbGliOwogCiBBTkdMRV9PVEhFUl9MREZMQUdTID0gLWFsbG93YWJsZV9jbGllbnQgV2Vi
Q29yZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlVGVzdFN1cHBvcnQgJChBTkdMRV9PVEhFUl9M
REZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwotQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVv
cyA9IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMRVMgLWx6OworQU5HTEVf
T1RIRVJfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1sejsKIEFOR0xF
X09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lw
aG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hvcyA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhFUl9MREZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChB
TkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7CiBBTkdMRV9PVEhFUl9MREZMQUdT
X2FwcGxldHZvcyA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9PVEhF
Ul9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25l
c2ltdWxhdG9yKTsKLUFOR0xFX09USEVSX0xERkxBR1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3Jr
IElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKLUFOR0xF
X09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3Vy
ZmFjZSAtZnJhbWV3b3JrIE9wZW5HTCAtbHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX21hY2NhdGFs
eXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFjZSAtbHo7CitBTkdMRV9P
VEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZh
Y2UgLWx6OwogCiBJTlNUQUxMX1BBVEggPSAkKEFOR0xFX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vz
ci9sb2NhbC9saWI7CiAKQEAgLTI0LDcgKzI0LDcgQEAgUFVCTElDX0hFQURFUlNfRk9MREVSX1BB
VEggPSAkKEFOR0xFX0lOU1RBTExfUEFUSF9QUkVGSVgpL3Vzci9sb2NhbC9pbmNsdWRlL0FOR0wK
IAogREVCVUdfREVGSU5FU19kZWJ1ZyA9IDsKIERFQlVHX0RFRklORVNfbm9ybWFsID0gTkRFQlVH
OwotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9ICQoREVCVUdfREVGSU5FU18kKENVUlJF
TlRfVkFSSUFOVCkpIExJQkdMRVNWMl9JTVBMRU1FTlRBVElPTiBMSUJBTkdMRV9JTVBMRU1FTlRB
VElPTiBBTkdMRV9FTkFCTEVfT1BFTkdMIEFOR0xFX0VOQUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9F
U1NMIEdMX1NJTEVOQ0VfREVQUkVDQVRJT047CitHQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05T
ID0gJChERUJVR19ERUZJTkVTXyQoQ1VSUkVOVF9WQVJJQU5UKSkgTElCR0xFU1YyX0lNUExFTUVO
VEFUSU9OIExJQkFOR0xFX0lNUExFTUVOVEFUSU9OIEFOR0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVf
RU5BQkxFX0dMU0wgQU5HTEVfRU5BQkxFX0VTU0wgR0xfU0lMRU5DRV9ERVBSRUNBVElPTiBHTEVT
X1NJTEVOQ0VfREVQUkVDQVRJT047CiAKIElOU1RBTExIRFJTX1NDUklQVF9QSEFTRSA9IFlFUzsK
IFVTRV9IRUFERVJNQVAgPSBOTzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L0dMRVN2Mi5jbWFrZSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQppbmRl
eCAwNGZiZTllZmU3Yzk1MzkxNmM2YTU2OGUxN2EyYjVhNTRhZGQzM2I5Li40ZmJkYmNiOGNlMjAy
ZDU3YWFhZTNmMGQ0OWU1YzNiOTk0ZDAwYzQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9HTEVTdjIuY21ha2UKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3Yy
LmNtYWtlCkBAIC0xNjcsNyArMTY3LDkgQEAgc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbGli
cGNpX3NvdXJjZXMKIHNldChsaWJhbmdsZV9ncHVfaW5mb191dGlsX3gxMV9zb3VyY2VzICJzcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX3gxMS5jcHAiICkKIAogCi1zZXQobGliYW5nbGVfZ3B1
X2luZm9fdXRpbF9tYWNfc291cmNlcyAic3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNv
cy5tbSIgKQorc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfbWFjX3NvdXJjZXMKKyAgICAic3Jj
L2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbSIKKyAgICAic3JjL2dwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19tYWNvcy5tbSIgKQogCiAKIHNldChsaWJhbmdsZV9pbmNsdWRlcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCmluZGV4IDA0MTZl
ZDIwMWQ1OTRlNTQwOWVhOWQ3ZTY0MGI2NDg5YzQ3NmFjZWQuLmIzNDFhZjFmNWY5OGY1ZDQ1MTQw
MDEzM2MzODlkNzM2NjVmN2E2YjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9jb21tb24vcGxhdGZvcm0uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Y29tbW9uL3BsYXRmb3JtLmgKQEAgLTEyMCw3ICsxMjAsNiBAQAogIyAgICAgICAgZGVmaW5lIEFO
R0xFX1BMQVRGT1JNX01BQ09TIDEKICMgICAgZWxpZiBUQVJHRVRfT1NfSVBIT05FCiAjICAgICAg
ICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9TIDEKLSMgICAgICAgIGRlZmluZSBHTEVTX1NJTEVO
Q0VfREVQUkVDQVRJT04KICMgICAgICAgIGlmIFRBUkdFVF9PU19TSU1VTEFUT1IKICMgICAgICAg
ICAgICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fSU9TX1NJTVVMQVRPUiAxCiAjICAgICAgICBlbmRp
ZgpAQCAtMTI4LDYgKzEyNywxMSBAQAogIyAgICAgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVAogIyAgICAgICAgZW5kaWYKICMgICAgZW5kaWYKKyMgICAgLy8gVGhpcyBt
aWdodCBiZSB1c2VmdWwgZ2xvYmFsbHkuIEF0IHRoZSBtb21lbnQgaXQgaXMgdXNlZAorIyAgICAv
LyB0byBkaWZmZXJlbnRpYXRlIE1hY0NhdGFseXN0IG9uIEludGVsIGFuZCBBcHBsZSBTaWxpY29u
LgorIyAgICBpZiBkZWZpbmVkKF9fYXJtNjRfXykgfHwgZGVmaW5lZChfX2FhcmNoNjRfXykKKyMg
ICAgICAgIGRlZmluZSBBTkdMRV9DUFVfQVJNNjQKKyMgICAgZW5kaWYKICNlbmRpZgogCiAvLyBE
ZWZpbmUgQU5HTEVfV0lUSF9BU0FOIG1hY3JvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oCmluZGV4IGQyOGU3Y2EyYzA2
ZGI3MjIzMGNjNjk3ZTM4YzczOWQ2NmQzZWY5YzkuLjcxZjc2ZWI1ZjY0NjRlMjVlZGNkNGY5ZWUy
ZDFlN2NkMTgzM2JiMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9n
cHVfaW5mb191dGlsL1N5c3RlbUluZm8uaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgKQEAgLTY3LDYgKzY3LDkgQEAgc3RydWN0IFN5
c3RlbUluZm8KICAgICBib29sIGlzQU1EU3dpdGNoYWJsZSA9IGZhbHNlOwogICAgIC8vIE9ubHkg
dHJ1ZSBvbiBkdWFsLUdQVSBNYWMgbGFwdG9wcy4KICAgICBib29sIGlzTWFjU3dpdGNoYWJsZSA9
IGZhbHNlOworICAgIC8vIE9ubHkgdHJ1ZSBvbiBBcHBsZSBTaWxpY29uIE1hY3Mgd2hlbiBydW5u
aW5nIGlPUyBiaW5hcmllcy4KKyAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29t
L2RvY3VtZW50YXRpb24vZm91bmRhdGlvbi9uc3Byb2Nlc3NpbmZvLzM2MDg1NTYtaW9zYXBwb25t
YWMKKyAgICBib29sIGlzaU9TQXBwT25NYWMgICA9IGZhbHNlOwogCiAgICAgLy8gT25seSBhdmFp
bGFibGUgb24gQW5kcm9pZAogICAgIHN0ZDo6c3RyaW5nIG1hY2hpbmVNYW51ZmFjdHVyZXI7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0
ZW1JbmZvX2FwcGxlLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0
aWwvU3lzdGVtSW5mb19hcHBsZS5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi41ODk3M2NmNTJkMmQzMjc1ZDJjYmI5
OTMzNDA5MTIzMDk2NGIzMWI2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbQpAQCAtMCwwICsxLDQ5
IEBACisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxl
IGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLwor
CisvLyBTeXN0ZW1JbmZvX2FwcGxlLmNwcDogaW1wbGVtZW50YXRpb24gb2YgdGhlIEFwcGxlLXNw
ZWNpZmljIHBhcnRzIG9mIFN5c3RlbUluZm8uaAorCisjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0u
aCIKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyMgICAgaW1wb3J0ICJn
cHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJuYWwuaCIKKyMgICAgaW1wb3J0IDxkaXNwYXRj
aC9kaXNwYXRjaC5oPgorIyAgICBpbXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgorCitu
YW1lc3BhY2UgYW5nbGUKK3sKKworYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8p
Cit7CisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpCisgICAgc3RhdGljIGJvb2wgaXNpT1NBcHBPbk1hYyA9IGZhbHNlOwor
ICAgIHN0YXRpYyBkaXNwYXRjaF9vbmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNl
LCBeeworICAgICAgICBpc2lPU0FwcE9uTWFjID0gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZv
XSBpc2lPU0FwcE9uTWFjXTsKKyAgICB9KTsKKworICAgIGlmIChpc2lPU0FwcE9uTWFjKQorICAg
IHsKKyAgICAgICAgR2V0U3lzdGVtSW5mb19pb3MoaW5mbyk7CisgICAgICAgIGlmIChpbmZvKQor
ICAgICAgICB7CisgICAgICAgICAgICBpbmZvLT5pc2lPU0FwcE9uTWFjID0gdHJ1ZTsKKyAgICAg
ICAgfQorICAgICAgICByZXR1cm4gaW5mbzsKKyAgICB9CisKKyAgICByZXR1cm4gR2V0U3lzdGVt
SW5mb19tYWMoaW5mbyk7CisjZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorICAgIHJldHVybiBHZXRTeXN0ZW1J
bmZvX21hYyhpbmZvKTsKKyNlbHNlCisgICAgcmV0dXJuIEdldFN5c3RlbUluZm9faW9zKGluZm8p
OworI2VuZGlmCit9CisKK30gIC8vIG5hbWVzcGFjZSBhbmdsZQorCisjZW5kaWYgIC8vIGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmggYi9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmgKaW5k
ZXggMjFhNzc2MmVlYWRkYTAwNjVkMTRkMTJmNzQ1MTNhMWZhNDBhMjEyZC4uZDMwMGJkODFhOTBh
ODc0ZjdiOWUyMDg1NmE3ZGYwNTI3ZmQ5NTE1NSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oCisrKyBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJu
YWwuaApAQCAtMjksNiArMjksMTQgQEAgYm9vbCBQYXJzZU1hY01hY2hpbmVNb2RlbChjb25zdCBz
dGQ6OnN0cmluZyAmaWRlbnRpZmllciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50MzJf
dCAqbWlub3IpOwogYm9vbCBDTURldmljZUlEVG9EZXZpY2VBbmRWZW5kb3JJRChjb25zdCBzdGQ6
OnN0cmluZyAmaWQsIHVpbnQzMl90ICp2ZW5kb3JJZCwgdWludDMyX3QgKmRldmljZUlkKTsKIAor
I2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpCitib29sIEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmluZm8p
OworI2VuZGlmCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
K2Jvb2wgR2V0U3lzdGVtSW5mb19pb3MoU3lzdGVtSW5mbyAqaW5mbyk7CisjZW5kaWYKKwogfSAg
Ly8gbmFtZXNwYWNlIGFuZ2xlCiAKICNlbmRpZiAgLy8gR1BVX0lORk9fVVRJTF9TWVNURU1fSU5G
T19JTlRFUk5BTF9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUv
c3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwCmluZGV4IGMwZDQzNmY1NjE4Y2Yx
Mjc3YjVlYzc5ZDhjMzExM2RjY2YwYzM4YWYuLmJkMjIxOTcwNjJlOGM5ODVmNGQ0MjFlNWNlNjMy
N2EzYTk5YjQxYzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVf
aW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAKQEAgLTgsMTQgKzgsMTQgQEAK
IAogI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImdw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgogCiBuYW1lc3BhY2UgYW5nbGUKIHsK
IAotYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8pCitib29sIEdldFN5c3RlbUlu
Zm9faW9zKFN5c3RlbUluZm8gKmluZm8pCiB7CiAgICAgewogICAgICAgICAvLyBUT0RPKGFuZ2xl
YnVnLmNvbS80Mjc1KTogR2V0IHRoZSBhY3R1YWwgc3lzdGVtIHZlcnNpb24uCkBAIC0yNyw0ICsy
Nyw0IEBAIGJvb2wgR2V0U3lzdGVtSW5mbyhTeXN0ZW1JbmZvICppbmZvKQogCiB9ICAvLyBuYW1l
c3BhY2UgYW5nbGUKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjZW5kaWYgIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbSBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9fbWFjb3MubW0K
aW5kZXggYThlZDdhZjI2ZjQyNDRjOTQ5M2VkNmE4NTdhZmFjMTkyOGFhOGZlMC4uMmFiOTJmYzc2
NGRmODY3MzA1MTgwNDkwYzE2OWQyMGE5ZGQ4NWI1MCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbQorKysgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tCkBAIC0xNSw2ICsxNSw4IEBACiAjICAgIGltcG9ydCA8Q29jb2EvQ29jb2EuaD4KICMgICAg
aW1wb3J0IDxJT0tpdC9JT0tpdExpYi5oPgogCisjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNlIGFuZ2xlCiB7CiAKQEAgLTIw
OCw3ICsyMTAsNyBAQCB1aW50NjRfdCBHZXRHcHVJREZyb21PcGVuR0xEaXNwbGF5TWFzayh1aW50
MzJfdCBkaXNwbGF5TWFzaykKICAgICByZXR1cm4gMDsKIH0KIAotYm9vbCBHZXRTeXN0ZW1JbmZv
KFN5c3RlbUluZm8gKmluZm8pCitib29sIEdldFN5c3RlbUluZm9fbWFjKFN5c3RlbUluZm8gKmlu
Zm8pCiB7CiAgICAgewogICAgICAgICBpbnQzMl90IG1ham9yID0gMDsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9DYXBzLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9DYXBzLmNwcAppbmRleCBlZTRmMDllMDFkNmE3MTVh
ZGEzYzAyNWQ4OTJmY2NjNWZjYmUwN2IzLi5jZWYxMTViNzM2NTY1MjJjZTk0NjhlYmE2ZjRlN2Qy
YTNjYzM3MjQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvQ2Fwcy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Nh
cHMuY3BwCkBAIC02MjUsOSArNjI1LDEwIEBAIHN0YXRpYyBib29sIERldGVybWluZURlcHRoVGV4
dHVyZUFOR0xFU3VwcG9ydChjb25zdCBUZXh0dXJlQ2Fwc01hcCAmdGV4dHVyZUNhcHMpCiB7CiAg
ICAgY29uc3RleHByIEdMZW51bSByZXF1aXJlZEZvcm1hdHNbXSA9IHsKICAgICAgICAgR0xfREVQ
VEhfQ09NUE9ORU5UMTYsCi0jaWYgIUFOR0xFX1BMQVRGT1JNX0lPUworI2lmICFkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX0lPUykgJiYgKCFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSB8fCAhZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogICAgICAgICAvLyBGSVhNRTogVGVtcG9y
YXJpbHkgUmVtb3ZpbmcgdGhlIG5lZWQgZm9yIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUwogICAg
ICAgICAvLyBiZWNhdXNlIGl0IGlzIG5vdCBzdXBwb3J0ZWQgb24gaU9TLgorICAgICAgICAvLyBG
SVhNRTogSSB0aGluayB0aGlzIG5lZWRzIHRvIGJlIGEgcnVudGltZSBjaGVjayB3aGVuIHJ1bm5p
bmcgYW4gaU9TIGFwcCBvbiBNYWMuCiAgICAgICAgIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUywK
ICNlbmRpZgogICAgICAgICBHTF9ERVBUSDI0X1NURU5DSUw4X09FUywKQEAgLTY0MSw5ICs2NDIs
MTAgQEAgc3RhdGljIGJvb2wgRGV0ZXJtaW5lRGVwdGhUZXh0dXJlT0VTU3VwcG9ydChjb25zdCBU
ZXh0dXJlQ2Fwc01hcCAmdGV4dHVyZUNhcHMpCiB7CiAgICAgY29uc3RleHByIEdMZW51bSByZXF1
aXJlZEZvcm1hdHNbXSA9IHsKICAgICAgICAgR0xfREVQVEhfQ09NUE9ORU5UMTYsCi0jaWYgIUFO
R0xFX1BMQVRGT1JNX0lPUworI2lmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgKCFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSB8fCAhZGVmaW5lZChBTkdMRV9DUFVf
QVJNNjQpKQogICAgICAgICAvLyBGSVhNRTogVGVtcG9yYXJpbHkgUmVtb3ZpbmcgdGhlIG5lZWQg
Zm9yIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUwogICAgICAgICAvLyBiZWNhdXNlIGl0IGlzIG5v
dCBzdXBwb3J0ZWQgb24gaU9TLgorICAgICAgICAvLyBGSVhNRTogSSB0aGluayB0aGlzIG5lZWRz
IHRvIGJlIGEgcnVudGltZSBjaGVjayB3aGVuIHJ1bm5pbmcgYW4gaU9TIGFwcCBvbiBNYWMuCiAg
ICAgICAgIEdMX0RFUFRIX0NPTVBPTkVOVDMyX09FUywKICNlbmRpZgogICAgIH07CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAgYi9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKaW5kZXggZTNl
YmUzMjVkYWEyODhlODVjOWJmODAzN2EwMDUzMTA1MjQ3YjdhOC4uYzMxN2Y4MjY2MzFiZDBkNTc2
MjNkMjk2OWVmOTg0ZDBiMDM3ZmY4NyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9EaXNwbGF5LmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgImNv
bW1vbi9zeXN0ZW1fdXRpbHMuaCIKICNpbmNsdWRlICJjb21tb24vdGxzLmgiCiAjaW5jbHVkZSAi
Y29tbW9uL3V0aWxpdGllcy5oIgorI2luY2x1ZGUgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5o
IgogI2luY2x1ZGUgImxpYkFOR0xFL0NvbnRleHQuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9EZXZp
Y2UuaCIKICNpbmNsdWRlICJsaWJBTkdMRS9FR0xTeW5jLmgiCkBAIC01Myw2ICs1NCw5IEBACiAj
ICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC93Z2wvRGlzcGxheVdHTC5oIgog
IyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpCiAjICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvRGlzcGxheUNHTC5oIgorIyAgICAgICAgaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisjICAgICAgICAgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgorIyAgICAg
ICAgZW5kaWYKICMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykKICMgICAgICAg
IGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaCIKICMgICAg
ZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0xJTlVYKQpAQCAtMjYwLDggKzI2NCwzNiBAQCBy
eDo6RGlzcGxheUltcGwgKkNyZWF0ZURpc3BsYXlGcm9tQXR0cmlicyhFR0xBdHRyaWIgZGlzcGxh
eVR5cGUsCiAjaWYgZGVmaW5lZChBTkdMRV9FTkFCTEVfT1BFTkdMKQogIyAgICBpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX1dJTkRPV1MpCiAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNw
bGF5V0dMKHN0YXRlKTsKLSMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8
fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorICAgICAgICAgICAgYnJlYWs7
CisKKyMgICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKQorICAgICAgICAgICAg
aW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICBicmVhazsKKyMg
ICAgZWxpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorIyAgICAgICAgaWYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAg
YW5nbGU6OlN5c3RlbUluZm8gaW5mbzsKKyAgICAgICAgICAgICAgICBpZiAoIWFuZ2xlOjpHZXRT
eXN0ZW1JbmZvKCZpbmZvKSkKKyAgICAgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgICAg
IGltcGwgPSBudWxscHRyOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAg
ICAgICB9CisKKyAgICAgICAgICAgICAgICBpZiAoaW5mby5pc2lPU0FwcE9uTWFjKQorICAgICAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUVB
R0woc3RhdGUpOworICAgICAgICAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgIH0KKyMgICAgICAgIGVs
c2UKICAgICAgICAgICAgIGltcGwgPSBuZXcgcng6OkRpc3BsYXlDR0woc3RhdGUpOworICAgICAg
ICAgICAgYnJlYWs7CisjICAgICAgICBlbmRpZgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKQogICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUVBR0woc3RhdGUp
OwogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTElOVVgpCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwIGIvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcAppbmRleCBl
NDM0OTZmYzM0NzE5M2E5ZjFjYmMxMWZiZjZlNGRmZjljOTJlMjNlLi5hYThkOWVjMzkxODY5MTE4
YTliNzNkOWY1MTgwNjkxYTMzNTI0M2I0IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAKQEAgLTEwLDYgKzEwLDcgQEAKIAog
I2luY2x1ZGUgImFuZ2xlYmFzZS9ub19kZXN0cnVjdG9yLmgiCiAjaW5jbHVkZSAiY29tbW9uL21h
dGh1dGlsLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgiCiAjaW5jbHVk
ZSAibGliQU5HTEUvQ29udGV4dC5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0ZyYW1lYnVmZmVyLmgi
CiAKQEAgLTEwMzAsOCArMTAzMSwyMSBAQCBzdGF0aWMgSW50ZXJuYWxGb3JtYXRJbmZvTWFwIEJ1
aWxkSW50ZXJuYWxGb3JtYXRJbmZvTWFwKCkKICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1JH
QkEsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX1JHQkEsICAgICAgICAg
ICBHTF9CWVRFLCAgICAgICAgICAgICAgICAgICAgICAgIEdMX1NJR05FRF9OT1JNQUxJWkVELCAg
IGZhbHNlLCBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IE5ldmVyU3VwcG9ydGVkLCAgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKICAgICBBZGRSR0JBRm9y
bWF0KCZtYXAsIEdMX1NSR0IsICAgICAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDAsIDAsIEdM
X1NSR0IsICAgICAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lH
TkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjpzUkdCPiwgICAg
ICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQsICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsK
ICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX1NSR0JfQUxQSEFfRVhULCBmYWxzZSwgIDgsICA4
LCAgOCwgIDgsIDAsIEdMX1NSR0JfQUxQSEFfRVhULCBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAg
ICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIHRydWUsICBSZXF1aXJlRXh0PCZFeHRlbnNp
b25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUV4
dDwmRXh0ZW5zaW9uczo6c1JHQj4sICAgICAgICAgICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5l
dmVyU3VwcG9ydGVkKTsKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0gICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBH
TF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwgIDgsICA4LCAwLCBHTF9CR1JBX0VYVCwg
ICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAgICAgICBHTF9VTlNJR05FRF9OT1JNQUxJ
WkVELCBmYWxzZSwgUmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFUzwyLCAwPiwgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCk7CisjaWYgKGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCisgICAgYW5nbGU6OlN5c3RlbUluZm8gaW5mbzsKKyAgICBpZiAo
YW5nbGU6OkdldFN5c3RlbUluZm8oJmluZm8pKQorICAgIHsKKyAgICAgICAgaWYgKCFpbmZvLmlz
aU9TQXBwT25NYWMpCisgICAgICAgIHsKKyAgICAgICAgICAgIC8vIFVzaW5nIE9wZW5HTC5mcmFt
ZXdvcmsuCisgICAgICAgICAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAg
ICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05F
RF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1
aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9ybWF0QkdSQTg4ODg+LCAgIEFsd2F5c1N1cHBv
cnRlZCwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgTmV2
ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKKyAgICAgICAgfQorICAgICAgICBlbHNlCisg
ICAgICAgIHsKKyAgICAgICAgICAgIC8vIFVzaW5nIE9wZW5HTEVTLmZyYW1ld29yay4KKyAgICAg
ICAgICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwg
IDgsICA4LCAgOCwgMCwgR0xfQkdSQV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAg
ICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVFUzwyLCAwPiwg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJl
RVM8MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwg
TmV2ZXJTdXBwb3J0ZWQpOworICAgICAgICB9CisgICAgfQogI2Vsc2UKICAgICBBZGRSR0JBRm9y
bWF0KCZtYXAsIEdMX0JHUkFfRVhULCAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdM
X0JHUkFfRVhULCAgICAgICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lH
TkVEX05PUk1BTElaRUQsIGZhbHNlLCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9y
bWF0QkdSQTg4ODg+LCAgIEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUV4dDwmRXh0ZW5zaW9uczo6
dGV4dHVyZUZvcm1hdEJHUkE4ODg4PiwgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsK
ICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4yZGY1N2NlN2M5MmI2MmU4MzE3MjFjNDUyYjZmZDUwZTA4NDA2ZjE5Ci0tLSAvZGV2L251bGwK
KysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1Nv
ZnRMaW5raW5nX2FwcGxlLmgKQEAgLTAsMCArMSwxMTQgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAy
MCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNl
IGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8g
Zm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIFNvZnRMaW5raW5nX2FwcGxlLmNw
cDogTWFjcm9zIGZvciBzb2Z0LWxpbmtpbmcgRnJhbWV3b3JrcyBhbmQgRnVuY3Rpb25zLgorCisj
aWZuZGVmIFNPRlRfTElOS0lOR19BUFBMRV9IXworI2RlZmluZSBTT0ZUX0xJTktJTkdfQVBQTEVf
SF8KKworI2luY2x1ZGUgImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9BUFBMRSkKKworI2luY2x1ZGUgImNvbW1vbi9kZWJ1Zy5oIgorCisjaW1wb3J0IDxk
aXNwYXRjaC9kaXNwYXRjaC5oPgorI2ltcG9ydCA8ZGxmY24uaD4KKyNpbXBvcnQgPG9iamMvcnVu
dGltZS5oPgorCisjZGVmaW5lIFJFTEVBU0VfQVNTRVJUKGV4cHJlc3Npb24sIG1lc3NhZ2UpICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBcCisgICAgICAgIChleHByZXNzaW9uID8gc3RhdGljX2Nhc3Q8dm9pZD4oMCkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICBcCisgICAgICAgICAgICAgICAgICAgIDogKEZBVEFMKCkgPDwgIlx0ISBBc3NlcnQgZmFpbGVk
IGluICIgPDwgX19GVU5DVElPTl9fIDw8ICIgKCIgPDwgX19GSUxFX18gICAgICAgICAgICAgICBc
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPDwgIjoiIDw8IF9fTElORV9fIDw8ICIp
OiAiIDw8ICNleHByZXNzaW9uIDw8ICJcblx0ISBNZXNzYWdlOiAiIDw8IG1lc3NhZ2UpKQorCisK
KyNpZmRlZiBfX2NwbHVzcGx1cworI2RlZmluZSBFWFRFUk5fQ19CRUdJTiBleHRlcm4gIkMiIHsK
KyNkZWZpbmUgRVhURVJOX0NfRU5EIH0KKyNlbHNlCisjZGVmaW5lIEVYVEVSTl9DX0JFR0lOCisj
ZGVmaW5lIEVYVEVSTl9DX0VORAorI2VuZGlmCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZSQU1FV09S
S19IRUFERVIoZnJhbWV3b3JrKSBcCisgICAgZXh0ZXJuIHZvaWQqIGZyYW1ld29yayMjTGlicmFy
eSgpOyBcCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZSQU1FV09SS19TT1VSQ0UoZnJhbWV3b3JrKSBc
CisgICAgdm9pZCogZnJhbWV3b3JrIyNMaWJyYXJ5KCkgXAorICAgIHsgXAorICAgICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2UgPSAwOyBcCisgICAgICAgIHN0YXRpYyB2b2lkKiBmcmFt
ZXdvcmtMaWJyYXJ5ID0gTlVMTDsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBc
CisgICAgICAgICAgICBmcmFtZXdvcmtMaWJyYXJ5ID0gZGxvcGVuKCIvU3lzdGVtL0xpYnJhcnkv
RnJhbWV3b3Jrcy8iICNmcmFtZXdvcmsgIi5mcmFtZXdvcmsvIiAjZnJhbWV3b3JrLCBSVExEX05P
Vyk7IFwKKyAgICAgICAgICAgIFJFTEVBU0VfQVNTRVJUKGZyYW1ld29ya0xpYnJhcnksICJVbmFi
bGUgdG8gbG9hZCAiICNmcmFtZXdvcmsgIi5mcmFtZXdvcmsiKTsgXAorICAgICAgICB9KTsgXAor
ICAgICAgICByZXR1cm4gZnJhbWV3b3JrTGlicmFyeTsgXAorICAgIH0KKworI2RlZmluZSBTT0ZU
X0xJTktfRlVOQ1RJT05fSEVBREVSKGZyYW1ld29yaywgZnVuY3Rpb25OYW1lLCByZXN1bHRUeXBl
LCBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMsIHBhcmFtZXRlck5hbWVzKSBcCisgICAgRVhURVJOX0Nf
QkVHSU4gXAorICAgIHJlc3VsdFR5cGUgZnVuY3Rpb25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9u
czsgXAorICAgIEVYVEVSTl9DX0VORCBcCisgICAgZXh0ZXJuIHJlc3VsdFR5cGUgaW5pdCMjZnJh
bWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zOyBcCisgICAgZXh0ZXJu
IHJlc3VsdFR5cGUoKnNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSkgcGFyYW1ldGVy
RGVjbGFyYXRpb25zOyBcCisgICAgaW5saW5lIF9fYXR0cmlidXRlX18oKF9fYWx3YXlzX2lubGlu
ZV9fKSkgcmVzdWx0VHlwZSBmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zIFwKKyAg
ICB7IFwKKyAgICAgICAgcmV0dXJuIHNvZnRMaW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSBw
YXJhbWV0ZXJOYW1lczsgXAorICAgIH0gXAorCisjZGVmaW5lIFNPRlRfTElOS19GVU5DVElPTl9T
T1VSQ0UoZnJhbWV3b3JrLCBmdW5jdGlvbk5hbWUsIHJlc3VsdFR5cGUsIHBhcmFtZXRlckRlY2xh
cmF0aW9ucywgcGFyYW1ldGVyTmFtZXMpIFwKKyAgICByZXN1bHRUeXBlKCpzb2Z0TGluayMjZnJh
bWV3b3JrIyNmdW5jdGlvbk5hbWUpIHBhcmFtZXRlckRlY2xhcmF0aW9ucyA9IGluaXQjI2ZyYW1l
d29yayMjZnVuY3Rpb25OYW1lOyBcCisgICAgcmVzdWx0VHlwZSBpbml0IyNmcmFtZXdvcmsjI2Z1
bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgXAorICAgIHsgXAorICAgICAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7IFwKKyAgICAgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwg
XnsgXAorICAgICAgICAgICAgc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lID0gKHJl
c3VsdFR5cGUgKCopIHBhcmFtZXRlckRlY2xhcmF0aW9ucykgZGxzeW0oZnJhbWV3b3JrIyNMaWJy
YXJ5KCksICNmdW5jdGlvbk5hbWUpOyBcCisgICAgICAgIH0pOyBcCisgICAgICAgIHJldHVybiBz
b2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgcGFyYW1ldGVyTmFtZXM7IFwKKyAgICB9
IFwKKworI2RlZmluZSBTT0ZUX0xJTktfQ0xBU1NfSEVBREVSKGNsYXNzTmFtZSkgXAorICAgIEBj
bGFzcyBjbGFzc05hbWU7IFwKKyAgICBleHRlcm4gQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xh
c3MpKCk7IFwKKyAgICBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNlKCk7IFwK
KyAgICBpbmxpbmUgY2xhc3NOYW1lICphbGxvYyMjY2xhc3NOYW1lIyNJbnN0YW5jZSgpIFwKKyAg
ICB7IFwKKyAgICAgICAgcmV0dXJuIFtnZXQjI2NsYXNzTmFtZSMjQ2xhc3MoKSBhbGxvY107IFwK
KyAgICB9CisKKyNkZWZpbmUgU09GVF9MSU5LX0NMQVNTKGZyYW1ld29yaywgY2xhc3NOYW1lKSBc
CisgICAgQGNsYXNzIGNsYXNzTmFtZTsgXAorICAgIHN0YXRpYyBDbGFzcyBpbml0IyNjbGFzc05h
bWUoKTsgXAorICAgIENsYXNzICgqZ2V0IyNjbGFzc05hbWUjI0NsYXNzKSgpID0gaW5pdCMjY2xh
c3NOYW1lOyBcCisgICAgc3RhdGljIENsYXNzIGNsYXNzIyNjbGFzc05hbWU7IFwKKyAgICBcCisg
ICAgc3RhdGljIENsYXNzIGNsYXNzTmFtZSMjRnVuY3Rpb24oKSBcCisgICAgeyBcCisgICAgICAg
IHJldHVybiBjbGFzcyMjY2xhc3NOYW1lOyBcCisgICAgfSBcCisgICAgXAorICAgIHN0YXRpYyBD
bGFzcyBpbml0IyNjbGFzc05hbWUoKSBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBkaXNwYXRj
aF9vbmNlX3Qgb25jZTsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBcCisgICAg
ICAgICAgICBmcmFtZXdvcmsjI0xpYnJhcnkoKTsgXAorICAgICAgICAgICAgY2xhc3MjI2NsYXNz
TmFtZSA9IG9iamNfZ2V0Q2xhc3MoI2NsYXNzTmFtZSk7IFwKKyAgICAgICAgICAgIFJFTEVBU0Vf
QVNTRVJUKGNsYXNzIyNjbGFzc05hbWUsICJvYmpjX2dldENsYXNzIGZhaWxlZCBmb3IgIiAjY2xh
c3NOYW1lKTsgXAorICAgICAgICAgICAgZ2V0IyNjbGFzc05hbWUjI0NsYXNzID0gY2xhc3NOYW1l
IyNGdW5jdGlvbjsgXAorICAgICAgICB9KTsgXAorICAgICAgICByZXR1cm4gY2xhc3MjI2NsYXNz
TmFtZTsgXAorICAgIH0gXAorICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcHVzaCIpIFwK
KyAgICBfUHJhZ21hKCJjbGFuZyBkaWFnbm9zdGljIGlnbm9yZWQgXCItV3VudXNlZC1mdW5jdGlv
blwiIikgXAorICAgIHN0YXRpYyBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNl
KCkgXAorICAgIHsgXAorICAgICAgICByZXR1cm4gW2dldCMjY2xhc3NOYW1lIyNDbGFzcygpIGFs
bG9jXTsgXAorICAgIH0gXAorICAgIF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgcG9wIikKKwor
I2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fQVBQTEUpCisKKyNlbmRpZiAvLyBTT0ZU
X0xJTktJTkdfQVBQTEVfSF8KZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNwcCBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmNw
cApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4xNTViNGRmN2Q3ZDJlZWUzOWQ5N2NkZTkwZjYwYTdhMjc0ZmY4YzJjCi0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwCkBAIC0wLDAgKzEsMzIgQEAKKy8vCisvLyBD
b3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9m
IHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0
IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIENHTEZ1bmN0
aW9ucy5jcHA6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBDR0wgaW50ZXJmYWNlLgorCisjaW5j
bHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL0NHTEZ1bmN0aW9ucy5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykg
fHwgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKworU09GVF9MSU5LX0ZSQU1F
V09SS19TT1VSQ0UoT3BlbkdMKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRy
aWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0
dHJpYnMsIHBpeCwgbnBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dM
Q3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRl
eHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorU09G
VF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENH
TEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZv
cm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJp
YiwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTERlc3Ryb3lD
b250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktf
RlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveVBpeGVsRm9ybWF0LCBDR0xFcnJvciwg
KENHTFBpeGVsRm9ybWF0T2JqIHBpeCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTEVycm9yU3RyaW5nLCBjb25zdCBjaGFyICosIChDR0xFcnJvciBlcnJvciks
IChlcnJvcikpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMUmVsZWFzZUNv
bnRleHQsIHZvaWQsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNU
SU9OX1NPVVJDRShPcGVuR0wsIENHTFNldEN1cnJlbnRDb250ZXh0LCBDR0xFcnJvciwgKENHTENv
bnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMU2V0VmlydHVhbFNjcmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQg
c2NyZWVuKSwgKGN0eCwgc2NyZWVuKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdM
LCBDR0xUZXhJbWFnZUlPU3VyZmFjZTJELCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBH
TGVudW0gdGFyZ2V0LCBHTGVudW0gaW50ZXJuYWxfZm9ybWF0LCBHTHNpemVpIHdpZHRoLCBHTHNp
emVpIGhlaWdodCwgR0xlbnVtIGZvcm1hdCwgR0xlbnVtIHR5cGUsIElPU3VyZmFjZVJlZiBpb1N1
cmZhY2UsIEdMdWludCBwbGFuZSksIChjdHgsIHRhcmdldCwgaW50ZXJuYWxfZm9ybWF0LCB3aWR0
aCwgaGVpZ2h0LCBmb3JtYXQsIHR5cGUsIGlvU3VyZmFjZSwgcGxhbmUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX1NPVVJDRShPcGVuR0wsIENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29u
dGV4dE9iaiBjdHgpLCAoY3R4KSkKKworU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0ws
IENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQs
IEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSks
IChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShPcGVuR0wsIENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJ
bmZvT2JqIHJlbmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwg
Q0dMUXVlcnlSZW5kZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dM
UmVuZGVyZXJJbmZvT2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5k
LCBucmVuZCkpCisKKyNlbmRpZiAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMu
aCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYThhMWQ3YzczYmM5ZDhlMWNiYmQ4ZGRiMzQ3MzQx
MTk1ZWFkMTYzNgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgKQEAgLTAsMCArMSwzOSBA
QAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBs
aWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKwor
Ly8gQ0dMRnVuY3Rpb25zLmg6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBDR0wgaW50ZXJmYWNl
LgorCisjaWZuZGVmIENHTF9GVU5DVElPTlNfSF8KKyNkZWZpbmUgQ0dMX0ZVTkNUSU9OU19IXwor
CisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorCisjaW5j
bHVkZSA8T3BlbkdML09wZW5HTC5oPgorCisjaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wv
U29mdExpbmtpbmdfYXBwbGUuaCIKKworU09GVF9MSU5LX0ZSQU1FV09SS19IRUFERVIoT3BlbkdM
KQorCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3Jt
YXQsIENHTEVycm9yLCAoY29uc3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENH
TFBpeGVsRm9ybWF0T2JqICpwaXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkp
CitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMQ3JlYXRlQ29udGV4dCwgQ0dM
RXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hhcmUsIENHTENv
bnRleHRPYmogKmN0eCksIChwaXgsIHNoYXJlLCBjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hF
QURFUihPcGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxG
b3JtYXRPYmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRy
aWIsIEdMaW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQorU09GVF9M
SU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVycm9y
LCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJlclBy
b3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFsdWUp
KQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTERlc3Ryb3lDb250ZXh0LCBD
R0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
SEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveVBpeGVsRm9ybWF0LCBDR0xFcnJvciwgKENHTFBpeGVs
Rm9ybWF0T2JqIHBpeCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0ws
IENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJl
bmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRXJyb3JT
dHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVycm9yKSkKK1NPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3Is
IChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpu
cmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9I
RUFERVIoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4
KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMU2V0Q3VycmVu
dENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwg
KENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9M
SU5LX0ZVTkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9m
b3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkgaGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVu
dW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFjZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFy
Z2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBoZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJm
YWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVXBkYXRl
Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorCisjZW5kaWYg
Ly8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkKKworI2VuZGlmIC8vIENHTF9GVU5DVElPTlNfSF8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlz
cGxheUNHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvRGlzcGxheUNHTC5tbQppbmRleCA3OWExMWQ0ZDI5OGExYTNiMjQxZDk4NDBlY2E3
YmI1M2JmMjU3YjE1Li5lN2NjMmJhMmZhNjNjNmEzMzYxYjA1N2Y4ZGYxNzgyODYxMzc5ZGYxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvY2dsL0Rpc3BsYXlDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLm1tCkBAIC0yOCw2ICsyOCw4IEBACiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgi
CiAjICAgIGluY2x1ZGUgInBsYXRmb3JtL1BsYXRmb3JtTWV0aG9kcy5oIgogCisjICAgIGluY2x1
ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNl
CiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wu
Y3BwCmluZGV4IGFmZGNhNGYyZWY5NmM4NTVmODZmNjk4OGMwYTY2ZjNiM2ZmOTY0N2MuLjhlZDQz
OTFlMDMwZDRhMGI0NTQwMzAwMmI3YzRmZWJlODE0NGVlOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3Vy
ZmFjZUNHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcApAQCAtMjcsNiArMjcsOCBAQAog
IyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9UZXh0dXJlR0wuaCIKICMgICAgaW5j
bHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wuaCIKIAorIyAgICBpbmNs
dWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvQ0dMRnVuY3Rpb25zLmgiCisKIG5hbWVzcGFj
ZSByeAogewogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oCmlu
ZGV4IGQ4YjRjYzJmOTFjMzQxYmE4ZjIwZDE2ZTM5YmQ2YmQwMzkwOGNlMDQuLmQ4YmFhYmY3ZmM3
OGM4MTZjNmMzODNmNmRjZWNiMTU0MGRlMzRkYjIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5o
CisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvV2luZG93U3VyZmFjZUNHTC5oCkBAIC0xOCw3ICsxOCw3IEBAIHN0cnVjdCBfX0lPU3VyZmFj
ZTsKIHR5cGVkZWYgX19JT1N1cmZhY2UgKklPU3VyZmFjZVJlZjsKIAogLy8gV2ViS2l0J3MgYnVp
bGQgcHJvY2VzcyByZXF1aXJlcyB0aGF0IGV2ZXJ5IE9iamVjdGl2ZS1DIGNsYXNzIG5hbWUgaGFz
IHRoZSBwcmVmaXggIldlYiIuCi1AY2xhc3MgV2ViU3dhcExheWVyOworQGNsYXNzIFdlYlN3YXBM
YXllckNHTDsKIAogbmFtZXNwYWNlIHJ4CiB7CkBAIC04Nyw3ICs4Nyw3IEBAIGNsYXNzIFdpbmRv
d1N1cmZhY2VDR0wgOiBwdWJsaWMgU3VyZmFjZUdMCiAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgY29uc3QgZ2w6OkZyYW1lYnVmZmVyU3RhdGUgJnN0YXRlKSBv
dmVycmlkZTsKIAogICBwcml2YXRlOgotICAgIFdlYlN3YXBMYXllciAqbVN3YXBMYXllcjsKKyAg
ICBXZWJTd2FwTGF5ZXJDR0wgKm1Td2FwTGF5ZXI7CiAgICAgU2hhcmVkU3dhcFN0YXRlIG1Td2Fw
U3RhdGU7CiAgICAgdWludDY0X3QgbUN1cnJlbnRTd2FwSWQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3Vy
ZmFjZUNHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbQppbmRleCAwZmE1N2JlNDNiNzc5ZjBkZWViY2Zk
YzUxMjAyNjg1MTVhYjk0NTZmLi5iOGQ1OTkwZTY0ZTgyZWU3NjcxM2MyNjUzNDczZmJiYWU0MzUx
OGY5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCkBA
IC0yMyw3ICsyMyw5IEBACiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRl
TWFuYWdlckdMLmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNw
bGF5Q0dMLmgiCiAKLUBpbnRlcmZhY2UgV2ViU3dhcExheWVyIDogQ0FPcGVuR0xMYXllciB7Cisj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwor
QGludGVyZmFjZSBXZWJTd2FwTGF5ZXJDR0wgOiBDQU9wZW5HTExheWVyIHsKICAgICBDR0xDb250
ZXh0T2JqIG1EaXNwbGF5Q29udGV4dDsKIAogICAgIGJvb2wgaW5pdGlhbGl6ZWQ7CkBAIC0zNyw3
ICszOSw3IEBACiAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOihjb25zdCByeDo6RnVuY3Rpb25z
R0wgKilmdW5jdGlvbnM7CiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXIKK0Bp
bXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXJDR0wKIC0gKGlkKWluaXRXaXRoU2hhcmVkU3RhdGU6
KHJ4OjpTaGFyZWRTd2FwU3RhdGUgKilzd2FwU3RhdGUKICAgICAgICAgICAgICAgd2l0aENvbnRl
eHQ6KENHTENvbnRleHRPYmopZGlzcGxheUNvbnRleHQKICAgICAgICAgICAgIHdpdGhGdW5jdGlv
bnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAqKWZ1bmN0aW9ucwpAQCAtMjA4LDkgKzIxMCw5IEBA
IGVnbDo6RXJyb3IgV2luZG93U3VyZmFjZUNHTDo6aW5pdGlhbGl6ZShjb25zdCBlZ2w6OkRpc3Bs
YXkgKmRpc3BsYXkpCiAgICAgbVN3YXBTdGF0ZS5sYXN0UmVuZGVyZWQgICA9ICZtU3dhcFN0YXRl
LnRleHR1cmVzWzFdOwogICAgIG1Td2FwU3RhdGUuYmVpbmdQcmVzZW50ZWQgPSAmbVN3YXBTdGF0
ZS50ZXh0dXJlc1syXTsKIAotICAgIG1Td2FwTGF5ZXIgPSBbW1dlYlN3YXBMYXllciBhbGxvY10g
aW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBTdGF0ZQotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICB3aXRoQ29udGV4dDptQ29udGV4dAotICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25z
XTsKKyAgICBtU3dhcExheWVyID0gW1tXZWJTd2FwTGF5ZXJDR0wgYWxsb2NdIGluaXRXaXRoU2hh
cmVkU3RhdGU6Jm1Td2FwU3RhdGUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CiAg
ICAgW21MYXllciBhZGRTdWJsYXllcjptU3dhcExheWVyXTsKICAgICBbbVN3YXBMYXllciBzZXRD
b250ZW50c1NjYWxlOlttTGF5ZXIgY29udGVudHNTY2FsZV1dOwogCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VF
QUdMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuY3BwCmluZGV4IGE5ODM0NjE5MjQwY2VkMDM3ZjU0ZjEwZDE0OGM3
ZTFkMDY5MzdlYzUuLjY0MTk3ZmZlZmQ1NzIxOGQ1Y2IzMzY1YzVmYjMyNGNlZTM4NmM0MjYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuY3BwCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAog
CiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NB
VEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmlu
ZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0RldmljZUVBR0wuaCIKIApAQCAtNTYsNCArNTYsNCBAQCB2b2lkIERldmljZUVBR0w6
OmdlbmVyYXRlRXh0ZW5zaW9ucyhlZ2w6OkRldmljZUV4dGVuc2lvbnMgKm91dEV4dGVuc2lvbnMp
IGNvbnN0CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNl
bmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmgg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9E
ZXZpY2VFQUdMLmgKaW5kZXggNTc2OTY5MjFlZjNiZTU0ODZhZTkxODU1MGJkMzMzOGIwZDRiYzBh
NS4uOTNhYmZmYzAyODVmNmIwNTVlNTdlMmNkYmFlNDA4NTUyM2IyZTE0NCAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2
aWNlRUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaApAQCAtMTEsNyArMTEsNyBAQAogCiAjaW1wb3J0ICJj
b21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAh
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BV
X0FSTTY0KSkKIAogI2luY2x1ZGUgImxpYkFOR0xFL0RldmljZS5oIgogI2luY2x1ZGUgImxpYkFO
R0xFL3JlbmRlcmVyL0RldmljZUltcGwuaCIKQEAgLTM0LDYgKzM0LDYgQEAgY2xhc3MgRGV2aWNl
RUFHTCA6IHB1YmxpYyBEZXZpY2VJbXBsCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYg
IC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAm
JiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNl
bmRpZiAgLy8gTElCQU5HTEVfUkVOREVSRVJfR0xfRUFHTF9ERVZJQ0VFQUdMX0hfCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFn
bC9EaXNwbGF5RUFHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaAppbmRleCAyNjFiYTQwN2QxOTNiZWI5MzEyYWQx
MTA2ZDhjNmJlODBkODczOWQ5Li5hNTM2NmU5MTZlOWM3NTYwOWYzMTAxMzEyZmViNjBmMDU3YzEx
MTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKQEAgLTExLDcgKzEx
LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisj
aWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9EaXNwbGF5R0wuaCIKIApAQCAtOTcsNiArOTcsNiBAQCBjbGFzcyBEaXNwbGF5RUFHTCA6
IHB1YmxpYyBEaXNwbGF5R0wKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAvLyBkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpCisjZW5kaWYgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICNlbmRpZiAgLy8g
TElCQU5HTEVfUkVOREVSRVJfR0xfRUFHTF9ESVNQTEFZRUFHTF9IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxh
eUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbQppbmRleCBjZWIyZDExZmM3OTllMzk2MjVjNzc4YTcyMjU2
NTJhYWVjODg4YTExLi41ZDlhNzcxNmZlNTZiZDRlZjJkZTNhN2FhNWE5NDQ4NDhmNjNjM2ZiIDEw
MDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5tbQpAQCAtOCw3ICs4LDcgQEAK
IAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZp
bmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0Rpc3BsYXlFQUdMLmgiCiAKQEAgLTIzLDExICsyMywxMCBAQAogIyAgICBpbXBvcnQg
ImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaCIKIAogIyAgICBp
bXBvcnQgPEZvdW5kYXRpb24vRm91bmRhdGlvbi5oPgotIyAgICBpbXBvcnQgPE9wZW5HTEVTL0VB
R0wuaD4KICMgICAgaW1wb3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4KICMgICAgaW1wb3J0
IDxkbGZjbi5oPgogCi0jICAgIGRlZmluZSBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT04KKyMgICAg
aW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaCIKIAogbmFt
ZXNwYWNlCiB7CkBAIC03MSwxMiArNzAsMTIgQEAgZWdsOjpFcnJvciBEaXNwbGF5RUFHTDo6aW5p
dGlhbGl6ZShlZ2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgICAgIHJldHVybiBlZ2w6OkVnbE5v
dEluaXRpYWxpemVkKCkgPDwgIlVuYWJsZSB0byBxdWVyeSBBTkdMRSdzIFN5c3RlbUluZm8uIjsK
ICAgICB9CiAKLSAgICBtQ29udGV4dCA9IFtbRUFHTENvbnRleHQgYWxsb2NdIGluaXRXaXRoQVBJ
OmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKKyAgICBtQ29udGV4dCA9IFtbZ2V0RUFHTENv
bnRleHRDbGFzcygpIGFsbG9jXSBpbml0V2l0aEFQSTprRUFHTFJlbmRlcmluZ0FQSU9wZW5HTEVT
M107CiAgICAgaWYgKG1Db250ZXh0ID09IG51bGxwdHIpCiAgICAgewogICAgICAgICByZXR1cm4g
ZWdsOjpFZ2xOb3RJbml0aWFsaXplZCgpIDw8ICJDb3VsZCBub3QgY3JlYXRlIHRoZSBFQUdMIGNv
bnRleHQuIjsKICAgICB9Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om1Db250
ZXh0XTsKKyAgICBbZ2V0RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om1Db250
ZXh0XTsKIAogICAgIC8vIFRoZXJlIGlzIG5vIGVxdWl2YWxlbnQgZ2V0UHJvY0FkZHJlc3MgaW4g
RUFHTCBzbyB3ZSBvcGVuIHRoZSBkeWxpYiBkaXJlY3RseQogICAgIHZvaWQgKmhhbmRsZSA9IGRs
b3BlbihrT3BlbkdMRVNEeWxpYk5hbWUsIFJUTERfTk9XKTsKQEAgLTEwNiw3ICsxMDUsNyBAQCB2
b2lkIERpc3BsYXlFQUdMOjp0ZXJtaW5hdGUoKQogICAgIG1SZW5kZXJlci5yZXNldCgpOwogICAg
IGlmIChtQ29udGV4dCAhPSBudWxscHRyKQogICAgIHsKLSAgICAgICAgW0VBR0xDb250ZXh0IHNl
dEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0
Q3VycmVudENvbnRleHQ6bmlsXTsKICAgICAgICAgW21Db250ZXh0IHJlbGVhc2VdOwogICAgICAg
ICBtQ29udGV4dCA9IG51bGxwdHI7CiAgICAgfQpAQCAtMzMwLDE0ICszMjksMTQgQEAgV29ya2Vy
Q29udGV4dEVBR0w6OldvcmtlckNvbnRleHRFQUdMKEVBR0xDb250ZXh0T2JqIGNvbnRleHQpIDog
bUNvbnRleHQoY29udGV4dCkKIAogV29ya2VyQ29udGV4dEVBR0w6On5Xb3JrZXJDb250ZXh0RUFH
TCgpCiB7Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgW2dl
dEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpuaWxdOwogICAgIFttQ29udGV4
dCByZWxlYXNlXTsKICAgICBtQ29udGV4dCA9IG51bGxwdHI7CiB9CiAKIGJvb2wgV29ya2VyQ29u
dGV4dEVBR0w6Om1ha2VDdXJyZW50KCkKIHsKLSAgICBpZiAoIVtFQUdMQ29udGV4dCBzZXRDdXJy
ZW50Q29udGV4dDpzdGF0aWNfY2FzdDxFQUdMQ29udGV4dCAqPihtQ29udGV4dCldKQorICAgIGlm
ICghW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpzdGF0aWNfY2FzdDxF
QUdMQ29udGV4dCAqPihtQ29udGV4dCldKQogICAgIHsKICAgICAgICAgRVJSKCkgPDwgIlVuYWJs
ZSB0byBtYWtlIGdsIGNvbnRleHQgY3VycmVudC4iOwogICAgICAgICByZXR1cm4gZmFsc2U7CkBA
IC0zNDcsMTMgKzM0NiwxMyBAQCBib29sIFdvcmtlckNvbnRleHRFQUdMOjptYWtlQ3VycmVudCgp
CiAKIHZvaWQgV29ya2VyQ29udGV4dEVBR0w6OnVubWFrZUN1cnJlbnQoKQogewotICAgIFtFQUdM
Q29udGV4dCBzZXRDdXJyZW50Q29udGV4dDpuaWxdOworICAgIFtnZXRFQUdMQ29udGV4dENsYXNz
KCkgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKIH0KIAogV29ya2VyQ29udGV4dCAqRGlzcGxheUVB
R0w6OmNyZWF0ZVdvcmtlckNvbnRleHQoc3RkOjpzdHJpbmcgKmluZm9Mb2cpCiB7CiAgICAgRUFH
TENvbnRleHRPYmogY29udGV4dCA9IG51bGxwdHI7Ci0gICAgY29udGV4dCAgICAgICAgICAgICAg
ICA9IFtbRUFHTENvbnRleHQgYWxsb2NdIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3Bl
bkdMRVMzXTsKKyAgICBjb250ZXh0ICAgICAgICAgICAgICAgID0gW1tnZXRFQUdMQ29udGV4dENs
YXNzKCkgYWxsb2NdIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKICAg
ICBpZiAoIWNvbnRleHQpCiAgICAgewogICAgICAgICAqaW5mb0xvZyArPSAiQ291bGQgbm90IGNy
ZWF0ZSB0aGUgRUFHTCBjb250ZXh0LiI7CkBAIC0zNzQsNCArMzczLDQgQEAgdm9pZCBEaXNwbGF5
RUFHTDo6cG9wdWxhdGVGZWF0dXJlTGlzdChhbmdsZTo6RmVhdHVyZUxpc3QgKmZlYXR1cmVzKQog
fQogfQogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQ
VV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uY2QzNjE5NWI5OTU4NmM5ZmVhNGVjOGM2NmZhNWQwYjEzZWFkNzE5YQotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0VBR0xGdW5jdGlvbnMuaApAQCAtMCwwICsxLDI4IEBACisvLworLy8gQ29weXJpZ2h0
IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNv
dXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUK
Ky8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBFQUdMRnVuY3Rpb25zLmg6
IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBFQUdMIGludGVyZmFjZS4KKworI2lmbmRlZiBFQUdM
X0ZVTkNUSU9OU19IXworI2RlZmluZSBFQUdMX0ZVTkNUSU9OU19IXworCisjaW5jbHVkZSAiY29t
bW9uL3BsYXRmb3JtLmgiCisKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKworI2ltcG9y
dCA8T3BlbkdMRVMvRUFHTC5oPgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+Cisj
aW1wb3J0IDxPcGVuR0xFUy9FQUdMSU9TdXJmYWNlLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9y
ZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hF
QURFUihPcGVuR0xFUykKKworU09GVF9MSU5LX0NMQVNTX0hFQURFUihFQUdMQ29udGV4dCkKKwor
I2VuZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCisjZW5kaWYgLy8gQ0dMX0ZVTkNU
SU9OU19IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMubW0KbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYTdkZmEyMWJiNzIzNGZiYjI4MjcwYmY4ZTVlMGY3MzhkY2ExYzZhNAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL0VBR0xGdW5jdGlvbnMubW0KQEAgLTAsMCArMSwyNCBAQAorLy8KKy8vIENvcHlyaWdo
dCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBz
b3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJl
CisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gRUFHTEZ1bmN0aW9ucy5j
cHA6IEV4cG9zaW5nIHRoZSBzb2Z0LWxpbmtlZCBFQUdMIGludGVyZmFjZS4KKworI2luY2x1ZGUg
ImNvbW1vbi9wbGF0Zm9ybS5oIgorCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAm
JiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisKKyNp
bXBvcnQgPE9wZW5HTEVTL0VBR0wuaD4KKyNpbXBvcnQgPE9wZW5HTEVTL0VBR0xEcmF3YWJsZS5o
PgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTElPU3VyZmFjZS5oPgorCisjaW5jbHVkZSAibGliQU5H
TEUvcmVuZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaCIKKworU09GVF9MSU5LX0ZSQU1FV09S
S19TT1VSQ0UoT3BlbkdMRVMpCisKK1NPRlRfTElOS19DTEFTUyhPcGVuR0xFUywgRUFHTENvbnRl
eHQpCisKKyNlbmRpZiAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKwpkaWZmIC0tZ2l0IGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9T
dXJmYWNlU3VyZmFjZUVBR0wubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQppbmRleCBkMGI1Yzk4
MGJhYzk0MzBjMDFlZjEyMmNhNjQxZDE4YTRkNjI2YmJkLi5iMDY0OWFkNjU4ZGE5OTdhY2EwZTUz
MzA0NjRmNWQ0Nzk4ZTU0NDM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9z
cmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJmYWNlRUFHTC5tbQorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9J
T1N1cmZhY2VTdXJmYWNlRUFHTC5tbQpAQCAtOSw3ICs5LDcgQEAKIAogI2ltcG9ydCAiY29tbW9u
L3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02
NCkpCiAKICMgICAgaW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLmgiCiAKQEAgLTQyNyw0ICs0MjcsNCBAQCBJT1N1cmZhY2VMb2NrT3B0aW9ucyBJ
T1N1cmZhY2VTdXJmYWNlRUFHTDo6Z2V0SU9TdXJmYWNlTG9ja09wdGlvbnMoKSBjb25zdAogCiB9
ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmICAvLyBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lP
UykKKyNlbmRpZiAgLy8gKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVy
U3VyZmFjZUVBR0wuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcAppbmRleCAzNmYxYzE1Yjk3NWRk
Y2IwYTA5N2VjOTk2MWZiMjM0ZDRhN2M0ZjE5Li5jYjE2NmE0YWVlNzMzZjU3NGE5OGVlNGVlZmMy
ZTVlMTY3YTBmZDFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCisrKyBiL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJT
dXJmYWNlRUFHTC5jcHAKQEAgLTksNyArOSw3IEBACiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9y
bS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykg
JiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdM
RV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAj
ICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdM
LmgiCiAKQEAgLTE0NCw0ICsxNDQsNCBAQCBGcmFtZWJ1ZmZlckltcGwgKlBidWZmZXJTdXJmYWNl
RUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0CiAKIH0gIC8v
IG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQor
I2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xF
X1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FU
QUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRlcmVyRUFH
TC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9SZW5kZXJlckVBR0wuY3BwCmluZGV4IGE0NzM4YjI1NjZiM2EzOWZhZmU3OGI2ZmE3NjAw
ZTFhZjZhNjM2OWEuLjRkM2NmYmJlN2MzNTEwNjZmZjdkMDg4OWMyN2EyYzQ2MGZmZGQ5YjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1JlbmRlcmVyRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcApAQCAtOCw3ICs4LDcg
QEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisjaWYg
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL1JlbmRlcmVyRUFHTC5oIgpAQCAtMzEsNCArMzEsNCBAQCBXb3JrZXJDb250ZXh0
ICpSZW5kZXJlckVBR0w6OmNyZWF0ZVdvcmtlckNvbnRleHQoc3RkOjpzdHJpbmcgKmluZm9Mb2cp
CiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dp
bmRvd1N1cmZhY2VFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oCmluZGV4IGNkNDc3Y2MzY2FlMjc5
OTYzNDhmNTFhOTIxMWQ5MmU0YmNmNWI3MjYuLjY5M2U5Y2Q2MDZjOWQwZmZjNmIxNmFlMTBhN2Q3
MjZjNzFkNzkyZWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFj
ZUVBR0wuaApAQCAtMjIsNyArMjIsNyBAQCBzdHJ1Y3QgX19JT1N1cmZhY2U7CiB0eXBlZGVmIF9f
SU9TdXJmYWNlICpJT1N1cmZhY2VSZWY7CiAKIC8vIFdlYktpdCdzIGJ1aWxkIHByb2Nlc3MgcmVx
dWlyZXMgdGhhdCBldmVyeSBPYmplY3RpdmUtQyBjbGFzcyBuYW1lIGhhcyB0aGUgcHJlZml4ICJX
ZWIiLgotQGNsYXNzIFdlYlN3YXBMYXllcjsKK0BjbGFzcyBXZWJTd2FwTGF5ZXJFQUdMOwogCiBu
YW1lc3BhY2UgcngKIHsKQEAgLTkxLDcgKzkxLDcgQEAgY2xhc3MgV2luZG93U3VyZmFjZUVBR0wg
OiBwdWJsaWMgU3VyZmFjZUdMCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY29uc3QgZ2w6OkZyYW1lYnVmZmVyU3RhdGUgJnN0YXRlKSBvdmVycmlkZTsKIAog
ICBwcml2YXRlOgotICAgIFdlYlN3YXBMYXllciAqbVN3YXBMYXllcjsKKyAgICBXZWJTd2FwTGF5
ZXJFQUdMICptU3dhcExheWVyOwogICAgIFNoYXJlZFN3YXBTdGF0ZSBtU3dhcFN0YXRlOwogICAg
IHVpbnQ2NF90IG1DdXJyZW50U3dhcElkOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5t
bSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L1dpbmRvd1N1cmZhY2VFQUdMLm1tCmluZGV4IDM4ZDI1M2ViZGViM2IzY2MxNjMyMzc0MzQ5NTQ3
YjA1NTM5ZmVkM2MuLjdhMzRiOGZjMzUzNzBkNDM0ZTNlZWU2MTcyMjU1ODg0YmU0ZDRjMzIgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tCkBAIC04
LDcgKzgsNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaCIKIApAQCAtMTgsMTMgKzE4LDE5
IEBACiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvUmVuZGVyZXJHTC5oIgogIyAg
ICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1N0YXRlTWFuYWdlckdMLmgiCiAjICAgIGlt
cG9ydCAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oIgorIyAgICBpbXBv
cnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIgogCi0jICAgIGlt
cG9ydCA8T3BlbkdMRVMvRUFHTC5oPgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29y
ZS5oPgogCi0vLyBUT0RPKGFuZ2xlYnVnLmNvbS80Mjc1KTogSXQncyBub3QgY2xlYXIgd2h5IHRo
aXMgbmVlZHMgdG8gYmUgYW4gRUFHTExheWVyLgorI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KQogCi1AaW50ZXJmYWNlIFdl
YlN3YXBMYXllciA6IENBRUFHTExheWVyIHsKKy8vIEZJWE1FOiBOZWNlc3NhcnkgYmVjYXVzZSBD
QUVBR0xMYXllciBpcyBub3QgaW4gdGhlIHB1YmxpYyBRdWFydHpDb3JlIGhlYWRlcnMgaW4gdGhp
cyBjb25maWd1cmF0aW9uLgorQGludGVyZmFjZSBDQUVBR0xMYXllciA6IENBTGF5ZXIKK0BlbmQK
KworI2VuZGlmCisKK0BpbnRlcmZhY2UgV2ViU3dhcExheWVyRUFHTCA6IENBRUFHTExheWVyIHsK
ICAgICBFQUdMQ29udGV4dE9iaiBtRGlzcGxheUNvbnRleHQ7CiAKICAgICBib29sIGluaXRpYWxp
emVkOwpAQCAtMzgsNyArNDQsNyBAQAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczooY29uc3Qg
cng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zOwogQGVuZAogCi1AaW1wbGVtZW50YXRpb24gV2Vi
U3dhcExheWVyCitAaW1wbGVtZW50YXRpb24gV2ViU3dhcExheWVyRUFHTAogLSAoaWQpaW5pdFdp
dGhTaGFyZWRTdGF0ZToocng6OlNoYXJlZFN3YXBTdGF0ZSAqKXN3YXBTdGF0ZQogICAgICAgICAg
ICAgICB3aXRoQ29udGV4dDooRUFHTENvbnRleHRPYmopZGlzcGxheUNvbnRleHQKICAgICAgICAg
ICAgIHdpdGhGdW5jdGlvbnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAqKWZ1bmN0aW9ucwpAQCAt
NjksNyArNzUsNyBAQAogICAgIH0KICAgICBwdGhyZWFkX211dGV4X3VubG9jaygmbVN3YXBTdGF0
ZS0+bXV0ZXgpOwogCi0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om1EaXNwbGF5
Q29udGV4dF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpt
RGlzcGxheUNvbnRleHRdOwogCiAgICAgaWYgKCFpbml0aWFsaXplZCkKICAgICB7CkBAIC0xMDUs
NyArMTExLDcgQEAKIAogICAgIG1GdW5jdGlvbnMtPmJpbmRSZW5kZXJidWZmZXIoR0xfUkVOREVS
QlVGRkVSLCB0ZXh0dXJlLnRleHR1cmUpOwogICAgIFttRGlzcGxheUNvbnRleHQgcHJlc2VudFJl
bmRlcmJ1ZmZlcjpHTF9SRU5ERVJCVUZGRVJdOwotICAgIFtFQUdMQ29udGV4dCBzZXRDdXJyZW50
Q29udGV4dDpuaWxdOworICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRl
eHQ6bmlsXTsKIH0KIEBlbmQKIApAQCAtMTc0LDkgKzE4MCw5IEBAIGVnbDo6RXJyb3IgV2luZG93
U3VyZmFjZUVBR0w6OmluaXRpYWxpemUoY29uc3QgZWdsOjpEaXNwbGF5ICpkaXNwbGF5KQogICAg
IG1Td2FwU3RhdGUubGFzdFJlbmRlcmVkICAgPSAmbVN3YXBTdGF0ZS50ZXh0dXJlc1sxXTsKICAg
ICBtU3dhcFN0YXRlLmJlaW5nUHJlc2VudGVkID0gJm1Td2FwU3RhdGUudGV4dHVyZXNbMl07CiAK
LSAgICBtU3dhcExheWVyID0gW1tXZWJTd2FwTGF5ZXIgYWxsb2NdIGluaXRXaXRoU2hhcmVkU3Rh
dGU6Jm1Td2FwU3RhdGUKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgd2l0aENvbnRleHQ6bUNvbnRleHQKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CisgICAgbVN3YXBMYXll
ciA9IFtbV2ViU3dhcExheWVyRUFHTCBhbGxvY10gaW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBT
dGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
d2l0aENvbnRleHQ6bUNvbnRleHQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOm1GdW5jdGlvbnNdOwogICAgIFttTGF5ZXIgYWRk
U3VibGF5ZXI6bVN3YXBMYXllcl07CiAgICAgW21Td2FwTGF5ZXIgc2V0Q29udGVudHNTY2FsZTpb
bUxheWVyIGNvbnRlbnRzU2NhbGVdXTsKIApAQCAtMzA2LDQgKzMxMiw0IEBAIEZyYW1lYnVmZmVy
SW1wbCAqV2luZG93U3VyZmFjZUVBR0w6OmNyZWF0ZURlZmF1bHRGcmFtZWJ1ZmZlcihjb25zdCBn
bDo6Q29udGV4dCAqCiAKIH0gIC8vIG5hbWVzcGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcAppbmRleCA0ZWExMDZhY2U4
ODRlMzVlYjFkNDIyNGNlZWY5MDhhMTc2MWNlMzAxLi41ZTI4OTg1YWQ5YjE5YWRiYzgyYjcxYjdh
ZTRkZDVkOTFkNjE1ZjM2IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKKysrIGIvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMu
Y3BwCkBAIC0xMzQ0LDEyICsxMzQ0LDE5IEBAIHZvaWQgR2VuZXJhdGVDYXBzKGNvbnN0IEZ1bmN0
aW9uc0dMICpmdW5jdGlvbnMsCiAgICAgICAgIGZ1bmN0aW9ucy0+aGFzR0xFU0V4dGVuc2lvbigi
R0xfRVhUX2NvbXByZXNzZWRfRVRDMV9SR0I4X3N1Yl90ZXh0dXJlIik7CiAKICNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKQotICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7Ci0gICAg
aWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1heFN1cHBvcnRlZEVT
VmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKKyAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZv
OworICAgIGlmIChhbmdsZTo6R2V0U3lzdGVtSW5mbygmaW5mbykpCiAgICAgewotICAgICAgICAv
LyBBcHBsZSBJbnRlbC9BTUQgZHJpdmVycyBkbyBub3QgY29ycmVjdGx5IHVzZSB0aGUgVEVYVFVS
RV9TUkdCX0RFQ09ERSBwcm9wZXJ0eSBvZiBzYW1wbGVyCi0gICAgICAgIC8vIHN0YXRlcy4gIERp
c2FibGUgdGhpcyBleHRlbnNpb24gd2hlbiB3ZSB3b3VsZCBhZHZlcnRpc2UgYW55IEVTIHZlcnNp
b24gdGhhdCBoYXMgc2FtcGxlcnMuCi0gICAgICAgIGV4dGVuc2lvbnMtPnRleHR1cmVTUkdCRGVj
b2RlID0gZmFsc2U7CisgICAgICAgIGlmICghaW5mby5pc2lPU0FwcE9uTWFjKQorICAgICAgICB7
CisgICAgICAgICAgICBWZW5kb3JJRCB2ZW5kb3IgPSBHZXRWZW5kb3JJRChmdW5jdGlvbnMpOwor
ICAgICAgICAgICAgaWYgKChJc0FNRCh2ZW5kb3IpIHx8IElzSW50ZWwodmVuZG9yKSkgJiYgKm1h
eFN1cHBvcnRlZEVTVmVyc2lvbiA+PSBnbDo6VmVyc2lvbigzLCAwKSkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICAvLyBBcHBsZSBJbnRlbC9BTUQgZHJpdmVycyBkbyBub3QgY29ycmVj
dGx5IHVzZSB0aGUgVEVYVFVSRV9TUkdCX0RFQ09ERSBwcm9wZXJ0eSBvZiBzYW1wbGVyCisgICAg
ICAgICAgICAgICAgLy8gc3RhdGVzLiAgRGlzYWJsZSB0aGlzIGV4dGVuc2lvbiB3aGVuIHdlIHdv
dWxkIGFkdmVydGlzZSBhbnkgRVMgdmVyc2lvbiB0aGF0IGhhcyBzYW1wbGVycy4KKyAgICAgICAg
ICAgICAgICBleHRlbnNpb25zLT50ZXh0dXJlU1JHQkRlY29kZSA9IGZhbHNlOworICAgICAgICAg
ICAgfQorICAgICAgICB9CiAgICAgfQogI2VuZGlmCiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNjb25maWcgYi9Tb3VyY2UvV2ViQ29yZS9Db25m
aWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCmluZGV4IGI4MTA5ZTYzNDY2ZGFhNmE0N2MxNDVh
NzExYzE4OWEyOTAzMGIxOTUuLjU3MWU4ZWIwNzA2MGMxOTdjYzNlOTU0MTFiYmE0Mzc1N2U4NTFi
NTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25zL1dlYkNvcmUueGNj
b25maWcKKysrIGIvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZp
ZwpAQCAtMTA1LDE2ICsxMDUsNiBAQCBXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTX2Nv
Y29hdG91Y2ggPSAtZnJhbWV3b3JrIE1vYmlsZUNvcmVTZXJ2aWNlczsKIFdLX01PQklMRV9HRVNU
QUxUX0xERkxBR1MgPSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1NfJChXS19DT0NPQV9UT1VD
SCkpOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU19jb2NvYXRvdWNoID0gLWxNb2JpbGVHZXN0
YWx0OwogCi1XS19PUEVOR0xfTERGTEFHUyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfJChXS19QTEFU
Rk9STV9OQU1FKSk7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3Bl
bkdMRVM7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE9w
ZW5HTEVTOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1Nf
aXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKFdLX09QRU5H
TF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2b3Mg
PSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxl
dHZzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19P
UEVOR0xfTERGTEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgT3BlbkdMOwotV0tfT1BFTkdM
X0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBPcGVuR0w7Ci0KIFdLX1NZU1RFTV9DT05GSUdV
UkFUSU9OX0xERkxBR1MgPSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfJChXS19Q
TEFURk9STV9OQU1FKSk7CiBXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTX21hY29zeCA9
IC1mcmFtZXdvcmsgU3lzdGVtQ29uZmlndXJhdGlvbjsKIApAQCAtMTI0LDcgKzExNCw3IEBAIFdL
X1VSTF9GT1JNQVRUSU5HX0xERkxBR1MgPSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfJChX
S19IQVZFX1VSTF9GT1JNQVRUSU5HCiBXS19VUkxfRk9STUFUVElOR19MREZMQUdTX1lFUyA9IC1m
cmFtZXdvcmsgVVJMRm9ybWF0dGluZzsKIAogLy8gRklYTUU6IFJlZHVjZSB0aGUgbnVtYmVyIG9m
IGFsbG93YWJsZV9jbGllbnRzIDxyZGFyOi8vcHJvYmxlbS8zMTgyMzk2OT4KLU9USEVSX0xERkxB
R1MgPSAkKGluaGVyaXRlZCkgJChXS19SRUxPQ0FUQUJMRV9GUkFNRVdPUktfTERGTEFHUykgLWxz
cWxpdGUzIC1sb2JqYyAtbEFOR0xFIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9y
dCAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRMZWdhY3kgLWZvcmNlX2xvYWQgJChCVUlMVF9QUk9E
VUNUU19ESVIpL2xpYlBBTC5hIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1
ZGlvIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29y
ayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIE1ldGFsICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX0NPQ09BX1RPVUNIKSkg
JChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfUExBVEZPUk1fTkFNRSkpICQoV0tfQVBQS0lU
X0xERkxBR1MpICQoV0tfQVBQU1VQUE9SVF9MREZMQUdTKSAkKFdLX0FVRElPX1VOSVRfTERGTEFH
UykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1VJX0xERkxBR1MpICQoV0tfREFUQV9E
RVRFQ1RPUlNfQ09SRV9MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQo
V0tfSU9TVVJGQUNFX0FDQ0VMRVJBVE9SX0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1Mp
ICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9M
REZMQUdTKSAkKFdLX09QRU5HTF9MREZMQUdTKSAkKFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xE
RkxBR1MpICQoV0tfQ09SRV9JTUFHRV9MREZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxB
R1MpOworT1RIRVJfTERGTEFHUyA9ICQoaW5oZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1F
V09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxvYmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQg
V2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2FibGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2Vf
bG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikvbGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsg
LWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBD
b3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1l
d29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQo
V0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9O
QU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tf
QVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERG
TEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19DT1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VS
VklDRVNfTERGTEFHUykgJChXS19JT1NVUkZBQ0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19M
SUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdL
X01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFH
UykgJChXS19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7
CiAKIE9USEVSX0xERkxBR1NfUExBVEZPUk1fY29jb2F0b3VjaCA9IC1hbGxvd2FibGVfY2xpZW50
IFdlYktpdCAtYWxsb3dhYmxlX2NsaWVudCBpVHVuZXNVIC1hbGxvd2FibGVfY2xpZW50IENhc2Fi
bGFuY2EgLWFsbG93YWJsZV9jbGllbnQgUmVtb3RlIC1hbGxvd2FibGVfY2xpZW50IFRWQm9va3Mg
LWFsbG93YWJsZV9jbGllbnQgRHVtcFJlbmRlclRyZWUgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0
VGVzdFJ1bm5lciAtYWxsb3dhYmxlX2NsaWVudCBUZXN0V2ViS2l0QVBJOwogT1RIRVJfTERGTEFH
U19QTEFURk9STV9tYWNvc3ggPSAtc3ViX2xpYnJhcnkgbGlib2JqYyAtdW1icmVsbGEgV2ViS2l0
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5w
Ynhwcm9qIGIvU291cmNlL1dlYkNvcmUvUEFML1BBTC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9q
CmluZGV4IDYwNWY2MDczZWU5Mzc1YzFmZDAwMzIzYzdlNmFmYWVlNzVkMzk3NTMuLjg3MjkwZWZm
YmMzZTI4MGMzYmViOTE2OTA3NTcyYmExMGFjNmZkZDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9QQUwueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTExOSw2ICsxMTksOCBAQAog
CQkyRTEzNDJDQzIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMkUxMzQyQ0EyMTVBQTEwQTAwNzE5
OUQyIC8qIFVJS2l0U29mdExpbmsuaCAqLzsgfTsKIAkJMkUxMzQyQ0QyMTVBQTEwQTAwNzE5OUQy
IC8qIFVJS2l0U29mdExpbmsubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5tbSAq
LzsgfTsKIAkJMzEzMDhCMTQyMEEyMTcwNTAwM0ZCOTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxMzA4QjEzMjBB
MjE3MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggKi87IH07CisJCTMxNjQ3RkIwMjUx
NzU5REQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQUUyNTE3NTlEQjAwMTBGOEZCIC8q
IE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi87IH07CisJCTMxNjQ3RkIxMjUxNzU5RUYwMDEwRjhG
QiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExp
bmtDb2NvYS5oICovOyB9OwogCQk0MTZFOTk1MzIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29s
Ym94U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gNDE2RTk5NTEyM0RBRTZCRDAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRMaW5rLmNw
cCAqLzsgfTsKIAkJNDE2RTk5NTQyM0RBRTZCRTAwRTg3MUNCIC8qIEF1ZGlvVG9vbGJveFNvZnRM
aW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZF
OTk1MjIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCAqLzsgfTsKIAkJ
NDFFMUYzNDQyNDhBNkEwMDAwMjJENURFIC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCBpbiBT
b3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkU5OTU1MjNEQUVG
RjcwMEU4NzFDQiAvKiBWaWRlb1Rvb2xib3hTb2Z0TGluay5jcHAgKi87IH07CkBAIC0zMDUsNiAr
MzA3LDggQEAKIAkJMkUxMzQyQ0EyMTVBQTEwQTAwNzE5OUQyIC8qIFVJS2l0U29mdExpbmsuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gVUlLaXRTb2Z0TGluay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkyRTEzNDJDQjIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IFVJS2l0
U29mdExpbmsubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMzA4QjEzMjBBMjE3
MDUwMDNGQjkyOSAvKiBTeXN0ZW1QcmV2aWV3U1BJLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFN5c3RlbVBy
ZXZpZXdTUEkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQUUyNTE3NTlE
QjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGgg
PSBPcGVuR0xTb2Z0TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkz
MTY0N0ZBRjI1MTc1OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBPcGVuR0xTb2Z0TGlua0NvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTM3MTE5QTc4MjBDQ0I1RkYwMDJDNkRDOSAvKiBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMu
eGNjb25maWcgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0LnhjY29uZmlnOyBwYXRoID0gV2ViS2l0VGFyZ2V0Q29uZGl0aW9uYWxzLnhjY29uZmln
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQk0MTZFOTk1MTIzREFFNkJEMDBFODcxQ0Ig
LyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQk0MTZFOTk1MjIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsu
aCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQXVkaW9Ub29sYm94U29mdExpbmsu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY1NCw2ICs2NTgsOCBAQAogCQkJCTFD
MDIyRUZDMjJDRkU4RTAwMDZERjAxQiAvKiBHdW56aXAuY3BwICovLAogCQkJCUNEQUNCMzVFMjM4
NzNFNDgwMDE4RDdDRSAvKiBNZWRpYVRvb2xib3hTb2Z0TGluay5jcHAgKi8sCiAJCQkJQ0RBQ0Iz
NUYyMzg3M0U0ODAwMThEN0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmggKi8sCisJCQkJMzE2
NDdGQUYyNTE3NTlEQzAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkz
MTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJ
CQlBMUY2M0M5RDIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLmggKi8sCiAJCQkJ
QTFGNjNDOUUyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSAqLywKIAkJCQkw
NzYxMURCNDI0M0ZBNUJFMDBEODA3MDQgLyogVXNhZ2VUcmFja2luZ1NvZnRMaW5rLmggKi8sCkBA
IC04NTksNiArODY1LDcgQEAKIAkJCQkwQzc3ODU5RDFGNDUxMzBGMDBGNEVCQjYgLyogTlNXaW5k
b3dTUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTU3MEFCOEY5MjBBRjZFM0QwMEI4QkU4NyAvKiBO
U1hQQ0Nvbm5lY3Rpb25TUEkuaCBpbiBIZWFkZXJzICovLAogCQkJCTBDNUFGOTFGMUY0M0E0Qzcw
MDJFQUMwMiAvKiBPcGVuR0xFU1NQSS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjEyNTE3
NTlFRjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUExNjlCMDQxMjQ4RUYwNTIwMEVFOEI3QiAvKiBQYXNzS2l0SW5zdGFsbG1lbnRzU1BJLmggaW4g
SGVhZGVycyAqLywKIAkJCQlBMUY2M0M5RjIxQTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRM
aW5rLmggaW4gSGVhZGVycyAqLywKIAkJCQkwQzJEQTE1NTFGM0JFQjQ5MDBEQkMzMTcgLyogUGFz
c0tpdFNQSS5oIGluIEhlYWRlcnMgKi8sCkBAIC05OTUsNiArMTAwMiw3IEBACiAJCQkJNUM3Qzc4
NzQyM0FDM0U3NzAwNjVGNDdFIC8qIE1hbmFnZWRDb25maWd1cmF0aW9uU29mdExpbmsubW0gaW4g
U291cmNlcyAqLywKIAkJCQkwQ0Y5OUNBNDFGNzM2Mzc1MDA3RUU3OTMgLyogTWVkaWFUaW1lQVZG
b3VuZGF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUNEQUNCMzYwMjM4NzQyNUIwMDE4RDdD
RSAvKiBNZWRpYVRvb2xib3hTb2Z0TGluay5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZC
MDI1MTc1OUREMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExRjYzQ0EwMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsubW0gaW4g
U291cmNlcyAqLywKIAkJCQlBMTE3NUI0RjFGNkIzMzczMDBDNEI5RjAgLyogUG9wdXBNZW51Lm1t
IGluIFNvdXJjZXMgKi8sCiAJCQkJNDQ1MEZDOUYyMUY1RjYwMjAwNERGQTU2IC8qIFF1aWNrTG9v
a1NvZnRMaW5rLm1tIGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9QbGF0Zm9y
bU1hYy5jbWFrZQppbmRleCA2NTkxZDc5OWVhNWNhOTQzOGEzOWI5ZDM4ODg2NDY2ZjAzNTY1MjUz
Li5jZGYwMWIzNjZkZDk4OTZlNTdiOTllZjM3MjRkMzJlYzM0NjEyMzc5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtlCisrKyBiL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKQEAgLTYsNiArNiw3IEBAIGxpc3QoQVBQRU5E
IFBBTF9QVUJMSUNfSEVBREVSUwogICAgIGNvY29hL0FwcFNTT1NvZnRMaW5rLmgKICAgICBjb2Nv
YS9BVkZvdW5kYXRpb25Tb2Z0TGluay5oCiAgICAgY29jb2EvTWVkaWFUb29sYm94U29mdExpbmsu
aAorICAgIGNvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EuaAogICAgIGNvY29hL1Bhc3NLaXRTb2Z0
TGluay5oCiAKICAgICBtYWMvTG9va3VwU29mdExpbmsuaApAQCAtMTIzLDYgKzEyNCw3IEBAIGxp
c3QoQVBQRU5EIFBBTF9TT1VSQ0VTCiAgICAgY29jb2EvRmlsZVNpemVGb3JtYXR0ZXJDb2NvYS5t
bQogICAgIGNvY29hL0d1bnppcC5jcHAKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5j
cHAKKyAgICBjb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCiAgICAgY29jb2EvUGFzc0tpdFNv
ZnRMaW5rLm1tCiAKICAgICBjcnlwdG8vY29tbW9uY3J5cHRvL0NyeXB0b0RpZ2VzdENvbW1vbkNy
eXB0by5jcHAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdM
U29mdExpbmtDb2NvYS5oIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmgKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uM2RlOWQzNzZkN2I1YmNjYTM5MDNjZmExNjYxMWRkNDc3
MGNhNTVjNQotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5oCkBAIC0wLDAgKzEsNDggQEAKKy8qCisgKiBDb3B5cmlnaHQg
KEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJp
YnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91
dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxv
d2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNv
dXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwg
dGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAq
IDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9v
ciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAq
IFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFTIElTJycgQU5EIEFO
WQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkg
QU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4g
IElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjcHJhZ21hIG9uY2UKKworI2luY2x1ZGUgPHd0
Zi9Tb2Z0TGlua2luZy5oPgorCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRB
TFlTVCkKKworI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KKworU09GVF9MSU5LX0ZSQU1FV09S
S19GT1JfSEVBREVSKFBBTCwgT3BlbkdMKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURF
UihQQUwsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29uc3QgQ0dM
UGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpwaXgsIEdM
aW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9S
X0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMQ3JlYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xQaXhl
bEZvcm1hdE9iaiBwaXgsIENHTENvbnRleHRPYmogc2hhcmUsIENHTENvbnRleHRPYmogKmN0eCks
IChwaXgsIHNoYXJlLCBjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBP
cGVuR0wsIENHTERlc2NyaWJlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRP
YmogcGl4LCBHTGludCBwaXhfbnVtLCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWIsIEdM
aW50ICp2YWx1ZSksIChwaXgsIHBpeF9udW0sIGF0dHJpYiwgdmFsdWUpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc2NyaWJlUmVuZGVyZXIsIENHTEVy
cm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2JqIHJlbmQsIEdMaW50IHJlbmRfbnVtLCBDR0xSZW5kZXJl
clByb3BlcnR5IHByb3AsIEdMaW50ICp2YWx1ZSksIChyZW5kLCByZW5kX251bSwgcHJvcCwgdmFs
dWUpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTERlc3Ry
b3lDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5m
bywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElO
S19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xHZXRQYXJhbWV0ZXIsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIENHTENvbnRleHRQYXJhbWV0ZXIgcG5hbWUsIEdMaW50
ICpwYXJhbXMpLCAoY3R4LCBwbmFtZSwgcGFyYW1zKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1Jf
SEVBREVSKFBBTCwgT3BlbkdMLCBDR0xRdWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVp
bnQgZGlzcGxheV9tYXNrLCBDR0xSZW5kZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCks
IChkaXNwbGF5X21hc2ssIHJlbmQsIG5yZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVB
REVSKFBBTCwgT3BlbkdMLCBDR0xSZWxlYXNlUGl4ZWxGb3JtYXQsIHZvaWQsIChDR0xQaXhlbEZv
cm1hdE9iaiBwaXgpLCAocGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwg
T3BlbkdMLCBDR0xTZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4
LCBHTGludCBzY3JlZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9I
RUFERVIoUEFMLCBPcGVuR0wsIENHTFVwZGF0ZUNvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKKworI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Q
QUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9QQUwv
cGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZTA2ZWUyZjA1Zjkx
ZjJkNTljZjBiZGI2ZTdhYWUyZWZlMmM1ZmQzYwotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJDb3JlL1BBTC9wYWwvY29jb2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbQpAQCAtMCwwICsxLDQ4
IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgUExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlT
VCkKKworI2luY2x1ZGUgPE9wZW5HTC9PcGVuR0wuaD4KKyNpbmNsdWRlIDx3dGYvU29mdExpbmtp
bmcuaD4KKworU09GVF9MSU5LX0ZSQU1FV09SS19GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwg
T3BlbkdMLCBQQUxfRVhQT1JUKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRI
X0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoY29u
c3QgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgKmF0dHJpYnMsIENHTFBpeGVsRm9ybWF0T2JqICpw
aXgsIEdMaW50ICpucGl4KSwgKGF0dHJpYnMsIHBpeCwgbnBpeCksIFBBTF9FWFBPUlQpCitTT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRV9XSVRIX0VYUE9SVChQQUwsIE9wZW5HTCwgQ0dMUmVs
ZWFzZVBpeGVsRm9ybWF0LCB2b2lkLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCksIFBB
TF9FWFBPUlQpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBD
R0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29u
dGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhl
bEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0s
IENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4
X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUws
IE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQg
KnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJ
T05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVycm9yLCAo
Q0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNF
KFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKENHTFJlbmRl
cmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0Uo
UEFMLCBPcGVuR0wsIENHTEdldFBhcmFtZXRlciwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0
eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBwbmFtZSwgR0xpbnQgKnBhcmFtcyksIChjdHgsIHBuYW1l
LCBwYXJhbXMpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENH
TFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5X21hc2ssIENHTFJl
bmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlfbWFzaywgcmVuZCwg
bnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTFNl
dFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVl
biksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9w
ZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChj
dHgpKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvaiBiL1NvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvagppbmRleCBkNjJkNzg5MmRjNTAyMTQ1MGUxOTk5NDIxMmYyYjUwNGRhN2M0
ZTNkLi4yYTg5NDQ2MDdhZWY4Y2QxNDljNDBkMjc0NzBjNmIyYTUxNWQ0ZWM1IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIv
U291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCkBAIC05MDgs
NiArOTA4LDcgQEAKIAkJMzE0ODc3RTYxRkFBQjAyNTAwQzA1NzU5IC8qIEpTT2Zmc2NyZWVuQ2Fu
dmFzLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTQ4
NzdFNDFGQUFCMDIyMDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCAqLzsgfTsKIAkJMzE0
QkUzQTExQjMwRjZCNzAwMTQxOTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE0QkUzQTAxQjMwRjZCNzAwMTQx
OTgyIC8qIENTU05hbWVkSW1hZ2VWYWx1ZS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTMxNEJFM0E3MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZElt
YWdlR2VuZXJhdGVkSW1hZ2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDMxNEJFM0E1MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVk
SW1hZ2UuaCAqLzsgfTsKKwkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNvZnRM
aW5rQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxNjQ3RkE4MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMzE2RENCMjAxRTc4
Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0IxQTFFNzhDQTU1MDAxQjVGODcg
LyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuaCAqLzsgfTsKIAkJMzE2RENCMjIxRTc4Q0E1NTAw
MUI1Rjg3IC8qIEpTUlRDUnRwVHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjFDMUU3OENBNTUwMDFCNUY4NyAv
KiBKU1JUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmggKi87IH07CiAJCTMxNkRDQjRDMUU3OTEw
QTYwMDFCNUY4NyAvKiBKU1JUQ0ljZUNvbm5lY3Rpb25TdGF0ZS5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCNDYxRTc5MTBBNjAwMUI1Rjg3IC8q
IEpTUlRDSWNlQ29ubmVjdGlvblN0YXRlLmggKi87IH07CkBAIC03MTgyLDYgKzcxODMsOCBAQAog
CQkzMTRCRTNBNDFCMzEwM0ZCMDAxNDE5ODIgLyogTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE5hbWVkSW1hZ2VHZW5lcmF0
ZWRJbWFnZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNEJFM0E1MUIzMTAz
RkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBwYXRoID0gTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmg7IHNvdXJjZVRyZWUg
PSAiPGdyb3VwPiI7IH07CiAJCTMxNTU3NENDMjE4RjY2RDAwMEQ4OEY2NiAvKiBQb2ludGVyRXZl
bnRJT1MuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUG9pbnRlckV2
ZW50SU9TLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTgyNTE2MTZC
RDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gT3BlbkdM
U29mdExpbmtDb2NvYS5oOyBwYXRoID0gLi4vLi4vLi4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkE5MjUxNjE2
QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBuYW1l
ID0gT3BlbkdMU29mdExpbmtDb2NvYS5tbTsgcGF0aCA9IC4uLy4uLy4uL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2
RENCMTIxRTc4QkU0MzAwMUI1Rjg3IC8qIFJUQ09mZmVyQW5zd2VyT3B0aW9ucy5pZGwgKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSB0ZXh0OyBwYXRoID0gUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlkbDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTcxRTc4QzMzMDAwMUI1Rjg3IC8qIFJUQ1J0cFRyYW5z
Y2VpdmVyRGlyZWN0aW9uLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25v
d25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5pZGw7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxNkRDQjE5MUU3OENBNTUwMDFCNUY4NyAv
KiBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBKU1JUQ09mZmVyQW5zd2VyT3B0aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CkBAIC0yNjI4Myw2ICsyNjI4Niw4IEBACiAJCQkJQUQ5RkY2RTAxOTA4MzkxRDAw
M0I2MUUwIC8qIElPU3VyZmFjZVBvb2xDb2NvYS5tbSAqLywKIAkJCQlDREM0OEFDODIxNDlDRjJB
MDAyNEZENTkgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9uRmFjdG9yeUNvY29hLmNwcCAqLywK
IAkJCQlDREM0OEFDNzIxNDlDRjJBMDAyNEZENTkgLyogTWVkaWFFbmdpbmVDb25maWd1cmF0aW9u
RmFjdG9yeUNvY29hLmggKi8sCisJCQkJMzE2NDdGQTgyNTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5H
TFNvZnRMaW5rQ29jb2EuaCAqLywKKwkJCQkzMTY0N0ZBOTI1MTYxNkJEMDAxMEY4RkIgLyogT3Bl
bkdMU29mdExpbmtDb2NvYS5tbSAqLywKIAkJCQlDREVCM0Q3MjI0QzQxQTZFMDAxRkJFRUYgLyog
U291cmNlQnVmZmVyUGFyc2VyLmNwcCAqLywKIAkJCQlDREVCM0Q3MzI0QzQxQTZFMDAxRkJFRUYg
LyogU291cmNlQnVmZmVyUGFyc2VyLmggKi8sCiAJCQkJQ0Q4RjY2NzAyNEMwRjIwODAwMEM0MjFD
IC8qIFNvdXJjZUJ1ZmZlclBhcnNlcldlYk0uY3BwICovLApAQCAtMzMwNzgsNiArMzMwODMsNyBA
QAogCQkJCUZEQTNFOTVDMTM0QTQ5RUYwMDhENEI1QSAvKiBPZmZsaW5lQXVkaW9EZXN0aW5hdGlv
bk5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNDg3N0UzMUZBQThGRTkwMEMwNTc1OSAvKiBP
ZmZzY3JlZW5DYW52YXMuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxNDBDNTIwMUZERjE1MUEwMEQy
QTg3MyAvKiBPZmZzY3JlZW5DYW52YXNSZW5kZXJpbmdDb250ZXh0MkQuaCBpbiBIZWFkZXJzICov
LAorCQkJCTMxNjQ3RkFCMjUxNjE4RTIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMkQzREE2NTBEMDA2Q0Q2MDBFRjZGM0EgLyogT3BlblR5cGVD
Ry5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJEM0RBNjUwRDAwNkNENjAwRUY2RjI3IC8qIE9wZW5U
eXBlTWF0aERhdGEuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyRDNFQTY1MEQwMDZDRDYwMEVGNkYy
OCAvKiBPcGVuVHlwZVR5cGVzLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdMQ29j
b2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGljc0Nv
bnRleHRHTE9wZW5HTENvY29hLm1tCmluZGV4IGE2MjZhMTUyZjhlMjM5NDQwYmU5MGQ1YThhN2Y1
OTQzMzc0ODk2MzMuLmZkYTJhMWQ4ZDE0NmE1ZDY3ZTZiMzNkYzBjZGUxYzVlZjVkZmI2MTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNz
Q29udGV4dEdMT3BlbkdMQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQpAQCAtMzksNiArMzks
NyBAQAogI2ltcG9ydCAiSG9zdFdpbmRvdy5oIgogI2ltcG9ydCAiSW1hZ2VCdWZmZXIuaCIKICNp
bXBvcnQgIkxvZ2dpbmcuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBv
cnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYkdMT2JqZWN0LmgiCiAjaW1wb3J0ICJXZWJH
TFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvUGxhdGZvcm1TY3JlZW5NYWMubW0KaW5kZXggYTFiOTRjZDFhOTFkOTk1ODZmNTZkNmZkZjUz
MmZjNDFjZmRkMzI1Yi4uMjUzZTNmMjQ0ZGE5ZGE4NDc5M2VkNWI1Yjg2NDQwYTI1YjA5M2NjZCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFj
Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5t
bQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9ydCAiRmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFt
ZVZpZXcuaCIKICNpbXBvcnQgIkhvc3RXaW5kb3cuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5r
Q29jb2EuaCIKICNpbXBvcnQgIlNjcmVlblByb3BlcnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3lu
Yy9Db2xvclN5bmMuaD4KICNpbXBvcnQgPHBhbC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0g
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KaW5kZXggZGJm
MzFkOGFhMzkxZmI1ZDQ1ZjBhNmY1NGZlZjMxOWE1NjVlYmFkNC4uNmMxZDI2ZTQ3OWEwMjgxN2Jk
ZDViMTg2ZmFhMmFhNzZhNWVjYmRiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21h
Yy9XZWJHTEJsb2NrbGlzdC5tbQpAQCAtMjksNyArMjksNyBAQAogI2lmIFBMQVRGT1JNKE1BQykK
IAogI2ltcG9ydCAiQmxvY2tsaXN0VXBkYXRlci5oIgotI2ltcG9ydCA8T3BlbkdML09wZW5HTC5o
PgorI2ltcG9ydCAiT3BlbkdMU29mdExpbmtDb2NvYS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9D
RlV0aWxpdGllc1NQSS5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQv
Q29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCmluZGV4IGUxODRjZjZjOTk0N2FiYTVjZjdk
NWQyYjA2M2NhNDVjZmM5NDJmYzEuLjVmNzVlY2JiMTQ5YzU1MWE0NTExYTkwNmZkN2Y0M2MxN2U5
ODg5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0Lnhj
Y29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmln
CkBAIC04OCwxNiArODgsNiBAQCBXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2gg
PSAtbE1vYmlsZUdlc3RhbHQ7CiBXS19MSUJTQU5EQk9YX0xERkxBR1MgPSAkKFdLX0xJQlNBTkRC
T1hfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKIFdLX0xJQlNBTkRCT1hfTERGTEFHU19t
YWNvc3ggPSAtbHNhbmRib3g7CiAKLVdLX09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERG
TEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0g
LWZyYW1ld29yayBPcGVuR0xFUzsKLVdLX09QRU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZy
YW1ld29yayBPcGVuR0w7Ci1XS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJh
bWV3b3JrIE9wZW5HTEVTOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdM
X0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAk
KFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19h
cHBsZXR2b3MgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZM
QUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRv
cik7Ci1XS19PUEVOR0xfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tf
UERGS0lUX0xERkxBR1MgPSAkKFdLX1BERktJVF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkp
OwogV0tfUERGS0lUX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIFBERktpdDsKIFdLX1BE
RktJVF9MREZMQUdTX2lwaG9uZW9zW3Nkaz1pcGhvbmUqMTEuKl0gPSA7CkBAIC0xMzMsNyArMTIz
LDcgQEAgV0tfQVVUSEtJVF9MREZMQUdTX0lPU19TSU5DRV8xMyA9IC1mcmFtZXdvcmsgQXV0aEtp
dDsKIFdLX0FVVEhLSVRfTERGTEFHU19tYWNvc3ggPSAkKFdLX0FVVEhLSVRfTERGTEFHUyQoV0tf
TUFDT1NfMTAxNSkpOwogV0tfQVVUSEtJVF9MREZMQUdTX01BQ09TX1NJTkNFXzEwMTUgPSAtZnJh
bWV3b3JrIEF1dGhLaXQ7CiAKLUZSQU1FV09SS19BTkRfTElCUkFSWV9MREZMQUdTID0gLWxvYmpj
IC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFtZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29y
ZUZvdW5kYXRpb24gLWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAt
ZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgSU9LaXQg
LWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBXZWJLaXRMZWdhY3kgLWxuZXR3b3JrICQo
V0tfQUNDRVNTSUJJTElUWV9MREZMQUdTKSAkKFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FTU0VS
VElPTl9TRVJWSUNFU19MREZMQUdTKSAkKFdLX1JVTk5JTkdCT0FSRF9TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0FVVEhLSVRfTERGTEFHUykgJChXS19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1BS
RURJQ1RJT05fTERGTEFHUykgJChXS19DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfR1JBUEhJ
Q1NfU0VSVklDRVNfTERGTEFHUykgJChXS19MSUJTQU5EQk9YX0xERkxBR1MpICQoV0tfTElCV0VC
UlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJ
TEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX09QRU5HTF9MREZMQUdTKSAkKFdLX1BERktJVF9MREZM
QUdTKSAkKFdLX1NBRkVfQlJPV1NJTkdfTERGTEFHUykgJChXS19TRUNVUklUWV9JTlRFUkZBQ0Vf
TERGTEFHUykgJChXS19VSUtJVF9MREZMQUdTKSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1Mp
ICQoV0tfV0VCSU5TUEVDVE9SVUlfTERGTEFHUyk7CitGUkFNRVdPUktfQU5EX0xJQlJBUllfTERG
TEFHUyA9IC1sb2JqYyAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAt
ZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9uIC1mcmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdv
cmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJh
bWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgV2ViS2l0TGVnYWN5
IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lCSUxJVFlfTERGTEFHUykgJChXS19BUFBLSVRfTERGTEFH
UykgJChXS19BU1NFUlRJT05fU0VSVklDRVNfTERGTEFHUykgJChXS19SVU5OSU5HQk9BUkRfU0VS
VklDRVNfTERGTEFHUykgJChXS19BVVRIS0lUX0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1Mp
ICQoV0tfQ09SRV9QUkVESUNUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTElCU0FOREJPWF9MREZMQUdT
KSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxB
R1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChX
S19TQUZFX0JST1dTSU5HX0xERkxBR1MpICQoV0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1Mp
ICQoV0tfVUlLSVRfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dF
QklOU1BFQ1RPUlVJX0xERkxBR1MpOwogCiAvLyBQcmV2ZW50IEMrKyBzdGFuZGFyZCBsaWJyYXJ5
IGJhc2ljX3N0cmluZ3N0cmVhbSwgb3BlcmF0b3IgbmV3LCBkZWxldGUgYW5kIHRoZWlyIHJlbGF0
ZWQgZXhjZXB0aW9uIHR5cGVzIGZyb20gYmVpbmcgZXhwb3J0ZWQgYXMgd2VhayBzeW1ib2xzLgog
VU5FWFBPUlRFRF9TWU1CT0xfTERGTEFHUyA9IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9f
WlRJU3Q5YmFkX2FsbG9jIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5ZXhjZXB0
aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRTU3Q5YmFkX2FsbG9jIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRTU3Q5ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWmRsUHZTXyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pud21QdiAtV2ws
LXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pud20gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2ws
X19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzJFT1M0XyAt
V2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3Jl
MTJQb2xpY3lBY3Rpb25FRUVDMUVPUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5T
dDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRWFTRURuIC1XbCwtdW5l
eHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5LU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xp
Y3lBY3Rpb25FRUVjbEVTMl8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThm
dW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFNHN3YXBFUlM0XyAtV2wsLXVuZXhw
b3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lB
Y3Rpb25FRUVDMUVSS1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1
bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMkVSS1M0XyAtV2wsLXVuZXhwb3J0
ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rp
b25FRUVEMUV2IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25J
RnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVFRUQyRXYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFYVNFUktT
NF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3QzX18xMTdiYWRfZnVuY3Rpb25f
Y2FsbEUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJp
bmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTNi
YXNpY19pc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNf
XzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9y
SWNFRUVFMF9OU18xNGJhc2ljX2lvc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9s
IC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0lj
RUVOU185YWxsb2NhdG9ySWNFRUVFMTZfTlNfMTNiYXNpY19vc3RyZWFtSWNTMl9FRSAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVE5TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNf
MTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1i
b2wgLVdsLF9fWlRWTlN0M19fMTE1YmFzaWNfc3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNF
RU5TXzlhbGxvY2F0b3JJY0VFRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3Qz
X18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRv
ckljRUVFRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0
cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFOF9OU18x
M2Jhc2ljX29zdHJlYW1JY1MyX0VFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVBy
b2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwCmluZGV4IGRlOTM5NjdlZmRm
OTJiM2M4ZjdiODM0NGM0OWQwMGI2NTZkOWNhMzkuLmE5NmZjM2QxMTM3OThlNzlhZmMwZmRiNjI2
NWZkZGFmZDAzZDBhZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21hYy9I
aWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHAKQEAgLTI5LDkgKzI5LDggQEAKICNp
ZiBQTEFURk9STShNQUMpCiAKICNpbmNsdWRlICJMb2dnaW5nLmgiCi0jaW5jbHVkZSA8T3BlbkdM
L0NHTFR5cGVzLmg+Ci0jaW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgogI2luY2x1ZGUgPFdlYkNv
cmUvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9P
cGVuR0xTb2Z0TGlua0NvY29hLmg+CiAKIG5hbWVzcGFjZSBXZWJLaXQgewogCg==
</data>
<flag name="review"
          id="425288"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409640</attachid>
            <date>2020-09-24 17:17:49 -0700</date>
            <delta_ts>2020-09-24 17:31:33 -0700</delta_ts>
            <desc>EWS test</desc>
            <filename>bug-216722-20200925101747.patch</filename>
            <type>text/plain</type>
            <size>126443</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NTQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggZThiMGY1N2EyZjhiMzk5YWFmNWExYmEzYmM0M2NlYzBhMzIxZjk5Yi4uYmM2ODc1NTI2NjQ1
Y2Q3ODQwMDEyNWRlMTczMTU4OGM0ZWI3YzU2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEwMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5p
bmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgIENoYW5nZSBBTkdMRSB0
byBkeW5hbWljYWxseSBsb2FkIGVpdGhlciBFQUdMIChPcGVuR0xFUykgb3IgQ0dMIChPcGVuR0wp
IGRlcGVuZGluZworICAgICAgICBvbiBib3RoIGNvbXBpbGUgYW5kIHJ1bnRpbWUgY29uZmlndXJh
dGlvbnMuCisgICAgICAgICAgICBJbnRlbCBNYWMgLT4gQ0dMCisgICAgICAgICAgICBJbnRlbCBN
YWMgQ2F0YWx5c3QgLT4gQ0dMCisgICAgICAgICAgICBJbnRlbCBpT1MgU2ltdWxhdG9yIC0+IEVB
R0wKKyAgICAgICAgICAgIGlPUyBEZXZpY2UgLT4gRUFHTAorICAgICAgICAgICAgQXBwbGUgU2ls
aWNvbiBNYWMgLT4gQ0dMCisgICAgICAgICAgICBBcHBsZSBTaWxpY29uIE1hYyBDYXRhbHlzdCAo
d2l0aCBNYWMgYXBwKSAtPiBDR0wKKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFs
eXN0ICh3aXRoIGlPUyBhcHApIC0+IEVBR0wKKworICAgICAgICBUaGUgdHJpY2tpZXN0IGJpdCBp
cyBBcHBsZSBTaWxpY29uIE1hYyBDYXRhbHlzdCwgd2hpY2ggZGVwZW5kcyBvbiB0aGUKKyAgICAg
ICAgYXBwbGljYXRpb24gaXMgaXQgYXR0ZW1wdGluZyB0byBydW4uIEluIHRoYXQgY2FzZSBBTkdM
RSBtdXN0IGNvbXBpbGUKKyAgICAgICAgYm90aCB0aGUgQ0dMIGFuZCBFQUdMIGludGVyZmFjZXMg
YW5kIHRoZW4gcGljayBvbmUgdG8gdXNlIGFmdGVyIGxhdW5jaC4KKworICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisKKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOiBSZW1vdmUgYWxsIHRoZSBPcGVu
R0wqIGxpbmtpbmcuCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29u
ZmlnOgorCisgICAgICAgICogR0xFU3YyLmNtYWtlOiBOZXcgZmlsZXMuCisKKyAgICAgICAgKiBz
cmMvY29tbW9uL3BsYXRmb3JtLmg6IE5ldyBkZWZpbml0aW9ucyBmb3IgQ1BVIHR5cGUgb24gQXBw
bGUgU3lzdGVtcy4KKworICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaDog
U3BsaXQgU3lzdGVtSW5mbyBmb3IgQXBwbGUgaW50byB0d28KKyAgICAgICAgZmlsZXMsIGZvciBp
T1MgYW5kIE1hYy4gQWRkZWQgYSBmaWVsZCBmb3IgaXNpT1NBcHBPbk1hYyB0aGF0IHdpbGwgb25s
eQorICAgICAgICBiZSB0cnVlIHdoZW4gcnVubmluZyBhbiBpT1MgYmluYXJ5IG9uIEFwcGxlIFNp
bGljb24uCisgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbTog
QWRkZWQuIERlY2lkZXMgd2hpY2ggU3lzdGVtSW5mbworICAgICAgICB0byBjYWxsLgorICAgICAg
ICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5
c3RlbUluZm9faW9zLmNwcDoKKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvX2lvcyk6Cisg
ICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6IERlbGV0ZWQuCisgICAgICAgICogc3JjL2dw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbToKKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0
ZW1JbmZvX21hYyk6CisgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6IERlbGV0ZWQuCisK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ2Fwcy5jcHA6IENhbiBubyBsb25nZXIganVzdCBjaGVj
ayBmb3IgUExBVEZPUk1fSU9TLiBUaGlzCisgICAgICAgIG1pZ2h0IHN0aWxsIG5lZWQgYSBydW50
aW1lIGNoZWNrLgorICAgICAgICAoZ2w6OkRldGVybWluZURlcHRoVGV4dHVyZUFOR0xFU3VwcG9y
dCk6CisgICAgICAgIChnbDo6RGV0ZXJtaW5lRGVwdGhUZXh0dXJlT0VTU3VwcG9ydCk6CisKKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5jcHA6IFRoaXMgaXMgdGhlIG1haW4gaW5pdGlh
bGl6YXRpb24gcG9pbnQgZm9yCisgICAgICAgIEFOR0xFLCB3aGljaCBkZWNpZGVzIGF0IGNvbXBp
bGUvcnVudGltZSB3aGljaCB2YXJpYW50IG9mIERpc3BsYXkgdG8KKyAgICAgICAgY3JlYXRlLgor
CisgICAgICAgICogc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcDogQWRkIHRoZSBjb3JyZWN0
IGZvcm1hdHMuCisgICAgICAgIChnbDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorCisg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmg6IEFk
ZGVkLiBNYWNyb3MgdG8gaGVscCBzb2Z0LWxpbmsKKyAgICAgICAgZnVuY3Rpb25zIGFuZCBPYmpD
IGNsYXNzZXMuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5j
dGlvbnMuY3BwOiBBZGRlZC4gV2hlcmUgd2Ugc29mdC1saW5rIGFsbAorICAgICAgICB0aGUgT3Bl
bkdML0NHTCBBUEkuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuaDogQWRkZWQuCisKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL0Rpc3BsYXlDR0wubW06IFVzZSB0aGUgc29mdC1saW5rZWQgbWV0aG9kcy4KKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwOgor
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5o
OgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNH
TC5tbTogUmVuYW1lIFdlYlN3YXBMYXllciB0byBXZWJTd2FwTGF5ZXJDR0wKKyAgICAgICAgb3Ro
ZXJ3aXNlIGl0IGNsYXNoZXMgd2l0aCB0aGUgRUFHTCB2ZXJzaW9uLgorICAgICAgICAocng6Oldp
bmRvd1N1cmZhY2VDR0w6OmluaXRpYWxpemUpOgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgaW5p
dFdpdGhTaGFyZWRTdGF0ZTp3aXRoQ29udGV4dDp3aXRoRnVuY3Rpb25zOl0pOiBEZWxldGVkLgor
ICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY29weUNHTFBpeGVsRm9ybWF0Rm9yRGlzcGxheU1hc2s6
XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMQ29udGV4dEZvclBp
eGVsRm9ybWF0Ol0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY2FuRHJhd0lu
Q0dMQ29udGV4dDpwaXhlbEZvcm1hdDpmb3JMYXllclRpbWU6ZGlzcGxheVRpbWU6XSk6IERlbGV0
ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBkcmF3SW5DR0xDb250ZXh0OnBpeGVsRm9ybWF0
OmZvckxheWVyVGltZTpkaXNwbGF5VGltZTpdKTogRGVsZXRlZC4KKworICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwOiBTaW1pbGFyIGNoYW5nZXMg
dG8gdGhlIENHTCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmg6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGlzcGxheUVBR0wuaDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6aW5pdGlh
bGl6ZSk6CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnRlcm1pbmF0ZSk6CisgICAgICAgIChy
eDo6V29ya2VyQ29udGV4dEVBR0w6On5Xb3JrZXJDb250ZXh0RUFHTCk6CisgICAgICAgIChyeDo6
V29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KToKKyAgICAgICAgKHJ4OjpXb3JrZXJDb250
ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCk6CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmNyZWF0
ZVdvcmtlckNvbnRleHQpOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0VBR0xGdW5jdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbTogQWRkZWQuCisgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW06CisgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcDoKKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwOgorICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmg6
CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVB
R0wubW06CisgICAgICAgICgtW1dlYlN3YXBMYXllckVBR0wgZGlzcGxheV0pOgorICAgICAgICAo
cng6OldpbmRvd1N1cmZhY2VFQUdMOjppbml0aWFsaXplKToKKyAgICAgICAgKC1bV2ViU3dhcExh
eWVyIGluaXRXaXRoU2hhcmVkU3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVs
ZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRpc3BsYXldKTogRGVsZXRlZC4KKworICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDogUnVu
dGltZSBjaGVjay4KKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6R2VuZXJhdGVDYXBzKToKKwog
MjAyMC0wOS0yNCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT046IFRleHR1cmVzIEZhaWwgdG8gUmVuZGVyIGluIFdlYkdMIGZyb20gSExT
IFN0cmVhbSBbaU9TIDE0XQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEwOTVlNWZhYTQ1M2NjMmUxZmE4ZGNhMjcw
NzkwYzdmNGQwZWJkYjQuLjUwMzc5ZGI5YjkzYjY3MWQ1ZjUyYTUwY2I5OWUyYjA4YTgzYmM0NDcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8
ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBh
cHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3
NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZzogUmVtb3ZlIGFsbCBPcGVuR0wvT3BlbkdMRVMg
bGlua2luZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5oOiBDaGFuZ2Ug
dGhlIEFOR0xFIElPU3VyZmFjZSB0ZXh0dXJlIGJpbmRpbmcKKyAgICAgICAgZW51bXMgaW50byBm
dW5jdGlvbnMsIGJlY2F1c2UgdGhleSBoYXZlIHRvIGJlIGNhbGN1bGF0ZWQgYXQgcnVuLXRpbWUu
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0xDb2NvYS5tbTogVXNlIHRoZSBuZXcgc29mdC1saW5rZWQKKyAgICAgICAgZnVuY3Rpb25zIGZy
b20gUEFMLiBBbHNvIGltcGxlbWVudCB0aGUgSU9TdXJmYWNlIHRleHR1cmUgYmluZGluZyBoZWxw
ZXJzIHRoYXQgd2VyZQorICAgICAgICBwcmV2aW91c2x5IGVudW1zLgorICAgICAgICAqIHBsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2Vi
R0xCbG9ja2xpc3QubW06CisKIDIwMjAtMDktMjQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBVc2UgbW9yZSBpbmxpbmUgaW5pdGlhbGl6YXRpb24gYW5kIGNvbnN0
ZXhwciBpbiBXZWJBdWRpbyBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBmNzUxYTg2YjAyNGNm
ODdiMDY1MTAwNmZhNzhhN2Q0NjVjOTlkMTRiLi5lYTFiNjdlYzVlMzFjNjI5ZGRmMGYyYjhiNzVm
NTI1MjdiYTlkZTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAyMC0w
OS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hv
dWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9y
dG9uLgorCisgICAgICAgIEFkZCBzb2Z0LWxpbmtpbmcgY29udGVudCBmb3IgT3BlbkdML09wZW5H
TEVTLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogcGFsL1BsYXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIHBhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0Nv
Y29hLm1tOiBBZGRlZC4KKwogMjAyMC0wOS0xNyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KIAogICAgICAgICBQZXItYXBwIGFjY2VudCBjb2xvciBvdmVycmlkZXMgYXJl
IGJyb2tlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCA1YzEzZWQzYThkOTA0Y2NjYWVlMGMwMWNiM2IzMzE3MjllZjI1
YTRkLi5kNmMyODZjZWZhZDNjMjQ5ZTQzZjk2NjBhZjMxY2IyNWM2MGNkMzQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTI0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNv
bT4KKworICAgICAgICBXZWJHTCBzaG91bGQgdXNlIEdMRVMgaW4gaU9TIGFwcHMgcnVubmluZyBv
biBBcHBsZSBTaWxpY29uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTY3MjIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY4OTc2MzM3PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9X
ZWJLaXQueGNjb25maWc6IFJlbW92ZSBPcGVuR0wgbGlua2luZy4KKyAgICAgICAgKiBVSVByb2Nl
c3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW06IFJlbmFtZWQgdG8gLm1tLiBVc2Ug
dGhlIFBBTCBzb2Z0LWxpbmtlZCBPcGVuR0wgQVBJLgorCiAyMDIwLTA5LTI0ICBLYXRlIENoZW5l
eSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIENyYXNoVHJhY2VyOiBj
b20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmcgaW4gTmV0d29ya1Nlc3Npb246OmZpcnN0UGFydHlI
b3N0Q05BTUVEb21haW4oKSBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlOGU2OTBkZGQ2NTZiODY0
ZjEzZGVkMDg2NmM4NDk0NjgxMTVkOTUyLi42YjEzNmZkM2Q3NmVhYjNlYzE4N2EzMTdjNWFhNTZk
Y2EzYmE0NzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1MCw2ICsxNTAsMTYgQEAKIAkJMzE1RUJF
MjQxRkNFNDYyQTAwQUM3QTg5IC8qIHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyog
c2FmZV9tYXRoX2ltcGwuaCAqLzsgfTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBN
dXJIYXNoLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxNUVCRTI2MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVC
RTI5MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJI
YXNoLmggKi87IH07CisJCTMxNjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2Fw
cGxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2
NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi87IH07CisJCTMx
NjQ3RkEwMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi87IH07CisJCTMxNjQ3RkE0MjUxNTk3OEQwMDEw
RjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCAq
LzsgfTsKKwkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTIyNTE1OTc4
RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oICovOyB9OworCQkzMTY0N0ZBNjI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMu
Y3BwICovOyB9OworCQkzMTY0N0ZBNzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEz
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwICovOyB9OworCQkzMTY0N0ZCMzI1
MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjIyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xG
dW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQjQyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5j
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMx
NjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi87IH07CisJCTMxNjQ3
RkI2MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjUyNTE3NjhERDAwMTBGOEZCIC8q
IEVBR0xGdW5jdGlvbnMubW0gKi87IH07CisJCTMxNjQ3RkI3MjUxNzY4REQwMDEwRjhGQiAvKiBF
QUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE2NDdGQjUyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi87IH07
CiAJCTMxQTMzMUMyMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUMwMUVBNUVEMjUwMEZE
MjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLzsgfTsKIAkJMzFBMzMxQzYxRUE1RUQ1RjAwRkQyMjAz
IC8qIHN5c3RlbV91dGlsc19tYWMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzFBMzMxQzMxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19t
YWMuY3BwICovOyB9OwogCQkzMUEzMzFDNzFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFD
NDFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi87IH07CkBAIC0xNTQ3LDYgKzE1
NTcsNyBAQAogLyogRW5kIFBCWENvcHlGaWxlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBC
ZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8KKwkJMEY4NURBMkYyNTEzNzgwODAwMEE1
MDBCIC8qIFNvZnRMaW5raW5nX2FwcGxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvZnRMaW5raW5nX2Fw
cGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEwMThCOTdCOUIwMDM5
MDYyRiAvKiBCYXNlVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFz
ZVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREExMThCOTdCOUIw
MDM5MDYyRiAvKiBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEyMThCOTdCOUIwMDM5MDYyRiAvKiBCdWlsdElu
RnVuY3Rpb25FbXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCdWls
dEluRnVuY3Rpb25FbXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY4
MSw2ICsxNjkyLDExIEBACiAJCTMxNUVCRTIwMUZDRTQ2MkEwMEFDN0E4OSAvKiBzYWZlX21hdGhf
aW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBzYWZlX21hdGhfaW1wbC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVFQkUyNjFGQ0Y4MDhDMDBBQzdBODkg
LyogUE11ckhhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUE11
ckhhc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVFQkUyNzFGQ0Y4MDhD
MDBBQzdBODkgLyogUE11ckhhc2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UE11ckhhc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGOUUyNTExQTFB
NjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBT
eXN0ZW1JbmZvX2FwcGxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZB
MjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1
bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBMzI1MTU5NzhE
MDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0
aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkIyMjUxNzY4QUMw
MDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IEVBR0xGdW5jdGlvbnMuaDsgcGF0aCA9IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0VBR0xGdW5jdGlvbnMuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQkzMTY0N0ZC
NTI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IEVBR0xGdW5jdGlvbnMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTMz
MUMwMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gYml0c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGlsc19tYWMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVGMDBGRDIyMDMgLyog
c3lzdGVtX3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHN5c3RlbV91
dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjQ3Miw2ICsyNDg4LDggQEAK
IAkJCQkzMTNCQ0U0RDIzNjExMzM5MDBGQzM5RTUgLyogRGV2aWNlRUFHTC5oICovLAogCQkJCTMx
M0JDRTQ2MjM2MTEzMzgwMEZDMzlFNSAvKiBEaXNwbGF5RUFHTC5oICovLAogCQkJCTMxM0JDRTUz
MjM2MTEzMzkwMEZDMzlFNSAvKiBEaXNwbGF5RUFHTC5tbSAqLywKKwkJCQkzMTY0N0ZCMjI1MTc2
OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oICovLAorCQkJCTMxNjQ3RkI1MjUxNzY4REQw
MDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovLAogCQkJCTMxM0JDRTQ3MjM2MTEzMzgwMEZD
MzlFNSAvKiBJT1N1cmZhY2VTdXJmYWNlRUFHTC5oICovLAogCQkJCTMxM0JDRTRFMjM2MTEzMzkw
MEZDMzlFNSAvKiBJT1N1cmZhY2VTdXJmYWNlRUFHTC5tbSAqLywKIAkJCQkzMTNCQ0U0ODIzNjEx
MzM4MDBGQzM5RTUgLyogUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcCAqLywKQEAgLTI5NjAsNiArMjk3
OCw3IEBACiAJCQkJQTMwMzA3ODcyMzA1RjhGMDAwMkRBOTcyIC8qIFNlbWFwaG9yZUdMLmggKi8s
CiAJCQkJNUNCMzAxMDgxREUzOUYxQTAwRDJDNDA1IC8qIFNoYWRlckdMLmNwcCAqLywKIAkJCQk1
Q0IzMDEwOTFERTM5RjFBMDBEMkM0MDUgLyogU2hhZGVyR0wuaCAqLywKKwkJCQkwRjg1REEyRjI1
MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLywKIAkJCQk1Q0IzMDEwQTFE
RTM5RjFBMDBEMkM0MDUgLyogU3RhdGVNYW5hZ2VyR0wuY3BwICovLAogCQkJCTVDQjMwMTBCMURF
MzlGMUEwMEQyQzQwNSAvKiBTdGF0ZU1hbmFnZXJHTC5oICovLAogCQkJCTVDQjMwMTBDMURFMzlG
MUEwMEQyQzQwNSAvKiBTdXJmYWNlR0wuY3BwICovLApAQCAtMjk3OSw2ICsyOTk4LDggQEAKIAkJ
NUNCMzAxNDgxREUzOUYzNjAwRDJDNDA1IC8qIGNnbCAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3Vw
OwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMzE2NDdGQTMyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1
bmN0aW9ucy5jcHAgKi8sCisJCQkJMzE2NDdGQTIyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5oICovLAogCQkJCTVDQ0Q1OTcyMjI4NEZBODIwMDE4RjJEOCAvKiBDb250ZXh0Q0dMLmNw
cCAqLywKIAkJCQk1Q0NENTk3NTIyODRGQTgyMDAxOEYyRDggLyogQ29udGV4dENHTC5oICovLAog
CQkJCTZFMzFBMEExMjM0RUVFRDQwMEM4NDc4NCAvKiBEZXZpY2VDR0wuY3BwICovLApAQCAtMzIw
OCw2ICszMjI5LDcgQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCTVDQ0Q1OTk4MjI4NEZDNzUwMDE4
RjJEOCAvKiBTeXN0ZW1JbmZvLmNwcCAqLywKIAkJCQk1Q0NENTk5OTIyODRGQzc1MDAxOEYyRDgg
LyogU3lzdGVtSW5mby5oICovLAorCQkJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tICovLAogCQkJCTMxQjE1NzIxMjM2QjgwMzMwMENBQTRGRCAvKiBTeXN0
ZW1JbmZvX2ludGVybmFsLmggKi8sCiAJCQkJMzFCMTU3MUYyMzZCN0ZBRTAwQ0FBNEZEIC8qIFN5
c3RlbUluZm9faW9zLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mb19tYWNvcy5tbSAqLywKQEAgLTM0MTQsNiArMzQzNiw3IEBACiAJCQkJMzFDREZGRDgy
NDkxODRBNzAwNDg2RjI3IC8qIEJ1aWx0aW5zV29ya2Fyb3VuZEdMU0wuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxQ0RGRkY5MjQ5MTg0QTcwMDQ4NkYyNyAvKiBDYWxsREFHLmggaW4gSGVhZGVycyAq
LywKIAkJCQkzMUNEMDA2MTI0OTE4NEZDMDA0ODZGMjcgLyogQ2Fwcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMzFDREZGODIyNDkxODQ5ODAwNDg2RjI3IC8qIENsYW1wRnJhZ0RlcHRoLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkY4QTI0OTE4NDk4MDA0ODZGMjcgLyogQ2xhbXBQb2lu
dFNpemUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDExMjQ5MTg0RTcwMDQ4NkYyNyAvKiBD
bGVhck11bHRpdmlld0dMLmggaW4gSGVhZGVycyAqLywKQEAgLTM0NTYsNiArMzQ3OSw3IEBACiAJ
CQkJMzFDRDAwMjMyNDkxODRFNzAwNDg2RjI3IC8qIERpc3BsYXlHTC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMzFDRDAwMkYyNDkxODRGNDAwNDg2RjI3IC8qIERpc3BsYXlJbXBsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkzMUNEMDAzODI0OTE4NEY0MDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzLmggaW4g
SGVhZGVycyAqLywKKwkJCQkzMTY0N0ZCNDI1MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGOUEyNDkxODQ5ODAwNDg2RjI3IC8qIEVhcmx5
RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZERkEy
NDkxODNBNTAwNDg2RjI3IC8qIGVnbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZERjkyNDkx
ODNBNTAwNDg2RjI3IC8qIGVnbGV4dC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zODE5LDYgKzM4NDMs
NyBAQAogCQkJCUEzNjk0RkM3MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWlsdGluc1dvcmthcm91bmRH
TFNMLmggaW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkMyQjFCMDQzNzVGMDAyMzU1NTIgLyogQ2Fs
bERBRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUMxREJEREIxQjA0MzhEMzAwMjM1NTUyIC8qIENh
cHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNTVENjY2MjI4MjZCOUYwMEI1QkEyQyAv
KiBDbGFtcEZyYWdEZXB0aC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUM1NUQ2NUIyMjgyNkI5RjAw
QjVCQTJDIC8qIENsYW1wUG9pbnRTaXplLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTVFQkRDMTFG
Q0U0NEJGMDBBQzdBODkgLyogQ2xlYXJNdWx0aXZpZXdHTC5oIGluIEhlYWRlcnMgKi8sCkBAIC0z
ODYxLDYgKzM4ODYsNyBAQAogCQkJCTVDQjMwMTFGMURFMzlGMUEwMEQyQzQwNSAvKiBEaXNwbGF5
R0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNEUyMURFNDE2NDgwMEQyQzQwNSAvKiBEaXNw
bGF5SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE1RUJEQzkxRkNFNDRFNDAwQUM3QTg5IC8q
IGRyaXZlcl91dGlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjMyNTE3NjhBQzAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFQjAxQzFEMjQ3NzI3
OUEwMEU1MEIzNSAvKiBFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24uaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxREI3OTU4MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2wuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxREI3OTU5MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2xleHQuaCBpbiBIZWFkZXJzICov
LApAQCAtNDMyMiw2ICs0MzQ4LDcgQEAKIAkJCQkzMUNERkU3RTI0OTE4NDNBMDA0ODZGMjcgLyog
QnVpbHRpbnNXb3JrYXJvdW5kR0xTTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU4NjI0
OTE4NDNBMDA0ODZGMjcgLyogQ2FsbERBRy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYx
QzI0OTE4NDVGMDA0ODZGMjcgLyogQ2Fwcy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZB
NzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRTU4MjQ5MTg0MkUwMDQ4NkYyNyAvKiBDbGFtcEZyYWdEZXB0aC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMUNERkU2MTI0OTE4NDJGMDA0ODZGMjcgLyogQ2xhbXBQb2ludFNpemUuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQzMyNDkxODQ1MzAwNDg2RjI3IC8qIENsZWFyTXVs
dGl2aWV3R0wuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00MzYzLDYgKzQzOTAsNyBAQAogCQkJCTMx
Q0RGRUUxMjQ5MTg0NTgwMDQ4NkYyNyAvKiBEaXNwbGF5SW1wbC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkVFNTI0OTE4NDU4MDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxQ0QwMEM2MjQ5MTkxN0UwMDQ4NkYyNyAvKiBkcml2ZXJfdXRpbHNfbWFj
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQjcyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xG
dW5jdGlvbnMubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU0NDI0OTE4NDJFMDA0ODZGMjcg
LyogRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRjM0MjQ5MTg0NjAwMDQ4NkYyNyAvKiBFR0xTeW5jLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxQ0RGRTgzMjQ5MTg0M0EwMDQ4NkYyNyAvKiBlbXVsYXRlZF9idWlsdGluX2Z1bmN0aW9u
c19obHNsX2F1dG9nZW4uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NTU1LDYgKzQ1ODMsNyBAQAog
CQkJCTMxQ0RGRTE2MjQ5MTg0MjMwMDQ4NkYyNyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTMxQ0RGRTFFMjQ5MTg0MjMwMDQ4NkYyNyAvKiBzeXN0ZW1fdXRpbHNf
cG9zaXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjEyNDkxODQ0MjAwNDg2RjI3IC8q
IFN5c3RlbUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVCMzI0
OTE4NDQyMDA0ODZGMjcgLyogU3lzdGVtSW5mb19pb3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDRDAwQzcyNDkxOTFEMTAwNDg2RjI3IC8qIFN5c3RlbUluZm9fbWFjb3MubW0gaW4gU291cmNl
cyAqLywKIAkJCQkzMUNERkVGQjI0OTE4NDVGMDA0ODZGMjcgLyogVGV4dHVyZS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTQ2NTUsNiArNDY4NCw3IEBACiAJCQkJQTM2OTRGQzYyMzIwMkM1MjAwQTgz
RDhGIC8qIEJ1aWx0aW5zV29ya2Fyb3VuZEdMU0wuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUMx
REJDMkExQjA0Mzc1RjAwMjM1NTUyIC8qIENhbGxEQUcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NUMxREJEREExQjA0MzhEMzAwMjM1NTUyIC8qIENhcHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
MzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1QzU1RDZBQzIyODI2QkM4MDBCNUJBMkMgLyogQ2xhbXBGcmFnRGVwdGguY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUM1NUQ2QUQyMjgyNkJDODAwQjVCQTJDIC8qIENsYW1wUG9pbnRT
aXplLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNUVCREJEMUZDRTQ0QkYwMEFDN0E4OSAvKiBD
bGVhck11bHRpdmlld0dMLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDY5Niw2ICs0NzI2LDcgQEAK
IAkJCQk1Q0IzMDRFMTFERTQxNjQ4MDBEMkM0MDUgLyogRGlzcGxheUltcGwuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzE1RUJEQ0MxRkNFNDRFNDAwQUM3QTg5IC8qIGRyaXZlcl91dGlscy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlBMzAzMDc5RDIzMDYyNTY1MDAyREE5NzIgLyogZHJpdmVyX3V0
aWxzX21hYy5tbSBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkI2MjUxNzY4REQwMDEwRjhGQiAv
KiBFQUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNkVCMDFDMUUyNDc3Mjc5QTAw
RTUwQjM1IC8qIEVhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1Q0NENTk2QTIyODRGNzk2MDAxOEYyRDggLyogRUdMU3luYy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMTVFQkQ5NzFGQ0U0NDM2MDBBQzdBODkgLyogZW11bGF0ZWRfYnVpbHRpbl9m
dW5jdGlvbnNfaGxzbF9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDg4OCw2ICs0OTE5
LDcgQEAKIAkJCQkzMUEzMzFDNjFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1QzU1RDczMDIyODI3NDc3MDBCNUJBMkMgLyogc3lzdGVt
X3V0aWxzX3Bvc2l4LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQ0Q1OTlCMjI4NEZDNzUwMDE4
RjJEOCAvKiBTeXN0ZW1JbmZvLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RjlGMjUxMUEx
QTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFC
MTU3MjAyMzZCN0ZBRjAwQ0FBNEZEIC8qIFN5c3RlbUluZm9faW9zLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTVDQ0Q1OTlBMjI4NEZDNzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvX21hY29zLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUMxREJGMzAxQjA0MzhEMzAwMjM1NTUyIC8qIFRleHR1cmUuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZwppbmRleCAzMTU4MmI5MjJi
ZGYyYWVhNjI0ZDAyZWJhNWY3ZjFhNGEwNWFjNzExLi4zMTIwZWUyYzI5NmIzMjBkMGY5ZmYzZjNk
NmFjYjA0Y2VjOGU3YzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKQEAgLTUsMTQgKzUs
MTQgQEAgUFJPRFVDVF9OQU1FID0gQU5HTEUtc2hhcmVkOwogRVhFQ1VUQUJMRV9QUkVGSVggPSBs
aWI7CiAKIEFOR0xFX09USEVSX0xERkxBR1MgPSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlIC1h
bGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAtZnJhbWV3b3JrIFF1YXJ0ekNvcmUg
LWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsg
SU9TdXJmYWNlICQoQU5HTEVfT1RIRVJfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKLUFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sejsKK0FO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2lw
aG9uZXNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9P
VEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2
c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3Jr
IE9wZW5HTCAtbHo7Ci1BTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9L
aXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19tYWNjYXRhbHlz
dCA9IC1mcmFtZXdvcmsgSU9LaXQgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAt
ZnJhbWV3b3JrIElPS2l0IC1sejsKIAogSU5TVEFMTF9QQVRIID0gJChOT1JNQUxfV0VCQ09SRV9G
UkFNRVdPUktTX0RJUikvV2ViQ29yZS5mcmFtZXdvcmsvRnJhbWV3b3JrczsKIElOU1RBTExfUEFU
SFtzZGs9bWFjb3N4Kl0gPSAkKElOU1RBTExfUEFUSF9VU0VfT1ZFUlJJREVfRlJBTUVXT1JLU19E
SVJfJChXS19VU0VfT1ZFUlJJREVfRlJBTUVXT1JLU19ESVIpKTsKQEAgLTM2LDcgKzM2LDcgQEAg
UFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEhfbWFjY2F0YWx5c3QgPSAkKFdLX0FMVEVSTkFURV9G
UkFNRVdPUktTX0RJUikvJChBTkdMRV8KIAogREVCVUdfREVGSU5FU19kZWJ1ZyA9IDsKIERFQlVH
X0RFRklORVNfbm9ybWFsID0gTkRFQlVHOwotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9
ICQoREVCVUdfREVGSU5FU18kKENVUlJFTlRfVkFSSUFOVCkpIExJQkdMRVNWMl9JTVBMRU1FTlRB
VElPTiBMSUJBTkdMRV9JTVBMRU1FTlRBVElPTiBBTkdMRV9FTkFCTEVfT1BFTkdMIEFOR0xFX0VO
QUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9FU1NMIEdMX1NJTEVOQ0VfREVQUkVDQVRJT047CitHQ0Nf
UFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gJChERUJVR19ERUZJTkVTXyQoQ1VSUkVOVF9WQVJJ
QU5UKSkgTElCR0xFU1YyX0lNUExFTUVOVEFUSU9OIExJQkFOR0xFX0lNUExFTUVOVEFUSU9OIEFO
R0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVfRU5BQkxFX0dMU0wgQU5HTEVfRU5BQkxFX0VTU0wgR0xf
U0lMRU5DRV9ERVBSRUNBVElPTiBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT047CiAKIElOU1RBTExI
RFJTX1NDUklQVF9QSEFTRSA9IFlFUzsKIFVTRV9IRUFERVJNQVAgPSBOTzsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2Nv
bmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRp
Yy54Y2NvbmZpZwppbmRleCA0ZDFkMjIxMTkzNWE1MTJiOTY4ODYxODVlYzA2Njg1YjkyNzk2YjA3
Li44MjRhMjdiNTMxMzk1YjViMDAyYzJiZjU3MWY5NzllOWVjNjZmYjA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25m
aWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3Rh
dGljLnhjY29uZmlnCkBAIC01LDE0ICs1LDE0IEBAIFBST0RVQ1RfTkFNRSA9IEFOR0xFOwogRVhF
Q1VUQUJMRV9QUkVGSVggPSBsaWI7CiAKIEFOR0xFX09USEVSX0xERkxBR1MgPSAtYWxsb3dhYmxl
X2NsaWVudCBXZWJDb3JlIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAkKEFO
R0xFX09USEVSX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1BTkdMRV9PVEhFUl9MREZM
QUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBPcGVuR0xFUyAt
bHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBJT1N1cmZhY2Ug
LWx6OwogQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAkKEFOR0xFX09USEVS
X0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU193YXRjaG9zID0gJChBTkdM
RV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hzaW11
bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKIEFOR0xFX09U
SEVSX0xERkxBR1NfYXBwbGV0dm9zID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsK
IEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVzaW11bGF0b3IpOwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNjYXRhbHlzdCA9
IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBPcGVuR0wg
LWx6OwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFt
ZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxB
R1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1s
ejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3
b3JrIElPU3VyZmFjZSAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRI
X1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKIApAQCAtMjQsNyArMjQsNyBAQCBQVUJMSUNfSEVBREVS
U19GT0xERVJfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRIX1BSRUZJWCkvdXNyL2xvY2FsL2lu
Y2x1ZGUvQU5HTAogCiBERUJVR19ERUZJTkVTX2RlYnVnID0gOwogREVCVUdfREVGSU5FU19ub3Jt
YWwgPSBOREVCVUc7Ci1HQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gJChERUJVR19ERUZJ
TkVTXyQoQ1VSUkVOVF9WQVJJQU5UKSkgTElCR0xFU1YyX0lNUExFTUVOVEFUSU9OIExJQkFOR0xF
X0lNUExFTUVOVEFUSU9OIEFOR0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVfRU5BQkxFX0dMU0wgQU5H
TEVfRU5BQkxFX0VTU0wgR0xfU0lMRU5DRV9ERVBSRUNBVElPTjsKK0dDQ19QUkVQUk9DRVNTT1Jf
REVGSU5JVElPTlMgPSAkKERFQlVHX0RFRklORVNfJChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVT
VjJfSU1QTEVNRU5UQVRJT04gTElCQU5HTEVfSU1QTEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09Q
RU5HTCBBTkdMRV9FTkFCTEVfR0xTTCBBTkdMRV9FTkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJF
Q0FUSU9OIEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTjsKIAogSU5TVEFMTEhEUlNfU0NSSVBUX1BI
QVNFID0gWUVTOwogVVNFX0hFQURFUk1BUCA9IE5POwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3Yy
LmNtYWtlCmluZGV4IDA0ZmJlOWVmZTdjOTUzOTE2YzZhNTY4ZTE3YTJiNWE1NGFkZDMzYjkuLjRm
YmRiY2I4Y2UyMDJkNTdhYWFlM2YwZDQ5ZTVjM2I5OTRkMDBjNDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9HTEVTdjIuY21ha2UKQEAgLTE2Nyw3ICsxNjcsOSBAQCBzZXQobGliYW5nbGVfZ3B1X2lu
Zm9fdXRpbF9saWJwY2lfc291cmNlcwogc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfeDExX3Nv
dXJjZXMgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9feDExLmNwcCIgKQogCiAKLXNldChs
aWJhbmdsZV9ncHVfaW5mb191dGlsX21hY19zb3VyY2VzICJzcmMvZ3B1X2luZm9fdXRpbC9TeXN0
ZW1JbmZvX21hY29zLm1tIiApCitzZXQobGliYW5nbGVfZ3B1X2luZm9fdXRpbF9tYWNfc291cmNl
cworICAgICJzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tIgorICAgICJzcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tIiApCiAKIAogc2V0KGxpYmFuZ2xlX2lu
Y2x1ZGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3Bs
YXRmb3JtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3BsYXRmb3JtLmgK
aW5kZXggMDQxNmVkMjAxZDU5NGU1NDA5ZWE5ZDdlNjQwYjY0ODljNDc2YWNlZC4uYjM0MWFmMWY1
Zjk4ZjVkNDUxNDAwMTMzYzM4OWQ3MzY2NWY3YTZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTIwLDcgKzEyMCw2IEBACiAjICAgICAg
ICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fTUFDT1MgMQogIyAgICBlbGlmIFRBUkdFVF9PU19JUEhP
TkUKICMgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9JT1MgMQotIyAgICAgICAgZGVmaW5l
IEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTgogIyAgICAgICAgaWYgVEFSR0VUX09TX1NJTVVMQVRP
UgogIyAgICAgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9JT1NfU0lNVUxBVE9SIDEKICMg
ICAgICAgIGVuZGlmCkBAIC0xMjgsNiArMTI3LDExIEBACiAjICAgICAgICAgICAgZGVmaW5lIEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUCiAjICAgICAgICBlbmRpZgogIyAgICBlbmRpZgorIyAg
ICAvLyBUaGlzIG1pZ2h0IGJlIHVzZWZ1bCBnbG9iYWxseS4gQXQgdGhlIG1vbWVudCBpdCBpcyB1
c2VkCisjICAgIC8vIHRvIGRpZmZlcmVudGlhdGUgTWFjQ2F0YWx5c3Qgb24gSW50ZWwgYW5kIEFw
cGxlIFNpbGljb24uCisjICAgIGlmIGRlZmluZWQoX19hcm02NF9fKSB8fCBkZWZpbmVkKF9fYWFy
Y2g2NF9fKQorIyAgICAgICAgZGVmaW5lIEFOR0xFX0NQVV9BUk02NAorIyAgICBlbmRpZgogI2Vu
ZGlmCiAKIC8vIERlZmluZSBBTkdMRV9XSVRIX0FTQU4gbWFjcm8uCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgKaW5kZXgg
ZDI4ZTdjYTJjMDZkYjcyMjMwY2M2OTdlMzhjNzM5ZDY2ZDNlZjljOS4uNzFmNzZlYjVmNjQ2NGUy
NWVkY2Q0ZjllZTJkMWU3Y2QxODMzYmIxNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaApAQCAtNjcsNiArNjcsOSBA
QCBzdHJ1Y3QgU3lzdGVtSW5mbwogICAgIGJvb2wgaXNBTURTd2l0Y2hhYmxlID0gZmFsc2U7CiAg
ICAgLy8gT25seSB0cnVlIG9uIGR1YWwtR1BVIE1hYyBsYXB0b3BzLgogICAgIGJvb2wgaXNNYWNT
d2l0Y2hhYmxlID0gZmFsc2U7CisgICAgLy8gT25seSB0cnVlIG9uIEFwcGxlIFNpbGljb24gTWFj
cyB3aGVuIHJ1bm5pbmcgaU9TIGJpbmFyaWVzLgorICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Bl
ci5hcHBsZS5jb20vZG9jdW1lbnRhdGlvbi9mb3VuZGF0aW9uL25zcHJvY2Vzc2luZm8vMzYwODU1
Ni1pb3NhcHBvbm1hYworICAgIGJvb2wgaXNpT1NBcHBPbk1hYyAgID0gZmFsc2U7CiAKICAgICAv
LyBPbmx5IGF2YWlsYWJsZSBvbiBBbmRyb2lkCiAgICAgc3RkOjpzdHJpbmcgbWFjaGluZU1hbnVm
YWN0dXJlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5m
b191dGlsL1N5c3RlbUluZm9fYXBwbGUubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4OTczY2Y1MmQy
ZDMyNzVkMmNiYjk5MzM0MDkxMjMwOTY0YjMxYjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tCkBA
IC0wLDAgKzEsNDkgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkg
YSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8vCisKKy8vIFN5c3RlbUluZm9fYXBwbGUuY3BwOiBpbXBsZW1lbnRhdGlvbiBvZiB0
aGUgQXBwbGUtc3BlY2lmaWMgcGFydHMgb2YgU3lzdGVtSW5mby5oCisKKyNpbXBvcnQgImNvbW1v
bi9wbGF0Zm9ybS5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKKworIyAg
ICBpbXBvcnQgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgorIyAgICBpbXBv
cnQgPGRpc3BhdGNoL2Rpc3BhdGNoLmg+CisjICAgIGltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0
aW9uLmg+CisKK25hbWVzcGFjZSBhbmdsZQoreworCitib29sIEdldFN5c3RlbUluZm8oU3lzdGVt
SW5mbyAqaW5mbykKK3sKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyAgICBzdGF0aWMgYm9vbCBpc2lPU0FwcE9uTWFj
ID0gZmFsc2U7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIGRpc3BhdGNo
X29uY2UoJm9uY2UsIF57CisgICAgICAgIGlzaU9TQXBwT25NYWMgPSBbW05TUHJvY2Vzc0luZm8g
cHJvY2Vzc0luZm9dIGlzaU9TQXBwT25NYWNdOworICAgIH0pOworCisgICAgaWYgKGlzaU9TQXBw
T25NYWMpCisgICAgeworICAgICAgICBHZXRTeXN0ZW1JbmZvX2lvcyhpbmZvKTsKKyAgICAgICAg
aWYgKGluZm8pCisgICAgICAgIHsKKyAgICAgICAgICAgIGluZm8tPmlzaU9TQXBwT25NYWMgPSB0
cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVybiBpbmZvOworICAgIH0KKworICAgIHJldHVy
biBHZXRTeXN0ZW1JbmZvX21hYyhpbmZvKTsKKyNlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJu
IEdldFN5c3RlbUluZm9fbWFjKGluZm8pOworI2Vsc2UKKyAgICByZXR1cm4gR2V0U3lzdGVtSW5m
b19pb3MoaW5mbyk7CisjZW5kaWYKK30KKworfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCisKKyNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJuYWwuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50
ZXJuYWwuaAppbmRleCAyMWE3NzYyZWVhZGRhMDA2NWQxNGQxMmY3NDUxM2ExZmE0MGEyMTJkLi5k
MzAwYmQ4MWE5MGE4NzRmN2I5ZTIwODU2YTdkZjA1MjdmZDk1MTU1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFs
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVt
SW5mb19pbnRlcm5hbC5oCkBAIC0yOSw2ICsyOSwxNCBAQCBib29sIFBhcnNlTWFjTWFjaGluZU1v
ZGVsKGNvbnN0IHN0ZDo6c3RyaW5nICZpZGVudGlmaWVyLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQzMl90ICptaW5vcik7CiBib29sIENNRGV2aWNlSURUb0RldmljZUFuZFZlbmRvcklE
KGNvbnN0IHN0ZDo6c3RyaW5nICZpZCwgdWludDMyX3QgKnZlbmRvcklkLCB1aW50MzJfdCAqZGV2
aWNlSWQpOwogCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKK2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lzdGVt
SW5mbyAqaW5mbyk7CisjZW5kaWYKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8
fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9D
UFVfQVJNNjQpKQorYm9vbCBHZXRTeXN0ZW1JbmZvX2lvcyhTeXN0ZW1JbmZvICppbmZvKTsKKyNl
bmRpZgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAogI2VuZGlmICAvLyBHUFVfSU5GT19VVElM
X1NZU1RFTV9JTkZPX0lOVEVSTkFMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAKaW5kZXggYzBk
NDM2ZjU2MThjZjEyNzdiNWVjNzlkOGMzMTEzZGNjZjBjMzhhZi4uYmQyMjE5NzA2MmU4Yzk4NWY0
ZDQyMWU1Y2U2MzI3YTNhOTliNDFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcApAQCAtOCwx
NCArOCwxNCBAQAogCiAjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAg
aW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmgiCiAKIG5hbWVzcGFj
ZSBhbmdsZQogewogCi1ib29sIEdldFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykKK2Jvb2wg
R2V0U3lzdGVtSW5mb19pb3MoU3lzdGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAgICAgIC8v
IFRPRE8oYW5nbGVidWcuY29tLzQyNzUpOiBHZXQgdGhlIGFjdHVhbCBzeXN0ZW0gdmVyc2lvbi4K
QEAgLTI3LDQgKzI3LDQgQEAgYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8pCiAK
IH0gIC8vIG5hbWVzcGFjZSBhbmdsZQogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAg
Ly8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19tYWNvcy5tbQppbmRleCBhOGVkN2FmMjZmNDI0NGM5NDkzZWQ2YTg1N2FmYWMxOTI4YWE4ZmUw
Li4yYWI5MmZjNzY0ZGY4NjczMDUxODA0OTBjMTY5ZDIwYTlkZDg1YjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3Rl
bUluZm9fbWFjb3MubW0KQEAgLTE1LDYgKzE1LDggQEAKICMgICAgaW1wb3J0IDxDb2NvYS9Db2Nv
YS5oPgogIyAgICBpbXBvcnQgPElPS2l0L0lPS2l0TGliLmg+CiAKKyMgICAgaW5jbHVkZSAibGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3BhY2UgYW5nbGUK
IHsKIApAQCAtMjA4LDcgKzIxMCw3IEBAIHVpbnQ2NF90IEdldEdwdUlERnJvbU9wZW5HTERpc3Bs
YXlNYXNrKHVpbnQzMl90IGRpc3BsYXlNYXNrKQogICAgIHJldHVybiAwOwogfQogCi1ib29sIEdl
dFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykKK2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lz
dGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAgICAgIGludDMyX3QgbWFqb3IgPSAwOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwCmluZGV4IGVlNGYw
OWUwMWQ2YTcxNWFkYTNjMDI1ZDg5MmZjY2M1ZmNiZTA3YjMuLmNlZjExNWI3MzY1NjUyMmNlOTQ2
OGViYTZmNGU3ZDJhM2NjMzcyNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9DYXBzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvQ2Fwcy5jcHAKQEAgLTYyNSw5ICs2MjUsMTAgQEAgc3RhdGljIGJvb2wgRGV0ZXJt
aW5lRGVwdGhUZXh0dXJlQU5HTEVTdXBwb3J0KGNvbnN0IFRleHR1cmVDYXBzTWFwICZ0ZXh0dXJl
Q2FwcykKIHsKICAgICBjb25zdGV4cHIgR0xlbnVtIHJlcXVpcmVkRm9ybWF0c1tdID0gewogICAg
ICAgICBHTF9ERVBUSF9DT01QT05FTlQxNiwKLSNpZiAhQU5HTEVfUExBVEZPUk1fSU9TCisjaWYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAoIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpIHx8ICFkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAgICAgICAgIC8vIEZJ
WE1FOiBUZW1wb3JhcmlseSBSZW1vdmluZyB0aGUgbmVlZCBmb3IgR0xfREVQVEhfQ09NUE9ORU5U
MzJfT0VTCiAgICAgICAgIC8vIGJlY2F1c2UgaXQgaXMgbm90IHN1cHBvcnRlZCBvbiBpT1MuCisg
ICAgICAgIC8vIEZJWE1FOiBJIHRoaW5rIHRoaXMgbmVlZHMgdG8gYmUgYSBydW50aW1lIGNoZWNr
IHdoZW4gcnVubmluZyBhbiBpT1MgYXBwIG9uIE1hYy4KICAgICAgICAgR0xfREVQVEhfQ09NUE9O
RU5UMzJfT0VTLAogI2VuZGlmCiAgICAgICAgIEdMX0RFUFRIMjRfU1RFTkNJTDhfT0VTLApAQCAt
NjQxLDkgKzY0MiwxMCBAQCBzdGF0aWMgYm9vbCBEZXRlcm1pbmVEZXB0aFRleHR1cmVPRVNTdXBw
b3J0KGNvbnN0IFRleHR1cmVDYXBzTWFwICZ0ZXh0dXJlQ2FwcykKIHsKICAgICBjb25zdGV4cHIg
R0xlbnVtIHJlcXVpcmVkRm9ybWF0c1tdID0gewogICAgICAgICBHTF9ERVBUSF9DT01QT05FTlQx
NiwKLSNpZiAhQU5HTEVfUExBVEZPUk1fSU9TCisjaWYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAoIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpIHx8ICFkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCiAgICAgICAgIC8vIEZJWE1FOiBUZW1wb3JhcmlseSBSZW1vdmlu
ZyB0aGUgbmVlZCBmb3IgR0xfREVQVEhfQ09NUE9ORU5UMzJfT0VTCiAgICAgICAgIC8vIGJlY2F1
c2UgaXQgaXMgbm90IHN1cHBvcnRlZCBvbiBpT1MuCisgICAgICAgIC8vIEZJWE1FOiBJIHRoaW5r
IHRoaXMgbmVlZHMgdG8gYmUgYSBydW50aW1lIGNoZWNrIHdoZW4gcnVubmluZyBhbiBpT1MgYXBw
IG9uIE1hYy4KICAgICAgICAgR0xfREVQVEhfQ09NUE9ORU5UMzJfT0VTLAogI2VuZGlmCiAgICAg
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNw
bGF5LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNw
cAppbmRleCBlM2ViZTMyNWRhYTI4OGU4NWM5YmY4MDM3YTAwNTMxMDUyNDdiN2E4Li5kZjk1M2U2
MjIzN2E3OWMyYzZiNDdhOGVmMjg3YTgwNTU5NmNlODc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAj
aW5jbHVkZSAiY29tbW9uL3N5c3RlbV91dGlscy5oIgogI2luY2x1ZGUgImNvbW1vbi90bHMuaCIK
ICNpbmNsdWRlICJjb21tb24vdXRpbGl0aWVzLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9T
eXN0ZW1JbmZvLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvQ29udGV4dC5oIgogI2luY2x1ZGUgImxp
YkFOR0xFL0RldmljZS5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0VHTFN5bmMuaCIKQEAgLTUzLDYg
KzU0LDkgQEAKICMgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL3dnbC9EaXNw
bGF5V0dMLmgiCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKICMgICAgICAgIGluY2x1ZGUgImxpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCisjICAgICAgICBpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyMg
ICAgICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdM
LmgiCisjICAgICAgICBlbmRpZgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KQogIyAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFH
TC5oIgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTElOVVgpCkBAIC0yNjAsOCAr
MjY0LDM2IEBAIHJ4OjpEaXNwbGF5SW1wbCAqQ3JlYXRlRGlzcGxheUZyb21BdHRyaWJzKEVHTEF0
dHJpYiBkaXNwbGF5VHlwZSwKICNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9PUEVOR0wpCiAjICAg
IGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fV0lORE9XUykKICAgICAgICAgICAgIGltcGwgPSBu
ZXcgcng6OkRpc3BsYXlXR0woc3RhdGUpOwotIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisgICAgICAg
ICAgICBicmVhazsKKworIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpCisg
ICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0YXRlKTsKKyAgICAgICAgICAg
IGJyZWFrOworIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisj
ICAgICAgICBpZiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZvOworICAgICAgICAgICAgICAgIGlmICgh
YW5nbGU6OkdldFN5c3RlbUluZm8oJmluZm8pKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgaW1wbCA9IG51bGxwdHI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGlmIChpbmZvLmlzaU9TQXBwT25N
YWMpCisgICAgICAgICAgICAgICAgeworCQkJCQlpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChz
dGF0ZSk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0YXRlKTsKKyAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorIyAgICAgICAgZWxzZQog
ICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAg
ICBicmVhazsKKyMgICAgICAgIGVuZGlmCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpCiAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CiAj
ICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9MSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCmluZGV4IGU0MzQ5
NmZjMzQ3MTkzYTlmMWNiYzExZmJmNmU0ZGZmOWM5MmUyM2UuLmFhOGQ5ZWMzOTE4NjkxMThhOWI3
M2Q5ZjUxODA2OTFhMzM1MjQzYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcApAQCAtMTAsNiArMTAsNyBAQAogCiAjaW5j
bHVkZSAiYW5nbGViYXNlL25vX2Rlc3RydWN0b3IuaCIKICNpbmNsdWRlICJjb21tb24vbWF0aHV0
aWwuaCIKKyNpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaCIKICNpbmNsdWRlICJs
aWJBTkdMRS9Db250ZXh0LmgiCiAjaW5jbHVkZSAibGliQU5HTEUvRnJhbWVidWZmZXIuaCIKIApA
QCAtMTAzMCw4ICsxMDMxLDIxIEBAIHN0YXRpYyBJbnRlcm5hbEZvcm1hdEluZm9NYXAgQnVpbGRJ
bnRlcm5hbEZvcm1hdEluZm9NYXAoKQogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfUkdCQSwg
ICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfUkdCQSwgICAgICAgICAgIEdM
X0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgR0xfU0lHTkVEX05PUk1BTElaRUQsICAgZmFs
c2UsIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2
ZXJTdXBwb3J0ZWQsICBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAgIEFkZFJHQkFGb3JtYXQo
Jm1hcCwgR0xfU1JHQiwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgMCwgMCwgR0xfU1JH
QiwgICAgICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURf
Tk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnNSR0I+LCAgICAgICAg
ICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAg
IEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQl9BTFBIQV9FWFQsIGZhbHNlLCAgOCwgIDgsICA4
LCAgOCwgMCwgR0xfU1JHQl9BTFBIQV9FWFQsIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAg
ICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6
OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRXh0PCZF
eHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJT
dXBwb3J0ZWQpOwotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKLSAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JH
UkFfRVhULCAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAg
ICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQs
IGZhbHNlLCBSZXF1aXJlRVM8MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKKyNpZiAoZGVmaW5lZChB
TkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5H
TEVfQ1BVX0FSTTY0KSkKKyAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZvOworICAgIGlmIChhbmds
ZTo6R2V0U3lzdGVtSW5mbygmaW5mbykpCisgICAgeworICAgICAgICBpZiAoIWluZm8uaXNpT1NB
cHBPbk1hYykKKyAgICAgICAgeworICAgICAgICAgICAgLy8gVXNpbmcgT3BlbkdMLmZyYW1ld29y
ay4KKyAgICAgICAgICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZh
bHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfQkdSQV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZ
VEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVF
eHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JBODg4OD4sICAgQWx3YXlzU3VwcG9ydGVk
LCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9ybWF0QkdSQTg4ODg+LCBOZXZlclN1
cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAg
ICAgeworICAgICAgICAgICAgLy8gVXNpbmcgT3BlbkdMRVMuZnJhbWV3b3JrLgorICAgICAgICAg
ICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwg
IDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAg
ICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBmYWxzZSwgUmVxdWlyZUVTPDIsIDA+LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFUzwy
LCAwPiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZl
clN1cHBvcnRlZCk7CisgICAgICAgIH0KKyAgICB9CiAjZWxzZQogICAgIEFkZFJHQkFGb3JtYXQo
Jm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfQkdS
QV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURf
Tk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRC
R1JBODg4OD4sICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0
dXJlRm9ybWF0QkdSQTg4ODg+LCBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJk
ZjU3Y2U3YzkyYjYyZTgzMTcyMWM0NTJiNmZkNTBlMDg0MDZmMTkKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExp
bmtpbmdfYXBwbGUuaApAQCAtMCwwICsxLDExNCBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFw
cGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29k
ZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gU29mdExpbmtpbmdfYXBwbGUuY3BwOiBN
YWNyb3MgZm9yIHNvZnQtbGlua2luZyBGcmFtZXdvcmtzIGFuZCBGdW5jdGlvbnMuCisKKyNpZm5k
ZWYgU09GVF9MSU5LSU5HX0FQUExFX0hfCisjZGVmaW5lIFNPRlRfTElOS0lOR19BUFBMRV9IXwor
CisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0FQUExFKQorCisjaW5jbHVkZSAiY29tbW9uL2RlYnVnLmgiCisKKyNpbXBvcnQgPGRpc3Bh
dGNoL2Rpc3BhdGNoLmg+CisjaW1wb3J0IDxkbGZjbi5oPgorI2ltcG9ydCA8b2JqYy9ydW50aW1l
Lmg+CisKKyNkZWZpbmUgUkVMRUFTRV9BU1NFUlQoZXhwcmVzc2lvbiwgbWVzc2FnZSkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgKGV4cHJlc3Npb24gPyBzdGF0aWNfY2FzdDx2b2lkPigwKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgICAgOiAoRkFUQUwoKSA8PCAiXHQhIEFzc2VydCBmYWlsZWQgaW4g
IiA8PCBfX0ZVTkNUSU9OX18gPDwgIiAoIiA8PCBfX0ZJTEVfXyAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAiOiIgPDwgX19MSU5FX18gPDwgIik6ICIg
PDwgI2V4cHJlc3Npb24gPDwgIlxuXHQhIE1lc3NhZ2U6ICIgPDwgbWVzc2FnZSkpCisKKworI2lm
ZGVmIF9fY3BsdXNwbHVzCisjZGVmaW5lIEVYVEVSTl9DX0JFR0lOIGV4dGVybiAiQyIgeworI2Rl
ZmluZSBFWFRFUk5fQ19FTkQgfQorI2Vsc2UKKyNkZWZpbmUgRVhURVJOX0NfQkVHSU4KKyNkZWZp
bmUgRVhURVJOX0NfRU5ECisjZW5kaWYKKworI2RlZmluZSBTT0ZUX0xJTktfRlJBTUVXT1JLX0hF
QURFUihmcmFtZXdvcmspIFwKKyAgICBleHRlcm4gdm9pZCogZnJhbWV3b3JrIyNMaWJyYXJ5KCk7
IFwKKworI2RlZmluZSBTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShmcmFtZXdvcmspIFwKKyAg
ICB2b2lkKiBmcmFtZXdvcmsjI0xpYnJhcnkoKSBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZSA9IDA7IFwKKyAgICAgICAgc3RhdGljIHZvaWQqIGZyYW1ld29y
a0xpYnJhcnkgPSBOVUxMOyBcCisgICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKKyAg
ICAgICAgICAgIGZyYW1ld29ya0xpYnJhcnkgPSBkbG9wZW4oIi9TeXN0ZW0vTGlicmFyeS9GcmFt
ZXdvcmtzLyIgI2ZyYW1ld29yayAiLmZyYW1ld29yay8iICNmcmFtZXdvcmssIFJUTERfTk9XKTsg
XAorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoZnJhbWV3b3JrTGlicmFyeSwgIlVuYWJsZSB0
byBsb2FkICIgI2ZyYW1ld29yayAiLmZyYW1ld29yayIpOyBcCisgICAgICAgIH0pOyBcCisgICAg
ICAgIHJldHVybiBmcmFtZXdvcmtMaWJyYXJ5OyBcCisgICAgfQorCisjZGVmaW5lIFNPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoZnJhbWV3b3JrLCBmdW5jdGlvbk5hbWUsIHJlc3VsdFR5cGUsIHBh
cmFtZXRlckRlY2xhcmF0aW9ucywgcGFyYW1ldGVyTmFtZXMpIFwKKyAgICBFWFRFUk5fQ19CRUdJ
TiBcCisgICAgcmVzdWx0VHlwZSBmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zOyBc
CisgICAgRVhURVJOX0NfRU5EIFwKKyAgICBleHRlcm4gcmVzdWx0VHlwZSBpbml0IyNmcmFtZXdv
cmsjI2Z1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnM7IFwKKyAgICBleHRlcm4gcmVz
dWx0VHlwZSgqc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lKSBwYXJhbWV0ZXJEZWNs
YXJhdGlvbnM7IFwKKyAgICBpbmxpbmUgX19hdHRyaWJ1dGVfXygoX19hbHdheXNfaW5saW5lX18p
KSByZXN1bHRUeXBlIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgXAorICAgIHsg
XAorICAgICAgICByZXR1cm4gc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lIHBhcmFt
ZXRlck5hbWVzOyBcCisgICAgfSBcCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShmcmFtZXdvcmssIGZ1bmN0aW9uTmFtZSwgcmVzdWx0VHlwZSwgcGFyYW1ldGVyRGVjbGFyYXRp
b25zLCBwYXJhbWV0ZXJOYW1lcykgXAorICAgIHJlc3VsdFR5cGUoKnNvZnRMaW5rIyNmcmFtZXdv
cmsjI2Z1bmN0aW9uTmFtZSkgcGFyYW1ldGVyRGVjbGFyYXRpb25zID0gaW5pdCMjZnJhbWV3b3Jr
IyNmdW5jdGlvbk5hbWU7IFwKKyAgICByZXN1bHRUeXBlIGluaXQjI2ZyYW1ld29yayMjZnVuY3Rp
b25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9ucyBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZTsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBc
CisgICAgICAgICAgICBzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgPSAocmVzdWx0
VHlwZSAoKikgcGFyYW1ldGVyRGVjbGFyYXRpb25zKSBkbHN5bShmcmFtZXdvcmsjI0xpYnJhcnko
KSwgI2Z1bmN0aW9uTmFtZSk7IFwKKyAgICAgICAgfSk7IFwKKyAgICAgICAgcmV0dXJuIHNvZnRM
aW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSBwYXJhbWV0ZXJOYW1lczsgXAorICAgIH0gXAor
CisjZGVmaW5lIFNPRlRfTElOS19DTEFTU19IRUFERVIoY2xhc3NOYW1lKSBcCisgICAgQGNsYXNz
IGNsYXNzTmFtZTsgXAorICAgIGV4dGVybiBDbGFzcyAoKmdldCMjY2xhc3NOYW1lIyNDbGFzcyko
KTsgXAorICAgIGNsYXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFuY2UoKTsgXAorICAg
IGlubGluZSBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNlKCkgXAorICAgIHsg
XAorICAgICAgICByZXR1cm4gW2dldCMjY2xhc3NOYW1lIyNDbGFzcygpIGFsbG9jXTsgXAorICAg
IH0KKworI2RlZmluZSBTT0ZUX0xJTktfQ0xBU1MoZnJhbWV3b3JrLCBjbGFzc05hbWUpIFwKKyAg
ICBAY2xhc3MgY2xhc3NOYW1lOyBcCisgICAgc3RhdGljIENsYXNzIGluaXQjI2NsYXNzTmFtZSgp
OyBcCisgICAgQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xhc3MpKCkgPSBpbml0IyNjbGFzc05h
bWU7IFwKKyAgICBzdGF0aWMgQ2xhc3MgY2xhc3MjI2NsYXNzTmFtZTsgXAorICAgIFwKKyAgICBz
dGF0aWMgQ2xhc3MgY2xhc3NOYW1lIyNGdW5jdGlvbigpIFwKKyAgICB7IFwKKyAgICAgICAgcmV0
dXJuIGNsYXNzIyNjbGFzc05hbWU7IFwKKyAgICB9IFwKKyAgICBcCisgICAgc3RhdGljIENsYXNz
IGluaXQjI2NsYXNzTmFtZSgpIFwKKyAgICB7IFwKKyAgICAgICAgc3RhdGljIGRpc3BhdGNoX29u
Y2VfdCBvbmNlOyBcCisgICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKKyAgICAgICAg
ICAgIGZyYW1ld29yayMjTGlicmFyeSgpOyBcCisgICAgICAgICAgICBjbGFzcyMjY2xhc3NOYW1l
ID0gb2JqY19nZXRDbGFzcygjY2xhc3NOYW1lKTsgXAorICAgICAgICAgICAgUkVMRUFTRV9BU1NF
UlQoY2xhc3MjI2NsYXNzTmFtZSwgIm9iamNfZ2V0Q2xhc3MgZmFpbGVkIGZvciAiICNjbGFzc05h
bWUpOyBcCisgICAgICAgICAgICBnZXQjI2NsYXNzTmFtZSMjQ2xhc3MgPSBjbGFzc05hbWUjI0Z1
bmN0aW9uOyBcCisgICAgICAgIH0pOyBcCisgICAgICAgIHJldHVybiBjbGFzcyMjY2xhc3NOYW1l
OyBcCisgICAgfSBcCisgICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBwdXNoIikgXAorICAg
IF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCBcIi1XdW51c2VkLWZ1bmN0aW9uXCIi
KSBcCisgICAgc3RhdGljIGNsYXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFuY2UoKSBc
CisgICAgeyBcCisgICAgICAgIHJldHVybiBbZ2V0IyNjbGFzc05hbWUjI0NsYXNzKCkgYWxsb2Nd
OyBcCisgICAgfSBcCisgICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBwb3AiKQorCisjZW5k
aWYgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKKworI2VuZGlmIC8vIFNPRlRfTElO
S0lOR19BUFBMRV9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE1NWI0ZGY3ZDdkMmVlZTM5ZDk3Y2RlOTBmNjBhN2EyNzRmZjhjMmMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKQEAgLTAsMCArMSwzMiBAQAorLy8KKy8vIENvcHly
aWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhp
cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu
IGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gQ0dMRnVuY3Rpb25z
LmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIENHTCBpbnRlcmZhY2UuCisKKyNpbmNsdWRl
ICJjb21tb24vcGxhdGZvcm0uaCIKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorCitTT0ZUX0xJTktfRlJBTUVXT1JL
X1NPVVJDRShPcGVuR0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xD
aG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0
ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmli
cywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDcmVh
dGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9i
aiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJy
b3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0
QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2
YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRl
eHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5D
VElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dM
UGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMRXJyb3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVy
cm9yKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4
dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xT
ZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3Jl
ZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENH
TFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51
bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9mb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkg
aGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFj
ZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFyZ2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBo
ZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJmYWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJ
T05fU09VUkNFKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dM
RGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xp
bnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJl
bmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xR
dWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5k
ZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5y
ZW5kKSkKKworI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGExZDdjNzNiYzlkOGUxY2JiZDhkZGIzNDczNDExOTVl
YWQxNjM2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaApAQCAtMCwwICsxLDM5IEBACisv
LworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vu
c2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBD
R0xGdW5jdGlvbnMuaDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIENHTCBpbnRlcmZhY2UuCisK
KyNpZm5kZWYgQ0dMX0ZVTkNUSU9OU19IXworI2RlZmluZSBDR0xfRlVOQ1RJT05TX0hfCisKKyNp
bmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisKKyNpbmNsdWRl
IDxPcGVuR0wvT3BlbkdMLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0
TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hFQURFUihPcGVuR0wpCisK
K1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwg
Q0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4
ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NP
RlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJv
ciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4
dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVS
KE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1h
dE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwg
R0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChD
R0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVy
dHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFE
RVIoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3Jt
YXRPYmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dM
RGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCks
IChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xFcnJvclN0cmlu
ZywgY29uc3QgY2hhciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3IpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdM
dWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5k
KSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURF
UihPcGVuR0wsIENHTFJlbGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAo
Y3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29u
dGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dM
Q29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3Is
IChDR0xDb250ZXh0T2JqIGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1h
dCwgR0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0
eXBlLCBJT1N1cmZhY2VSZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQs
IGludGVybmFsX2Zvcm1hdCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2Us
IHBsYW5lKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xVcGRhdGVDb250
ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKKyNlbmRpZiAvLyBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKQorCisjZW5kaWYgLy8gQ0dMX0ZVTkNUSU9OU19IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5
Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9EaXNwbGF5Q0dMLm1tCmluZGV4IDc5YTExZDRkMjk4YTFhM2IyNDFkOTg0MGVjYTdiYjUz
YmYyNTdiMTUuLmU3Y2MyYmEyZmE2M2M2YTMzNjFiMDU3ZjhkZjE3ODI4NjEzNzlkZjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvRGlzcGxheUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KQEAgLTI4LDYgKzI4LDggQEAKICMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaCIKICMg
ICAgaW5jbHVkZSAicGxhdGZvcm0vUGxhdGZvcm1NZXRob2RzLmgiCiAKKyMgICAgaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3BhY2UKIHsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAK
aW5kZXggYWZkY2E0ZjJlZjk2Yzg1NWY4NmY2OTg4YzBhNjZmM2IzZmY5NjQ3Yy4uOGVkNDM5MWUw
MzBkNGEwYjQ1NDAzMDAyYjdjNGZlYmU4MTQ0ZWU5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNl
Q0dMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwCkBAIC0yNyw2ICsyNyw4IEBACiAjICAg
IGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1RleHR1cmVHTC5oIgogIyAgICBpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5oIgogCisjICAgIGluY2x1ZGUg
ImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNlIHJ4
CiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgKaW5kZXgg
ZDhiNGNjMmY5MWMzNDFiYThmMjBkMTZlMzliZDZiZDAzOTA4Y2UwNC4uZDhiYWFiZjdmYzc4Yzgx
NmM2YzM4M2Y2ZGNlY2IxNTQwZGUzNGRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9X
aW5kb3dTdXJmYWNlQ0dMLmgKQEAgLTE4LDcgKzE4LDcgQEAgc3RydWN0IF9fSU9TdXJmYWNlOwog
dHlwZWRlZiBfX0lPU3VyZmFjZSAqSU9TdXJmYWNlUmVmOwogCiAvLyBXZWJLaXQncyBidWlsZCBw
cm9jZXNzIHJlcXVpcmVzIHRoYXQgZXZlcnkgT2JqZWN0aXZlLUMgY2xhc3MgbmFtZSBoYXMgdGhl
IHByZWZpeCAiV2ViIi4KLUBjbGFzcyBXZWJTd2FwTGF5ZXI7CitAY2xhc3MgV2ViU3dhcExheWVy
Q0dMOwogCiBuYW1lc3BhY2UgcngKIHsKQEAgLTg3LDcgKzg3LDcgQEAgY2xhc3MgV2luZG93U3Vy
ZmFjZUNHTCA6IHB1YmxpYyBTdXJmYWNlR0wKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBnbDo6RnJhbWVidWZmZXJTdGF0ZSAmc3RhdGUpIG92ZXJy
aWRlOwogCiAgIHByaXZhdGU6Ci0gICAgV2ViU3dhcExheWVyICptU3dhcExheWVyOworICAgIFdl
YlN3YXBMYXllckNHTCAqbVN3YXBMYXllcjsKICAgICBTaGFyZWRTd2FwU3RhdGUgbVN3YXBTdGF0
ZTsKICAgICB1aW50NjRfdCBtQ3VycmVudFN3YXBJZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNl
Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCmluZGV4IDBmYTU3YmU0M2I3NzlmMGRlZWJjZmRjNTEy
MDI2ODUxNWFiOTQ1NmYuLmI4ZDU5OTBlNjRlODJlZTc2NzEzYzI2NTM0NzNmYmJhZTQzNTE4Zjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KQEAgLTIz
LDcgKzIzLDkgQEAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5h
Z2VyR0wuaCIKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlD
R0wuaCIKIAotQGludGVyZmFjZSBXZWJTd2FwTGF5ZXIgOiBDQU9wZW5HTExheWVyIHsKKyMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCitAaW50
ZXJmYWNlIFdlYlN3YXBMYXllckNHTCA6IENBT3BlbkdMTGF5ZXIgewogICAgIENHTENvbnRleHRP
YmogbURpc3BsYXlDb250ZXh0OwogCiAgICAgYm9vbCBpbml0aWFsaXplZDsKQEAgLTM3LDcgKzM5
LDcgQEAKICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAq
KWZ1bmN0aW9uczsKIEBlbmQKIAotQGltcGxlbWVudGF0aW9uIFdlYlN3YXBMYXllcgorQGltcGxl
bWVudGF0aW9uIFdlYlN3YXBMYXllckNHTAogLSAoaWQpaW5pdFdpdGhTaGFyZWRTdGF0ZToocng6
OlNoYXJlZFN3YXBTdGF0ZSAqKXN3YXBTdGF0ZQogICAgICAgICAgICAgICB3aXRoQ29udGV4dDoo
Q0dMQ29udGV4dE9iailkaXNwbGF5Q29udGV4dAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczoo
Y29uc3Qgcng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zCkBAIC0yMDgsOSArMjEwLDkgQEAgZWds
OjpFcnJvciBXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKGNvbnN0IGVnbDo6RGlzcGxheSAq
ZGlzcGxheSkKICAgICBtU3dhcFN0YXRlLmxhc3RSZW5kZXJlZCAgID0gJm1Td2FwU3RhdGUudGV4
dHVyZXNbMV07CiAgICAgbVN3YXBTdGF0ZS5iZWluZ1ByZXNlbnRlZCA9ICZtU3dhcFN0YXRlLnRl
eHR1cmVzWzJdOwogCi0gICAgbVN3YXBMYXllciA9IFtbV2ViU3dhcExheWVyIGFsbG9jXSBpbml0
V2l0aFNoYXJlZFN0YXRlOiZtU3dhcFN0YXRlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHdpdGhDb250ZXh0Om1Db250ZXh0Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOm1GdW5jdGlvbnNdOwor
ICAgIG1Td2FwTGF5ZXIgPSBbW1dlYlN3YXBMYXllckNHTCBhbGxvY10gaW5pdFdpdGhTaGFyZWRT
dGF0ZTombVN3YXBTdGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB3aXRoQ29udGV4dDptQ29udGV4dAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25zXTsKICAgICBb
bUxheWVyIGFkZFN1YmxheWVyOm1Td2FwTGF5ZXJdOwogICAgIFttU3dhcExheWVyIHNldENvbnRl
bnRzU2NhbGU6W21MYXllciBjb250ZW50c1NjYWxlXV07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5jcHAKaW5kZXggYTk4MzQ2MTkyNDBjZWQwMzdmNTRmMTBkMTQ4YzdlMWQw
NjkzN2VjNS4uNjQxOTdmZmVmZDU3MjE4ZDVjYjMzNjVjNWZiMzI0Y2VlMzg2YzQyNiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5jcHAKQEAgLTgsNyArOCw3IEBACiAKICNp
bXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5oIgogCkBAIC01Niw0ICs1Niw0IEBAIHZvaWQgRGV2aWNlRUFHTDo6Z2Vu
ZXJhdGVFeHRlbnNpb25zKGVnbDo6RGV2aWNlRXh0ZW5zaW9ucyAqb3V0RXh0ZW5zaW9ucykgY29u
c3QKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlm
ICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
ICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rldmlj
ZUVBR0wuaAppbmRleCA1NzY5NjkyMWVmM2JlNTQ4NmFlOTE4NTUwYmQzMzM4YjBkNGJjMGE1Li45
M2FiZmZjMDI4NWY2YjA1NWU1N2UyY2RiYWU0MDg1NTIzYjJlMTQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VF
QUdMLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGV2aWNlRUFHTC5oCkBAIC0xMSw3ICsxMSw3IEBACiAKICNpbXBvcnQgImNvbW1v
bi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQogCiAjaW5jbHVkZSAibGliQU5HTEUvRGV2aWNlLmgiCiAjaW5jbHVkZSAibGliQU5HTEUv
cmVuZGVyZXIvRGV2aWNlSW1wbC5oIgpAQCAtMzQsNiArMzQsNiBAQCBjbGFzcyBEZXZpY2VFQUdM
IDogcHVibGljIERldmljZUltcGwKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8g
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlm
ICAvLyBMSUJBTkdMRV9SRU5ERVJFUl9HTF9FQUdMX0RFVklDRUVBR0xfSF8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rp
c3BsYXlFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oCmluZGV4IDI2MWJhNDA3ZDE5M2JlYjkzMTJhZDExMDZk
OGM2YmU4MGQ4NzM5ZDkuLmE1MzY2ZTkxNmU5Yzc1NjA5ZjMxMDEzMTJmZWI2MGYwNTdjMTExMTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaApAQCAtMTEsNyArMTEsNyBA
QAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAo
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L0Rpc3BsYXlHTC5oIgogCkBAIC05Nyw2ICs5Nyw2IEBAIGNsYXNzIERpc3BsYXlFQUdMIDogcHVi
bGljIERpc3BsYXlHTAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKyNlbmRpZiAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlmICAvLyBMSUJB
TkdMRV9SRU5ERVJFUl9HTF9FQUdMX0RJU1BMQVlFQUdMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFH
TC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLm1tCmluZGV4IGNlYjJkMTFmYzc5OWUzOTYyNWM3NzhhNzIyNTY1MmFh
ZWM4ODhhMTEuLjk0ZjRlZTVjY2ZjOTI2YzQwYTQxZTQ4OGU5Y2NlNjY5MzhkNDNjYWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tCkBAIC04LDcgKzgsNyBAQAogCiAj
aW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGlzcGxheUVBR0wuaCIKIApAQCAtMjMsMTEgKzIzLDEwIEBACiAjICAgIGltcG9ydCAibGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCiAjICAgIGltcG9y
dCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+Ci0jICAgIGltcG9ydCA8T3BlbkdMRVMvRUFHTC5o
PgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgogIyAgICBpbXBvcnQgPGRs
ZmNuLmg+CiAKLSMgICAgZGVmaW5lIEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTgorIyAgICBpbXBv
cnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIgogCiBuYW1lc3Bh
Y2UKIHsKQEAgLTcxLDEyICs3MCwxMiBAQCBlZ2w6OkVycm9yIERpc3BsYXlFQUdMOjppbml0aWFs
aXplKGVnbDo6RGlzcGxheSAqZGlzcGxheSkKICAgICAgICAgcmV0dXJuIGVnbDo6RWdsTm90SW5p
dGlhbGl6ZWQoKSA8PCAiVW5hYmxlIHRvIHF1ZXJ5IEFOR0xFJ3MgU3lzdGVtSW5mby4iOwogICAg
IH0KIAotICAgIG1Db250ZXh0ID0gW1tFQUdMQ29udGV4dCBhbGxvY10gaW5pdFdpdGhBUEk6a0VB
R0xSZW5kZXJpbmdBUElPcGVuR0xFUzNdOworICAgIG1Db250ZXh0ID0gW2FsbG9jRUFHTENvbnRl
eHRJbnN0YW5jZSgpIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKICAg
ICBpZiAobUNvbnRleHQgPT0gbnVsbHB0cikKICAgICB7CiAgICAgICAgIHJldHVybiBlZ2w6OkVn
bE5vdEluaXRpYWxpemVkKCkgPDwgIkNvdWxkIG5vdCBjcmVhdGUgdGhlIEVBR0wgY29udGV4dC4i
OwogICAgIH0KLSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bUNvbnRleHRdOwor
ICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRleHQ6bUNvbnRleHRdOwog
CiAgICAgLy8gVGhlcmUgaXMgbm8gZXF1aXZhbGVudCBnZXRQcm9jQWRkcmVzcyBpbiBFQUdMIHNv
IHdlIG9wZW4gdGhlIGR5bGliIGRpcmVjdGx5CiAgICAgdm9pZCAqaGFuZGxlID0gZGxvcGVuKGtP
cGVuR0xFU0R5bGliTmFtZSwgUlRMRF9OT1cpOwpAQCAtMTA2LDcgKzEwNSw3IEBAIHZvaWQgRGlz
cGxheUVBR0w6OnRlcm1pbmF0ZSgpCiAgICAgbVJlbmRlcmVyLnJlc2V0KCk7CiAgICAgaWYgKG1D
b250ZXh0ICE9IG51bGxwdHIpCiAgICAgewotICAgICAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVu
dENvbnRleHQ6bmlsXTsKKyAgICAgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50
Q29udGV4dDpuaWxdOwogICAgICAgICBbbUNvbnRleHQgcmVsZWFzZV07CiAgICAgICAgIG1Db250
ZXh0ID0gbnVsbHB0cjsKICAgICB9CkBAIC0zMzAsMTQgKzMyOSwxNCBAQCBXb3JrZXJDb250ZXh0
RUFHTDo6V29ya2VyQ29udGV4dEVBR0woRUFHTENvbnRleHRPYmogY29udGV4dCkgOiBtQ29udGV4
dChjb250ZXh0KQogCiBXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKCkKIHsK
LSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKKyAgICBbZ2V0RUFHTENv
bnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om5pbF07CiAgICAgW21Db250ZXh0IHJlbGVh
c2VdOwogICAgIG1Db250ZXh0ID0gbnVsbHB0cjsKIH0KIAogYm9vbCBXb3JrZXJDb250ZXh0RUFH
TDo6bWFrZUN1cnJlbnQoKQogewotICAgIGlmICghW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250
ZXh0OnN0YXRpY19jYXN0PEVBR0xDb250ZXh0ICo+KG1Db250ZXh0KV0pCisgICAgaWYgKCFbZ2V0
RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0OnN0YXRpY19jYXN0PEVBR0xDb250
ZXh0ICo+KG1Db250ZXh0KV0pCiAgICAgewogICAgICAgICBFUlIoKSA8PCAiVW5hYmxlIHRvIG1h
a2UgZ2wgY29udGV4dCBjdXJyZW50LiI7CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM0Nywx
MyArMzQ2LDEzIEBAIGJvb2wgV29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KCkKIAogdm9p
ZCBXb3JrZXJDb250ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCgpCiB7Ci0gICAgW0VBR0xDb250ZXh0
IHNldEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRD
dXJyZW50Q29udGV4dDpuaWxdOwogfQogCiBXb3JrZXJDb250ZXh0ICpEaXNwbGF5RUFHTDo6Y3Jl
YXRlV29ya2VyQ29udGV4dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIHsKICAgICBFQUdMQ29udGV4
dE9iaiBjb250ZXh0ID0gbnVsbHB0cjsKLSAgICBjb250ZXh0ICAgICAgICAgICAgICAgID0gW1tF
QUdMQ29udGV4dCBhbGxvY10gaW5pdFdpdGhBUEk6a0VBR0xSZW5kZXJpbmdBUElPcGVuR0xFUzNd
OworICAgIGNvbnRleHQgICAgICAgICAgICAgICAgPSBbYWxsb2NFQUdMQ29udGV4dEluc3RhbmNl
KCkgaW5pdFdpdGhBUEk6a0VBR0xSZW5kZXJpbmdBUElPcGVuR0xFUzNdOwogICAgIGlmICghY29u
dGV4dCkKICAgICB7CiAgICAgICAgICppbmZvTG9nICs9ICJDb3VsZCBub3QgY3JlYXRlIHRoZSBF
QUdMIGNvbnRleHQuIjsKQEAgLTM3NCw0ICszNzMsNCBAQCB2b2lkIERpc3BsYXlFQUdMOjpwb3B1
bGF0ZUZlYXR1cmVMaXN0KGFuZ2xlOjpGZWF0dXJlTGlzdCAqZmVhdHVyZXMpCiB9CiB9CiAKLSNl
bmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZDM2
MTk1Yjk5NTg2YzlmZWE0ZWM4YzY2ZmE1ZDBiMTNlYWQ3MTlhCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFH
TEZ1bmN0aW9ucy5oCkBAIC0wLDAgKzEsMjggQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMCBBcHBs
ZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUg
aXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIEVBR0xGdW5jdGlvbnMuaDogRXhwb3Npbmcg
dGhlIHNvZnQtbGlua2VkIEVBR0wgaW50ZXJmYWNlLgorCisjaWZuZGVmIEVBR0xfRlVOQ1RJT05T
X0hfCisjZGVmaW5lIEVBR0xfRlVOQ1RJT05TX0hfCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZv
cm0uaCIKKworI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCisjaW1wb3J0IDxPcGVuR0xF
Uy9FQUdMLmg+CisjaW1wb3J0IDxPcGVuR0xFUy9FQUdMRHJhd2FibGUuaD4KKyNpbXBvcnQgPE9w
ZW5HTEVTL0VBR0xJT1N1cmZhY2UuaD4KKworI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L1NvZnRMaW5raW5nX2FwcGxlLmgiCisKK1NPRlRfTElOS19GUkFNRVdPUktfSEVBREVSKE9wZW5H
TEVTKQorCitTT0ZUX0xJTktfQ0xBU1NfSEVBREVSKEVBR0xDb250ZXh0KQorCisjZW5kaWYgLy8g
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisKKyNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9FQUdMRnVuY3Rpb25zLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hN2Rm
YTIxYmI3MjM0ZmJiMjgyNzBiZjhlNWUwZjczOGRjYTFjNmE0Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFH
TEZ1bmN0aW9ucy5tbQpAQCAtMCwwICsxLDI0IEBACisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBw
bGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2Rl
IGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBFQUdMRnVuY3Rpb25zLmNwcDogRXhwb3Np
bmcgdGhlIHNvZnQtbGlua2VkIEVBR0wgaW50ZXJmYWNlLgorCisjaW5jbHVkZSAiY29tbW9uL3Bs
YXRmb3JtLmgiCisKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKworI2ltcG9ydCA8T3Bl
bkdMRVMvRUFHTC5oPgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+CisjaW1wb3J0
IDxPcGVuR0xFUy9FQUdMSU9TdXJmYWNlLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShP
cGVuR0xFUykKKworU09GVF9MSU5LX0NMQVNTKE9wZW5HTEVTLCBFQUdMQ29udGV4dCkKKworI2Vu
ZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJm
YWNlRUFHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCmluZGV4IDliNjI2OWQyNDEwODIwMjg4
Y2FkMWY1NTliYjM1YmVkMjYwZmEzOTcuLjcyYTNlYTNiODIyNDM2MTBjODI3Nzk4ZTllN2QyNWY0
ZDJhOTJjMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLm1tCkBAIC05LDcgKzksNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0u
aCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYm
ICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAg
ICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wu
aCIKIApAQCAtNDI3LDQgKzQyNyw0IEBAIElPU3VyZmFjZUxvY2tPcHRpb25zIElPU3VyZmFjZVN1
cmZhY2VFQUdMOjpnZXRJT1N1cmZhY2VMb2NrT3B0aW9ucygpIGNvbnN0CiAKIH0gIC8vIG5hbWVz
cGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlm
ICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
ICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFH
TC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCmluZGV4IDM2ZjFjMTViOTc1ZGRjYjBhMDk3ZWM5
OTYxZmIyMzRkNGE3YzRmMTkuLmNiMTY2YTRhZWU3MzNmNTc0YTk4ZWU0ZWVmYzJlNWUxNjdhMGZk
MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdM
LmNwcApAQCAtOSw3ICs5LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNp
ZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuaCIKIApAQCAt
MTQ0LDQgKzE0NCw0IEBAIEZyYW1lYnVmZmVySW1wbCAqUGJ1ZmZlclN1cmZhY2VFQUdMOjpjcmVh
dGVEZWZhdWx0RnJhbWVidWZmZXIoY29uc3QgZ2w6OkNvbnRleHQKIAogfSAgLy8gbmFtZXNwYWNl
IHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisjZW5kaWYgIC8v
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRl
cmVyRUFHTC5jcHAKaW5kZXggYTQ3MzhiMjU2NmIzYTM5ZmFmZTc4YjZmYTc2MDBlMWFmNmE2MzY5
YS4uNGQzY2ZiYmU3YzM1MTA2NmZmN2QwODg5YzI3YTJjNDYwZmZkZDliNSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVu
ZGVyZXJFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1w
b3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChB
TkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5H
TEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0Rpc3BsYXlFQUdMLmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
UmVuZGVyZXJFQUdMLmgiCkBAIC0zMSw0ICszMSw0IEBAIFdvcmtlckNvbnRleHQgKlJlbmRlcmVy
RUFHTDo6Y3JlYXRlV29ya2VyQ29udGV4dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIAogfSAgLy8g
bmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisj
ZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFj
ZUVBR0wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgKaW5kZXggY2Q0NzdjYzNjYWUyNzk5NjM0OGY1MWE5
MjExZDkyZTRiY2Y1YjcyNi4uNjkzZTljZDYwNmM5ZDBmZmM2YjE2YWUxMGE3ZDcyNmM3MWQ3OTJl
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oCkBA
IC0yMiw3ICsyMiw3IEBAIHN0cnVjdCBfX0lPU3VyZmFjZTsKIHR5cGVkZWYgX19JT1N1cmZhY2Ug
KklPU3VyZmFjZVJlZjsKIAogLy8gV2ViS2l0J3MgYnVpbGQgcHJvY2VzcyByZXF1aXJlcyB0aGF0
IGV2ZXJ5IE9iamVjdGl2ZS1DIGNsYXNzIG5hbWUgaGFzIHRoZSBwcmVmaXggIldlYiIuCi1AY2xh
c3MgV2ViU3dhcExheWVyOworQGNsYXNzIFdlYlN3YXBMYXllckVBR0w7CiAKIG5hbWVzcGFjZSBy
eAogewpAQCAtOTEsNyArOTEsNyBAQCBjbGFzcyBXaW5kb3dTdXJmYWNlRUFHTCA6IHB1YmxpYyBT
dXJmYWNlR0wKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6RnJhbWVidWZmZXJTdGF0ZSAmc3RhdGUpIG92ZXJyaWRlOwogCiAgIHByaXZhdGU6
Ci0gICAgV2ViU3dhcExheWVyICptU3dhcExheWVyOworICAgIFdlYlN3YXBMYXllckVBR0wgKm1T
d2FwTGF5ZXI7CiAgICAgU2hhcmVkU3dhcFN0YXRlIG1Td2FwU3RhdGU7CiAgICAgdWludDY0X3Qg
bUN1cnJlbnRTd2FwSWQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3Vy
ZmFjZUVBR0wubW0KaW5kZXggMzhkMjUzZWJkZWIzYjNjYzE2MzIzNzQzNDk1NDdiMDU1MzlmZWQz
Yy4uN2EzNGI4ZmMzNTM3MGQ0MzRlM2VlZTYxNzIyNTU4ODRiZTRkNGMzMiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2lu
ZG93U3VyZmFjZUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0KQEAgLTgsNyArOCw3IEBA
CiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVm
aW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCkBAIC0xOCwxMyArMTgsMTkgQEAKICMgICAg
aW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9SZW5kZXJlckdMLmgiCiAjICAgIGltcG9ydCAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuaCIKICMgICAgaW1wb3J0ICJsaWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgiCisjICAgIGltcG9ydCAibGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgiCiAKLSMgICAgaW1wb3J0IDxPcGVu
R0xFUy9FQUdMLmg+CiAjICAgIGltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpDb3JlLmg+CiAKLS8v
IFRPRE8oYW5nbGVidWcuY29tLzQyNzUpOiBJdCdzIG5vdCBjbGVhciB3aHkgdGhpcyBuZWVkcyB0
byBiZSBhbiBFQUdMTGF5ZXIuCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCiAKLUBpbnRlcmZhY2UgV2ViU3dhcExheWVy
IDogQ0FFQUdMTGF5ZXIgeworLy8gRklYTUU6IE5lY2Vzc2FyeSBiZWNhdXNlIENBRUFHTExheWVy
IGlzIG5vdCBpbiB0aGUgcHVibGljIFF1YXJ0ekNvcmUgaGVhZGVycyBpbiB0aGlzIGNvbmZpZ3Vy
YXRpb24uCitAaW50ZXJmYWNlIENBRUFHTExheWVyIDogQ0FMYXllcgorQGVuZAorCisjZW5kaWYK
KworQGludGVyZmFjZSBXZWJTd2FwTGF5ZXJFQUdMIDogQ0FFQUdMTGF5ZXIgewogICAgIEVBR0xD
b250ZXh0T2JqIG1EaXNwbGF5Q29udGV4dDsKIAogICAgIGJvb2wgaW5pdGlhbGl6ZWQ7CkBAIC0z
OCw3ICs0NCw3IEBACiAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOihjb25zdCByeDo6RnVuY3Rp
b25zR0wgKilmdW5jdGlvbnM7CiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXIK
K0BpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXJFQUdMCiAtIChpZClpbml0V2l0aFNoYXJlZFN0
YXRlOihyeDo6U2hhcmVkU3dhcFN0YXRlICopc3dhcFN0YXRlCiAgICAgICAgICAgICAgIHdpdGhD
b250ZXh0OihFQUdMQ29udGV4dE9iailkaXNwbGF5Q29udGV4dAogICAgICAgICAgICAgd2l0aEZ1
bmN0aW9uczooY29uc3Qgcng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zCkBAIC02OSw3ICs3NSw3
IEBACiAgICAgfQogICAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtU3dhcFN0YXRlLT5tdXRleCk7
CiAKLSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bURpc3BsYXlDb250ZXh0XTsK
KyAgICBbZ2V0RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om1EaXNwbGF5Q29u
dGV4dF07CiAKICAgICBpZiAoIWluaXRpYWxpemVkKQogICAgIHsKQEAgLTEwNSw3ICsxMTEsNyBA
QAogCiAgICAgbUZ1bmN0aW9ucy0+YmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJCVUZGRVIsIHRl
eHR1cmUudGV4dHVyZSk7CiAgICAgW21EaXNwbGF5Q29udGV4dCBwcmVzZW50UmVuZGVyYnVmZmVy
OkdMX1JFTkRFUkJVRkZFUl07Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om5p
bF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpuaWxdOwog
fQogQGVuZAogCkBAIC0xNzQsOSArMTgwLDkgQEAgZWdsOjpFcnJvciBXaW5kb3dTdXJmYWNlRUFH
TDo6aW5pdGlhbGl6ZShjb25zdCBlZ2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgbVN3YXBTdGF0
ZS5sYXN0UmVuZGVyZWQgICA9ICZtU3dhcFN0YXRlLnRleHR1cmVzWzFdOwogICAgIG1Td2FwU3Rh
dGUuYmVpbmdQcmVzZW50ZWQgPSAmbVN3YXBTdGF0ZS50ZXh0dXJlc1syXTsKIAotICAgIG1Td2Fw
TGF5ZXIgPSBbW1dlYlN3YXBMYXllciBhbGxvY10gaW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBT
dGF0ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRo
Q29udGV4dDptQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25zXTsKKyAgICBtU3dhcExheWVyID0gW1tXZWJT
d2FwTGF5ZXJFQUdMIGFsbG9jXSBpbml0V2l0aFNoYXJlZFN0YXRlOiZtU3dhcFN0YXRlCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoQ29udGV4
dDptQ29udGV4dAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CiAgICAgW21MYXllciBhZGRTdWJsYXllcjpt
U3dhcExheWVyXTsKICAgICBbbVN3YXBMYXllciBzZXRDb250ZW50c1NjYWxlOlttTGF5ZXIgY29u
dGVudHNTY2FsZV1dOwogCkBAIC0zMDYsNCArMzEyLDQgQEAgRnJhbWVidWZmZXJJbXBsICpXaW5k
b3dTdXJmYWNlRUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0
ICoKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRl
cmVyZ2xfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwCmluZGV4IDVjY2IzM2E0MDVhYzQxM2U3ZDQ4
ZWViODQyNzJlZWY4NDA4ZjViODYuLmRmMDZiZDY1NDMyM2E1NWI3YjFkZGMxNmY3N2FkMDY0ZDQw
ZmIxNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKQEAgLTEz
NDQsMTIgKzEzNDQsMTkgQEAgdm9pZCBHZW5lcmF0ZUNhcHMoY29uc3QgRnVuY3Rpb25zR0wgKmZ1
bmN0aW9ucywKICAgICAgICAgZnVuY3Rpb25zLT5oYXNHTEVTRXh0ZW5zaW9uKCJHTF9FWFRfY29t
cHJlc3NlZF9FVEMxX1JHQjhfc3ViX3RleHR1cmUiKTsKIAogI2lmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0gICAg
VmVuZG9ySUQgdmVuZG9yID0gR2V0VmVuZG9ySUQoZnVuY3Rpb25zKTsKLSAgICBpZiAoKElzQU1E
KHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9ydGVkRVNWZXJzaW9uID49
IGdsOjpWZXJzaW9uKDMsIDApKQorICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGluZm87CisgICAgaWYg
KGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKCZpbmZvKSkKICAgICB7Ci0gICAgICAgIC8vIEFwcGxlIElu
dGVsL0FNRCBkcml2ZXJzIGRvIG5vdCBjb3JyZWN0bHkgdXNlIHRoZSBURVhUVVJFX1NSR0JfREVD
T0RFIHByb3BlcnR5IG9mIHNhbXBsZXIKLSAgICAgICAgLy8gc3RhdGVzLiAgRGlzYWJsZSB0aGlz
IGV4dGVuc2lvbiB3aGVuIHdlIHdvdWxkIGFkdmVydGlzZSBhbnkgRVMgdmVyc2lvbiB0aGF0IGhh
cyBzYW1wbGVycy4KLSAgICAgICAgZXh0ZW5zaW9ucy0+dGV4dHVyZVNSR0JEZWNvZGUgPSBmYWxz
ZTsKKyAgICAgICAgaWYgKCFpbmZvLmlzaU9TQXBwT25NYWMpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7CisgICAgICAgICAg
ICBpZiAoKElzQU1EKHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9ydGVk
RVNWZXJzaW9uID49IGdsOjpWZXJzaW9uKDMsIDApKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIC8vIEFwcGxlIEludGVsL0FNRCBkcml2ZXJzIGRvIG5vdCBjb3JyZWN0bHkgdXNlIHRo
ZSBURVhUVVJFX1NSR0JfREVDT0RFIHByb3BlcnR5IG9mIHNhbXBsZXIKKyAgICAgICAgICAgICAg
ICAvLyBzdGF0ZXMuICBEaXNhYmxlIHRoaXMgZXh0ZW5zaW9uIHdoZW4gd2Ugd291bGQgYWR2ZXJ0
aXNlIGFueSBFUyB2ZXJzaW9uIHRoYXQgaGFzIHNhbXBsZXJzLgorICAgICAgICAgICAgICAgIGV4
dGVuc2lvbnMtPnRleHR1cmVTUkdCRGVjb2RlID0gZmFsc2U7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KICAgICB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25z
L1dlYkNvcmUueGNjb25maWcKaW5kZXggYjgxMDllNjM0NjZkYWE2YTQ3YzE0NWE3MTFjMTg5YTI5
MDMwYjE5NS4uNTcxZThlYjA3MDYwYzE5N2NjM2U5NTQxMWJiYTQzNzU3ZTg1MWI1OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCkBAIC0xMDUs
MTYgKzEwNSw2IEBAIFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1NfY29jb2F0b3VjaCA9
IC1mcmFtZXdvcmsgTW9iaWxlQ29yZVNlcnZpY2VzOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFH
UyA9ICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU18kKFdLX0NPQ09BX1RPVUNIKSk7CiBXS19N
T0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiAKLVdL
X09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUp
KTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUzsKLVdL
X09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvciA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7Ci1X
S19PUEVOR0xfTERGTEFHU193YXRjaG9zID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7
Ci1XS19PUEVOR0xfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1Nf
aXBob25lc2ltdWxhdG9yKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxldHZvcyA9ICQoV0tfT1BF
TkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRv
ciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLVdLX09QRU5HTF9MREZM
QUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBPcGVuR0w7Ci1XS19PUEVOR0xfTERGTEFHU19t
YWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERG
TEFHUyA9ICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHU18kKFdLX1BMQVRGT1JNX05B
TUUpKTsKIFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29y
ayBTeXN0ZW1Db25maWd1cmF0aW9uOwogCkBAIC0xMjQsNyArMTE0LDcgQEAgV0tfVVJMX0ZPUk1B
VFRJTkdfTERGTEFHUyA9ICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHU18kKFdLX0hBVkVfVVJM
X0ZPUk1BVFRJTkcKIFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfWUVTID0gLWZyYW1ld29yayBV
UkxGb3JtYXR0aW5nOwogCiAvLyBGSVhNRTogUmVkdWNlIHRoZSBudW1iZXIgb2YgYWxsb3dhYmxl
X2NsaWVudHMgPHJkYXI6Ly9wcm9ibGVtLzMxODIzOTY5PgotT1RIRVJfTERGTEFHUyA9ICQoaW5o
ZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1FV09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxv
YmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2Fi
bGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2VfbG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
bGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1l
d29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRp
b24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0
YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xE
RkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9OQU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykg
JChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tfQVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NB
UkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERGTEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19D
T1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19JT1NVUkZB
Q0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJ
TEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQo
V0tfT1BFTkdMX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHUykgJChX
S19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7CitPVEhF
Ul9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJBTUVXT1JLX0xERkxB
R1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlVGVz
dFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3JjZV9sb2FkICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3Jr
IENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENvcmVUZXh0IC1m
cmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIEltYWdl
SU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19DT0NPQV9U
T1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JNX05BTUUpKSAkKFdL
X0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChXS19BVURJT19VTklU
X0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9MREZMQUdTKSAkKFdL
X0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJWSUNFU19MREZM
QUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19M
REZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dF
U1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTKSAkKFdLX0NP
UkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKTsKIAogT1RIRVJf
TERGTEFHU19QTEFURk9STV9jb2NvYXRvdWNoID0gLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1h
bGxvd2FibGVfY2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxs
b3dhYmxlX2NsaWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxl
X2NsaWVudCBEdW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVy
IC1hbGxvd2FibGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JN
X21hY29zeCA9IC1zdWJfbGlicmFyeSBsaWJvYmpjIC11bWJyZWxsYSBXZWJLaXQ7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNjA1
ZjYwNzNlZTkzNzVjMWZkMDAzMjNjN2U2YWZhZWU3NWQzOTc1My4uODcyOTBlZmZiYzNlMjgwYzNi
ZWI5MTY5MDc1NzJiYTEwYWM2ZmRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTE5LDYgKzExOSw4IEBACiAJCTJFMTM0MkND
MjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlL
aXRTb2Z0TGluay5oICovOyB9OwogCQkyRTEzNDJDRDIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1tICovOyB9OwogCQkz
MTMwOEIxNDIwQTIxNzA1MDAzRkI5MjkgLyogU3lzdGVtUHJldmlld1NQSS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzMDhCMTMyMEEyMTcwNTAwM0ZC
OTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLzsgfTsKKwkJMzE2NDdGQjAyNTE3NTlERDAwMTBG
OEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29m
dExpbmtDb2NvYS5tbSAqLzsgfTsKKwkJMzE2NDdGQjEyNTE3NTlFRjAwMTBGOEZCIC8qIE9wZW5H
TFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxNjQ3RkFGMjUxNzU5REMwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmgg
Ki87IH07CiAJCTQxNkU5OTUzMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGlu
ay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZF
OTk1MTIzREFFNkJEMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwICovOyB9Owog
CQk0MTZFOTk1NDIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkU5OTUyMjNEQUU2
QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovOyB9OwogCQk0MUUxRjM0NDI0
OEE2QTAwMDAyMkQ1REUgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCAqLzsgfTsKQEAgLTMwNSw2ICszMDcsOCBAQAog
CQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBVSUtpdFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVUlLaXRTb2Z0TGluay5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMDhCMTMyMEEyMTcwNTAwM0ZCOTI5
IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtUHJldmlld1NQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE9wZW5HTFNv
ZnRMaW5rQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkFGMjUx
NzU5REMwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9w
ZW5HTFNvZnRMaW5rQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzcxMTlB
NzgyMENDQjVGRjAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNj
b25maWc7IHBhdGggPSBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxNkU5OTUxMjNEQUU2QkQwMEU4NzFDQiAvKiBBdWRpb1Rv
b2xib3hTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBB
dWRpb1Rvb2xib3hTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQx
NkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1Rvb2xib3hTb2Z0TGluay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjU0LDYgKzY1OCw4IEBACiAJCQkJMUMwMjJFRkMyMkNG
RThFMDAwNkRGMDFCIC8qIEd1bnppcC5jcHAgKi8sCiAJCQkJQ0RBQ0IzNUUyMzg3M0U0ODAwMThE
N0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQlDREFDQjM1RjIzODczRTQ4
MDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExpbmsuaCAqLywKKwkJCQkzMTY0N0ZBRjI1MTc1
OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovLAorCQkJCTMxNjQ3RkFFMjUx
NzU5REIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovLAogCQkJCUExRjYzQzlE
MjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsuaCAqLywKIAkJCQlBMUY2M0M5RTIx
QTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tICovLAogCQkJCTA3NjExREI0MjQz
RkE1QkUwMEQ4MDcwNCAvKiBVc2FnZVRyYWNraW5nU29mdExpbmsuaCAqLywKQEAgLTg1OSw2ICs4
NjUsNyBAQAogCQkJCTBDNzc4NTlEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1dpbmRvd1NQSS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTcwQUI4RjkyMEFGNkUzRDAwQjhCRTg3IC8qIE5TWFBDQ29ubmVj
dGlvblNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEM1QUY5MUYxRjQzQTRDNzAwMkVBQzAyIC8q
IE9wZW5HTEVTU1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTY0N0ZCMTI1MTc1OUVGMDAxMEY4
RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE2OUIwNDEy
NDhFRjA1MjAwRUU4QjdCIC8qIFBhc3NLaXRJbnN0YWxsbWVudHNTUEkuaCBpbiBIZWFkZXJzICov
LAogCQkJCUExRjYzQzlGMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBDMkRBMTU1MUYzQkVCNDkwMERCQzMxNyAvKiBQYXNzS2l0U1BJLmgg
aW4gSGVhZGVycyAqLywKQEAgLTk5NSw2ICsxMDAyLDcgQEAKIAkJCQk1QzdDNzg3NDIzQUMzRTc3
MDA2NUY0N0UgLyogTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24u
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlh
VG9vbGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkIwMjUxNzU5REQw
MDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTFG
NjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExMTc1QjRGMUY2QjMzNzMwMEM0QjlGMCAvKiBQb3B1cE1lbnUubW0gaW4gU291cmNl
cyAqLywKIAkJCQk0NDUwRkM5RjIxRjVGNjAyMDA0REZBNTYgLyogUXVpY2tMb29rU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxh
dGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtl
CmluZGV4IDY1OTFkNzk5ZWE1Y2E5NDM4YTM5YjlkMzg4ODY0NjZmMDM1NjUyNTMuLmNkZjAxYjM2
NmRkOTg5NmU1N2I5OWVmMzcyNGQzMmVjMzQ2MTIzNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtNiw2ICs2LDcgQEAgbGlzdChBUFBFTkQgUEFMX1BVQkxJ
Q19IRUFERVJTCiAgICAgY29jb2EvQXBwU1NPU29mdExpbmsuaAogICAgIGNvY29hL0FWRm91bmRh
dGlvblNvZnRMaW5rLmgKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5oCisgICAgY29j
b2EvT3BlbkdMU29mdExpbmtDb2NvYS5oCiAgICAgY29jb2EvUGFzc0tpdFNvZnRMaW5rLmgKIAog
ICAgIG1hYy9Mb29rdXBTb2Z0TGluay5oCkBAIC0xMjMsNiArMTI0LDcgQEAgbGlzdChBUFBFTkQg
UEFMX1NPVVJDRVMKICAgICBjb2NvYS9GaWxlU2l6ZUZvcm1hdHRlckNvY29hLm1tCiAgICAgY29j
b2EvR3VuemlwLmNwcAogICAgIGNvY29hL01lZGlhVG9vbGJveFNvZnRMaW5rLmNwcAorICAgIGNv
Y29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KICAgICBjb2NvYS9QYXNzS2l0U29mdExpbmsubW0K
IAogICAgIGNyeXB0by9jb21tb25jcnlwdG8vQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0Nv
Y29hLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zZGU5ZDM3NmQ3YjViY2NhMzkwM2NmYTE2NjExZGQ0NzcwY2E1NWM1Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmgKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL1NvZnRMaW5r
aW5nLmg+CisKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorCisj
aW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFE
RVIoUEFMLCBPcGVuR0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3Bl
bkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1h
dEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgp
LCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBB
TCwgT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2Jq
IHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hh
cmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dM
RGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdM
aW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVl
KSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9S
X0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xS
ZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkg
cHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQs
IENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJv
ciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTEdldFBhcmFtZXRlciwgQ0dMRXJyb3IsIChDR0xD
b250ZXh0T2JqIGN0eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBwbmFtZSwgR0xpbnQgKnBhcmFtcyks
IChjdHgsIHBuYW1lLCBwYXJhbXMpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFM
LCBPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5
X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlf
bWFzaywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBP
cGVuR0wsIENHTFJlbGVhc2VQaXhlbEZvcm1hdCwgdm9pZCwgKENHTFBpeGVsRm9ybWF0T2JqIHBp
eCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENH
TFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNj
cmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUws
IE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCks
IChjdHgpKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29j
b2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMDZlZTJmMDVmOTFmMmQ1OWNmMGJk
YjZlN2FhZTJlZmUyYzVmZDNjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCkBAIC0wLDAgKzEsNDggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorCisjaW5j
bHVkZSA8T3BlbkdML09wZW5HTC5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitT
T0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0VfV0lUSF9FWFBPUlQoUEFMLCBPcGVuR0wsIFBB
TF9FWFBPUlQpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBB
TCwgT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhl
bEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQg
Km5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSwgUEFMX0VYUE9SVCkKK1NPRlRfTElOS19GVU5D
VElPTl9GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwgT3BlbkdMLCBDR0xSZWxlYXNlUGl4ZWxG
b3JtYXQsIHZvaWQsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSwgUEFMX0VYUE9SVCkK
KworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTENyZWF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNo
YXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKK1NPRlRfTElOS19G
VU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBD
R0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxG
b3JtYXRBdHRyaWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRy
aWIsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBD
R0xEZXNjcmliZVJlbmRlcmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBH
TGludCByZW5kX251bSwgQ0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAo
cmVuZCwgcmVuZF9udW0sIHByb3AsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09V
UkNFKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVu
R0wsIENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2Jq
IHJlbmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5H
TCwgQ0dMR2V0UGFyYW1ldGVyLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBDR0xDb250
ZXh0UGFyYW1ldGVyIHBuYW1lLCBHTGludCAqcGFyYW1zKSwgKGN0eCwgcG5hbWUsIHBhcmFtcykp
CitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMUXVlcnlSZW5k
ZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dMUmVuZGVyZXJJbmZv
T2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5kLCBucmVuZCkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMU2V0VmlydHVhbFNj
cmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQgc2NyZWVuKSwgKGN0eCwg
c2NyZWVuKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xV
cGRhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKKyNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDBlMjYzOTZjZDg2MDFmMGEzZDhhZmE3NTVkN2UwM2ZiZTUyZDk2NDQuLjRjMDE0
ZjZhZjhjMTIxNjQ2N2ZkMmU2ZjZiNGYxMzc2ZjI0MzAyMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTkwOCw2ICs5MDgsNyBA
QAogCQkzMTQ4NzdFNjFGQUFCMDI1MDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNDg3N0U0MUZBQUIw
MjIwMEMwNTc1OSAvKiBKU09mZnNjcmVlbkNhbnZhcy5oICovOyB9OwogCQkzMTRCRTNBMTFCMzBG
NkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTRCRTNBMDFCMzBGNkI3MDAxNDE5ODIgLyogQ1NT
TmFtZWRJbWFnZVZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJMzE0QkUzQTcxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0
ZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICov
OyB9OworCQkzMTY0N0ZBQjI1MTYxOEUyMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTgy
NTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkzMTZEQ0IyMDFFNzhDQTU1MDAxQjVG
ODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjFBMUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09m
ZmVyQW5zd2VyT3B0aW9ucy5oICovOyB9OwogCQkzMTZEQ0IyMjFFNzhDQTU1MDAxQjVGODcgLyog
SlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCMUMxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRw
VHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLzsgfTsKIAkJMzE2RENCNEMxRTc5MTBBNjAwMUI1Rjg3
IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0I0NjFFNzkxMEE2MDAxQjVGODcgLyogSlNSVENJY2VD
b25uZWN0aW9uU3RhdGUuaCAqLzsgfTsKQEAgLTcxOTYsNiArNzE5Nyw4IEBACiAJCTMxNEJFM0E0
MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgy
IC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzE1NTc0Q0MyMThGNjZEMDAwRDg4RjY2IC8qIFBvaW50ZXJFdmVudElPUy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb2ludGVyRXZlbnRJT1MuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBPcGVuR0xTb2Z0TGlua0Nv
Y29hLmg7IHBhdGggPSAuLi8uLi8uLi9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTkyNTE2MTZCRDAwMTBGOEZC
IC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBPcGVuR0xT
b2Z0TGlua0NvY29hLm1tOyBwYXRoID0gLi4vLi4vLi4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZEQ0IxMjFFNzhC
RTQzMDAxQjVGODcgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBSVENPZmZlckFuc3dlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkzMTZEQ0IxNzFFNzhDMzMwMDAxQjVGODcgLyogUlRDUnRwVHJhbnNjZWl2ZXJEaXJl
Y3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTkxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2Zm
ZXJBbnN3ZXJPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTI2MzM1LDYgKzI2MzM4LDggQEAKIAkJCQlBRDlGRjZFMDE5MDgzOTFEMDAzQjYxRTAgLyog
SU9TdXJmYWNlUG9vbENvY29hLm1tICovLAogCQkJCUNEQzQ4QUM4MjE0OUNGMkEwMDI0RkQ1OSAv
KiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29jb2EuY3BwICovLAogCQkJCUNEQzQ4
QUM3MjE0OUNGMkEwMDI0RkQ1OSAvKiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29j
b2EuaCAqLywKKwkJCQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtD
b2NvYS5oICovLAorCQkJCTMxNjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlu
a0NvY29hLm1tICovLAogCQkJCUNERUIzRDcyMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VCdWZm
ZXJQYXJzZXIuY3BwICovLAogCQkJCUNERUIzRDczMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VC
dWZmZXJQYXJzZXIuaCAqLywKIAkJCQlDRDhGNjY3MDI0QzBGMjA4MDAwQzQyMUMgLyogU291cmNl
QnVmZmVyUGFyc2VyV2ViTS5jcHAgKi8sCkBAIC0zMjc4Myw3ICszMjc4OCw5IEBACiAJCQkJNkY2
MzgzRjYyNDI3QUY0QTAwREFCQTUzIC8qIExheW91dEluaXRpYWxDb250YWluaW5nQmxvY2suaCBp
biBIZWFkZXJzICovLAogCQkJCTZGMEI5OEI1MjNGMjY4RUMwMEVFQzJGMiAvKiBMYXlvdXRJbmxp
bmVUZXh0Qm94LmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDE4MDI1NTIzRDQ1NDlCMDBGRkIwNzEg
LyogTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDAzQjdB
MjI1MUIxMTkzMDAxOUU4MDAgLyogTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRTRBQkFCREQyMzYwODhGRTAwRkE0MzQ1IC8qIExheW91dEludGVncmF0aW9u
TGluZUxheW91dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQwM0I3QTMyNTFCMTFDMTAwMTlFODAw
IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTEz
MTBDRjQyMEJBNEEzRDAwNjVBOEQwIC8qIExheW91dEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywK
IAkJCQk2RkZBNEMwMTIzRjJGRUQ5MDA3RTRFQkMgLyogTGF5b3V0TGluZUJyZWFrQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk5MzFENzJGNjE1RkU2OTUzMDBDNEMwN0UgLyogTGF5b3V0TWlsZXN0
b25lLmggaW4gSGVhZGVycyAqLywKQEAgLTMyODI4LDcgKzMyODM1LDYgQEAKIAkJCQlCMjIyNzk2
NTBEMDBCRjIyMDA3MUI3ODIgLyogTGluZWFyR3JhZGllbnRBdHRyaWJ1dGVzLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBQjMxQzkxRTEwQUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCBp
biBIZWFkZXJzICovLAogCQkJCUZGRUZBQjJBMTgzODBEQTAwMDUxNDUzNCAvKiBMaW5lTGF5b3V0
U3RhdGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUU0MDNCN0EyMjUxQjExOTMwMDE5RTgwMCAvKiBM
YXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDg0QTMzRTIz
MDU1MzI1MDA5QURFNkEgLyogTGluZUxheW91dFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRTQzNDNEMjUyMzkyNzc5MDAwRUJCQjY2IC8qIExpbmVMYXlvdXRUcmF2ZXJzYWxDb21wbGV4
UGF0aC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ1MUM2MjgyMzkyOTNFQzAwOTkzMTkwIC8qIExp
bmVMYXlvdXRUcmF2ZXJzYWxEaXNwbGF5UnVuUGF0aC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMzEz
Miw2ICszMzEzOCw3IEBACiAJCQkJRkRBM0U5NUMxMzRBNDlFRjAwOEQ0QjVBIC8qIE9mZmxpbmVB
dWRpb0Rlc3RpbmF0aW9uTm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE0ODc3RTMxRkFBOEZF
OTAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE0MEM1
MjAxRkRGMTUxQTAwRDJBODczIC8qIE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNv
ZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyRDNEQTY1MEQwMDZDRDYwMEVGNkYz
QSAvKiBPcGVuVHlwZUNHLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkQzREE2NTBEMDA2Q0Q2MDBF
RjZGMjcgLyogT3BlblR5cGVNYXRoRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJEM0VBNjUw
RDAwNkNENjAwRUY2RjI4IC8qIE9wZW5UeXBlVHlwZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMzM2
OTcsNyArMzM3MDQsNiBAQAogCQkJCTIyOEMyODQ1MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRX
cmFwcGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTE0MDBEN0E4MTcxMzZFQTcwMDc3Q0UwNSAv
KiBTY3JpcHRXcmFwcGFibGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzhBRTM0RjEy
RUEwOTZBMDBFQjNBRTYgLyogU2Nyb2xsYWJsZUFyZWEuaCBpbiBIZWFkZXJzICovLAotCQkJCUU0
MDNCN0EzMjUxQjExQzEwMDE5RTgwMCAvKiBMYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uaCBp
biBIZWFkZXJzICovLAogCQkJCTVEOTI1QjY4MEY2NEQ0REQwMEI4NDdGMCAvKiBTY3JvbGxBbGln
bm1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBT
Y3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYxNzc0ODAxMzc4Qjc3MjAwOURB
NzZBIC8qIFNjcm9sbEFuaW1hdG9ySU9TLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmNwcAppbmRl
eCAxNmNjMTBjNzdlMmY2NmRlMGFhNzk4MDM5Yjc4MzY0ZWE5NmRmODc5Li44ZDBlYWI5Y2NlMDNl
YTZmYjQ5MWQ4NzkzN2NlODU0NDgzMzAxYzMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuY3BwCkBAIC0xODQsNiArMTg0
LDIzIEBAIHVpbnQ4X3QgR3JhcGhpY3NDb250ZXh0R0w6OmdldENoYW5uZWxCaXRzQnlGb3JtYXQo
R0NHTGVudW0gZm9ybWF0KQogICAgIH0KIH0KIAorI2lmICFQTEFURk9STShDT0NPQSkgJiYgVVNF
KEFOR0xFKQorR0NHTGVudW0gR3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJn
ZXQoKQoreworICAgIHJldHVybiBURVhUVVJFXzJEOworfQorCitHQ0dMZW51bSBHcmFwaGljc0Nv
bnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldFF1ZXJ5KCkKK3sKKyAgICByZXR1cm4gVEVY
VFVSRV9CSU5ESU5HXzJEOworfQorCitHQ0dMaW50IEdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1
cmZhY2VUZXh0dXJlVGFyZ2V0KCkKK3sKKyAgICByZXR1cm4gMHgzMDVGOyAvLyBFR0xfVEVYVFVS
RV8yRAorfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0dyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
cmFwaGljc0NvbnRleHRHTC5oCmluZGV4IGM0ZWQ3ZjEyZThiZDBmZDRmOWUzMDA3NDY0MTNjYTEw
NzVhZjU2MDAuLmZhMjQxYmJlOGMzZjE3MjMwNWIxZjQ4MGJhMmYzOThjY2Q3MjEzMmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdM
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0
R0wuaApAQCAtNzc4LDIwICs3NzgsMTIgQEAgcHVibGljOgogICAgIH07CiAKICNpZiBVU0UoQU5H
TEUpCi0gICAgZW51bSB7Ci0gICAgICAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgcmVkZWZpbmVk
IGhlcmUgZnJvbSBBTkdMRSdzIE9wZW5HTCBFUyBoZWFkZXJzIHRvCi0gICAgICAgIC8vIHByb3Zp
ZGUgYSBzaW5nbGUgcGxhY2Ugd2hlcmUgbXVsdGlwbGUgcG9ydGlvbnMgb2YgcGxhdGZvcm0gY29k
ZSBjYW4KLSAgICAgICAgLy8gcmVmZXJlbmNlIHRoZW0uCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShNQUNDQVRBTFlTVCkKLSAgICAgICAgSU9TdXJmYWNlVGV4dHVyZVRhcmdldCA9IFRF
WFRVUkVfUkVDVEFOR0xFX0FSQiwgLy8gYWxzbyBHTF9URVhUVVJFX1JFQ1RBTkdMRV9BTkdMRQot
ICAgICAgICBJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0UXVlcnkgPSBURVhUVVJFX0JJTkRJTkdfUkVD
VEFOR0xFX0FSQiwKLSAgICAgICAgRUdMSU9TdXJmYWNlVGV4dHVyZVRhcmdldCA9IDB4MzQ1Qiwg
Ly8gRUdMX1RFWFRVUkVfUkVDVEFOR0xFX0FOR0xFCi0jZWxzZQotICAgICAgICBJT1N1cmZhY2VU
ZXh0dXJlVGFyZ2V0ID0gVEVYVFVSRV8yRCwKLSAgICAgICAgSU9TdXJmYWNlVGV4dHVyZVRhcmdl
dFF1ZXJ5ID0gVEVYVFVSRV9CSU5ESU5HXzJELAotICAgICAgICBFR0xJT1N1cmZhY2VUZXh0dXJl
VGFyZ2V0ID0gMHgzMDVGLCAvLyBFR0xfVEVYVFVSRV8yRAotI2VuZGlmIC8vIFBMQVRGT1JNKE1B
QykKLSAgICB9OworICAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgcmVkZWZpbmVkIGhlcmUgZnJv
bSBBTkdMRSdzIE9wZW5HTCBFUyBoZWFkZXJzIHRvCisgICAgLy8gcHJvdmlkZSBhIHNpbmdsZSBw
bGFjZSB3aGVyZSBtdWx0aXBsZSBwb3J0aW9ucyBvZiBwbGF0Zm9ybSBjb2RlIGNhbgorICAgIC8v
IHJlZmVyZW5jZSB0aGVtLgorICAgIHN0YXRpYyBHQ0dMZW51bSBJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KCk7CisgICAgc3RhdGljIEdDR0xlbnVtIElPU3VyZmFjZVRleHR1cmVUYXJnZXRRdWVyeSgp
OworICAgIHN0YXRpYyBHQ0dMaW50IEVHTElPU3VyZmFjZVRleHR1cmVUYXJnZXQoKTsKICNlbmRp
ZiAvLyBVU0UoQU5HTEUpCiAKICAgICB2aXJ0dWFsIFBsYXRmb3JtR3JhcGhpY3NDb250ZXh0R0wg
cGxhdGZvcm1HcmFwaGljc0NvbnRleHRHTCgpIGNvbnN0ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2FuZ2xlL0dyYXBoaWNzQ29udGV4dEdMQU5HTEUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUvR3JhcGhpY3NDb250
ZXh0R0xBTkdMRS5jcHAKaW5kZXggZGIwYjI4ZjhlZDA3Yzg1OWU3M2QwOTUyMWM0ZjlmYTVhYTE4
ZWI0Zi4uNzJlZWViMzIwN2QxY2EzNjQ5MThhMmY5NDk5NWQzNTIyM2EzMzI1OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUvR3JhcGhpY3NDb250ZXh0
R0xBTkdMRS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUv
R3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAKQEAgLTIzMSwxMCArMjMxLDEwIEBAIGJvb2wgR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlc2hhcGVGQk9zKGNvbnN0IEludFNpemUmIHNpemUpCiAg
ICAgICAgIGdsOjpCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJELCB0ZXh0dXJlMkRCaW5kaW5nKTsK
ICAgICAgICAgLy8gQXR0YWNoIG1fdGV4dHVyZSB0byBtX3ByZXNlcnZlRHJhd2luZ0J1ZmZlckZC
TyBmb3IgbGF0ZXIgYmxpdHRpbmcuCiAgICAgICAgIGdsOjpCaW5kRnJhbWVidWZmZXIoR0xfRlJB
TUVCVUZGRVIsIG1fcHJlc2VydmVEcmF3aW5nQnVmZmVyRkJPKTsKLSAgICAgICAgZ2w6OkZyYW1l
YnVmZmVyVGV4dHVyZTJEKEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR3Jh
cGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQsIG1fdGV4dHVyZSwgMCk7Cisg
ICAgICAgIGdsOjpGcmFtZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1Jf
QVRUQUNITUVOVDAsIEdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCks
IG1fdGV4dHVyZSwgMCk7CiAgICAgICAgIGdsOjpCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZG
RVIsIG1fZmJvKTsKICAgICB9IGVsc2UKLSAgICAgICAgZ2w6OkZyYW1lYnVmZmVyVGV4dHVyZTJE
KEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR3JhcGhpY3NDb250ZXh0R0w6
OklPU3VyZmFjZVRleHR1cmVUYXJnZXQsIG1fdGV4dHVyZSwgMCk7CisgICAgICAgIGdsOjpGcmFt
ZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdy
YXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCksIG1fdGV4dHVyZSwgMCk7
CiAjZWxpZiBQTEFURk9STShHVEspCiAgICAgZ2w6OkJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfUkVD
VEFOR0xFX0FOR0xFLCBtX3RleHR1cmUpOwogICAgIGdsOjpUZXhJbWFnZTJEKEdMX1RFWFRVUkVf
UkVDVEFOR0xFX0FOR0xFLCAwLCBtX2ludGVybmFsQ29sb3JGb3JtYXQsIHdpZHRoLCBoZWlnaHQs
IDAsIGNvbG9yRm9ybWF0LCBHTF9VTlNJR05FRF9CWVRFLCAwKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdM
Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTE9wZW5HTENvY29hLm1tCmluZGV4IGE2MjZhMTUyZjhlMjM5NDQwYmU5MGQ1YThh
N2Y1OTQzMzc0ODk2MzMuLjBmOWI1Y2M4OTlhZDg2MDdkYmU5YzZhZjVkODhlZDhmYTNhN2RmM2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBo
aWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQpAQCAtMzksNiAr
MzksNyBAQAogI2ltcG9ydCAiSG9zdFdpbmRvdy5oIgogI2ltcG9ydCAiSW1hZ2VCdWZmZXIuaCIK
ICNpbXBvcnQgIkxvZ2dpbmcuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNp
bXBvcnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYkdMT2JqZWN0LmgiCiAjaW1wb3J0ICJX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCkBAIC0xMDIsNiArMTAzLDIwIEBAIHB1YmxpYzoK
ICAgICB+R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xQcml2YXRlKCkgeyB9CiB9OwogCitzdGF0aWMg
Ym9vbCBpc2lPU0FwcE9uTWFjKCkKK3sKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkgJiYgQ1BV
KEFSTTY0KQorICAgIHN0YXRpYyBib29sIGlzaU9TQXBwT25NYWMgPSBmYWxzZTsKKyAgICBzdGF0
aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAg
ICAgICAgaXNpT1NBcHBPbk1hYyA9IFtbTlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gaXNpT1NB
cHBPbk1hY107CisgICAgfSk7CisgICAgcmV0dXJuIGlzaU9TQXBwT25NYWM7CisjZWxzZQorICAg
IHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQorCiBSZWZQdHI8R3JhcGhpY3NDb250ZXh0R0xPcGVu
R0w+IEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpjcmVhdGUoR3JhcGhpY3NDb250ZXh0R0xBdHRy
aWJ1dGVzIGF0dHJzLCBIb3N0V2luZG93KiBob3N0V2luZG93LCBHcmFwaGljc0NvbnRleHRHTDo6
RGVzdGluYXRpb24gZGVzdGluYXRpb24pCiB7CiAgICAgLy8gVGhpcyBpbXBsZW1lbnRhdGlvbiBk
b2Vzbid0IGN1cnJlbnRseSBzdXBwb3J0IHJlbmRlcmluZyBkaXJlY3RseSB0byB0aGUgSG9zdFdp
bmRvdy4KQEAgLTM4NywxOCArNDAyLDIwIEBAIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjpHcmFw
aGljc0NvbnRleHRHTE9wZW5HTChHcmFwaGljc0NvbnRleHRHTEF0dHJpYnV0ZXMgYXR0CiAjaWYg
UExBVEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKICAgICBFeHRlbnNpb25zR0wm
IGV4dGVuc2lvbnMgPSBnZXRFeHRlbnNpb25zKCk7CiAKLSAgICBzdGF0aWMgY29uc3RleHByIGNv
bnN0IGNoYXIqIHJlcXVpcmVkRXh0ZW5zaW9uc1tdID0gewotICAgICAgICAiR0xfQU5HTEVfdGV4
dHVyZV9yZWN0YW5nbGUiLCAvLyBGb3IgSU9TdXJmYWNlLWJhY2tlZCB0ZXh0dXJlcy4KLSAgICAg
ICAgIkdMX0VYVF90ZXh0dXJlX2Zvcm1hdF9CR1JBODg4OCIsIC8vIEZvciBjcmVhdGluZyB0aGUg
RUdMIHN1cmZhY2UgZnJvbSBhbiBJT1N1cmZhY2UuCi0gICAgfTsKKyAgICBpZiAoIWlzaU9TQXBw
T25NYWMoKSkgeworICAgICAgICBzdGF0aWMgY29uc3RleHByIGNvbnN0IGNoYXIqIHJlcXVpcmVk
RXh0ZW5zaW9uc1tdID0geworICAgICAgICAgICAgIkdMX0FOR0xFX3RleHR1cmVfcmVjdGFuZ2xl
IiwgLy8gRm9yIElPU3VyZmFjZS1iYWNrZWQgdGV4dHVyZXMuCisgICAgICAgICAgICAiR0xfRVhU
X3RleHR1cmVfZm9ybWF0X0JHUkE4ODg4IiwgLy8gRm9yIGNyZWF0aW5nIHRoZSBFR0wgc3VyZmFj
ZSBmcm9tIGFuIElPU3VyZmFjZS4KKyAgICAgICAgfTsKIAotICAgIGZvciAoc2l6ZV90IGkgPSAw
OyBpIDwgV1RGX0FSUkFZX0xFTkdUSChyZXF1aXJlZEV4dGVuc2lvbnMpOyArK2kpIHsKLSAgICAg
ICAgaWYgKCFleHRlbnNpb25zLnN1cHBvcnRzKHJlcXVpcmVkRXh0ZW5zaW9uc1tpXSkpIHsKLSAg
ICAgICAgICAgIExPRyhXZWJHTCwgIk1pc3NpbmcgcmVxdWlyZWQgZXh0ZW5zaW9uLiAlcyIsIHJl
cXVpcmVkRXh0ZW5zaW9uc1tpXSk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KKyAg
ICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKHJlcXVpcmVkRXh0
ZW5zaW9ucyk7ICsraSkgeworICAgICAgICAgICAgaWYgKCFleHRlbnNpb25zLnN1cHBvcnRzKHJl
cXVpcmVkRXh0ZW5zaW9uc1tpXSkpIHsKKyAgICAgICAgICAgICAgICBMT0coV2ViR0wsICJNaXNz
aW5nIHJlcXVpcmVkIGV4dGVuc2lvbi4gJXMiLCByZXF1aXJlZEV4dGVuc2lvbnNbaV0pOworICAg
ICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgIH0KIAotICAgICAgICBleHRlbnNpb25z
LmVuc3VyZUVuYWJsZWQocmVxdWlyZWRFeHRlbnNpb25zW2ldKTsKKyAgICAgICAgICAgIGV4dGVu
c2lvbnMuZW5zdXJlRW5hYmxlZChyZXF1aXJlZEV4dGVuc2lvbnNbaV0pOworICAgICAgICB9CiAg
ICAgfQogI2VuZGlmIC8vIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAK
QEAgLTQ1NCw3ICs0NzEsNyBAQCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6R3JhcGhpY3NDb250
ZXh0R0xPcGVuR0woR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dAogCiAjZWxpZiBVU0Uo
QU5HTEUpCiAKLSAgICBHTGVudW0gdGV4dHVyZVRhcmdldCA9IEdyYXBoaWNzQ29udGV4dEdMOjpJ
T1N1cmZhY2VUZXh0dXJlVGFyZ2V0OworICAgIEdMZW51bSB0ZXh0dXJlVGFyZ2V0ID0gR3JhcGhp
Y3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQoKTsKIAogICAgIGdsOjpHZW5UZXh0
dXJlcygxLCAmbV90ZXh0dXJlKTsKICAgICBnbDo6QmluZFRleHR1cmUodGV4dHVyZVRhcmdldCwg
bV90ZXh0dXJlKTsKQEAgLTYxOCw2ICs2MzUsNDcgQEAgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6
On5HcmFwaGljc0NvbnRleHRHTE9wZW5HTCgpCiAgICAgTE9HKFdlYkdMLCAiRGVzdHJveWVkIGEg
R3JhcGhpY3NDb250ZXh0R0xPcGVuR0wgKCVwKS4iLCB0aGlzKTsKIH0KIAorI2lmIFVTRShBTkdM
RSkKK0dDR0xlbnVtIEdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCkK
K3sKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBpZiAoaXNpT1NBcHBPbk1hYygpKQor
ICAgICAgICByZXR1cm4gVEVYVFVSRV8yRDsKKyAgICByZXR1cm4gVEVYVFVSRV9SRUNUQU5HTEVf
QVJCOworI2VsaWYgUExBVEZPUk0oTUFDKQorICAgIHJldHVybiBURVhUVVJFX1JFQ1RBTkdMRV9B
UkI7CisjZWxzZQorICAgIHJldHVybiBURVhUVVJFXzJEOworI2VuZGlmCit9CisKK0dDR0xlbnVt
IEdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0UXVlcnkoKQoreworI2lm
IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorICAgIGlmIChpc2lPU0FwcE9uTWFjKCkpCisgICAgICAg
IHJldHVybiBURVhUVVJFX0JJTkRJTkdfMkQ7CisgICAgcmV0dXJuIFRFWFRVUkVfQklORElOR19S
RUNUQU5HTEVfQVJCOworI2VsaWYgUExBVEZPUk0oTUFDKQorICAgIHJldHVybiBURVhUVVJFX0JJ
TkRJTkdfUkVDVEFOR0xFX0FSQjsKKyNlbHNlCisgICAgcmV0dXJuIFRFWFRVUkVfQklORElOR18y
RDsKKyNlbmRpZgorfQorCitHQ0dMaW50IEdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1cmZhY2VU
ZXh0dXJlVGFyZ2V0KCkKK3sKKyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkKKyAgICBpZiAoaXNp
T1NBcHBPbk1hYygpKQorICAgICAgICByZXR1cm4gMHgzMDVGOyAvLyBFR0xfVEVYVFVSRV8yRAor
ICAgIHJldHVybiAweDM0NUI7IC8vIEVHTF9URVhUVVJFX1JFQ1RBTkdMRV9BTkdMRQorI2VsaWYg
UExBVEZPUk0oTUFDKQorICAgIHJldHVybiAweDM0NUI7IC8vIEVHTF9URVhUVVJFX1JFQ1RBTkdM
RV9BTkdMRQorI2Vsc2UKKyAgICByZXR1cm4gMHgzMDVGOyAvLyBFR0xfVEVYVFVSRV8yRAorI2Vu
ZGlmCit9CisjZW5kaWYKKwogI2lmIFVTRShPUEVOR0xfRVMpCiB2b2lkIEdyYXBoaWNzQ29udGV4
dEdMT3BlbkdMOjpzZXRSZW5kZXJidWZmZXJTdG9yYWdlRnJvbURyYXdhYmxlKEdDR0xzaXplaSB3
aWR0aCwgR0NHTHNpemVpIGhlaWdodCkKIHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NvY29hL1dlYkdMTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tCmluZGV4IDRiOTk3NzY1NzdiYWU0MGQ0
YzNjZGFkMDAwYjQ1MWE3ZjI2ZjNlYTguLjM3OWFjMTM2NjJlNWY4ZGE4MGUxMDFiOWM2YWNkYzMx
NGQ0ZjlkZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nv
Y29hL1dlYkdMTGF5ZXIubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y29jb2EvV2ViR0xMYXllci5tbQpAQCAtMjA2LDEwICsyMDYsMTAgQEAgc3RhdGljIHZvaWQgZnJl
ZURhdGEodm9pZCAqLCBjb25zdCB2b2lkICpkYXRhLCBzaXplX3QgLyogc2l6ZSAqLykKICAgICAg
ICAgaWYgKF9sYXRjaGVkUGJ1ZmZlcikgewogICAgICAgICAgICAgV1RGOjpPcHRpb25hbDxTY29w
ZWRSZXN0b3JlVGV4dHVyZUJpbmRpbmc+IHJlc3RvcmVCaW5kaW5nOwogICAgICAgICAgICAgLy8g
V2UgZG9uJ3QgbmVlZCB0byByZXN0b3JlIEdMX1RFWFRVUkVfUkVDVEFOR0xFIGJlY2F1c2UgaXQn
cyBub3QgYWNjZXNzaWJsZSBmcm9tIHVzZXIgY29kZS4KLSAgICAgICAgICAgIGlmIChXZWJDb3Jl
OjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCAhPSBXZWJDb3JlOjpH
cmFwaGljc0NvbnRleHRHTDo6VEVYVFVSRV9SRUNUQU5HTEVfQVJCKQotICAgICAgICAgICAgICAg
IHJlc3RvcmVCaW5kaW5nLmVtcGxhY2UoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OklPU3Vy
ZmFjZVRleHR1cmVUYXJnZXRRdWVyeSwgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OklPU3Vy
ZmFjZVRleHR1cmVUYXJnZXQpOworICAgICAgICAgICAgaWYgKFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCkgIT0gV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0R0w6OlRFWFRVUkVfUkVDVEFOR0xFX0FSQikKKyAgICAgICAgICAgICAgICByZXN0b3JlQmlu
ZGluZy5lbXBsYWNlKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJl
VGFyZ2V0UXVlcnkoKSwgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1
cmVUYXJnZXQoKSk7CiAgICAgICAgICAgICBHQ0dMZW51bSB0ZXh0dXJlID0gX2NvbnRleHQtPnBs
YXRmb3JtVGV4dHVyZSgpOwotICAgICAgICAgICAgZ2w6OkJpbmRUZXh0dXJlKFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0LCB0ZXh0dXJlKTsKKyAgICAg
ICAgICAgIGdsOjpCaW5kVGV4dHVyZShXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJm
YWNlVGV4dHVyZVRhcmdldCgpLCB0ZXh0dXJlKTsKICAgICAgICAgICAgIGlmICghRUdMX1JlbGVh
c2VUZXhJbWFnZShfZWdsRGlzcGxheSwgX2xhdGNoZWRQYnVmZmVyLCBFR0xfQkFDS19CVUZGRVIp
KSB7CiAgICAgICAgICAgICAgICAgLy8gRklYTUU6IHJlcG9ydCBlcnJvci4KICAgICAgICAgICAg
ICAgICBub3RJbXBsZW1lbnRlZCgpOwpAQCAtMjk2LDcgKzI5Niw3IEBAIHN0YXRpYyB2b2lkIGZy
ZWVEYXRhKHZvaWQgKiwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IC8qIHNpemUgKi8pCiAgICAg
ICAgIEVHTF9XSURUSCwgc2l6ZS53aWR0aCgpLAogICAgICAgICBFR0xfSEVJR0hULCBzaXplLmhl
aWdodCgpLAogICAgICAgICBFR0xfSU9TVVJGQUNFX1BMQU5FX0FOR0xFLCAwLAotICAgICAgICBF
R0xfVEVYVFVSRV9UQVJHRVQsIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1cmZh
Y2VUZXh0dXJlVGFyZ2V0LAorICAgICAgICBFR0xfVEVYVFVSRV9UQVJHRVQsIFdlYkNvcmU6Okdy
YXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCksCiAgICAgICAgIEVH
TF9URVhUVVJFX0lOVEVSTkFMX0ZPUk1BVF9BTkdMRSwgdXNpbmdBbHBoYSA/IEdMX0JHUkFfRVhU
IDogR0xfUkdCLAogICAgICAgICBFR0xfVEVYVFVSRV9GT1JNQVQsIEVHTF9URVhUVVJFX1JHQkEs
CiAgICAgICAgIEVHTF9URVhUVVJFX1RZUEVfQU5HTEUsIEdMX1VOU0lHTkVEX0JZVEUsCkBAIC0z
MzUsMTIgKzMzNSwxMiBAQCBzdGF0aWMgdm9pZCBmcmVlRGF0YSh2b2lkICosIGNvbnN0IHZvaWQg
KmRhdGEsIHNpemVfdCAvKiBzaXplICovKQogI2VsaWYgVVNFKEFOR0xFKQogICAgIFdURjo6T3B0
aW9uYWw8U2NvcGVkUmVzdG9yZVRleHR1cmVCaW5kaW5nPiByZXN0b3JlQmluZGluZzsKICAgICAv
LyBXZSBkb24ndCBuZWVkIHRvIHJlc3RvcmUgR0xfVEVYVFVSRV9SRUNUQU5HTEUgYmVjYXVzZSBp
dCdzIG5vdCBhY2Nlc3NpYmxlIGZyb20gdXNlciBjb2RlLgotICAgIGlmIChXZWJDb3JlOjpHcmFw
aGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCAhPSBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTDo6VEVYVFVSRV9SRUNUQU5HTEVfQVJCKQotICAgICAgICByZXN0b3JlQmluZGlu
Zy5lbXBsYWNlKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0UXVlcnksIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KTsKKyAgICBpZiAoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1
cmVUYXJnZXQoKSAhPSBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6VEVYVFVSRV9SRUNUQU5H
TEVfQVJCKQorICAgICAgICByZXN0b3JlQmluZGluZy5lbXBsYWNlKFdlYkNvcmU6OkdyYXBoaWNz
Q29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0UXVlcnkoKSwgV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQoKSk7CiAKICAgICBHQ0dMZW51bSB0
ZXh0dXJlID0gX2NvbnRleHQtPnBsYXRmb3JtVGV4dHVyZSgpOwogCi0gICAgZ2w6OkJpbmRUZXh0
dXJlKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0LCB0
ZXh0dXJlKTsKKyAgICBnbDo6QmluZFRleHR1cmUoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6
OklPU3VyZmFjZVRleHR1cmVUYXJnZXQoKSwgdGV4dHVyZSk7CiAKICAgICBpZiAoX2xhdGNoZWRQ
YnVmZmVyKSB7CiAgICAgICAgIGlmICghRUdMX1JlbGVhc2VUZXhJbWFnZShfZWdsRGlzcGxheSwg
X2xhdGNoZWRQYnVmZmVyLCBFR0xfQkFDS19CVUZGRVIpKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9WaWRlb1RleHR1cmVDb3BpZXJDVi5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9WaWRlb1RleHR1cmVDb3BpZXJDVi5j
cHAKaW5kZXggNDg3MDQyYzViMTQ3OGNhMmQzYzczMmQ1YTU5Yzk4YWRhOTM3ZjBmOC4uYWFmZDgy
MzdkYWZmOWVlOTU2MmYyMDcyZTQxN2FlYjhiYjhlYTBmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvVmlkZW9UZXh0dXJlQ29waWVyQ1YuY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2N2L1ZpZGVvVGV4dHVyZUNvcGllckNW
LmNwcApAQCAtNzM5LDcgKzczOSw3IEBAIHZvaWQqIFZpZGVvVGV4dHVyZUNvcGllckNWOjphdHRh
Y2hJT1N1cmZhY2VUb1RleHR1cmUoR0NHTGVudW0gdGFyZ2V0LCBHQ0dMZW51bSBpCiAgICAgICAg
IExPRyhXZWJHTCwgIlVua25vd24gdGV4dHVyZSB0YXJnZXQgJWQuIiwgc3RhdGljX2Nhc3Q8aW50
Pih0YXJnZXQpKTsKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQotICAgIGlmIChlZ2xU
ZXh0dXJlVGFyZ2V0ICE9IEdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KSB7CisgICAgaWYgKGVnbFRleHR1cmVUYXJnZXQgIT0gR3JhcGhpY3NDb250ZXh0R0w6OkVH
TElPU3VyZmFjZVRleHR1cmVUYXJnZXQoKSkgewogICAgICAgICBMT0coV2ViR0wsICJNaXNtYXRj
aCBpbiBFR0wgdGV4dHVyZSB0YXJnZXQgJWQuIiwgc3RhdGljX2Nhc3Q8aW50Pih0YXJnZXQpKTsK
ICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAgICAgfQpAQCAtODU4LDcgKzg1OCw3IEBAIGJvb2wg
VmlkZW9UZXh0dXJlQ29waWVyQ1Y6OmNvcHlJbWFnZVRvUGxhdGZvcm1UZXh0dXJlKENWUGl4ZWxC
dWZmZXJSZWYgaW1hZ2UsIHNpCiAjZWxpZiBVU0UoT1BFTkdMKQogICAgIEdDR0xlbnVtIHZpZGVv
VGV4dHVyZVRhcmdldCA9IEdyYXBoaWNzQ29udGV4dEdMOjpURVhUVVJFX1JFQ1RBTkdMRV9BUkI7
CiAjZWxpZiBVU0UoQU5HTEUpCi0gICAgR0NHTGVudW0gdmlkZW9UZXh0dXJlVGFyZ2V0ID0gR3Jh
cGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQ7CisgICAgR0NHTGVudW0gdmlk
ZW9UZXh0dXJlVGFyZ2V0ID0gR3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJn
ZXQoKTsKICNlbHNlCiAjZXJyb3IgVW5zdXBwb3J0ZWQgY29uZmlndXJhdGlvbgogI2VuZGlmCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMu
bW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0KaW5k
ZXggYTFiOTRjZDFhOTFkOTk1ODZmNTZkNmZkZjUzMmZjNDFjZmRkMzI1Yi4uMjUzZTNmMjQ0ZGE5
ZGE4NDc5M2VkNWI1Yjg2NDQwYTI1YjA5M2NjZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQpAQCAtMzEsNiArMzEsNyBAQAogI2ltcG9y
dCAiRmxvYXRSZWN0LmgiCiAjaW1wb3J0ICJGcmFtZVZpZXcuaCIKICNpbXBvcnQgIkhvc3RXaW5k
b3cuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNpbXBvcnQgIlNjcmVlblBy
b3BlcnRpZXMuaCIKICNpbXBvcnQgPENvbG9yU3luYy9Db2xvclN5bmMuaD4KICNpbXBvcnQgPHBh
bC9zcGkvY2cvQ29yZUdyYXBoaWNzU1BJLmg+CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvV2ViR0xCbG9ja2xpc3QubW0KaW5kZXggZGJmMzFkOGFhMzkxZmI1ZDQ1ZjBhNmY1NGZlZjMx
OWE1NjVlYmFkNC4uNmMxZDI2ZTQ3OWEwMjgxN2JkZDViMTg2ZmFhMmFhNzZhNWVjYmRiYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1tCisr
KyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5tbQpAQCAtMjks
NyArMjksNyBAQAogI2lmIFBMQVRGT1JNKE1BQykKIAogI2ltcG9ydCAiQmxvY2tsaXN0VXBkYXRl
ci5oIgotI2ltcG9ydCA8T3BlbkdML09wZW5HTC5oPgorI2ltcG9ydCAiT3BlbkdMU29mdExpbmtD
b2NvYS5oIgogI2ltcG9ydCA8cGFsL3NwaS9jZi9DRlV0aWxpdGllc1NQSS5oPgogCiBuYW1lc3Bh
Y2UgV2ViQ29yZSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dl
YktpdC54Y2NvbmZpZyBiL1NvdXJjZS9XZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29u
ZmlnCmluZGV4IGUxODRjZjZjOTk0N2FiYTVjZjdkNWQyYjA2M2NhNDVjZmM5NDJmYzEuLjVmNzVl
Y2JiMTQ5YzU1MWE0NTExYTkwNmZkN2Y0M2MxN2U5ODg5MjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvQ29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCisrKyBiL1NvdXJjZS9XZWJLaXQv
Q29uZmlndXJhdGlvbnMvV2ViS2l0LnhjY29uZmlnCkBAIC04OCwxNiArODgsNiBAQCBXS19NT0JJ
TEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiBXS19MSUJT
QU5EQk9YX0xERkxBR1MgPSAkKFdLX0xJQlNBTkRCT1hfTERGTEFHU18kKFdLX1BMQVRGT1JNX05B
TUUpKTsKIFdLX0xJQlNBTkRCT1hfTERGTEFHU19tYWNvc3ggPSAtbHNhbmRib3g7CiAKLVdLX09Q
RU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsK
LVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUzsKLVdLX09Q
RU5HTF9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBPcGVuR0w7Ci1XS19PUEVOR0xf
TERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAtZnJhbWV3b3JrIE9wZW5HTEVTOwotV0tfT1BFTkdM
X0xERkxBR1Nfd2F0Y2hvcyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BF
TkdMX0xERkxBR1Nfd2F0Y2hzaW11bGF0b3IgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZXNp
bXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2b3MgPSAkKFdLX09QRU5HTF9MREZM
QUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxldHZzaW11bGF0b3IgPSAkKFdL
X09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1XS19PUEVOR0xfTERGTEFHU19tYWNv
c3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tfUERGS0lUX0xERkxBR1MgPSAkKFdLX1BERktJ
VF9MREZMQUdTXyQoV0tfUExBVEZPUk1fTkFNRSkpOwogV0tfUERGS0lUX0xERkxBR1NfaXBob25l
b3MgPSAtZnJhbWV3b3JrIFBERktpdDsKIFdLX1BERktJVF9MREZMQUdTX2lwaG9uZW9zW3Nkaz1p
cGhvbmUqMTEuKl0gPSA7CkBAIC0xMzMsNyArMTIzLDcgQEAgV0tfQVVUSEtJVF9MREZMQUdTX0lP
U19TSU5DRV8xMyA9IC1mcmFtZXdvcmsgQXV0aEtpdDsKIFdLX0FVVEhLSVRfTERGTEFHU19tYWNv
c3ggPSAkKFdLX0FVVEhLSVRfTERGTEFHUyQoV0tfTUFDT1NfMTAxNSkpOwogV0tfQVVUSEtJVF9M
REZMQUdTX01BQ09TX1NJTkNFXzEwMTUgPSAtZnJhbWV3b3JrIEF1dGhLaXQ7CiAKLUZSQU1FV09S
S19BTkRfTElCUkFSWV9MREZMQUdTID0gLWxvYmpjIC1mcmFtZXdvcmsgQ0ZOZXR3b3JrIC1mcmFt
ZXdvcmsgQ29yZUF1ZGlvIC1mcmFtZXdvcmsgQ29yZUZvdW5kYXRpb24gLWZyYW1ld29yayBDb3Jl
R3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRpb24gLWZyYW1l
d29yayBJbWFnZUlPIC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1l
d29yayBXZWJLaXRMZWdhY3kgLWxuZXR3b3JrICQoV0tfQUNDRVNTSUJJTElUWV9MREZMQUdTKSAk
KFdLX0FQUEtJVF9MREZMQUdTKSAkKFdLX0FTU0VSVElPTl9TRVJWSUNFU19MREZMQUdTKSAkKFdL
X1JVTk5JTkdCT0FSRF9TRVJWSUNFU19MREZMQUdTKSAkKFdLX0FVVEhLSVRfTERGTEFHUykgJChX
S19DQVJCT05fTERGTEFHUykgJChXS19DT1JFX1BSRURJQ1RJT05fTERGTEFHUykgJChXS19DT1JF
X1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19M
SUJTQU5EQk9YX0xERkxBR1MpICQoV0tfTElCV0VCUlRDX0xERkxBR1MpICQoV0tfTU9CSUxFX0NP
UkVfU0VSVklDRVNfTERGTEFHUykgJChXS19NT0JJTEVfR0VTVEFMVF9MREZMQUdTKSAkKFdLX09Q
RU5HTF9MREZMQUdTKSAkKFdLX1BERktJVF9MREZMQUdTKSAkKFdLX1NBRkVfQlJPV1NJTkdfTERG
TEFHUykgJChXS19TRUNVUklUWV9JTlRFUkZBQ0VfTERGTEFHUykgJChXS19VSUtJVF9MREZMQUdT
KSAkKFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1MpICQoV0tfV0VCSU5TUEVDVE9SVUlfTERGTEFH
Uyk7CitGUkFNRVdPUktfQU5EX0xJQlJBUllfTERGTEFHUyA9IC1sb2JqYyAtZnJhbWV3b3JrIENG
TmV0d29yayAtZnJhbWV3b3JrIENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9uIC1m
cmFtZXdvcmsgQ29yZUdyYXBoaWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3Vu
ZGF0aW9uIC1mcmFtZXdvcmsgSW1hZ2VJTyAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9T
dXJmYWNlIC1mcmFtZXdvcmsgV2ViS2l0TGVnYWN5IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lCSUxJ
VFlfTERGTEFHUykgJChXS19BUFBLSVRfTERGTEFHUykgJChXS19BU1NFUlRJT05fU0VSVklDRVNf
TERGTEFHUykgJChXS19SVU5OSU5HQk9BUkRfU0VSVklDRVNfTERGTEFHUykgJChXS19BVVRIS0lU
X0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9QUkVESUNUSU9OX0xERkxB
R1MpICQoV0tfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xE
RkxBR1MpICQoV0tfTElCU0FOREJPWF9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAk
KFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERG
TEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChXS19TQUZFX0JST1dTSU5HX0xERkxBR1MpICQo
V0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1MpICQoV0tfVUlLSVRfTERGTEFHUykgJChXS19V
UkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dFQklOU1BFQ1RPUlVJX0xERkxBR1MpOwogCiAv
LyBQcmV2ZW50IEMrKyBzdGFuZGFyZCBsaWJyYXJ5IGJhc2ljX3N0cmluZ3N0cmVhbSwgb3BlcmF0
b3IgbmV3LCBkZWxldGUgYW5kIHRoZWlyIHJlbGF0ZWQgZXhjZXB0aW9uIHR5cGVzIGZyb20gYmVp
bmcgZXhwb3J0ZWQgYXMgd2VhayBzeW1ib2xzLgogVU5FWFBPUlRFRF9TWU1CT0xfTERGTEFHUyA9
IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5YmFkX2FsbG9jIC1XbCwtdW5leHBv
cnRlZF9zeW1ib2wgLVdsLF9fWlRJU3Q5ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wg
LVdsLF9fWlRTU3Q5YmFkX2FsbG9jIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRTU3Q5
ZXhjZXB0aW9uIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWmRsUHZTXyAtV2wsLXVuZXhw
b3J0ZWRfc3ltYm9sIC1XbCxfX1pud21QdiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pu
d20gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2Vi
Q29yZTEyUG9saWN5QWN0aW9uRUVFQzJFT1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxf
X1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMUVPUzRfIC1X
bCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUx
MlBvbGljeUFjdGlvbkVFRWFTRURuIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5LU3Qz
X18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVjbEVTMl8gLVdsLC11bmV4
cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5
QWN0aW9uRUVFNHN3YXBFUlM0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18x
OGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVDMUVSS1M0XyAtV2wsLXVuZXhw
b3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lB
Y3Rpb25FRUVDMkVSS1M0XyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1
bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVEMUV2IC1XbCwtdW5leHBvcnRlZF9z
eW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlvbkVF
RUQyRXYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43
V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFYVNFUktTNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aVFZOU3QzX18xMTdiYWRfZnVuY3Rpb25fY2FsbEUgLVdsLC11bmV4cG9ydGVkX3N5bWJv
bCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJ
Y0VFTlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTNiYXNpY19pc3RyZWFtSWNTMl9FRSAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNf
MTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFMF9OU18xNGJhc2ljX2lvc3RyZWFt
SWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0
cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFMTZfTlNf
MTNiYXNpY19vc3RyZWFtSWNTMl9FRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVE5T
dDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2Nh
dG9ySWNFRUVFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWlRWTlN0M19fMTE1YmFzaWNf
c3RyaW5nYnVmSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUgLVdsLC11
bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFZOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05T
XzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRSAtV2wsLXVuZXhwb3J0ZWRfc3lt
Ym9sIC1XbCxfX1pUQ05TdDNfXzExOGJhc2ljX3N0cmluZ3N0cmVhbUljTlNfMTFjaGFyX3RyYWl0
c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFOF9OU18xM2Jhc2ljX29zdHJlYW1JY1MyX0VFOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9Tb3VyY2VzQ29jb2EudHh0IGIvU291cmNlL1dlYktpdC9T
b3VyY2VzQ29jb2EudHh0CmluZGV4IGFmMjRhYTkyMDEyYTg0OTlkZGZmNjFiY2M2N2ZjZmFjZjE0
NmE5NzkuLjVhMDhjMGJmM2U1MTRlODczN2I0M2UxMDA2ZjlkMmIxY2QxOTExMjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dAorKysgYi9Tb3VyY2UvV2ViS2l0L1Nv
dXJjZXNDb2NvYS50eHQKQEAgLTQ3OSw3ICs0NzksNyBAQCBVSVByb2Nlc3MvTGF1bmNoZXIvbWFj
L1Byb2Nlc3NMYXVuY2hlck1hYy5tbQogCiBVSVByb2Nlc3MvbWFjL0NvcnJlY3Rpb25QYW5lbC5t
bQogVUlQcm9jZXNzL21hYy9EaXNwbGF5TGluay5jcHAKLVVJUHJvY2Vzcy9tYWMvSGlnaFBlcmZv
cm1hbmNlR1BVTWFuYWdlci5jcHAKK1VJUHJvY2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFu
YWdlci5tbQogVUlQcm9jZXNzL21hYy9MZWdhY3lTZXNzaW9uU3RhdGVDb2RpbmcuY3BwCiBVSVBy
b2Nlc3MvbWFjL1BhZ2VDbGllbnRJbXBsTWFjLm1tCiBVSVByb2Nlc3MvbWFjL1NlY0l0ZW1TaGlt
UHJveHkuY3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250
ZW50Vmlld0ludGVyYWN0aW9uLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29u
dGVudFZpZXdJbnRlcmFjdGlvbi5tbQppbmRleCBmM2QxMDNlYmEyNGQ5MTQ0NzE4NjVkNDUzYjcy
MWFmOTg4OGMzZTI0Li42MTdlZDhjM2RjMTZjYjViZDdiNDE0M2E2NmNhOTliNDA2ZGI5OTM0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRWaWV3
SW50ZXJhY3Rpb24ubW0KQEAgLTIwMzksOCArMjAzOSw4IEBAIHN0YXRpYyBOU1ZhbHVlICpuc1Np
emVGb3JUYXBIaWdobGlnaHRCb3JkZXJSYWRpdXMoV2ViQ29yZTo6SW50U2l6ZSBib3JkZXJSYWRp
dXMsCiAgICAgaWYgKF9wYWdlLT53YWl0aW5nRm9yUG9zdExheW91dEVkaXRvclN0YXRlVXBkYXRl
QWZ0ZXJGb2N1c2luZ0VsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIF9mb2N1c2VkRWxlbWVudElu
Zm9ybWF0aW9uLmludGVyYWN0aW9uUmVjdDsKIAotICAgIGlmICghX3BhZ2UtPmVkaXRvclN0YXRl
KCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rpb25DbGlwUmVjdC5pc0VtcHR5KCkpCi0gICAgICAg
IHJldHVybiBfcGFnZS0+ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0RGF0YSgpLnNlbGVjdGlvbkNs
aXBSZWN0OworICAgIC8vIGlmICghX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEo
KS5zZWxlY3Rpb25DbGlwUmVjdC5pc0VtcHR5KCkpCisgICAgLy8gICAgIHJldHVybiBfcGFnZS0+
ZWRpdG9yU3RhdGUoKS5wb3N0TGF5b3V0RGF0YSgpLnNlbGVjdGlvbkNsaXBSZWN0OwogCiAgICAg
cmV0dXJuIENHUmVjdE51bGw7CiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vz
cy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHAgYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5jcHAKZGVsZXRlZCBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IGRlOTM5NjdlZmRmOTJiM2M4ZjdiODM0NGM0OWQwMGI2NTZkOWNhMzkuLjAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktp
dC9VSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwCisrKyAvZGV2L251
bGwKQEAgLTEsOTcgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAxOCBBcHBsZSBJbmMu
IEFsbCByaWdodHMgcmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBz
b3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24s
IGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAq
IGFyZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRh
aW4gdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25z
IGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBw
cm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQ
Uk9WSURFRCBCWSBBUFBMRSBJTkMuIEFORCBJVFMgQ09OVFJJQlVUT1JTIGBgQVMgSVMnJwotICog
QU5EIEFOWSBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sCi0gKiBUSEUgSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElU
WSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVE
LiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElUUyBDT05UUklCVVRPUlMKLSAqIEJF
IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsIEVY
RU1QTEFSWSwgT1IKLSAqIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9U
IExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GCi0gKiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
Q0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsgT1IgQlVTSU5FU1MKLSAqIElOVEVS
UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkgT0YgTElBQklMSVRZLCBX
SEVUSEVSIElOCi0gKiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVCAoSU5DTFVE
SU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKQotICogQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
RiBUSEUgVVNFIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRgotICogVEhFIFBP
U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgotICovCi0KLSNpbmNsdWRlICJjb25maWcuaCIKLSNp
bmNsdWRlICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmgiCi0KLSNpZiBQTEFURk9STShNQUMp
Ci0KLSNpbmNsdWRlICJMb2dnaW5nLmgiCi0jaW5jbHVkZSA8T3BlbkdML0NHTFR5cGVzLmg+Ci0j
aW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgotI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250
ZXh0R0xPcGVuR0xNYW5hZ2VyLmg+Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi0vLyBGSVhNRTog
VGhpcyBjbGFzcyBpcyB1c2luZyBPcGVuR0wgdG8gY29udHJvbCB0aGUgbXV4aW5nIG9mIEdQVXMu
IFVsdGltYXRlbHkKLS8vIHdlIHdhbnQgdG8gdXNlIE1ldGFsLCBidXQgY3VycmVudGx5IHRoZXJl
IGlzbid0IGEgd2F5IHRvICJyZWxlYXNlIiBhCi0vLyBkaXNjcmV0ZSBNVExEZXZpY2UsIHN1Y2gg
dGhhdCB0aGUgcHJvY2VzcyBtdXhlcyBiYWNrIHRvIGFuIGludGVncmF0ZWQgR1BVLgotCi1IaWdo
UGVyZm9ybWFuY2VHUFVNYW5hZ2VyJiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjpzaW5nbGV0
b24oKQotewotICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIaWdoUGVyZm9ybWFuY2VHUFVNYW5h
Z2VyPiBzaGFyZWRNYW5hZ2VyOwotICAgIHJldHVybiBzaGFyZWRNYW5hZ2VyOwotfQotCi12b2lk
IEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OmFkZFByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9y
bWFuY2UoV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzKQotewotICAgIGlmICghV2ViQ29yZTo6aGFz
TG93QW5kSGlnaFBvd2VyR1BVcygpKQotICAgICAgICByZXR1cm47Ci0KLSAgICBpZiAobV9wcm9j
ZXNzZXNSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UuYWRkKHByb2Nlc3MpKSB7Ci0gICAgICAgIExP
RyhXZWJHTCwgIkhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OmFkZFByb2Nlc3NSZXF1aXJpbmdI
aWdoUGVyZm9ybWFuY2UoKSAtIGFkZGluZyBwcm9jZXNzICVwIiwgcHJvY2Vzcyk7Ci0gICAgICAg
IHVwZGF0ZVN0YXRlKCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBMT0coV2ViR0ws
ICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZv
cm1hbmNlKCkgLSBwcm9jZXNzICVwIHdhcyBhbHJlYWR5IHJlcXVlc3RpbmcgaGlnaCBwZXJmb3Jt
YW5jZSIsIHByb2Nlc3MpOwotfQotCi12b2lkIEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OnJl
bW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UoV2ViUHJvY2Vzc1Byb3h5KiBwcm9j
ZXNzKQotewotICAgIGlmICghV2ViQ29yZTo6aGFzTG93QW5kSGlnaFBvd2VyR1BVcygpKQotICAg
ICAgICByZXR1cm47Ci0KLSAgICBpZiAobV9wcm9jZXNzZXNSZXF1aXJpbmdIaWdoUGVyZm9ybWFu
Y2UucmVtb3ZlKHByb2Nlc3MpKSB7Ci0gICAgICAgIExPRyhXZWJHTCwgIkhpZ2hQZXJmb3JtYW5j
ZUdQVU1hbmFnZXI6OnJlbW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UoKSAtIHJl
bW92aW5nIHByb2Nlc3MgJXAiLCBwcm9jZXNzKTsKLSAgICAgICAgdXBkYXRlU3RhdGUoKTsKLSAg
ICAgICAgcmV0dXJuOwotICAgIH0KLQotICAgIExPRyhXZWJHTCwgIkhpZ2hQZXJmb3JtYW5jZUdQ
VU1hbmFnZXI6OnJlbW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UoKSAtIHByb2Nl
c3MgJXAgd2FzIG5vdCByZXF1ZXN0aW5nIGhpZ2ggcGVyZm9ybWFuY2UiLCBwcm9jZXNzKTsKLX0K
LQotdm9pZCBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjp1cGRhdGVTdGF0ZSgpCi17Ci0gICAg
aWYgKG1fcHJvY2Vzc2VzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlLnNpemUoKSkgewotICAgICAg
ICBpZiAoIW1fcGl4ZWxGb3JtYXRPYmopIHsKLSAgICAgICAgICAgIExPRyhXZWJHTCwgIkhpZ2hQ
ZXJmb3JtYW5jZUdQVU1hbmFnZXIgLSB0dXJuaW5nIG9uIGhpZ2gtcGVyZm9ybWFuY2UgR1BVLiIp
OwotCi0gICAgICAgICAgICBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSBhdHRyaWJ1dGVzW10gPSB7
IGtDR0xQRkFBY2NlbGVyYXRlZCwga0NHTFBGQUNvbG9yU2l6ZSwgc3RhdGljX2Nhc3Q8Q0dMUGl4
ZWxGb3JtYXRBdHRyaWJ1dGU+KDMyKSwgc3RhdGljX2Nhc3Q8Q0dMUGl4ZWxGb3JtYXRBdHRyaWJ1
dGU+KDApIH07Ci0gICAgICAgICAgICBHTGludCBudW1QaXhlbEZvcm1hdHMgPSAwOwotICAgICAg
ICAgICAgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQoYXR0cmlidXRlcywgJm1fcGl4ZWxGb3JtYXRPYmos
ICZudW1QaXhlbEZvcm1hdHMpOwotCi0gICAgICAgICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9y
bWFuY2VHUFVNYW5hZ2VyIC0gQ0dMUGl4ZWxGb3JtYXRPYmogaXMgJXAiLCBtX3BpeGVsRm9ybWF0
T2JqKTsKLSAgICAgICAgfQotICAgIH0gZWxzZSBpZiAobV9waXhlbEZvcm1hdE9iaikgewotICAg
ICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyIC0gdHVybmluZyBvZmYg
aGlnaC1wZXJmb3JtYW5jZSBHUFUuIik7Ci0gICAgICAgIENHTFJlbGVhc2VQaXhlbEZvcm1hdCht
X3BpeGVsRm9ybWF0T2JqKTsKLSAgICAgICAgbV9waXhlbEZvcm1hdE9iaiA9IG51bGxwdHI7Ci0g
ICAgfQotfQotCi19Ci0jZW5kaWYKLQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nl
c3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJv
Y2Vzcy9tYWMvSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi43ZjJkOTZi
ZWFlMWY5YmY5M2ZkNDY2ZGFiNGRkNjA1NjUxOTU3ZTg0Ci0tLSAvZGV2L251bGwKKysrIGIvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW0KQEAg
LTAsMCArMSwxMTIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUg
bWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKKyAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCisgKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCisgKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgorICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCisgKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgorICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKKyAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKKyAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVk
ZSAiSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5oIgorCisjaWYgUExBVEZPUk0oTUFDKQorCisj
aW5jbHVkZSAiTG9nZ2luZy5oIgorI2luY2x1ZGUgPFdlYkNvcmUvR3JhcGhpY3NDb250ZXh0R0xP
cGVuR0xNYW5hZ2VyLmg+CisjaW5jbHVkZSA8V2ViQ29yZS9PcGVuR0xTb2Z0TGlua0NvY29hLmg+
CisKK25hbWVzcGFjZSBXZWJLaXQgeworCitzdGF0aWMgYm9vbCBpc2lPU0FwcE9uTWFjKCkKK3sK
KyNpZiBQTEFURk9STShNQUNDQVRBTFlTVCkgJiYgQ1BVKEFSTTY0KQorICAgIHN0YXRpYyBib29s
IGlzaU9TQXBwT25NYWMgPSBmYWxzZTsKKyAgICBzdGF0aWMgZGlzcGF0Y2hfb25jZV90IG9uY2U7
CisgICAgZGlzcGF0Y2hfb25jZSgmb25jZSwgXnsKKyAgICAgICAgaXNpT1NBcHBPbk1hYyA9IFtb
TlNQcm9jZXNzSW5mbyBwcm9jZXNzSW5mb10gaXNpT1NBcHBPbk1hY107CisgICAgfSk7CisgICAg
cmV0dXJuIGlzaU9TQXBwT25NYWM7CisjZWxzZQorICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgor
fQorCisvLyBGSVhNRTogVGhpcyBjbGFzcyBpcyB1c2luZyBPcGVuR0wgdG8gY29udHJvbCB0aGUg
bXV4aW5nIG9mIEdQVXMuIFVsdGltYXRlbHkKKy8vIHdlIHdhbnQgdG8gdXNlIE1ldGFsLCBidXQg
Y3VycmVudGx5IHRoZXJlIGlzbid0IGEgd2F5IHRvICJyZWxlYXNlIiBhCisvLyBkaXNjcmV0ZSBN
VExEZXZpY2UsIHN1Y2ggdGhhdCB0aGUgcHJvY2VzcyBtdXhlcyBiYWNrIHRvIGFuIGludGVncmF0
ZWQgR1BVLgorCitIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyJiBIaWdoUGVyZm9ybWFuY2VHUFVN
YW5hZ2VyOjpzaW5nbGV0b24oKQoreworICAgIHN0YXRpYyBOZXZlckRlc3Ryb3llZDxIaWdoUGVy
Zm9ybWFuY2VHUFVNYW5hZ2VyPiBzaGFyZWRNYW5hZ2VyOworICAgIHJldHVybiBzaGFyZWRNYW5h
Z2VyOworfQorCit2b2lkIEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OmFkZFByb2Nlc3NSZXF1
aXJpbmdIaWdoUGVyZm9ybWFuY2UoV2ViUHJvY2Vzc1Byb3h5KiBwcm9jZXNzKQoreworICAgIGlm
ICghV2ViQ29yZTo6aGFzTG93QW5kSGlnaFBvd2VyR1BVcygpKQorICAgICAgICByZXR1cm47CisK
KyAgICBpZiAobV9wcm9jZXNzZXNSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UuYWRkKHByb2Nlc3Mp
KSB7CisgICAgICAgIExPRyhXZWJHTCwgIkhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OmFkZFBy
b2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UoKSAtIGFkZGluZyBwcm9jZXNzICVwIiwgcHJv
Y2Vzcyk7CisgICAgICAgIHVwZGF0ZVN0YXRlKCk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVx
dWlyaW5nSGlnaFBlcmZvcm1hbmNlKCkgLSBwcm9jZXNzICVwIHdhcyBhbHJlYWR5IHJlcXVlc3Rp
bmcgaGlnaCBwZXJmb3JtYW5jZSIsIHByb2Nlc3MpOworfQorCit2b2lkIEhpZ2hQZXJmb3JtYW5j
ZUdQVU1hbmFnZXI6OnJlbW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9ybWFuY2UoV2ViUHJv
Y2Vzc1Byb3h5KiBwcm9jZXNzKQoreworICAgIGlmICghV2ViQ29yZTo6aGFzTG93QW5kSGlnaFBv
d2VyR1BVcygpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAobV9wcm9jZXNzZXNSZXF1aXJp
bmdIaWdoUGVyZm9ybWFuY2UucmVtb3ZlKHByb2Nlc3MpKSB7CisgICAgICAgIExPRyhXZWJHTCwg
IkhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OnJlbW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVy
Zm9ybWFuY2UoKSAtIHJlbW92aW5nIHByb2Nlc3MgJXAiLCBwcm9jZXNzKTsKKyAgICAgICAgdXBk
YXRlU3RhdGUoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIExPRyhXZWJHTCwgIkhp
Z2hQZXJmb3JtYW5jZUdQVU1hbmFnZXI6OnJlbW92ZVByb2Nlc3NSZXF1aXJpbmdIaWdoUGVyZm9y
bWFuY2UoKSAtIHByb2Nlc3MgJXAgd2FzIG5vdCByZXF1ZXN0aW5nIGhpZ2ggcGVyZm9ybWFuY2Ui
LCBwcm9jZXNzKTsKK30KKwordm9pZCBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjp1cGRhdGVT
dGF0ZSgpCit7CisgICAgaWYgKCFpc2lPU0FwcE9uTWFjKSB7CisgICAgICAgIGlmIChtX3Byb2Nl
c3Nlc1JlcXVpcmluZ0hpZ2hQZXJmb3JtYW5jZS5zaXplKCkpIHsKKyAgICAgICAgICAgIGlmICgh
bV9waXhlbEZvcm1hdE9iaikgeworICAgICAgICAgICAgICAgIExPRyhXZWJHTCwgIkhpZ2hQZXJm
b3JtYW5jZUdQVU1hbmFnZXIgLSB0dXJuaW5nIG9uIGhpZ2gtcGVyZm9ybWFuY2UgR1BVLiIpOwor
CisgICAgICAgICAgICAgICAgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgYXR0cmlidXRlc1tdID0g
eyBrQ0dMUEZBQWNjZWxlcmF0ZWQsIGtDR0xQRkFDb2xvclNpemUsIHN0YXRpY19jYXN0PENHTFBp
eGVsRm9ybWF0QXR0cmlidXRlPigzMiksIHN0YXRpY19jYXN0PENHTFBpeGVsRm9ybWF0QXR0cmli
dXRlPigwKSB9OworICAgICAgICAgICAgICAgIEdMaW50IG51bVBpeGVsRm9ybWF0cyA9IDA7Cisg
ICAgICAgICAgICAgICAgQ0dMQ2hvb3NlUGl4ZWxGb3JtYXQoYXR0cmlidXRlcywgJm1fcGl4ZWxG
b3JtYXRPYmosICZudW1QaXhlbEZvcm1hdHMpOworCisgICAgICAgICAgICAgICAgTE9HKFdlYkdM
LCAiSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlciAtIENHTFBpeGVsRm9ybWF0T2JqIGlzICVwIiwg
bV9waXhlbEZvcm1hdE9iaik7CisgICAgICAgICAgICB9CisgICAgICAgIH0gZWxzZSBpZiAobV9w
aXhlbEZvcm1hdE9iaikgeworICAgICAgICAgICAgTE9HKFdlYkdMLCAiSGlnaFBlcmZvcm1hbmNl
R1BVTWFuYWdlciAtIHR1cm5pbmcgb2ZmIGhpZ2gtcGVyZm9ybWFuY2UgR1BVLiIpOworICAgICAg
ICAgICAgQ0dMUmVsZWFzZVBpeGVsRm9ybWF0KG1fcGl4ZWxGb3JtYXRPYmopOworICAgICAgICAg
ICAgbV9waXhlbEZvcm1hdE9iaiA9IG51bGxwdHI7CisgICAgICAgIH0KKyAgICB9Cit9CisKK30K
KyNlbmRpZgorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNvZGVwcm9qL3Byb2plY3QucGJ4
cHJvagppbmRleCA1OWI5OTA3YzdmYzk2NzdhOTczMmNhZmYwZmUwMDg5YjBlNDljMTQwLi5hMmU2
ZDA0ODBhOTkxYWY5YzYzODM3OTU4MjMwZTg1MWEyMGUyMTI2IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJL
aXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTMyNDUsNyArMzI0NSw3IEBA
CiAJCTMxQTY3RTBBMTY1QjJBOTkwMDZDQkE2NiAvKiBQbHVnSW5BdXRvU3RhcnRQcm92aWRlci5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQbHVnSW5BdXRvU3RhcnRQ
cm92aWRlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTY3RTBCMTY1QjJB
OTkwMDZDQkE2NiAvKiBQbHVnSW5BdXRvU3RhcnRQcm92aWRlci5oICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jLmg7IHBhdGggPSBQbHVnSW5BdXRvU3RhcnRQcm92aWRlci5oOyBzb3VyY2VUcmVlID0g
Ijxncm91cD4iOyB9OwogCQkzMUFCQTc5QzIxNUFGOUUwMDBDOTBFMzEgLyogSGlnaFBlcmZvcm1h
bmNlR1BVTWFuYWdlci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2Vy
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCTMxQUJBNzlEMjE1QUY5RTAwMEM5MEUz
MSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEhp
Z2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkzMUFCQTc5RDIxNUFGOUUwMDBDOTBFMzEgLyogSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5t
bSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW07IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQjM2MjhFMjE0MUVBNEQwMDdCRkE1MyAvKiBB
UElJbnRlcm5hbERlYnVnRmVhdHVyZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBUElJbnRlcm5hbERlYnVn
RmVhdHVyZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUIzNjI5MDIxNDFFQUJD
MDA3QkZBNTMgLyogQVBJSW50ZXJuYWxEZWJ1Z0ZlYXR1cmUuY3BwICovID0ge2lzYSA9IFBCWEZp
bGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNl
Y29kZS5jcHAuY3BwOyBwYXRoID0gQVBJSW50ZXJuYWxEZWJ1Z0ZlYXR1cmUuY3BwOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwogCQkzMUIzNjI5MjIxNDFFQkFDMDA3QkZBNTMgLyogX1dLSW50
ZXJuYWxEZWJ1Z0ZlYXR1cmUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBh
dGggPSBfV0tJbnRlcm5hbERlYnVnRmVhdHVyZS5tbTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTYzOTAsMTEgKzYzOTAsMTEgQEAKIAkJCQkxREJCQjA2MTIxMUNDM0NCMDA1MDJFQ0Mg
LyogV0tTaGFyZVNoZWV0Lm1tICovLAogCQkJCTdBNzhGRjJFMjI0MTkxNzUwMDk2NDgzRSAvKiBX
S1N0b3JhZ2VBY2Nlc3NBbGVydC5oICovLAogCQkJCTdBNzhGRjJGMjI0MTkxNzYwMDk2NDgzRSAv
KiBXS1N0b3JhZ2VBY2Nlc3NBbGVydC5tbSAqLywKKwkJCQk0MTQ3REM2ODI1MTlFMjlEMDAyMTRF
RTcgLyogV0tVc2VyTWVkaWFDYXB0dXJlQWNjZXNzQWxlcnQuaCAqLywKKwkJCQk0MTQ3REM2NzI1
MTlFMjlEMDAyMTRFRTcgLyogV0tVc2VyTWVkaWFDYXB0dXJlQWNjZXNzQWxlcnQubW0gKi8sCiAJ
CQkJMkQ3QUFGRDIxOEM4NjQwNjAwQTdBQ0Q0IC8qIFdLV2ViVmlld0NvbnRlbnRQcm92aWRlci5o
ICovLAogCQkJCTJEQzZEOUMxMThDNDRBNjEwMDQzQkFENCAvKiBXS1dlYlZpZXdDb250ZW50UHJv
dmlkZXJSZWdpc3RyeS5oICovLAogCQkJCTJEQzZEOUMyMThDNDRBNjEwMDQzQkFENCAvKiBXS1dl
YlZpZXdDb250ZW50UHJvdmlkZXJSZWdpc3RyeS5tbSAqLywKLQkJCQk0MTQ3REM2ODI1MTlFMjlE
MDAyMTRFRTcgLyogV0tVc2VyTWVkaWFDYXB0dXJlQWNjZXNzQWxlcnQuaCAqLywKLQkJCQk0MTQ3
REM2NzI1MTlFMjlEMDAyMTRFRTcgLyogV0tVc2VyTWVkaWFDYXB0dXJlQWNjZXNzQWxlcnQubW0g
Ki8sCiAJCQkJQzE3MTBDRjIyNEE3QkQwMzAwRDdDMTEyIC8qIFhQQ0V2ZW50SGFuZGxlci5oICov
LAogCQkJKTsKIAkJCXBhdGggPSBDb2NvYTsKQEAgLTk4MjAsOCArOTgyMCw4IEBACiAJCQkJQjg3
OEI2MTQxMzM0MjhEQzAwNjg4OEU5IC8qIENvcnJlY3Rpb25QYW5lbC5tbSAqLywKIAkJCQlDMTgx
NzM2MjIwNTg0NEE5MDBERkRBNjUgLyogRGlzcGxheUxpbmsuY3BwICovLAogCQkJCUMxODE3MzYw
MjA1ODQyNDcwMERGREE2NSAvKiBEaXNwbGF5TGluay5oICovLAotCQkJCTMxQUJBNzlEMjE1QUY5
RTAwMEM5MEUzMSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcCAqLywKIAkJCQkzMUFC
QTc5QzIxNUFGOUUwMDBDOTBFMzEgLyogSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5oICovLAor
CQkJCTMxQUJBNzlEMjE1QUY5RTAwMEM5MEUzMSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2Vy
Lm1tICovLAogCQkJCTFBRkRFNjVCMTk1NEU4RDUwMEM0OEZGQSAvKiBMZWdhY3lTZXNzaW9uU3Rh
dGVDb2RpbmcuY3BwICovLAogCQkJCTBGQ0I0RTU4MThCQkUzRDkwMDBGQ0ZDOSAvKiBQYWdlQ2xp
ZW50SW1wbE1hYy5oICovLAogCQkJCTBGQ0I0RTU5MThCQkUzRDkwMDBGQ0ZDOSAvKiBQYWdlQ2xp
ZW50SW1wbE1hYy5tbSAqLywKQEAgLTEyOTc1LDcgKzEyOTc1LDYgQEAKIAkJCQkyRDExQjdCRjIx
MjZBMjgzMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTU2LW1tLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMkQxMUI3QzEyMTI2QTI4MzAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2U1Ny1tbS5tbSBpbiBT
b3VyY2VzICovLAogCQkJCTJEMTFCN0MyMjEyNkEyODMwMDZGODg3OCAvKiBVbmlmaWVkU291cmNl
NTcuY3BwIGluIFNvdXJjZXMgKi8sCi0JCQkJNDE0N0RDNjkyNTE5RUMzMzAwMjE0RUU3IC8qIFdL
VXNlck1lZGlhQ2FwdHVyZUFjY2Vzc0FsZXJ0Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3
QzMyMTI2QTI4MzAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2U1OC1tbS5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTJEMTFCN0M0MjEyNkEyODMwMDZGODg3OCAvKiBVbmlmaWVkU291cmNlNTguY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3QzYyMTI2QTI4MzAwNkY4ODc4IC8qIFVuaWZpZWRTb3Vy
Y2U1OS5jcHAgaW4gU291cmNlcyAqLywKQEAgLTEzMTMwLDYgKzEzMTI5LDcgQEAKIAkJCQkxREIw
MTk0NDIxMUNGMDA1MDA5RkIzRTggLyogV0tTaGFyZVNoZWV0Lm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJN0E3OEZGMzMyMjQxOTE5QjAwOTY0ODNFIC8qIFdLU3RvcmFnZUFjY2Vzc0FsZXJ0Lm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQ0UyMTIxNjAyNDBFRTU3MTAwNkVENDQzIC8qIFdLVGV4dFBsYWNl
aG9sZGVyLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJNDE0N0RDNjkyNTE5RUMzMzAwMjE0RUU3IC8q
IFdLVXNlck1lZGlhQ2FwdHVyZUFjY2Vzc0FsZXJ0Lm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQzE0
RDMwNjkyNEI3OUJFMDAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Lm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJQzE0RDMwNkEyNEI3OUJFNDAwNDgwMzg3IC8qIFhQQ0VuZHBvaW50Q2xpZW50Lm1tIGluIFNv
dXJjZXMgKi8sCiAJCQkpOwo=
</data>
<flag name="commit-queue"
          id="425414"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>409643</attachid>
            <date>2020-09-24 17:45:26 -0700</date>
            <delta_ts>2020-09-24 17:45:26 -0700</delta_ts>
            <desc>EWS test 2</desc>
            <filename>bug-216722-20200925104524.patch</filename>
            <type>text/plain</type>
            <size>126544</size>
            <attacher name="Dean Jackson">dino</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY3NTQ0CmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0
eS9BTkdMRS9DaGFuZ2VMb2cgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9DaGFuZ2VMb2cKaW5k
ZXggZThiMGY1N2EyZjhiMzk5YWFmNWExYmEzYmM0M2NlYzBhMzIxZjk5Yi4uYmM2ODc1NTI2NjQ1
Y2Q3ODQwMDEyNWRlMTczMTU4OGM0ZWI3YzU2YSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NoYW5nZUxv
ZwpAQCAtMSwzICsxLDEwMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBs
ZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5p
bmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKwor
ICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgIENoYW5nZSBBTkdMRSB0
byBkeW5hbWljYWxseSBsb2FkIGVpdGhlciBFQUdMIChPcGVuR0xFUykgb3IgQ0dMIChPcGVuR0wp
IGRlcGVuZGluZworICAgICAgICBvbiBib3RoIGNvbXBpbGUgYW5kIHJ1bnRpbWUgY29uZmlndXJh
dGlvbnMuCisgICAgICAgICAgICBJbnRlbCBNYWMgLT4gQ0dMCisgICAgICAgICAgICBJbnRlbCBN
YWMgQ2F0YWx5c3QgLT4gQ0dMCisgICAgICAgICAgICBJbnRlbCBpT1MgU2ltdWxhdG9yIC0+IEVB
R0wKKyAgICAgICAgICAgIGlPUyBEZXZpY2UgLT4gRUFHTAorICAgICAgICAgICAgQXBwbGUgU2ls
aWNvbiBNYWMgLT4gQ0dMCisgICAgICAgICAgICBBcHBsZSBTaWxpY29uIE1hYyBDYXRhbHlzdCAo
d2l0aCBNYWMgYXBwKSAtPiBDR0wKKyAgICAgICAgICAgIEFwcGxlIFNpbGljb24gTWFjIENhdGFs
eXN0ICh3aXRoIGlPUyBhcHApIC0+IEVBR0wKKworICAgICAgICBUaGUgdHJpY2tpZXN0IGJpdCBp
cyBBcHBsZSBTaWxpY29uIE1hYyBDYXRhbHlzdCwgd2hpY2ggZGVwZW5kcyBvbiB0aGUKKyAgICAg
ICAgYXBwbGljYXRpb24gaXMgaXQgYXR0ZW1wdGluZyB0byBydW4uIEluIHRoYXQgY2FzZSBBTkdM
RSBtdXN0IGNvbXBpbGUKKyAgICAgICAgYm90aCB0aGUgQ0dMIGFuZCBFQUdMIGludGVyZmFjZXMg
YW5kIHRoZW4gcGljayBvbmUgdG8gdXNlIGFmdGVyIGxhdW5jaC4KKworICAgICAgICAqIEFOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisKKyAgICAgICAgKiBD
b25maWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnOiBSZW1vdmUgYWxsIHRoZSBPcGVu
R0wqIGxpbmtpbmcuCisgICAgICAgICogQ29uZmlndXJhdGlvbnMvQU5HTEUtc3RhdGljLnhjY29u
ZmlnOgorCisgICAgICAgICogR0xFU3YyLmNtYWtlOiBOZXcgZmlsZXMuCisKKyAgICAgICAgKiBz
cmMvY29tbW9uL3BsYXRmb3JtLmg6IE5ldyBkZWZpbml0aW9ucyBmb3IgQ1BVIHR5cGUgb24gQXBw
bGUgU3lzdGVtcy4KKworICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaDog
U3BsaXQgU3lzdGVtSW5mbyBmb3IgQXBwbGUgaW50byB0d28KKyAgICAgICAgZmlsZXMsIGZvciBp
T1MgYW5kIE1hYy4gQWRkZWQgYSBmaWVsZCBmb3IgaXNpT1NBcHBPbk1hYyB0aGF0IHdpbGwgb25s
eQorICAgICAgICBiZSB0cnVlIHdoZW4gcnVubmluZyBhbiBpT1MgYmluYXJ5IG9uIEFwcGxlIFNp
bGljb24uCisgICAgICAgICogc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19hcHBsZS5tbTog
QWRkZWQuIERlY2lkZXMgd2hpY2ggU3lzdGVtSW5mbworICAgICAgICB0byBjYWxsLgorICAgICAg
ICAoYW5nbGU6OkdldFN5c3RlbUluZm8pOgorICAgICAgICAqIHNyYy9ncHVfaW5mb191dGlsL1N5
c3RlbUluZm9faW9zLmNwcDoKKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0ZW1JbmZvX2lvcyk6Cisg
ICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6IERlbGV0ZWQuCisgICAgICAgICogc3JjL2dw
dV9pbmZvX3V0aWwvU3lzdGVtSW5mb19tYWNvcy5tbToKKyAgICAgICAgKGFuZ2xlOjpHZXRTeXN0
ZW1JbmZvX21hYyk6CisgICAgICAgIChhbmdsZTo6R2V0U3lzdGVtSW5mbyk6IERlbGV0ZWQuCisK
KyAgICAgICAgKiBzcmMvbGliQU5HTEUvQ2Fwcy5jcHA6IENhbiBubyBsb25nZXIganVzdCBjaGVj
ayBmb3IgUExBVEZPUk1fSU9TLiBUaGlzCisgICAgICAgIG1pZ2h0IHN0aWxsIG5lZWQgYSBydW50
aW1lIGNoZWNrLgorICAgICAgICAoZ2w6OkRldGVybWluZURlcHRoVGV4dHVyZUFOR0xFU3VwcG9y
dCk6CisgICAgICAgIChnbDo6RGV0ZXJtaW5lRGVwdGhUZXh0dXJlT0VTU3VwcG9ydCk6CisKKyAg
ICAgICAgKiBzcmMvbGliQU5HTEUvRGlzcGxheS5jcHA6IFRoaXMgaXMgdGhlIG1haW4gaW5pdGlh
bGl6YXRpb24gcG9pbnQgZm9yCisgICAgICAgIEFOR0xFLCB3aGljaCBkZWNpZGVzIGF0IGNvbXBp
bGUvcnVudGltZSB3aGljaCB2YXJpYW50IG9mIERpc3BsYXkgdG8KKyAgICAgICAgY3JlYXRlLgor
CisgICAgICAgICogc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcDogQWRkIHRoZSBjb3JyZWN0
IGZvcm1hdHMuCisgICAgICAgIChnbDo6QnVpbGRJbnRlcm5hbEZvcm1hdEluZm9NYXApOgorCisg
ICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL1NvZnRMaW5raW5nX2FwcGxlLmg6IEFk
ZGVkLiBNYWNyb3MgdG8gaGVscCBzb2Z0LWxpbmsKKyAgICAgICAgZnVuY3Rpb25zIGFuZCBPYmpD
IGNsYXNzZXMuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5j
dGlvbnMuY3BwOiBBZGRlZC4gV2hlcmUgd2Ugc29mdC1saW5rIGFsbAorICAgICAgICB0aGUgT3Bl
bkdML0NHTCBBUEkuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuaDogQWRkZWQuCisKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
Y2dsL0Rpc3BsYXlDR0wubW06IFVzZSB0aGUgc29mdC1saW5rZWQgbWV0aG9kcy4KKyAgICAgICAg
KiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwOgor
ICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5o
OgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNH
TC5tbTogUmVuYW1lIFdlYlN3YXBMYXllciB0byBXZWJTd2FwTGF5ZXJDR0wKKyAgICAgICAgb3Ro
ZXJ3aXNlIGl0IGNsYXNoZXMgd2l0aCB0aGUgRUFHTCB2ZXJzaW9uLgorICAgICAgICAocng6Oldp
bmRvd1N1cmZhY2VDR0w6OmluaXRpYWxpemUpOgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgaW5p
dFdpdGhTaGFyZWRTdGF0ZTp3aXRoQ29udGV4dDp3aXRoRnVuY3Rpb25zOl0pOiBEZWxldGVkLgor
ICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY29weUNHTFBpeGVsRm9ybWF0Rm9yRGlzcGxheU1hc2s6
XSk6IERlbGV0ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBjb3B5Q0dMQ29udGV4dEZvclBp
eGVsRm9ybWF0Ol0pOiBEZWxldGVkLgorICAgICAgICAoLVtXZWJTd2FwTGF5ZXIgY2FuRHJhd0lu
Q0dMQ29udGV4dDpwaXhlbEZvcm1hdDpmb3JMYXllclRpbWU6ZGlzcGxheVRpbWU6XSk6IERlbGV0
ZWQuCisgICAgICAgICgtW1dlYlN3YXBMYXllciBkcmF3SW5DR0xDb250ZXh0OnBpeGVsRm9ybWF0
OmZvckxheWVyVGltZTpkaXNwbGF5VGltZTpdKTogRGVsZXRlZC4KKworICAgICAgICAqIHNyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuY3BwOiBTaW1pbGFyIGNoYW5nZXMg
dG8gdGhlIENHTCBpbXBsZW1lbnRhdGlvbi4KKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EZXZpY2VFQUdMLmg6CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGlzcGxheUVBR0wuaDoKKyAgICAgICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9EaXNwbGF5RUFHTC5tbToKKyAgICAgICAgKHJ4OjpEaXNwbGF5RUFHTDo6aW5pdGlh
bGl6ZSk6CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OnRlcm1pbmF0ZSk6CisgICAgICAgIChy
eDo6V29ya2VyQ29udGV4dEVBR0w6On5Xb3JrZXJDb250ZXh0RUFHTCk6CisgICAgICAgIChyeDo6
V29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KToKKyAgICAgICAgKHJ4OjpXb3JrZXJDb250
ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCk6CisgICAgICAgIChyeDo6RGlzcGxheUVBR0w6OmNyZWF0
ZVdvcmtlckNvbnRleHQpOgorICAgICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0VBR0xGdW5jdGlvbnMuaDogQWRkZWQuCisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbTogQWRkZWQuCisgICAgICAgICogc3JjL2xpYkFOR0xF
L3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wubW06CisgICAgICAgICogc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcDoKKyAgICAg
ICAgKiBzcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwOgorICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmg6
CisgICAgICAgICogc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVB
R0wubW06CisgICAgICAgICgtW1dlYlN3YXBMYXllckVBR0wgZGlzcGxheV0pOgorICAgICAgICAo
cng6OldpbmRvd1N1cmZhY2VFQUdMOjppbml0aWFsaXplKToKKyAgICAgICAgKC1bV2ViU3dhcExh
eWVyIGluaXRXaXRoU2hhcmVkU3RhdGU6d2l0aENvbnRleHQ6d2l0aEZ1bmN0aW9uczpdKTogRGVs
ZXRlZC4KKyAgICAgICAgKC1bV2ViU3dhcExheWVyIGRpc3BsYXldKTogRGVsZXRlZC4KKworICAg
ICAgICAqIHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcDogUnVu
dGltZSBjaGVjay4KKyAgICAgICAgKHJ4OjpuYXRpdmVnbF9nbDo6R2VuZXJhdGVDYXBzKToKKwog
MjAyMC0wOS0yNCAgS2ltbW8gS2lubnVuZW4gIDxra2lubnVuZW5AYXBwbGUuY29tPgogCiAgICAg
ICAgIFJFR1JFU1NJT046IFRleHR1cmVzIEZhaWwgdG8gUmVuZGVyIGluIFdlYkdMIGZyb20gSExT
IFN0cmVhbSBbaU9TIDE0XQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIv
U291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGEwOTVlNWZhYTQ1M2NjMmUxZmE4ZGNhMjcw
NzkwYzdmNGQwZWJkYjQuLjUwMzc5ZGI5YjkzYjY3MWQ1ZjUyYTUwY2I5OWUyYjA4YTgzYmM0NDcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMiBAQAorMjAyMC0wOS0yNCAgRGVhbiBKYWNrc29uICA8
ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hvdWxkIHVzZSBHTEVTIGluIGlPUyBh
cHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS82ODk3
NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9ydG9uLgorCisgICAgICAgICogQ29u
ZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZzogUmVtb3ZlIGFsbCBPcGVuR0wvT3BlbkdMRVMg
bGlua2luZy4KKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5oOiBDaGFuZ2Ug
dGhlIEFOR0xFIElPU3VyZmFjZSB0ZXh0dXJlIGJpbmRpbmcKKyAgICAgICAgZW51bXMgaW50byBm
dW5jdGlvbnMsIGJlY2F1c2UgdGhleSBoYXZlIHRvIGJlIGNhbGN1bGF0ZWQgYXQgcnVuLXRpbWUu
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVu
R0xDb2NvYS5tbTogVXNlIHRoZSBuZXcgc29mdC1saW5rZWQKKyAgICAgICAgZnVuY3Rpb25zIGZy
b20gUEFMLiBBbHNvIGltcGxlbWVudCB0aGUgSU9TdXJmYWNlIHRleHR1cmUgYmluZGluZyBoZWxw
ZXJzIHRoYXQgd2VyZQorICAgICAgICBwcmV2aW91c2x5IGVudW1zLgorICAgICAgICAqIHBsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbToKKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvV2Vi
R0xCbG9ja2xpc3QubW06CisKIDIwMjAtMDktMjQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxl
LmNvbT4KIAogICAgICAgICBVc2UgbW9yZSBpbmxpbmUgaW5pdGlhbGl6YXRpb24gYW5kIGNvbnN0
ZXhwciBpbiBXZWJBdWRpbyBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hh
bmdlTG9nIGIvU291cmNlL1dlYkNvcmUvUEFML0NoYW5nZUxvZwppbmRleCBmNzUxYTg2YjAyNGNm
ODdiMDY1MTAwNmZhNzhhN2Q0NjVjOTlkMTRiLi5lYTFiNjdlYzVlMzFjNjI5ZGRmMGYyYjhiNzVm
NTI1MjdiYTlkZTQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9QQUwvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAyMC0w
OS0yNCAgRGVhbiBKYWNrc29uICA8ZGlub0BhcHBsZS5jb20+CisKKyAgICAgICAgV2ViR0wgc2hv
dWxkIHVzZSBHTEVTIGluIGlPUyBhcHBzIHJ1bm5pbmcgb24gQXBwbGUgU2lsaWNvbgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2NzIyCisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82ODk3NjMzNz4KKworICAgICAgICBSZXZpZXdlZCBieSBUaW0gSG9y
dG9uLgorCisgICAgICAgIEFkZCBzb2Z0LWxpbmtpbmcgY29udGVudCBmb3IgT3BlbkdML09wZW5H
TEVTLgorCisgICAgICAgICogUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6CisgICAgICAg
ICogcGFsL1BsYXRmb3JtTWFjLmNtYWtlOgorICAgICAgICAqIHBhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmg6IEFkZGVkLgorICAgICAgICAqIHBhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0Nv
Y29hLm1tOiBBZGRlZC4KKwogMjAyMC0wOS0xNyAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9u
QGFwcGxlLmNvbT4KIAogICAgICAgICBQZXItYXBwIGFjY2VudCBjb2xvciBvdmVycmlkZXMgYXJl
IGJyb2tlbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
S2l0L0NoYW5nZUxvZwppbmRleCA1YzEzZWQzYThkOTA0Y2NjYWVlMGMwMWNiM2IzMzE3MjllZjI1
YTRkLi5kNmMyODZjZWZhZDNjMjQ5ZTQzZjk2NjBhZjMxY2IyNWM2MGNkMzQ2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDIwLTA5LTI0ICBEZWFuIEphY2tzb24gIDxkaW5vQGFwcGxlLmNv
bT4KKworICAgICAgICBXZWJHTCBzaG91bGQgdXNlIEdMRVMgaW4gaU9TIGFwcHMgcnVubmluZyBv
biBBcHBsZSBTaWxpY29uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTY3MjIKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY4OTc2MzM3PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IFRpbSBIb3J0b24uCisKKyAgICAgICAgKiBDb25maWd1cmF0aW9ucy9X
ZWJLaXQueGNjb25maWc6IFJlbW92ZSBPcGVuR0wgbGlua2luZy4KKyAgICAgICAgKiBVSVByb2Nl
c3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW06IFJlbmFtZWQgdG8gLm1tLiBVc2Ug
dGhlIFBBTCBzb2Z0LWxpbmtlZCBPcGVuR0wgQVBJLgorCiAyMDIwLTA5LTI0ICBLYXRlIENoZW5l
eSAgPGthdGhlcmluZV9jaGVuZXlAYXBwbGUuY29tPgogCiAgICAgICAgIENyYXNoVHJhY2VyOiBj
b20uYXBwbGUuV2ViS2l0Lk5ldHdvcmtpbmcgaW4gTmV0d29ya1Nlc3Npb246OmZpcnN0UGFydHlI
b3N0Q05BTUVEb21haW4oKSBjb2RlCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9BTkdMRS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQU5HTEUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagppbmRleCBlOGU2OTBkZGQ2NTZiODY0
ZjEzZGVkMDg2NmM4NDk0NjgxMTVkOTUyLi42YjEzNmZkM2Q3NmVhYjNlYzE4N2EzMTdjNWFhNTZk
Y2EzYmE0NzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9BTkdMRS54Y29k
ZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0FOR0xF
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTE1MCw2ICsxNTAsMTYgQEAKIAkJMzE1RUJF
MjQxRkNFNDYyQTAwQUM3QTg5IC8qIHNhZmVfbWF0aF9pbXBsLmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTVFQkUyMDFGQ0U0NjJBMDBBQzdBODkgLyog
c2FmZV9tYXRoX2ltcGwuaCAqLzsgfTsKIAkJMzE1RUJFMjgxRkNGODA4QzAwQUM3QTg5IC8qIFBN
dXJIYXNoLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDMxNUVCRTI2MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5jcHAgKi87IH07CiAJCTMxNUVC
RTI5MUZDRjgwOEMwMEFDN0E4OSAvKiBQTXVySGFzaC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE1RUJFMjcxRkNGODA4QzAwQUM3QTg5IC8qIFBNdXJI
YXNoLmggKi87IH07CisJCTMxNjQ3RjlGMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2Fw
cGxlLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2
NDdGOUUyNTExQTFBNjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi87IH07CisJCTMx
NjQ3RkEwMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGOUUyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi87IH07CisJCTMxNjQ3RkE0MjUxNTk3OEQwMDEw
RjhGQiAvKiBDR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmls
ZTsgZmlsZVJlZiA9IDMxNjQ3RkEyMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuaCAq
LzsgfTsKKwkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oIGluIEhl
YWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTIyNTE1OTc4
RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oICovOyB9OworCQkzMTY0N0ZBNjI1MTU5NzhEMDAx
MEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEzMjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMu
Y3BwICovOyB9OworCQkzMTY0N0ZBNzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNw
cCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNjQ3RkEz
MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xGdW5jdGlvbnMuY3BwICovOyB9OworCQkzMTY0N0ZCMzI1
MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjIyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xG
dW5jdGlvbnMuaCAqLzsgfTsKKwkJMzE2NDdGQjQyNTE3NjhBQzAwMTBGOEZCIC8qIEVBR0xGdW5j
dGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMx
NjQ3RkIyMjUxNzY4QUMwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi87IH07CisJCTMxNjQ3
RkI2MjUxNzY4REQwMDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQjUyNTE3NjhERDAwMTBGOEZCIC8q
IEVBR0xGdW5jdGlvbnMubW0gKi87IH07CisJCTMxNjQ3RkI3MjUxNzY4REQwMDEwRjhGQiAvKiBF
QUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMzE2NDdGQjUyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xGdW5jdGlvbnMubW0gKi87IH07
CiAJCTMxQTMzMUMyMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxQTMzMUMwMUVBNUVEMjUwMEZE
MjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLzsgfTsKIAkJMzFBMzMxQzYxRUE1RUQ1RjAwRkQyMjAz
IC8qIHN5c3RlbV91dGlsc19tYWMuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMzFBMzMxQzMxRUE1RUQ1RjAwRkQyMjAzIC8qIHN5c3RlbV91dGlsc19t
YWMuY3BwICovOyB9OwogCQkzMUEzMzFDNzFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxz
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMUEzMzFD
NDFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzLmggKi87IH07CkBAIC0xNTQ3LDYgKzE1
NTcsNyBAQAogLyogRW5kIFBCWENvcHlGaWxlc0J1aWxkUGhhc2Ugc2VjdGlvbiAqLwogCiAvKiBC
ZWdpbiBQQlhGaWxlUmVmZXJlbmNlIHNlY3Rpb24gKi8KKwkJMEY4NURBMkYyNTEzNzgwODAwMEE1
MDBCIC8qIFNvZnRMaW5raW5nX2FwcGxlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFNvZnRMaW5raW5nX2Fw
cGxlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEwMThCOTdCOUIwMDM5
MDYyRiAvKiBCYXNlVHlwZXMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gQmFz
ZVR5cGVzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREExMThCOTdCOUIw
MDM5MDYyRiAvKiBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IHBhdGggPSBCdWlsdEluRnVuY3Rpb25FbXVsYXRvci5jcHA7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxMDEyREEyMThCOTdCOUIwMDM5MDYyRiAvKiBCdWlsdElu
RnVuY3Rpb25FbXVsYXRvci5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNv
ZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBCdWls
dEluRnVuY3Rpb25FbXVsYXRvci5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMTY4
MSw2ICsxNjkyLDExIEBACiAJCTMxNUVCRTIwMUZDRTQ2MkEwMEFDN0E4OSAvKiBzYWZlX21hdGhf
aW1wbC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBzYWZlX21hdGhfaW1wbC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVFQkUyNjFGQ0Y4MDhDMDBBQzdBODkg
LyogUE11ckhhc2guY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gUE11
ckhhc2guY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTVFQkUyNzFGQ0Y4MDhD
MDBBQzdBODkgLyogUE11ckhhc2guaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0g
UE11ckhhc2guaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGOUUyNTExQTFB
NjAwMTBGOEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IHBhdGggPSBT
eXN0ZW1JbmZvX2FwcGxlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZB
MjI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IENHTEZ1
bmN0aW9ucy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBMzI1MTU5NzhE
MDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IENHTEZ1bmN0
aW9ucy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkIyMjUxNzY4QUMw
MDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFt
ZSA9IEVBR0xGdW5jdGlvbnMuaDsgcGF0aCA9IHNyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0VBR0xGdW5jdGlvbnMuaDsgc291cmNlVHJlZSA9IFNPVVJDRV9ST09UOyB9OworCQkzMTY0N0ZC
NTI1MTc2OEREMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5tbSAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0
aCA9IEVBR0xGdW5jdGlvbnMubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQTMz
MUMwMUVBNUVEMjUwMEZEMjIwMyAvKiBiaXRzZXRfdXRpbHMuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gYml0c2V0X3V0aWxzLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTMxQTMzMUMzMUVBNUVENUYwMEZEMjIwMyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IHN5c3RlbV91dGlsc19tYWMuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMUEzMzFDNDFFQTVFRDVGMDBGRDIyMDMgLyog
c3lzdGVtX3V0aWxzLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IHN5c3RlbV91
dGlscy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtMjQ3Miw2ICsyNDg4LDggQEAK
IAkJCQkzMTNCQ0U0RDIzNjExMzM5MDBGQzM5RTUgLyogRGV2aWNlRUFHTC5oICovLAogCQkJCTMx
M0JDRTQ2MjM2MTEzMzgwMEZDMzlFNSAvKiBEaXNwbGF5RUFHTC5oICovLAogCQkJCTMxM0JDRTUz
MjM2MTEzMzkwMEZDMzlFNSAvKiBEaXNwbGF5RUFHTC5tbSAqLywKKwkJCQkzMTY0N0ZCMjI1MTc2
OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9ucy5oICovLAorCQkJCTMxNjQ3RkI1MjUxNzY4REQw
MDEwRjhGQiAvKiBFQUdMRnVuY3Rpb25zLm1tICovLAogCQkJCTMxM0JDRTQ3MjM2MTEzMzgwMEZD
MzlFNSAvKiBJT1N1cmZhY2VTdXJmYWNlRUFHTC5oICovLAogCQkJCTMxM0JDRTRFMjM2MTEzMzkw
MEZDMzlFNSAvKiBJT1N1cmZhY2VTdXJmYWNlRUFHTC5tbSAqLywKIAkJCQkzMTNCQ0U0ODIzNjEx
MzM4MDBGQzM5RTUgLyogUGJ1ZmZlclN1cmZhY2VFQUdMLmNwcCAqLywKQEAgLTI5NjAsNiArMjk3
OCw3IEBACiAJCQkJQTMwMzA3ODcyMzA1RjhGMDAwMkRBOTcyIC8qIFNlbWFwaG9yZUdMLmggKi8s
CiAJCQkJNUNCMzAxMDgxREUzOUYxQTAwRDJDNDA1IC8qIFNoYWRlckdMLmNwcCAqLywKIAkJCQk1
Q0IzMDEwOTFERTM5RjFBMDBEMkM0MDUgLyogU2hhZGVyR0wuaCAqLywKKwkJCQkwRjg1REEyRjI1
MTM3ODA4MDAwQTUwMEIgLyogU29mdExpbmtpbmdfYXBwbGUuaCAqLywKIAkJCQk1Q0IzMDEwQTFE
RTM5RjFBMDBEMkM0MDUgLyogU3RhdGVNYW5hZ2VyR0wuY3BwICovLAogCQkJCTVDQjMwMTBCMURF
MzlGMUEwMEQyQzQwNSAvKiBTdGF0ZU1hbmFnZXJHTC5oICovLAogCQkJCTVDQjMwMTBDMURFMzlG
MUEwMEQyQzQwNSAvKiBTdXJmYWNlR0wuY3BwICovLApAQCAtMjk3OSw2ICsyOTk4LDggQEAKIAkJ
NUNCMzAxNDgxREUzOUYzNjAwRDJDNDA1IC8qIGNnbCAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3Vw
OwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMzE2NDdGQTMyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1
bmN0aW9ucy5jcHAgKi8sCisJCQkJMzE2NDdGQTIyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0
aW9ucy5oICovLAogCQkJCTVDQ0Q1OTcyMjI4NEZBODIwMDE4RjJEOCAvKiBDb250ZXh0Q0dMLmNw
cCAqLywKIAkJCQk1Q0NENTk3NTIyODRGQTgyMDAxOEYyRDggLyogQ29udGV4dENHTC5oICovLAog
CQkJCTZFMzFBMEExMjM0RUVFRDQwMEM4NDc4NCAvKiBEZXZpY2VDR0wuY3BwICovLApAQCAtMzIw
OCw2ICszMjI5LDcgQEAKIAkJCWNoaWxkcmVuID0gKAogCQkJCTVDQ0Q1OTk4MjI4NEZDNzUwMDE4
RjJEOCAvKiBTeXN0ZW1JbmZvLmNwcCAqLywKIAkJCQk1Q0NENTk5OTIyODRGQzc1MDAxOEYyRDgg
LyogU3lzdGVtSW5mby5oICovLAorCQkJCTMxNjQ3RjlFMjUxMUExQTYwMDEwRjhGQiAvKiBTeXN0
ZW1JbmZvX2FwcGxlLm1tICovLAogCQkJCTMxQjE1NzIxMjM2QjgwMzMwMENBQTRGRCAvKiBTeXN0
ZW1JbmZvX2ludGVybmFsLmggKi8sCiAJCQkJMzFCMTU3MUYyMzZCN0ZBRTAwQ0FBNEZEIC8qIFN5
c3RlbUluZm9faW9zLmNwcCAqLywKIAkJCQk1Q0NENTk5NzIyODRGQzc1MDAxOEYyRDggLyogU3lz
dGVtSW5mb19tYWNvcy5tbSAqLywKQEAgLTM0MTQsNiArMzQzNiw3IEBACiAJCQkJMzFDREZGRDgy
NDkxODRBNzAwNDg2RjI3IC8qIEJ1aWx0aW5zV29ya2Fyb3VuZEdMU0wuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxQ0RGRkY5MjQ5MTg0QTcwMDQ4NkYyNyAvKiBDYWxsREFHLmggaW4gSGVhZGVycyAq
LywKIAkJCQkzMUNEMDA2MTI0OTE4NEZDMDA0ODZGMjcgLyogQ2Fwcy5oIGluIEhlYWRlcnMgKi8s
CisJCQkJMzE2NDdGQTUyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJMzFDREZGODIyNDkxODQ5ODAwNDg2RjI3IC8qIENsYW1wRnJhZ0RlcHRoLmgg
aW4gSGVhZGVycyAqLywKIAkJCQkzMUNERkY4QTI0OTE4NDk4MDA0ODZGMjcgLyogQ2xhbXBQb2lu
dFNpemUuaCBpbiBIZWFkZXJzICovLAogCQkJCTMxQ0QwMDExMjQ5MTg0RTcwMDQ4NkYyNyAvKiBD
bGVhck11bHRpdmlld0dMLmggaW4gSGVhZGVycyAqLywKQEAgLTM0NTYsNiArMzQ3OSw3IEBACiAJ
CQkJMzFDRDAwMjMyNDkxODRFNzAwNDg2RjI3IC8qIERpc3BsYXlHTC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMzFDRDAwMkYyNDkxODRGNDAwNDg2RjI3IC8qIERpc3BsYXlJbXBsLmggaW4gSGVhZGVy
cyAqLywKIAkJCQkzMUNEMDAzODI0OTE4NEY0MDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzLmggaW4g
SGVhZGVycyAqLywKKwkJCQkzMTY0N0ZCNDI1MTc2OEFDMDAxMEY4RkIgLyogRUFHTEZ1bmN0aW9u
cy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZGOUEyNDkxODQ5ODAwNDg2RjI3IC8qIEVhcmx5
RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZERkEy
NDkxODNBNTAwNDg2RjI3IC8qIGVnbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzFDREZERjkyNDkx
ODNBNTAwNDg2RjI3IC8qIGVnbGV4dC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zODE5LDYgKzM4NDMs
NyBAQAogCQkJCUEzNjk0RkM3MjMyMDJDNTIwMEE4M0Q4RiAvKiBCdWlsdGluc1dvcmthcm91bmRH
TFNMLmggaW4gSGVhZGVycyAqLywKIAkJCQk1QzFEQkMyQjFCMDQzNzVGMDAyMzU1NTIgLyogQ2Fs
bERBRy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUMxREJEREIxQjA0MzhEMzAwMjM1NTUyIC8qIENh
cHMuaCBpbiBIZWFkZXJzICovLAorCQkJCTMxNjQ3RkE0MjUxNTk3OEQwMDEwRjhGQiAvKiBDR0xG
dW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDNTVENjY2MjI4MjZCOUYwMEI1QkEyQyAv
KiBDbGFtcEZyYWdEZXB0aC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNUM1NUQ2NUIyMjgyNkI5RjAw
QjVCQTJDIC8qIENsYW1wUG9pbnRTaXplLmggaW4gSGVhZGVycyAqLywKIAkJCQkzMTVFQkRDMTFG
Q0U0NEJGMDBBQzdBODkgLyogQ2xlYXJNdWx0aXZpZXdHTC5oIGluIEhlYWRlcnMgKi8sCkBAIC0z
ODYxLDYgKzM4ODYsNyBAQAogCQkJCTVDQjMwMTFGMURFMzlGMUEwMEQyQzQwNSAvKiBEaXNwbGF5
R0wuaCBpbiBIZWFkZXJzICovLAogCQkJCTVDQjMwNEUyMURFNDE2NDgwMEQyQzQwNSAvKiBEaXNw
bGF5SW1wbC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE1RUJEQzkxRkNFNDRFNDAwQUM3QTg5IC8q
IGRyaXZlcl91dGlscy5oIGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQjMyNTE3NjhBQzAwMTBG
OEZCIC8qIEVBR0xGdW5jdGlvbnMuaCBpbiBIZWFkZXJzICovLAogCQkJCTZFQjAxQzFEMjQ3NzI3
OUEwMEU1MEIzNSAvKiBFYXJseUZyYWdtZW50VGVzdHNPcHRpbWl6YXRpb24uaCBpbiBIZWFkZXJz
ICovLAogCQkJCTMxREI3OTU4MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2wuaCBpbiBIZWFkZXJzICov
LAogCQkJCTMxREI3OTU5MjQ5MUM4NDUwMDk4Mjg3OCAvKiBlZ2xleHQuaCBpbiBIZWFkZXJzICov
LApAQCAtNDMyMiw2ICs0MzQ4LDcgQEAKIAkJCQkzMUNERkU3RTI0OTE4NDNBMDA0ODZGMjcgLyog
QnVpbHRpbnNXb3JrYXJvdW5kR0xTTC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU4NjI0
OTE4NDNBMDA0ODZGMjcgLyogQ2FsbERBRy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkYx
QzI0OTE4NDVGMDA0ODZGMjcgLyogQ2Fwcy5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkzMTY0N0ZB
NzI1MTU5NzhEMDAxMEY4RkIgLyogQ0dMRnVuY3Rpb25zLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRTU4MjQ5MTg0MkUwMDQ4NkYyNyAvKiBDbGFtcEZyYWdEZXB0aC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMUNERkU2MTI0OTE4NDJGMDA0ODZGMjcgLyogQ2xhbXBQb2ludFNpemUuY3Bw
IGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQzMyNDkxODQ1MzAwNDg2RjI3IC8qIENsZWFyTXVs
dGl2aWV3R0wuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00MzYzLDYgKzQzOTAsNyBAQAogCQkJCTMx
Q0RGRUUxMjQ5MTg0NTgwMDQ4NkYyNyAvKiBEaXNwbGF5SW1wbC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkzMUNERkVFNTI0OTE4NDU4MDA0ODZGMjcgLyogZHJpdmVyX3V0aWxzLmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTMxQ0QwMEM2MjQ5MTkxN0UwMDQ4NkYyNyAvKiBkcml2ZXJfdXRpbHNfbWFj
Lm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQjcyNTE3NjhERDAwMTBGOEZCIC8qIEVBR0xG
dW5jdGlvbnMubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkU0NDI0OTE4NDJFMDA0ODZGMjcg
LyogRWFybHlGcmFnbWVudFRlc3RzT3B0aW1pemF0aW9uLmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTMxQ0RGRjM0MjQ5MTg0NjAwMDQ4NkYyNyAvKiBFR0xTeW5jLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTMxQ0RGRTgzMjQ5MTg0M0EwMDQ4NkYyNyAvKiBlbXVsYXRlZF9idWlsdGluX2Z1bmN0aW9u
c19obHNsX2F1dG9nZW4uY3BwIGluIFNvdXJjZXMgKi8sCkBAIC00NTU1LDYgKzQ1ODMsNyBAQAog
CQkJCTMxQ0RGRTE2MjQ5MTg0MjMwMDQ4NkYyNyAvKiBzeXN0ZW1fdXRpbHNfbWFjLmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCTMxQ0RGRTFFMjQ5MTg0MjMwMDQ4NkYyNyAvKiBzeXN0ZW1fdXRpbHNf
cG9zaXguY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFDREZFQjEyNDkxODQ0MjAwNDg2RjI3IC8q
IFN5c3RlbUluZm8uY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJMzE2NDdGQTAyNTExQTFBNjAwMTBG
OEZCIC8qIFN5c3RlbUluZm9fYXBwbGUubW0gaW4gU291cmNlcyAqLywKIAkJCQkzMUNERkVCMzI0
OTE4NDQyMDA0ODZGMjcgLyogU3lzdGVtSW5mb19pb3MuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
MzFDRDAwQzcyNDkxOTFEMTAwNDg2RjI3IC8qIFN5c3RlbUluZm9fbWFjb3MubW0gaW4gU291cmNl
cyAqLywKIAkJCQkzMUNERkVGQjI0OTE4NDVGMDA0ODZGMjcgLyogVGV4dHVyZS5jcHAgaW4gU291
cmNlcyAqLywKQEAgLTQ2NTUsNiArNDY4NCw3IEBACiAJCQkJQTM2OTRGQzYyMzIwMkM1MjAwQTgz
RDhGIC8qIEJ1aWx0aW5zV29ya2Fyb3VuZEdMU0wuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNUMx
REJDMkExQjA0Mzc1RjAwMjM1NTUyIC8qIENhbGxEQUcuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
NUMxREJEREExQjA0MzhEMzAwMjM1NTUyIC8qIENhcHMuY3BwIGluIFNvdXJjZXMgKi8sCisJCQkJ
MzE2NDdGQTYyNTE1OTc4RDAwMTBGOEZCIC8qIENHTEZ1bmN0aW9ucy5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1QzU1RDZBQzIyODI2QkM4MDBCNUJBMkMgLyogQ2xhbXBGcmFnRGVwdGguY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUM1NUQ2QUQyMjgyNkJDODAwQjVCQTJDIC8qIENsYW1wUG9pbnRT
aXplLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTMxNUVCREJEMUZDRTQ0QkYwMEFDN0E4OSAvKiBD
bGVhck11bHRpdmlld0dMLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDY5Niw2ICs0NzI2LDcgQEAK
IAkJCQk1Q0IzMDRFMTFERTQxNjQ4MDBEMkM0MDUgLyogRGlzcGxheUltcGwuY3BwIGluIFNvdXJj
ZXMgKi8sCiAJCQkJMzE1RUJEQ0MxRkNFNDRFNDAwQUM3QTg5IC8qIGRyaXZlcl91dGlscy5jcHAg
aW4gU291cmNlcyAqLywKIAkJCQlBMzAzMDc5RDIzMDYyNTY1MDAyREE5NzIgLyogZHJpdmVyX3V0
aWxzX21hYy5tbSBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkI2MjUxNzY4REQwMDEwRjhGQiAv
KiBFQUdMRnVuY3Rpb25zLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJNkVCMDFDMUUyNDc3Mjc5QTAw
RTUwQjM1IC8qIEVhcmx5RnJhZ21lbnRUZXN0c09wdGltaXphdGlvbi5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk1Q0NENTk2QTIyODRGNzk2MDAxOEYyRDggLyogRUdMU3luYy5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQkzMTVFQkQ5NzFGQ0U0NDM2MDBBQzdBODkgLyogZW11bGF0ZWRfYnVpbHRpbl9m
dW5jdGlvbnNfaGxzbF9hdXRvZ2VuLmNwcCBpbiBTb3VyY2VzICovLApAQCAtNDg4OCw2ICs0OTE5
LDcgQEAKIAkJCQkzMUEzMzFDNjFFQTVFRDVGMDBGRDIyMDMgLyogc3lzdGVtX3V0aWxzX21hYy5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk1QzU1RDczMDIyODI3NDc3MDBCNUJBMkMgLyogc3lzdGVt
X3V0aWxzX3Bvc2l4LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTVDQ0Q1OTlCMjI4NEZDNzUwMDE4
RjJEOCAvKiBTeXN0ZW1JbmZvLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RjlGMjUxMUEx
QTYwMDEwRjhGQiAvKiBTeXN0ZW1JbmZvX2FwcGxlLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMzFC
MTU3MjAyMzZCN0ZBRjAwQ0FBNEZEIC8qIFN5c3RlbUluZm9faW9zLmNwcCBpbiBTb3VyY2VzICov
LAogCQkJCTVDQ0Q1OTlBMjI4NEZDNzUwMDE4RjJEOCAvKiBTeXN0ZW1JbmZvX21hY29zLm1tIGlu
IFNvdXJjZXMgKi8sCiAJCQkJNUMxREJGMzAxQjA0MzhEMzAwMjM1NTUyIC8qIFRleHR1cmUuY3Bw
IGluIFNvdXJjZXMgKi8sCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtZHluYW1pYy54Y2NvbmZpZwppbmRleCAzMTU4MmI5MjJi
ZGYyYWVhNjI0ZDAyZWJhNWY3ZjFhNGEwNWFjNzExLi4zMTIwZWUyYzI5NmIzMjBkMGY5ZmYzZjNk
NmFjYjA0Y2VjOGU3YzZiIDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25m
aWd1cmF0aW9ucy9BTkdMRS1keW5hbWljLnhjY29uZmlnCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLWR5bmFtaWMueGNjb25maWcKQEAgLTUsMTQgKzUs
MTQgQEAgUFJPRFVDVF9OQU1FID0gQU5HTEUtc2hhcmVkOwogRVhFQ1VUQUJMRV9QUkVGSVggPSBs
aWI7CiAKIEFOR0xFX09USEVSX0xERkxBR1MgPSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlIC1h
bGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAtZnJhbWV3b3JrIFF1YXJ0ekNvcmUg
LWZyYW1ld29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsg
SU9TdXJmYWNlICQoQU5HTEVfT1RIRVJfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKLUFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtZnJhbWV3b3JrIE9wZW5HTEVTIC1sejsKK0FO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MgPSAtbHo7CiBBTkdMRV9PVEhFUl9MREZMQUdTX2lw
aG9uZXNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVvcyk7CiBBTkdMRV9P
VEhFUl9MREZMQUdTX3dhdGNob3MgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwog
QU5HTEVfT1RIRVJfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERGTEFH
U19pcGhvbmVzaW11bGF0b3IpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2b3MgPSAkKEFO
R0xFX09USEVSX0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU19hcHBsZXR2
c2ltdWxhdG9yID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZXNpbXVsYXRvcik7Ci1BTkdM
RV9PVEhFUl9MREZMQUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3Jr
IE9wZW5HTCAtbHo7Ci1BTkdMRV9PVEhFUl9MREZMQUdTX21hY29zeCA9IC1mcmFtZXdvcmsgSU9L
aXQgLWZyYW1ld29yayBPcGVuR0wgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19tYWNjYXRhbHlz
dCA9IC1mcmFtZXdvcmsgSU9LaXQgLWx6OworQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAt
ZnJhbWV3b3JrIElPS2l0IC1sejsKIAogSU5TVEFMTF9QQVRIID0gJChOT1JNQUxfV0VCQ09SRV9G
UkFNRVdPUktTX0RJUikvV2ViQ29yZS5mcmFtZXdvcmsvRnJhbWV3b3JrczsKIElOU1RBTExfUEFU
SFtzZGs9bWFjb3N4Kl0gPSAkKElOU1RBTExfUEFUSF9VU0VfT1ZFUlJJREVfRlJBTUVXT1JLU19E
SVJfJChXS19VU0VfT1ZFUlJJREVfRlJBTUVXT1JLU19ESVIpKTsKQEAgLTM2LDcgKzM2LDcgQEAg
UFVCTElDX0hFQURFUlNfRk9MREVSX1BBVEhfbWFjY2F0YWx5c3QgPSAkKFdLX0FMVEVSTkFURV9G
UkFNRVdPUktTX0RJUikvJChBTkdMRV8KIAogREVCVUdfREVGSU5FU19kZWJ1ZyA9IDsKIERFQlVH
X0RFRklORVNfbm9ybWFsID0gTkRFQlVHOwotR0NDX1BSRVBST0NFU1NPUl9ERUZJTklUSU9OUyA9
ICQoREVCVUdfREVGSU5FU18kKENVUlJFTlRfVkFSSUFOVCkpIExJQkdMRVNWMl9JTVBMRU1FTlRB
VElPTiBMSUJBTkdMRV9JTVBMRU1FTlRBVElPTiBBTkdMRV9FTkFCTEVfT1BFTkdMIEFOR0xFX0VO
QUJMRV9HTFNMIEFOR0xFX0VOQUJMRV9FU1NMIEdMX1NJTEVOQ0VfREVQUkVDQVRJT047CitHQ0Nf
UFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gJChERUJVR19ERUZJTkVTXyQoQ1VSUkVOVF9WQVJJ
QU5UKSkgTElCR0xFU1YyX0lNUExFTUVOVEFUSU9OIExJQkFOR0xFX0lNUExFTUVOVEFUSU9OIEFO
R0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVfRU5BQkxFX0dMU0wgQU5HTEVfRU5BQkxFX0VTU0wgR0xf
U0lMRU5DRV9ERVBSRUNBVElPTiBHTEVTX1NJTEVOQ0VfREVQUkVDQVRJT047CiAKIElOU1RBTExI
RFJTX1NDUklQVF9QSEFTRSA9IFlFUzsKIFVTRV9IRUFERVJNQVAgPSBOTzsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRpYy54Y2Nv
bmZpZyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL0NvbmZpZ3VyYXRpb25zL0FOR0xFLXN0YXRp
Yy54Y2NvbmZpZwppbmRleCA0ZDFkMjIxMTkzNWE1MTJiOTY4ODYxODVlYzA2Njg1YjkyNzk2YjA3
Li44MjRhMjdiNTMxMzk1YjViMDAyYzJiZjU3MWY5NzllOWVjNjZmYjA0IDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9Db25maWd1cmF0aW9ucy9BTkdMRS1zdGF0aWMueGNjb25m
aWcKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvQ29uZmlndXJhdGlvbnMvQU5HTEUtc3Rh
dGljLnhjY29uZmlnCkBAIC01LDE0ICs1LDE0IEBAIFBST0RVQ1RfTkFNRSA9IEFOR0xFOwogRVhF
Q1VUQUJMRV9QUkVGSVggPSBsaWI7CiAKIEFOR0xFX09USEVSX0xERkxBR1MgPSAtYWxsb3dhYmxl
X2NsaWVudCBXZWJDb3JlIC1hbGxvd2FibGVfY2xpZW50IFdlYkNvcmVUZXN0U3VwcG9ydCAkKEFO
R0xFX09USEVSX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1BTkdMRV9PVEhFUl9MREZM
QUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBPcGVuR0xFUyAt
bHo7CitBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBJT1N1cmZhY2Ug
LWx6OwogQU5HTEVfT1RIRVJfTERGTEFHU19pcGhvbmVzaW11bGF0b3IgPSAkKEFOR0xFX09USEVS
X0xERkxBR1NfaXBob25lb3MpOwogQU5HTEVfT1RIRVJfTERGTEFHU193YXRjaG9zID0gJChBTkdM
RV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsKIEFOR0xFX09USEVSX0xERkxBR1Nfd2F0Y2hzaW11
bGF0b3IgPSAkKEFOR0xFX09USEVSX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKIEFOR0xFX09U
SEVSX0xERkxBR1NfYXBwbGV0dm9zID0gJChBTkdMRV9PVEhFUl9MREZMQUdTX2lwaG9uZW9zKTsK
IEFOR0xFX09USEVSX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRvciA9ICQoQU5HTEVfT1RIRVJfTERG
TEFHU19pcGhvbmVzaW11bGF0b3IpOwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNjYXRhbHlzdCA9
IC1mcmFtZXdvcmsgSU9LaXQgLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBPcGVuR0wg
LWx6OwotQU5HTEVfT1RIRVJfTERGTEFHU19tYWNvc3ggPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFt
ZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsgT3BlbkdMIC1sejsKK0FOR0xFX09USEVSX0xERkxB
R1NfbWFjY2F0YWx5c3QgPSAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1s
ejsKK0FOR0xFX09USEVSX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3
b3JrIElPU3VyZmFjZSAtbHo7CiAKIElOU1RBTExfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRI
X1BSRUZJWCkvdXNyL2xvY2FsL2xpYjsKIApAQCAtMjQsNyArMjQsNyBAQCBQVUJMSUNfSEVBREVS
U19GT0xERVJfUEFUSCA9ICQoQU5HTEVfSU5TVEFMTF9QQVRIX1BSRUZJWCkvdXNyL2xvY2FsL2lu
Y2x1ZGUvQU5HTAogCiBERUJVR19ERUZJTkVTX2RlYnVnID0gOwogREVCVUdfREVGSU5FU19ub3Jt
YWwgPSBOREVCVUc7Ci1HQ0NfUFJFUFJPQ0VTU09SX0RFRklOSVRJT05TID0gJChERUJVR19ERUZJ
TkVTXyQoQ1VSUkVOVF9WQVJJQU5UKSkgTElCR0xFU1YyX0lNUExFTUVOVEFUSU9OIExJQkFOR0xF
X0lNUExFTUVOVEFUSU9OIEFOR0xFX0VOQUJMRV9PUEVOR0wgQU5HTEVfRU5BQkxFX0dMU0wgQU5H
TEVfRU5BQkxFX0VTU0wgR0xfU0lMRU5DRV9ERVBSRUNBVElPTjsKK0dDQ19QUkVQUk9DRVNTT1Jf
REVGSU5JVElPTlMgPSAkKERFQlVHX0RFRklORVNfJChDVVJSRU5UX1ZBUklBTlQpKSBMSUJHTEVT
VjJfSU1QTEVNRU5UQVRJT04gTElCQU5HTEVfSU1QTEVNRU5UQVRJT04gQU5HTEVfRU5BQkxFX09Q
RU5HTCBBTkdMRV9FTkFCTEVfR0xTTCBBTkdMRV9FTkFCTEVfRVNTTCBHTF9TSUxFTkNFX0RFUFJF
Q0FUSU9OIEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTjsKIAogSU5TVEFMTEhEUlNfU0NSSVBUX1BI
QVNFID0gWUVTOwogVVNFX0hFQURFUk1BUCA9IE5POwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvR0xFU3YyLmNtYWtlIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvR0xFU3Yy
LmNtYWtlCmluZGV4IDA0ZmJlOWVmZTdjOTUzOTE2YzZhNTY4ZTE3YTJiNWE1NGFkZDMzYjkuLjRm
YmRiY2I4Y2UyMDJkNTdhYWFlM2YwZDQ5ZTVjM2I5OTRkMDBjNDEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL0dMRVN2Mi5jbWFrZQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9HTEVTdjIuY21ha2UKQEAgLTE2Nyw3ICsxNjcsOSBAQCBzZXQobGliYW5nbGVfZ3B1X2lu
Zm9fdXRpbF9saWJwY2lfc291cmNlcwogc2V0KGxpYmFuZ2xlX2dwdV9pbmZvX3V0aWxfeDExX3Nv
dXJjZXMgInNyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9feDExLmNwcCIgKQogCiAKLXNldChs
aWJhbmdsZV9ncHVfaW5mb191dGlsX21hY19zb3VyY2VzICJzcmMvZ3B1X2luZm9fdXRpbC9TeXN0
ZW1JbmZvX21hY29zLm1tIiApCitzZXQobGliYW5nbGVfZ3B1X2luZm9fdXRpbF9tYWNfc291cmNl
cworICAgICJzcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tIgorICAgICJzcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29zLm1tIiApCiAKIAogc2V0KGxpYmFuZ2xlX2lu
Y2x1ZGVzCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3Bs
YXRmb3JtLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvY29tbW9uL3BsYXRmb3JtLmgK
aW5kZXggMDQxNmVkMjAxZDU5NGU1NDA5ZWE5ZDdlNjQwYjY0ODljNDc2YWNlZC4uYjM0MWFmMWY1
Zjk4ZjVkNDUxNDAwMTMzYzM4OWQ3MzY2NWY3YTZiNSAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2NvbW1vbi9wbGF0Zm9ybS5oCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5
L0FOR0xFL3NyYy9jb21tb24vcGxhdGZvcm0uaApAQCAtMTIwLDcgKzEyMCw2IEBACiAjICAgICAg
ICBkZWZpbmUgQU5HTEVfUExBVEZPUk1fTUFDT1MgMQogIyAgICBlbGlmIFRBUkdFVF9PU19JUEhP
TkUKICMgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9JT1MgMQotIyAgICAgICAgZGVmaW5l
IEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTgogIyAgICAgICAgaWYgVEFSR0VUX09TX1NJTVVMQVRP
UgogIyAgICAgICAgICAgIGRlZmluZSBBTkdMRV9QTEFURk9STV9JT1NfU0lNVUxBVE9SIDEKICMg
ICAgICAgIGVuZGlmCkBAIC0xMjgsNiArMTI3LDExIEBACiAjICAgICAgICAgICAgZGVmaW5lIEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUCiAjICAgICAgICBlbmRpZgogIyAgICBlbmRpZgorIyAg
ICAvLyBUaGlzIG1pZ2h0IGJlIHVzZWZ1bCBnbG9iYWxseS4gQXQgdGhlIG1vbWVudCBpdCBpcyB1
c2VkCisjICAgIC8vIHRvIGRpZmZlcmVudGlhdGUgTWFjQ2F0YWx5c3Qgb24gSW50ZWwgYW5kIEFw
cGxlIFNpbGljb24uCisjICAgIGlmIGRlZmluZWQoX19hcm02NF9fKSB8fCBkZWZpbmVkKF9fYWFy
Y2g2NF9fKQorIyAgICAgICAgZGVmaW5lIEFOR0xFX0NQVV9BUk02NAorIyAgICBlbmRpZgogI2Vu
ZGlmCiAKIC8vIERlZmluZSBBTkdMRV9XSVRIX0FTQU4gbWFjcm8uCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmggYi9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvLmgKaW5kZXgg
ZDI4ZTdjYTJjMDZkYjcyMjMwY2M2OTdlMzhjNzM5ZDY2ZDNlZjljOS4uNzFmNzZlYjVmNjQ2NGUy
NWVkY2Q0ZjllZTJkMWU3Y2QxODMzYmIxNiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mby5oCisrKyBiL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaApAQCAtNjcsNiArNjcsOSBA
QCBzdHJ1Y3QgU3lzdGVtSW5mbwogICAgIGJvb2wgaXNBTURTd2l0Y2hhYmxlID0gZmFsc2U7CiAg
ICAgLy8gT25seSB0cnVlIG9uIGR1YWwtR1BVIE1hYyBsYXB0b3BzLgogICAgIGJvb2wgaXNNYWNT
d2l0Y2hhYmxlID0gZmFsc2U7CisgICAgLy8gT25seSB0cnVlIG9uIEFwcGxlIFNpbGljb24gTWFj
cyB3aGVuIHJ1bm5pbmcgaU9TIGJpbmFyaWVzLgorICAgIC8vIFNlZSBodHRwczovL2RldmVsb3Bl
ci5hcHBsZS5jb20vZG9jdW1lbnRhdGlvbi9mb3VuZGF0aW9uL25zcHJvY2Vzc2luZm8vMzYwODU1
Ni1pb3NhcHBvbm1hYworICAgIGJvb2wgaXNpT1NBcHBPbk1hYyAgID0gZmFsc2U7CiAKICAgICAv
LyBPbmx5IGF2YWlsYWJsZSBvbiBBbmRyb2lkCiAgICAgc3RkOjpzdHJpbmcgbWFjaGluZU1hbnVm
YWN0dXJlcjsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5m
b191dGlsL1N5c3RlbUluZm9fYXBwbGUubW0gYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
Z3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu
ZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU4OTczY2Y1MmQy
ZDMyNzVkMmNiYjk5MzM0MDkxMjMwOTY0YjMxYjYKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2FwcGxlLm1tCkBA
IC0wLDAgKzEsNDkgQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMCBBcHBsZSwgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkg
YSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQgaW4gdGhlIExJQ0VOU0Ug
ZmlsZS4KKy8vCisKKy8vIFN5c3RlbUluZm9fYXBwbGUuY3BwOiBpbXBsZW1lbnRhdGlvbiBvZiB0
aGUgQXBwbGUtc3BlY2lmaWMgcGFydHMgb2YgU3lzdGVtSW5mby5oCisKKyNpbXBvcnQgImNvbW1v
bi9wbGF0Zm9ybS5oIgorCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKKworIyAg
ICBpbXBvcnQgImdwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pbnRlcm5hbC5oIgorIyAgICBpbXBv
cnQgPGRpc3BhdGNoL2Rpc3BhdGNoLmg+CisjICAgIGltcG9ydCA8Rm91bmRhdGlvbi9Gb3VuZGF0
aW9uLmg+CisKK25hbWVzcGFjZSBhbmdsZQoreworCitib29sIEdldFN5c3RlbUluZm8oU3lzdGVt
SW5mbyAqaW5mbykKK3sKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAm
JiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyAgICBzdGF0aWMgYm9vbCBpc2lPU0FwcE9uTWFj
ID0gZmFsc2U7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAgIGRpc3BhdGNo
X29uY2UoJm9uY2UsIF57CisgICAgICAgIGlzaU9TQXBwT25NYWMgPSBbW05TUHJvY2Vzc0luZm8g
cHJvY2Vzc0luZm9dIGlzaU9TQXBwT25NYWNdOworICAgIH0pOworCisgICAgaWYgKGlzaU9TQXBw
T25NYWMpCisgICAgeworICAgICAgICBHZXRTeXN0ZW1JbmZvX2lvcyhpbmZvKTsKKyAgICAgICAg
aWYgKGluZm8pCisgICAgICAgIHsKKyAgICAgICAgICAgIGluZm8tPmlzaU9TQXBwT25NYWMgPSB0
cnVlOworICAgICAgICB9CisgICAgICAgIHJldHVybiBpbmZvOworICAgIH0KKworICAgIHJldHVy
biBHZXRTeXN0ZW1JbmZvX21hYyhpbmZvKTsKKyNlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisgICAgcmV0dXJu
IEdldFN5c3RlbUluZm9fbWFjKGluZm8pOworI2Vsc2UKKyAgICByZXR1cm4gR2V0U3lzdGVtSW5m
b19pb3MoaW5mbyk7CisjZW5kaWYKK30KKworfSAgLy8gbmFtZXNwYWNlIGFuZ2xlCisKKyNlbmRp
ZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50ZXJuYWwuaCBi
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW50
ZXJuYWwuaAppbmRleCAyMWE3NzYyZWVhZGRhMDA2NWQxNGQxMmY3NDUxM2ExZmE0MGEyMTJkLi5k
MzAwYmQ4MWE5MGE4NzRmN2I5ZTIwODU2YTdkZjA1MjdmZDk1MTU1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFs
LmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVt
SW5mb19pbnRlcm5hbC5oCkBAIC0yOSw2ICsyOSwxNCBAQCBib29sIFBhcnNlTWFjTWFjaGluZU1v
ZGVsKGNvbnN0IHN0ZDo6c3RyaW5nICZpZGVudGlmaWVyLAogICAgICAgICAgICAgICAgICAgICAg
ICAgICBpbnQzMl90ICptaW5vcik7CiBib29sIENNRGV2aWNlSURUb0RldmljZUFuZFZlbmRvcklE
KGNvbnN0IHN0ZDo6c3RyaW5nICZpZCwgdWludDMyX3QgKnZlbmRvcklkLCB1aW50MzJfdCAqZGV2
aWNlSWQpOwogCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKK2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lzdGVt
SW5mbyAqaW5mbyk7CisjZW5kaWYKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSB8
fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9D
UFVfQVJNNjQpKQorYm9vbCBHZXRTeXN0ZW1JbmZvX2lvcyhTeXN0ZW1JbmZvICppbmZvKTsKKyNl
bmRpZgorCiB9ICAvLyBuYW1lc3BhY2UgYW5nbGUKIAogI2VuZGlmICAvLyBHUFVfSU5GT19VVElM
X1NZU1RFTV9JTkZPX0lOVEVSTkFMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAgYi9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2lvcy5jcHAKaW5kZXggYzBk
NDM2ZjU2MThjZjEyNzdiNWVjNzlkOGMzMTEzZGNjZjBjMzhhZi4uYmQyMjE5NzA2MmU4Yzk4NWY0
ZDQyMWU1Y2U2MzI3YTNhOTliNDFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5mb19pb3MuY3BwCisrKyBiL1NvdXJjZS9UaGly
ZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3RlbUluZm9faW9zLmNwcApAQCAtOCwx
NCArOCwxNCBAQAogCiAjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNpZiBkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAg
aW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX2ludGVybmFsLmgiCiAKIG5hbWVzcGFj
ZSBhbmdsZQogewogCi1ib29sIEdldFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykKK2Jvb2wg
R2V0U3lzdGVtSW5mb19pb3MoU3lzdGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAgICAgIC8v
IFRPRE8oYW5nbGVidWcuY29tLzQyNzUpOiBHZXQgdGhlIGFjdHVhbCBzeXN0ZW0gdmVyc2lvbi4K
QEAgLTI3LDQgKzI3LDQgQEAgYm9vbCBHZXRTeXN0ZW1JbmZvKFN5c3RlbUluZm8gKmluZm8pCiAK
IH0gIC8vIG5hbWVzcGFjZSBhbmdsZQogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNlbmRpZiAg
Ly8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCmRpZmYgLS1naXQgYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2dwdV9pbmZvX3V0aWwvU3lzdGVtSW5m
b19tYWNvcy5tbQppbmRleCBhOGVkN2FmMjZmNDI0NGM5NDkzZWQ2YTg1N2FmYWMxOTI4YWE4ZmUw
Li4yYWI5MmZjNzY0ZGY4NjczMDUxODA0OTBjMTY5ZDIwYTlkZDg1YjUwIDEwMDY0NAotLS0gYS9T
b3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvZ3B1X2luZm9fdXRpbC9TeXN0ZW1JbmZvX21hY29z
Lm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9ncHVfaW5mb191dGlsL1N5c3Rl
bUluZm9fbWFjb3MubW0KQEAgLTE1LDYgKzE1LDggQEAKICMgICAgaW1wb3J0IDxDb2NvYS9Db2Nv
YS5oPgogIyAgICBpbXBvcnQgPElPS2l0L0lPS2l0TGliLmg+CiAKKyMgICAgaW5jbHVkZSAibGli
QU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3BhY2UgYW5nbGUK
IHsKIApAQCAtMjA4LDcgKzIxMCw3IEBAIHVpbnQ2NF90IEdldEdwdUlERnJvbU9wZW5HTERpc3Bs
YXlNYXNrKHVpbnQzMl90IGRpc3BsYXlNYXNrKQogICAgIHJldHVybiAwOwogfQogCi1ib29sIEdl
dFN5c3RlbUluZm8oU3lzdGVtSW5mbyAqaW5mbykKK2Jvb2wgR2V0U3lzdGVtSW5mb19tYWMoU3lz
dGVtSW5mbyAqaW5mbykKIHsKICAgICB7CiAgICAgICAgIGludDMyX3QgbWFqb3IgPSAwOwpkaWZm
IC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0NhcHMuY3BwCmluZGV4IGVlNGYw
OWUwMWQ2YTcxNWFkYTNjMDI1ZDg5MmZjY2M1ZmNiZTA3YjMuLmNlZjExNWI3MzY1NjUyMmNlOTQ2
OGViYTZmNGU3ZDJhM2NjMzcyNDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9DYXBzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMv
bGliQU5HTEUvQ2Fwcy5jcHAKQEAgLTYyNSw5ICs2MjUsMTAgQEAgc3RhdGljIGJvb2wgRGV0ZXJt
aW5lRGVwdGhUZXh0dXJlQU5HTEVTdXBwb3J0KGNvbnN0IFRleHR1cmVDYXBzTWFwICZ0ZXh0dXJl
Q2FwcykKIHsKICAgICBjb25zdGV4cHIgR0xlbnVtIHJlcXVpcmVkRm9ybWF0c1tdID0gewogICAg
ICAgICBHTF9ERVBUSF9DT01QT05FTlQxNiwKLSNpZiAhQU5HTEVfUExBVEZPUk1fSU9TCisjaWYg
IWRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAoIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpIHx8ICFkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAgICAgICAgIC8vIEZJ
WE1FOiBUZW1wb3JhcmlseSBSZW1vdmluZyB0aGUgbmVlZCBmb3IgR0xfREVQVEhfQ09NUE9ORU5U
MzJfT0VTCiAgICAgICAgIC8vIGJlY2F1c2UgaXQgaXMgbm90IHN1cHBvcnRlZCBvbiBpT1MuCisg
ICAgICAgIC8vIEZJWE1FOiBJIHRoaW5rIHRoaXMgbmVlZHMgdG8gYmUgYSBydW50aW1lIGNoZWNr
IHdoZW4gcnVubmluZyBhbiBpT1MgYXBwIG9uIE1hYy4KICAgICAgICAgR0xfREVQVEhfQ09NUE9O
RU5UMzJfT0VTLAogI2VuZGlmCiAgICAgICAgIEdMX0RFUFRIMjRfU1RFTkNJTDhfT0VTLApAQCAt
NjQxLDkgKzY0MiwxMCBAQCBzdGF0aWMgYm9vbCBEZXRlcm1pbmVEZXB0aFRleHR1cmVPRVNTdXBw
b3J0KGNvbnN0IFRleHR1cmVDYXBzTWFwICZ0ZXh0dXJlQ2FwcykKIHsKICAgICBjb25zdGV4cHIg
R0xlbnVtIHJlcXVpcmVkRm9ybWF0c1tdID0gewogICAgICAgICBHTF9ERVBUSF9DT01QT05FTlQx
NiwKLSNpZiAhQU5HTEVfUExBVEZPUk1fSU9TCisjaWYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAoIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpIHx8ICFkZWZpbmVk
KEFOR0xFX0NQVV9BUk02NCkpCiAgICAgICAgIC8vIEZJWE1FOiBUZW1wb3JhcmlseSBSZW1vdmlu
ZyB0aGUgbmVlZCBmb3IgR0xfREVQVEhfQ09NUE9ORU5UMzJfT0VTCiAgICAgICAgIC8vIGJlY2F1
c2UgaXQgaXMgbm90IHN1cHBvcnRlZCBvbiBpT1MuCisgICAgICAgIC8vIEZJWE1FOiBJIHRoaW5r
IHRoaXMgbmVlZHMgdG8gYmUgYSBydW50aW1lIGNoZWNrIHdoZW4gcnVubmluZyBhbiBpT1MgYXBw
IG9uIE1hYy4KICAgICAgICAgR0xfREVQVEhfQ09NUE9ORU5UMzJfT0VTLAogI2VuZGlmCiAgICAg
fTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNw
bGF5LmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9EaXNwbGF5LmNw
cAppbmRleCBlM2ViZTMyNWRhYTI4OGU4NWM5YmY4MDM3YTAwNTMxMDUyNDdiN2E4Li5kZjk1M2U2
MjIzN2E3OWMyYzZiNDdhOGVmMjg3YTgwNTU5NmNlODc1IDEwMDY0NAotLS0gYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvRGlzcGxheS5jcHAKKysrIGIvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL0Rpc3BsYXkuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAj
aW5jbHVkZSAiY29tbW9uL3N5c3RlbV91dGlscy5oIgogI2luY2x1ZGUgImNvbW1vbi90bHMuaCIK
ICNpbmNsdWRlICJjb21tb24vdXRpbGl0aWVzLmgiCisjaW5jbHVkZSAiZ3B1X2luZm9fdXRpbC9T
eXN0ZW1JbmZvLmgiCiAjaW5jbHVkZSAibGliQU5HTEUvQ29udGV4dC5oIgogI2luY2x1ZGUgImxp
YkFOR0xFL0RldmljZS5oIgogI2luY2x1ZGUgImxpYkFOR0xFL0VHTFN5bmMuaCIKQEAgLTUzLDYg
KzU0LDkgQEAKICMgICAgICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL3dnbC9EaXNw
bGF5V0dMLmgiCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNPUykgfHwgZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKICMgICAgICAgIGluY2x1ZGUgImxpYkFO
R0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5Q0dMLmgiCisjICAgICAgICBpZiBkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyMg
ICAgICAgICAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdM
LmgiCisjICAgICAgICBlbmRpZgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KQogIyAgICAgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFH
TC5oIgogIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTElOVVgpCkBAIC0yNjAsOCAr
MjY0LDM2IEBAIHJ4OjpEaXNwbGF5SW1wbCAqQ3JlYXRlRGlzcGxheUZyb21BdHRyaWJzKEVHTEF0
dHJpYiBkaXNwbGF5VHlwZSwKICNpZiBkZWZpbmVkKEFOR0xFX0VOQUJMRV9PUEVOR0wpCiAjICAg
IGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fV0lORE9XUykKICAgICAgICAgICAgIGltcGwgPSBu
ZXcgcng6OkRpc3BsYXlXR0woc3RhdGUpOwotIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZP
Uk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisgICAgICAg
ICAgICBicmVhazsKKworIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpCisg
ICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0YXRlKTsKKyAgICAgICAgICAg
IGJyZWFrOworIyAgICBlbGlmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisj
ICAgICAgICBpZiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkKKyAgICAgICAgICAgIHsKKyAgICAg
ICAgICAgICAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZvOworICAgICAgICAgICAgICAgIGlmICgh
YW5nbGU6OkdldFN5c3RlbUluZm8oJmluZm8pKQorICAgICAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICAgICAgaW1wbCA9IG51bGxwdHI7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGlmIChpbmZvLmlzaU9TQXBwT25N
YWMpCisgICAgICAgICAgICAgICAgeworCQkJCQlpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChz
dGF0ZSk7CisgICAgICAgICAgICAgICAgICAgIGJyZWFrOworICAgICAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgeworICAgICAgICAgICAgICAgICAg
ICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5Q0dMKHN0YXRlKTsKKyAgICAgICAgICAgICAgICAgICAg
YnJlYWs7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgfQorIyAgICAgICAgZWxzZQog
ICAgICAgICAgICAgaW1wbCA9IG5ldyByeDo6RGlzcGxheUNHTChzdGF0ZSk7CisgICAgICAgICAg
ICBicmVhazsKKyMgICAgICAgIGVuZGlmCiAjICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9S
TV9JT1MpCiAgICAgICAgICAgICBpbXBsID0gbmV3IHJ4OjpEaXNwbGF5RUFHTChzdGF0ZSk7CiAj
ICAgIGVsaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9MSU5VWCkKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAgYi9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvZm9ybWF0dXRpbHMuY3BwCmluZGV4IGU0MzQ5
NmZjMzQ3MTkzYTlmMWNiYzExZmJmNmU0ZGZmOWM5MmUyM2UuLmFhOGQ5ZWMzOTE4NjkxMThhOWI3
M2Q5ZjUxODA2OTFhMzM1MjQzYjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xF
L3NyYy9saWJBTkdMRS9mb3JtYXR1dGlscy5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL2Zvcm1hdHV0aWxzLmNwcApAQCAtMTAsNiArMTAsNyBAQAogCiAjaW5j
bHVkZSAiYW5nbGViYXNlL25vX2Rlc3RydWN0b3IuaCIKICNpbmNsdWRlICJjb21tb24vbWF0aHV0
aWwuaCIKKyNpbmNsdWRlICJncHVfaW5mb191dGlsL1N5c3RlbUluZm8uaCIKICNpbmNsdWRlICJs
aWJBTkdMRS9Db250ZXh0LmgiCiAjaW5jbHVkZSAibGliQU5HTEUvRnJhbWVidWZmZXIuaCIKIApA
QCAtMTAzMCw4ICsxMDMxLDIxIEBAIHN0YXRpYyBJbnRlcm5hbEZvcm1hdEluZm9NYXAgQnVpbGRJ
bnRlcm5hbEZvcm1hdEluZm9NYXAoKQogICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfUkdCQSwg
ICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfUkdCQSwgICAgICAgICAgIEdM
X0JZVEUsICAgICAgICAgICAgICAgICAgICAgICAgR0xfU0lHTkVEX05PUk1BTElaRUQsICAgZmFs
c2UsIE5ldmVyU3VwcG9ydGVkLCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTmV2
ZXJTdXBwb3J0ZWQsICBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAgIEFkZFJHQkFGb3JtYXQo
Jm1hcCwgR0xfU1JHQiwgICAgICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgMCwgMCwgR0xfU1JH
QiwgICAgICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURf
Tk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnNSR0I+LCAgICAgICAg
ICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBOZXZlclN1cHBvcnRlZCwgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogICAg
IEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfU1JHQl9BTFBIQV9FWFQsIGZhbHNlLCAgOCwgIDgsICA4
LCAgOCwgMCwgR0xfU1JHQl9BTFBIQV9FWFQsIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAg
ICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgdHJ1ZSwgIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6
OnNSR0I+LCAgICAgICAgICAgICAgICAgICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRXh0PCZF
eHRlbnNpb25zOjpzUkdCPiwgICAgICAgICAgICAgICAgICBOZXZlclN1cHBvcnRlZCwgTmV2ZXJT
dXBwb3J0ZWQpOwotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChB
TkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKLSAgICBBZGRSR0JBRm9ybWF0KCZtYXAsIEdMX0JH
UkFfRVhULCAgICAgICBmYWxzZSwgIDgsICA4LCAgOCwgIDgsIDAsIEdMX0JHUkFfRVhULCAgICAg
ICBHTF9VTlNJR05FRF9CWVRFLCAgICAgICAgICAgICAgIEdMX1VOU0lHTkVEX05PUk1BTElaRUQs
IGZhbHNlLCBSZXF1aXJlRVM8MiwgMD4sICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IEFsd2F5c1N1cHBvcnRlZCwgUmVxdWlyZUVTPDIsIDA+LCAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgTmV2ZXJTdXBwb3J0ZWQsIE5ldmVyU3VwcG9ydGVkKTsKKyNpZiAoZGVmaW5lZChB
TkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5H
TEVfQ1BVX0FSTTY0KSkKKyAgICBhbmdsZTo6U3lzdGVtSW5mbyBpbmZvOworICAgIGlmIChhbmds
ZTo6R2V0U3lzdGVtSW5mbygmaW5mbykpCisgICAgeworICAgICAgICBpZiAoIWluZm8uaXNpT1NB
cHBPbk1hYykKKyAgICAgICAgeworICAgICAgICAgICAgLy8gVXNpbmcgT3BlbkdMLmZyYW1ld29y
ay4KKyAgICAgICAgICAgIEFkZFJHQkFGb3JtYXQoJm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZh
bHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfQkdSQV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZ
VEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURfTk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVF
eHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRCR1JBODg4OD4sICAgQWx3YXlzU3VwcG9ydGVk
LCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0dXJlRm9ybWF0QkdSQTg4ODg+LCBOZXZlclN1
cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOworICAgICAgICB9CisgICAgICAgIGVsc2UKKyAgICAg
ICAgeworICAgICAgICAgICAgLy8gVXNpbmcgT3BlbkdMRVMuZnJhbWV3b3JrLgorICAgICAgICAg
ICAgQWRkUkdCQUZvcm1hdCgmbWFwLCBHTF9CR1JBX0VYVCwgICAgICAgZmFsc2UsICA4LCAgOCwg
IDgsICA4LCAwLCBHTF9CR1JBX0VYVCwgICAgICAgR0xfVU5TSUdORURfQllURSwgICAgICAgICAg
ICAgICBHTF9VTlNJR05FRF9OT1JNQUxJWkVELCBmYWxzZSwgUmVxdWlyZUVTPDIsIDA+LCAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBBbHdheXNTdXBwb3J0ZWQsIFJlcXVpcmVFUzwy
LCAwPiwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5ldmVyU3VwcG9ydGVkLCBOZXZl
clN1cHBvcnRlZCk7CisgICAgICAgIH0KKyAgICB9CiAjZWxzZQogICAgIEFkZFJHQkFGb3JtYXQo
Jm1hcCwgR0xfQkdSQV9FWFQsICAgICAgIGZhbHNlLCAgOCwgIDgsICA4LCAgOCwgMCwgR0xfQkdS
QV9FWFQsICAgICAgIEdMX1VOU0lHTkVEX0JZVEUsICAgICAgICAgICAgICAgR0xfVU5TSUdORURf
Tk9STUFMSVpFRCwgZmFsc2UsIFJlcXVpcmVFeHQ8JkV4dGVuc2lvbnM6OnRleHR1cmVGb3JtYXRC
R1JBODg4OD4sICAgQWx3YXlzU3VwcG9ydGVkLCBSZXF1aXJlRXh0PCZFeHRlbnNpb25zOjp0ZXh0
dXJlRm9ybWF0QkdSQTg4ODg+LCBOZXZlclN1cHBvcnRlZCwgTmV2ZXJTdXBwb3J0ZWQpOwogI2Vu
ZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVu
ZGVyZXIvZ2wvU29mdExpbmtpbmdfYXBwbGUuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJk
ZjU3Y2U3YzkyYjYyZTgzMTcyMWM0NTJiNmZkNTBlMDg0MDZmMTkKLS0tIC9kZXYvbnVsbAorKysg
Yi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvU29mdExp
bmtpbmdfYXBwbGUuaApAQCAtMCwwICsxLDExNCBAQAorLy8KKy8vIENvcHlyaWdodCAyMDIwIEFw
cGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhpcyBzb3VyY2UgY29k
ZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2FuIGJlCisvLyBmb3Vu
ZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gU29mdExpbmtpbmdfYXBwbGUuY3BwOiBN
YWNyb3MgZm9yIHNvZnQtbGlua2luZyBGcmFtZXdvcmtzIGFuZCBGdW5jdGlvbnMuCisKKyNpZm5k
ZWYgU09GVF9MSU5LSU5HX0FQUExFX0hfCisjZGVmaW5lIFNPRlRfTElOS0lOR19BUFBMRV9IXwor
CisjaW5jbHVkZSAiY29tbW9uL3BsYXRmb3JtLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0FQUExFKQorCisjaW5jbHVkZSAiY29tbW9uL2RlYnVnLmgiCisKKyNpbXBvcnQgPGRpc3Bh
dGNoL2Rpc3BhdGNoLmg+CisjaW1wb3J0IDxkbGZjbi5oPgorI2ltcG9ydCA8b2JqYy9ydW50aW1l
Lmg+CisKKyNkZWZpbmUgUkVMRUFTRV9BU1NFUlQoZXhwcmVzc2lvbiwgbWVzc2FnZSkgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IFwKKyAgICAgICAgKGV4cHJlc3Npb24gPyBzdGF0aWNfY2FzdDx2b2lkPigwKSAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwK
KyAgICAgICAgICAgICAgICAgICAgOiAoRkFUQUwoKSA8PCAiXHQhIEFzc2VydCBmYWlsZWQgaW4g
IiA8PCBfX0ZVTkNUSU9OX18gPDwgIiAoIiA8PCBfX0ZJTEVfXyAgICAgICAgICAgICAgIFwKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8PCAiOiIgPDwgX19MSU5FX18gPDwgIik6ICIg
PDwgI2V4cHJlc3Npb24gPDwgIlxuXHQhIE1lc3NhZ2U6ICIgPDwgbWVzc2FnZSkpCisKKworI2lm
ZGVmIF9fY3BsdXNwbHVzCisjZGVmaW5lIEVYVEVSTl9DX0JFR0lOIGV4dGVybiAiQyIgeworI2Rl
ZmluZSBFWFRFUk5fQ19FTkQgfQorI2Vsc2UKKyNkZWZpbmUgRVhURVJOX0NfQkVHSU4KKyNkZWZp
bmUgRVhURVJOX0NfRU5ECisjZW5kaWYKKworI2RlZmluZSBTT0ZUX0xJTktfRlJBTUVXT1JLX0hF
QURFUihmcmFtZXdvcmspIFwKKyAgICBleHRlcm4gdm9pZCogZnJhbWV3b3JrIyNMaWJyYXJ5KCk7
IFwKKworI2RlZmluZSBTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShmcmFtZXdvcmspIFwKKyAg
ICB2b2lkKiBmcmFtZXdvcmsjI0xpYnJhcnkoKSBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZSA9IDA7IFwKKyAgICAgICAgc3RhdGljIHZvaWQqIGZyYW1ld29y
a0xpYnJhcnkgPSBOVUxMOyBcCisgICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKKyAg
ICAgICAgICAgIGZyYW1ld29ya0xpYnJhcnkgPSBkbG9wZW4oIi9TeXN0ZW0vTGlicmFyeS9GcmFt
ZXdvcmtzLyIgI2ZyYW1ld29yayAiLmZyYW1ld29yay8iICNmcmFtZXdvcmssIFJUTERfTk9XKTsg
XAorICAgICAgICAgICAgUkVMRUFTRV9BU1NFUlQoZnJhbWV3b3JrTGlicmFyeSwgIlVuYWJsZSB0
byBsb2FkICIgI2ZyYW1ld29yayAiLmZyYW1ld29yayIpOyBcCisgICAgICAgIH0pOyBcCisgICAg
ICAgIHJldHVybiBmcmFtZXdvcmtMaWJyYXJ5OyBcCisgICAgfQorCisjZGVmaW5lIFNPRlRfTElO
S19GVU5DVElPTl9IRUFERVIoZnJhbWV3b3JrLCBmdW5jdGlvbk5hbWUsIHJlc3VsdFR5cGUsIHBh
cmFtZXRlckRlY2xhcmF0aW9ucywgcGFyYW1ldGVyTmFtZXMpIFwKKyAgICBFWFRFUk5fQ19CRUdJ
TiBcCisgICAgcmVzdWx0VHlwZSBmdW5jdGlvbk5hbWUgcGFyYW1ldGVyRGVjbGFyYXRpb25zOyBc
CisgICAgRVhURVJOX0NfRU5EIFwKKyAgICBleHRlcm4gcmVzdWx0VHlwZSBpbml0IyNmcmFtZXdv
cmsjI2Z1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnM7IFwKKyAgICBleHRlcm4gcmVz
dWx0VHlwZSgqc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lKSBwYXJhbWV0ZXJEZWNs
YXJhdGlvbnM7IFwKKyAgICBpbmxpbmUgX19hdHRyaWJ1dGVfXygoX19hbHdheXNfaW5saW5lX18p
KSByZXN1bHRUeXBlIGZ1bmN0aW9uTmFtZSBwYXJhbWV0ZXJEZWNsYXJhdGlvbnMgXAorICAgIHsg
XAorICAgICAgICByZXR1cm4gc29mdExpbmsjI2ZyYW1ld29yayMjZnVuY3Rpb25OYW1lIHBhcmFt
ZXRlck5hbWVzOyBcCisgICAgfSBcCisKKyNkZWZpbmUgU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJD
RShmcmFtZXdvcmssIGZ1bmN0aW9uTmFtZSwgcmVzdWx0VHlwZSwgcGFyYW1ldGVyRGVjbGFyYXRp
b25zLCBwYXJhbWV0ZXJOYW1lcykgXAorICAgIHJlc3VsdFR5cGUoKnNvZnRMaW5rIyNmcmFtZXdv
cmsjI2Z1bmN0aW9uTmFtZSkgcGFyYW1ldGVyRGVjbGFyYXRpb25zID0gaW5pdCMjZnJhbWV3b3Jr
IyNmdW5jdGlvbk5hbWU7IFwKKyAgICByZXN1bHRUeXBlIGluaXQjI2ZyYW1ld29yayMjZnVuY3Rp
b25OYW1lIHBhcmFtZXRlckRlY2xhcmF0aW9ucyBcCisgICAgeyBcCisgICAgICAgIHN0YXRpYyBk
aXNwYXRjaF9vbmNlX3Qgb25jZTsgXAorICAgICAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeyBc
CisgICAgICAgICAgICBzb2Z0TGluayMjZnJhbWV3b3JrIyNmdW5jdGlvbk5hbWUgPSAocmVzdWx0
VHlwZSAoKikgcGFyYW1ldGVyRGVjbGFyYXRpb25zKSBkbHN5bShmcmFtZXdvcmsjI0xpYnJhcnko
KSwgI2Z1bmN0aW9uTmFtZSk7IFwKKyAgICAgICAgfSk7IFwKKyAgICAgICAgcmV0dXJuIHNvZnRM
aW5rIyNmcmFtZXdvcmsjI2Z1bmN0aW9uTmFtZSBwYXJhbWV0ZXJOYW1lczsgXAorICAgIH0gXAor
CisjZGVmaW5lIFNPRlRfTElOS19DTEFTU19IRUFERVIoY2xhc3NOYW1lKSBcCisgICAgQGNsYXNz
IGNsYXNzTmFtZTsgXAorICAgIGV4dGVybiBDbGFzcyAoKmdldCMjY2xhc3NOYW1lIyNDbGFzcyko
KTsgXAorICAgIGNsYXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFuY2UoKTsgXAorICAg
IGlubGluZSBjbGFzc05hbWUgKmFsbG9jIyNjbGFzc05hbWUjI0luc3RhbmNlKCkgXAorICAgIHsg
XAorICAgICAgICByZXR1cm4gW2dldCMjY2xhc3NOYW1lIyNDbGFzcygpIGFsbG9jXTsgXAorICAg
IH0KKworI2RlZmluZSBTT0ZUX0xJTktfQ0xBU1MoZnJhbWV3b3JrLCBjbGFzc05hbWUpIFwKKyAg
ICBAY2xhc3MgY2xhc3NOYW1lOyBcCisgICAgc3RhdGljIENsYXNzIGluaXQjI2NsYXNzTmFtZSgp
OyBcCisgICAgQ2xhc3MgKCpnZXQjI2NsYXNzTmFtZSMjQ2xhc3MpKCkgPSBpbml0IyNjbGFzc05h
bWU7IFwKKyAgICBzdGF0aWMgQ2xhc3MgY2xhc3MjI2NsYXNzTmFtZTsgXAorICAgIFwKKyAgICBz
dGF0aWMgQ2xhc3MgY2xhc3NOYW1lIyNGdW5jdGlvbigpIFwKKyAgICB7IFwKKyAgICAgICAgcmV0
dXJuIGNsYXNzIyNjbGFzc05hbWU7IFwKKyAgICB9IFwKKyAgICBcCisgICAgc3RhdGljIENsYXNz
IGluaXQjI2NsYXNzTmFtZSgpIFwKKyAgICB7IFwKKyAgICAgICAgc3RhdGljIGRpc3BhdGNoX29u
Y2VfdCBvbmNlOyBcCisgICAgICAgIGRpc3BhdGNoX29uY2UoJm9uY2UsIF57IFwKKyAgICAgICAg
ICAgIGZyYW1ld29yayMjTGlicmFyeSgpOyBcCisgICAgICAgICAgICBjbGFzcyMjY2xhc3NOYW1l
ID0gb2JqY19nZXRDbGFzcygjY2xhc3NOYW1lKTsgXAorICAgICAgICAgICAgUkVMRUFTRV9BU1NF
UlQoY2xhc3MjI2NsYXNzTmFtZSwgIm9iamNfZ2V0Q2xhc3MgZmFpbGVkIGZvciAiICNjbGFzc05h
bWUpOyBcCisgICAgICAgICAgICBnZXQjI2NsYXNzTmFtZSMjQ2xhc3MgPSBjbGFzc05hbWUjI0Z1
bmN0aW9uOyBcCisgICAgICAgIH0pOyBcCisgICAgICAgIHJldHVybiBjbGFzcyMjY2xhc3NOYW1l
OyBcCisgICAgfSBcCisgICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBwdXNoIikgXAorICAg
IF9QcmFnbWEoImNsYW5nIGRpYWdub3N0aWMgaWdub3JlZCBcIi1XdW51c2VkLWZ1bmN0aW9uXCIi
KSBcCisgICAgc3RhdGljIGNsYXNzTmFtZSAqYWxsb2MjI2NsYXNzTmFtZSMjSW5zdGFuY2UoKSBc
CisgICAgeyBcCisgICAgICAgIHJldHVybiBbZ2V0IyNjbGFzc05hbWUjI0NsYXNzKCkgYWxsb2Nd
OyBcCisgICAgfSBcCisgICAgX1ByYWdtYSgiY2xhbmcgZGlhZ25vc3RpYyBwb3AiKQorCisjZW5k
aWYgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9BUFBMRSkKKworI2VuZGlmIC8vIFNPRlRfTElO
S0lOR19BUFBMRV9IXwpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuY3BwCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLjE1NWI0ZGY3ZDdkMmVlZTM5ZDk3Y2RlOTBmNjBhN2EyNzRmZjhjMmMKLS0tIC9k
ZXYvbnVsbAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5jcHAKQEAgLTAsMCArMSwzMiBAQAorLy8KKy8vIENvcHly
aWdodCAyMDIwIEFwcGxlLCBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisvLyBVc2Ugb2YgdGhp
cyBzb3VyY2UgY29kZSBpcyBnb3Zlcm5lZCBieSBhIEJTRC1zdHlsZSBsaWNlbnNlIHRoYXQgY2Fu
IGJlCisvLyBmb3VuZCBpbiB0aGUgTElDRU5TRSBmaWxlLgorLy8KKworLy8gQ0dMRnVuY3Rpb25z
LmNwcDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIENHTCBpbnRlcmZhY2UuCisKKyNpbmNsdWRl
ICJjb21tb24vcGxhdGZvcm0uaCIKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wv
Q0dMRnVuY3Rpb25zLmgiCisKKyNpZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorCitTT0ZUX0xJTktfRlJBTUVXT1JL
X1NPVVJDRShPcGVuR0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xD
aG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0
ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmli
cywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xDcmVh
dGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9i
aiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJ
TktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJy
b3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0
QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2
YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRl
eHQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5D
VElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dM
UGl4ZWxGb3JtYXRPYmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMRXJyb3JTdHJpbmcsIGNvbnN0IGNoYXIgKiwgKENHTEVycm9yIGVycm9yKSwgKGVy
cm9yKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xSZWxlYXNlQ29udGV4
dCwgdm9pZCwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05f
U09VUkNFKE9wZW5HTCwgQ0dMU2V0Q3VycmVudENvbnRleHQsIENHTEVycm9yLCAoQ0dMQ29udGV4
dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xT
ZXRWaXJ0dWFsU2NyZWVuLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBHTGludCBzY3Jl
ZW4pLCAoY3R4LCBzY3JlZW4pKQorU09GVF9MSU5LX0ZVTkNUSU9OX1NPVVJDRShPcGVuR0wsIENH
TFRleEltYWdlSU9TdXJmYWNlMkQsIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMZW51
bSB0YXJnZXQsIEdMZW51bSBpbnRlcm5hbF9mb3JtYXQsIEdMc2l6ZWkgd2lkdGgsIEdMc2l6ZWkg
aGVpZ2h0LCBHTGVudW0gZm9ybWF0LCBHTGVudW0gdHlwZSwgSU9TdXJmYWNlUmVmIGlvU3VyZmFj
ZSwgR0x1aW50IHBsYW5lKSwgKGN0eCwgdGFyZ2V0LCBpbnRlcm5hbF9mb3JtYXQsIHdpZHRoLCBo
ZWlnaHQsIGZvcm1hdCwgdHlwZSwgaW9TdXJmYWNlLCBwbGFuZSkpCitTT0ZUX0xJTktfRlVOQ1RJ
T05fU09VUkNFKE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQorCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9wZW5HTCwgQ0dM
RGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xp
bnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJl
bmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fU09VUkNFKE9w
ZW5HTCwgQ0dMRGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9P
YmogcmVuZCksIChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9TT1VSQ0UoT3BlbkdMLCBDR0xR
dWVyeVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChHTHVpbnQgZGlzcGxheV9tYXNrLCBDR0xSZW5k
ZXJlckluZm9PYmogKnJlbmQsIEdMaW50ICpucmVuZCksIChkaXNwbGF5X21hc2ssIHJlbmQsIG5y
ZW5kKSkKKworI2VuZGlmIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDT1MpIHx8IGRlZmlu
ZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQ
YXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xG
dW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hOGExZDdjNzNiYzlkOGUxY2JiZDhkZGIzNDczNDExOTVl
YWQxNjM2Ci0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaApAQCAtMCwwICsxLDM5IEBACisv
LworLy8gQ29weXJpZ2h0IDIwMjAgQXBwbGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8v
IFVzZSBvZiB0aGlzIHNvdXJjZSBjb2RlIGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vu
c2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBD
R0xGdW5jdGlvbnMuaDogRXhwb3NpbmcgdGhlIHNvZnQtbGlua2VkIENHTCBpbnRlcmZhY2UuCisK
KyNpZm5kZWYgQ0dMX0ZVTkNUSU9OU19IXworI2RlZmluZSBDR0xfRlVOQ1RJT05TX0hfCisKKyNp
bmNsdWRlICJjb21tb24vcGxhdGZvcm0uaCIKKworI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCisKKyNpbmNsdWRl
IDxPcGVuR0wvT3BlbkdMLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9Tb2Z0
TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0hFQURFUihPcGVuR0wpCisK
K1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwg
Q0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4
ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NP
RlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJv
ciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4
dE9iaiAqY3R4KSwgKHBpeCwgc2hhcmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVS
KE9wZW5HTCwgQ0dMRGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1h
dE9iaiBwaXgsIEdMaW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwg
R0xpbnQgKnZhbHVlKSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChD
R0xSZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVy
dHkgcHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQsIENHTEVy
cm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFE
RVIoT3BlbkdMLCBDR0xEZXN0cm95UGl4ZWxGb3JtYXQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3Jt
YXRPYmogcGl4KSwgKHBpeCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dM
RGVzdHJveVJlbmRlcmVySW5mbywgQ0dMRXJyb3IsIChDR0xSZW5kZXJlckluZm9PYmogcmVuZCks
IChyZW5kKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xFcnJvclN0cmlu
ZywgY29uc3QgY2hhciAqLCAoQ0dMRXJyb3IgZXJyb3IpLCAoZXJyb3IpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdM
dWludCBkaXNwbGF5X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5k
KSwgKGRpc3BsYXlfbWFzaywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0hFQURF
UihPcGVuR0wsIENHTFJlbGVhc2VDb250ZXh0LCB2b2lkLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAo
Y3R4KSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xTZXRDdXJyZW50Q29u
dGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZV
TkNUSU9OX0hFQURFUihPcGVuR0wsIENHTFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dM
Q29udGV4dE9iaiBjdHgsIEdMaW50IHNjcmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktf
RlVOQ1RJT05fSEVBREVSKE9wZW5HTCwgQ0dMVGV4SW1hZ2VJT1N1cmZhY2UyRCwgQ0dMRXJyb3Is
IChDR0xDb250ZXh0T2JqIGN0eCwgR0xlbnVtIHRhcmdldCwgR0xlbnVtIGludGVybmFsX2Zvcm1h
dCwgR0xzaXplaSB3aWR0aCwgR0xzaXplaSBoZWlnaHQsIEdMZW51bSBmb3JtYXQsIEdMZW51bSB0
eXBlLCBJT1N1cmZhY2VSZWYgaW9TdXJmYWNlLCBHTHVpbnQgcGxhbmUpLCAoY3R4LCB0YXJnZXQs
IGludGVybmFsX2Zvcm1hdCwgd2lkdGgsIGhlaWdodCwgZm9ybWF0LCB0eXBlLCBpb1N1cmZhY2Us
IHBsYW5lKSkKK1NPRlRfTElOS19GVU5DVElPTl9IRUFERVIoT3BlbkdMLCBDR0xVcGRhdGVDb250
ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKKyNlbmRpZiAvLyBk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ09TKSB8fCBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKQorCisjZW5kaWYgLy8gQ0dMX0ZVTkNUSU9OU19IXwpkaWZmIC0tZ2l0IGEvU291
cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9EaXNwbGF5
Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9EaXNwbGF5Q0dMLm1tCmluZGV4IDc5YTExZDRkMjk4YTFhM2IyNDFkOTg0MGVjYTdiYjUz
YmYyNTdiMTUuLmU3Y2MyYmEyZmE2M2M2YTMzNjFiMDU3ZjhkZjE3ODI4NjEzNzlkZjEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9j
Z2wvRGlzcGxheUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5H
TEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlDR0wubW0KQEAgLTI4LDYgKzI4LDggQEAKICMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wuaCIKICMg
ICAgaW5jbHVkZSAicGxhdGZvcm0vUGxhdGZvcm1NZXRob2RzLmgiCiAKKyMgICAgaW5jbHVkZSAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCiBuYW1lc3BhY2UKIHsK
IApkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNlQ0dMLmNwcCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FO
R0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvSU9TdXJmYWNlU3VyZmFjZUNHTC5jcHAK
aW5kZXggYWZkY2E0ZjJlZjk2Yzg1NWY4NmY2OTg4YzBhNjZmM2IzZmY5NjQ3Yy4uOGVkNDM5MWUw
MzBkNGEwYjQ1NDAzMDAyYjdjNGZlYmU4MTQ0ZWU5MyAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJk
UGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9JT1N1cmZhY2VTdXJmYWNl
Q0dMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvY2dsL0lPU3VyZmFjZVN1cmZhY2VDR0wuY3BwCkBAIC0yNyw2ICsyNyw4IEBACiAjICAg
IGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL1RleHR1cmVHTC5oIgogIyAgICBpbmNsdWRl
ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9jZ2wvRGlzcGxheUNHTC5oIgogCisjICAgIGluY2x1ZGUg
ImxpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9DR0xGdW5jdGlvbnMuaCIKKwogbmFtZXNwYWNlIHJ4
CiB7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5oIGIvU291cmNlL1RoaXJkUGFydHkvQU5H
TEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgKaW5kZXgg
ZDhiNGNjMmY5MWMzNDFiYThmMjBkMTZlMzliZDZiZDAzOTA4Y2UwNC4uZDhiYWFiZjdmYzc4Yzgx
NmM2YzM4M2Y2ZGNlY2IxNTQwZGUzNGRiMiAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNlQ0dMLmgKKysr
IGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9X
aW5kb3dTdXJmYWNlQ0dMLmgKQEAgLTE4LDcgKzE4LDcgQEAgc3RydWN0IF9fSU9TdXJmYWNlOwog
dHlwZWRlZiBfX0lPU3VyZmFjZSAqSU9TdXJmYWNlUmVmOwogCiAvLyBXZWJLaXQncyBidWlsZCBw
cm9jZXNzIHJlcXVpcmVzIHRoYXQgZXZlcnkgT2JqZWN0aXZlLUMgY2xhc3MgbmFtZSBoYXMgdGhl
IHByZWZpeCAiV2ViIi4KLUBjbGFzcyBXZWJTd2FwTGF5ZXI7CitAY2xhc3MgV2ViU3dhcExheWVy
Q0dMOwogCiBuYW1lc3BhY2UgcngKIHsKQEAgLTg3LDcgKzg3LDcgQEAgY2xhc3MgV2luZG93U3Vy
ZmFjZUNHTCA6IHB1YmxpYyBTdXJmYWNlR0wKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICBjb25zdCBnbDo6RnJhbWVidWZmZXJTdGF0ZSAmc3RhdGUpIG92ZXJy
aWRlOwogCiAgIHByaXZhdGU6Ci0gICAgV2ViU3dhcExheWVyICptU3dhcExheWVyOworICAgIFdl
YlN3YXBMYXllckNHTCAqbVN3YXBMYXllcjsKICAgICBTaGFyZWRTd2FwU3RhdGUgbVN3YXBTdGF0
ZTsKICAgICB1aW50NjRfdCBtQ3VycmVudFN3YXBJZDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2NnbC9XaW5kb3dTdXJmYWNl
Q0dMLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2ds
L2NnbC9XaW5kb3dTdXJmYWNlQ0dMLm1tCmluZGV4IDBmYTU3YmU0M2I3NzlmMGRlZWJjZmRjNTEy
MDI2ODUxNWFiOTQ1NmYuLmI4ZDU5OTBlNjRlODJlZTc2NzEzYzI2NTM0NzNmYmJhZTQzNTE4Zjkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9jZ2wvV2luZG93U3VyZmFjZUNHTC5tbQorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdM
RS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL1dpbmRvd1N1cmZhY2VDR0wubW0KQEAgLTIz
LDcgKzIzLDkgQEAKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5h
Z2VyR0wuaCIKICMgICAgaW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0Rpc3BsYXlD
R0wuaCIKIAotQGludGVyZmFjZSBXZWJTd2FwTGF5ZXIgOiBDQU9wZW5HTExheWVyIHsKKyMgICAg
aW5jbHVkZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvY2dsL0NHTEZ1bmN0aW9ucy5oIgorCitAaW50
ZXJmYWNlIFdlYlN3YXBMYXllckNHTCA6IENBT3BlbkdMTGF5ZXIgewogICAgIENHTENvbnRleHRP
YmogbURpc3BsYXlDb250ZXh0OwogCiAgICAgYm9vbCBpbml0aWFsaXplZDsKQEAgLTM3LDcgKzM5
LDcgQEAKICAgICAgICAgICAgIHdpdGhGdW5jdGlvbnM6KGNvbnN0IHJ4OjpGdW5jdGlvbnNHTCAq
KWZ1bmN0aW9uczsKIEBlbmQKIAotQGltcGxlbWVudGF0aW9uIFdlYlN3YXBMYXllcgorQGltcGxl
bWVudGF0aW9uIFdlYlN3YXBMYXllckNHTAogLSAoaWQpaW5pdFdpdGhTaGFyZWRTdGF0ZToocng6
OlNoYXJlZFN3YXBTdGF0ZSAqKXN3YXBTdGF0ZQogICAgICAgICAgICAgICB3aXRoQ29udGV4dDoo
Q0dMQ29udGV4dE9iailkaXNwbGF5Q29udGV4dAogICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczoo
Y29uc3Qgcng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zCkBAIC0yMDgsOSArMjEwLDkgQEAgZWds
OjpFcnJvciBXaW5kb3dTdXJmYWNlQ0dMOjppbml0aWFsaXplKGNvbnN0IGVnbDo6RGlzcGxheSAq
ZGlzcGxheSkKICAgICBtU3dhcFN0YXRlLmxhc3RSZW5kZXJlZCAgID0gJm1Td2FwU3RhdGUudGV4
dHVyZXNbMV07CiAgICAgbVN3YXBTdGF0ZS5iZWluZ1ByZXNlbnRlZCA9ICZtU3dhcFN0YXRlLnRl
eHR1cmVzWzJdOwogCi0gICAgbVN3YXBMYXllciA9IFtbV2ViU3dhcExheWVyIGFsbG9jXSBpbml0
V2l0aFNoYXJlZFN0YXRlOiZtU3dhcFN0YXRlCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIHdpdGhDb250ZXh0Om1Db250ZXh0Ci0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOm1GdW5jdGlvbnNdOwor
ICAgIG1Td2FwTGF5ZXIgPSBbW1dlYlN3YXBMYXllckNHTCBhbGxvY10gaW5pdFdpdGhTaGFyZWRT
dGF0ZTombVN3YXBTdGF0ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICB3aXRoQ29udGV4dDptQ29udGV4dAorICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25zXTsKICAgICBb
bUxheWVyIGFkZFN1YmxheWVyOm1Td2FwTGF5ZXJdOwogICAgIFttU3dhcExheWVyIHNldENvbnRl
bnRzU2NhbGU6W21MYXllciBjb250ZW50c1NjYWxlXV07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wu
Y3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5jcHAKaW5kZXggYTk4MzQ2MTkyNDBjZWQwMzdmNTRmMTBkMTQ4YzdlMWQw
NjkzN2VjNS4uNjQxOTdmZmVmZDU3MjE4ZDVjYjMzNjVjNWZiMzI0Y2VlMzg2YzQyNiAxMDA2NDQK
LS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGV2aWNlRUFHTC5jcHAKQEAgLTgsNyArOCw3IEBACiAKICNp
bXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZ
U1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChB
TkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGV2aWNlRUFHTC5oIgogCkBAIC01Niw0ICs1Niw0IEBAIHZvaWQgRGV2aWNlRUFHTDo6Z2Vu
ZXJhdGVFeHRlbnNpb25zKGVnbDo6RGV2aWNlRXh0ZW5zaW9ucyAqb3V0RXh0ZW5zaW9ucykgY29u
c3QKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlm
ICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
ICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0RldmljZUVBR0wuaCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rldmlj
ZUVBR0wuaAppbmRleCA1NzY5NjkyMWVmM2JlNTQ4NmFlOTE4NTUwYmQzMzM4YjBkNGJjMGE1Li45
M2FiZmZjMDI4NWY2YjA1NWU1N2UyY2RiYWU0MDg1NTIzYjJlMTQ0IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EZXZpY2VF
QUdMLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVy
L2dsL2VhZ2wvRGV2aWNlRUFHTC5oCkBAIC0xMSw3ICsxMSw3IEBACiAKICNpbXBvcnQgImNvbW1v
bi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZp
bmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVm
aW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJN
NjQpKQogCiAjaW5jbHVkZSAibGliQU5HTEUvRGV2aWNlLmgiCiAjaW5jbHVkZSAibGliQU5HTEUv
cmVuZGVyZXIvRGV2aWNlSW1wbC5oIgpAQCAtMzQsNiArMzQsNiBAQCBjbGFzcyBEZXZpY2VFQUdM
IDogcHVibGljIERldmljZUltcGwKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8g
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlm
ICAvLyBMSUJBTkdMRV9SRU5ERVJFUl9HTF9FQUdMX0RFVklDRUVBR0xfSF8KZGlmZiAtLWdpdCBh
L1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rp
c3BsYXlFQUdMLmggYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVy
ZXIvZ2wvZWFnbC9EaXNwbGF5RUFHTC5oCmluZGV4IDI2MWJhNDA3ZDE5M2JlYjkzMTJhZDExMDZk
OGM2YmU4MGQ4NzM5ZDkuLmE1MzY2ZTkxNmU5Yzc1NjA5ZjMxMDEzMTJmZWI2MGYwNTdjMTExMTYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgKKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3Jj
L2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRGlzcGxheUVBR0wuaApAQCAtMTEsNyArMTEsNyBA
QAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAo
ZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01B
Q0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRl
ZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L0Rpc3BsYXlHTC5oIgogCkBAIC05Nyw2ICs5Nyw2IEBAIGNsYXNzIERpc3BsYXlFQUdMIDogcHVi
bGljIERpc3BsYXlHTAogCiB9ICAvLyBuYW1lc3BhY2UgcngKIAotI2VuZGlmIC8vIGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkKKyNlbmRpZiAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFO
R0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogI2VuZGlmICAvLyBMSUJB
TkdMRV9SRU5ERVJFUl9HTF9FQUdMX0RJU1BMQVlFQUdMX0hfCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
VGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9EaXNwbGF5RUFH
TC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLm1tCmluZGV4IGNlYjJkMTFmYzc5OWUzOTYyNWM3NzhhNzIyNTY1MmFh
ZWM4ODhhMTEuLjk0ZjRlZTVjY2ZjOTI2YzQwYTQxZTQ4OGU5Y2NlNjY5MzhkNDNjYWMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9l
YWdsL0Rpc3BsYXlFQUdMLm1tCisrKyBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLm1tCkBAIC04LDcgKzgsNyBAQAogCiAj
aW1wb3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
SU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFM
WVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQo
QU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2Vh
Z2wvRGlzcGxheUVBR0wuaCIKIApAQCAtMjMsMTEgKzIzLDEwIEBACiAjICAgIGltcG9ydCAibGli
QU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCiAjICAgIGltcG9y
dCA8Rm91bmRhdGlvbi9Gb3VuZGF0aW9uLmg+Ci0jICAgIGltcG9ydCA8T3BlbkdMRVMvRUFHTC5o
PgogIyAgICBpbXBvcnQgPFF1YXJ0ekNvcmUvUXVhcnR6Q29yZS5oPgogIyAgICBpbXBvcnQgPGRs
ZmNuLmg+CiAKLSMgICAgZGVmaW5lIEdMRVNfU0lMRU5DRV9ERVBSRUNBVElPTgorIyAgICBpbXBv
cnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5oIgogCiBuYW1lc3Bh
Y2UKIHsKQEAgLTcxLDEyICs3MCwxMiBAQCBlZ2w6OkVycm9yIERpc3BsYXlFQUdMOjppbml0aWFs
aXplKGVnbDo6RGlzcGxheSAqZGlzcGxheSkKICAgICAgICAgcmV0dXJuIGVnbDo6RWdsTm90SW5p
dGlhbGl6ZWQoKSA8PCAiVW5hYmxlIHRvIHF1ZXJ5IEFOR0xFJ3MgU3lzdGVtSW5mby4iOwogICAg
IH0KIAotICAgIG1Db250ZXh0ID0gW1tFQUdMQ29udGV4dCBhbGxvY10gaW5pdFdpdGhBUEk6a0VB
R0xSZW5kZXJpbmdBUElPcGVuR0xFUzNdOworICAgIG1Db250ZXh0ID0gW2FsbG9jRUFHTENvbnRl
eHRJbnN0YW5jZSgpIGluaXRXaXRoQVBJOmtFQUdMUmVuZGVyaW5nQVBJT3BlbkdMRVMzXTsKICAg
ICBpZiAobUNvbnRleHQgPT0gbnVsbHB0cikKICAgICB7CiAgICAgICAgIHJldHVybiBlZ2w6OkVn
bE5vdEluaXRpYWxpemVkKCkgPDwgIkNvdWxkIG5vdCBjcmVhdGUgdGhlIEVBR0wgY29udGV4dC4i
OwogICAgIH0KLSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bUNvbnRleHRdOwor
ICAgIFtnZXRFQUdMQ29udGV4dENsYXNzKCkgc2V0Q3VycmVudENvbnRleHQ6bUNvbnRleHRdOwog
CiAgICAgLy8gVGhlcmUgaXMgbm8gZXF1aXZhbGVudCBnZXRQcm9jQWRkcmVzcyBpbiBFQUdMIHNv
IHdlIG9wZW4gdGhlIGR5bGliIGRpcmVjdGx5CiAgICAgdm9pZCAqaGFuZGxlID0gZGxvcGVuKGtP
cGVuR0xFU0R5bGliTmFtZSwgUlRMRF9OT1cpOwpAQCAtMTA2LDcgKzEwNSw3IEBAIHZvaWQgRGlz
cGxheUVBR0w6OnRlcm1pbmF0ZSgpCiAgICAgbVJlbmRlcmVyLnJlc2V0KCk7CiAgICAgaWYgKG1D
b250ZXh0ICE9IG51bGxwdHIpCiAgICAgewotICAgICAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVu
dENvbnRleHQ6bmlsXTsKKyAgICAgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50
Q29udGV4dDpuaWxdOwogICAgICAgICBbbUNvbnRleHQgcmVsZWFzZV07CiAgICAgICAgIG1Db250
ZXh0ID0gbnVsbHB0cjsKICAgICB9CkBAIC0zMzAsMTQgKzMyOSwxNCBAQCBXb3JrZXJDb250ZXh0
RUFHTDo6V29ya2VyQ29udGV4dEVBR0woRUFHTENvbnRleHRPYmogY29udGV4dCkgOiBtQ29udGV4
dChjb250ZXh0KQogCiBXb3JrZXJDb250ZXh0RUFHTDo6fldvcmtlckNvbnRleHRFQUdMKCkKIHsK
LSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bmlsXTsKKyAgICBbZ2V0RUFHTENv
bnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om5pbF07CiAgICAgW21Db250ZXh0IHJlbGVh
c2VdOwogICAgIG1Db250ZXh0ID0gbnVsbHB0cjsKIH0KIAogYm9vbCBXb3JrZXJDb250ZXh0RUFH
TDo6bWFrZUN1cnJlbnQoKQogewotICAgIGlmICghW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250
ZXh0OnN0YXRpY19jYXN0PEVBR0xDb250ZXh0ICo+KG1Db250ZXh0KV0pCisgICAgaWYgKCFbZ2V0
RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0OnN0YXRpY19jYXN0PEVBR0xDb250
ZXh0ICo+KG1Db250ZXh0KV0pCiAgICAgewogICAgICAgICBFUlIoKSA8PCAiVW5hYmxlIHRvIG1h
a2UgZ2wgY29udGV4dCBjdXJyZW50LiI7CiAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTM0Nywx
MyArMzQ2LDEzIEBAIGJvb2wgV29ya2VyQ29udGV4dEVBR0w6Om1ha2VDdXJyZW50KCkKIAogdm9p
ZCBXb3JrZXJDb250ZXh0RUFHTDo6dW5tYWtlQ3VycmVudCgpCiB7Ci0gICAgW0VBR0xDb250ZXh0
IHNldEN1cnJlbnRDb250ZXh0Om5pbF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRD
dXJyZW50Q29udGV4dDpuaWxdOwogfQogCiBXb3JrZXJDb250ZXh0ICpEaXNwbGF5RUFHTDo6Y3Jl
YXRlV29ya2VyQ29udGV4dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIHsKICAgICBFQUdMQ29udGV4
dE9iaiBjb250ZXh0ID0gbnVsbHB0cjsKLSAgICBjb250ZXh0ICAgICAgICAgICAgICAgID0gW1tF
QUdMQ29udGV4dCBhbGxvY10gaW5pdFdpdGhBUEk6a0VBR0xSZW5kZXJpbmdBUElPcGVuR0xFUzNd
OworICAgIGNvbnRleHQgICAgICAgICAgICAgICAgPSBbYWxsb2NFQUdMQ29udGV4dEluc3RhbmNl
KCkgaW5pdFdpdGhBUEk6a0VBR0xSZW5kZXJpbmdBUElPcGVuR0xFUzNdOwogICAgIGlmICghY29u
dGV4dCkKICAgICB7CiAgICAgICAgICppbmZvTG9nICs9ICJDb3VsZCBub3QgY3JlYXRlIHRoZSBF
QUdMIGNvbnRleHQuIjsKQEAgLTM3NCw0ICszNzMsNCBAQCB2b2lkIERpc3BsYXlFQUdMOjpwb3B1
bGF0ZUZlYXR1cmVMaXN0KGFuZ2xlOjpGZWF0dXJlTGlzdCAqZmVhdHVyZXMpCiB9CiB9CiAKLSNl
bmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BM
QVRGT1JNX01BQ0NBVEFMWVNUKQorI2VuZGlmICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9J
T1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQo
QU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9s
aWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0VBR0xGdW5jdGlvbnMuaApuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jZDM2
MTk1Yjk5NTg2YzlmZWE0ZWM4YzY2ZmE1ZDBiMTNlYWQ3MTlhCi0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFH
TEZ1bmN0aW9ucy5oCkBAIC0wLDAgKzEsMjggQEAKKy8vCisvLyBDb3B5cmlnaHQgMjAyMCBBcHBs
ZSwgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorLy8gVXNlIG9mIHRoaXMgc291cmNlIGNvZGUg
aXMgZ292ZXJuZWQgYnkgYSBCU0Qtc3R5bGUgbGljZW5zZSB0aGF0IGNhbiBiZQorLy8gZm91bmQg
aW4gdGhlIExJQ0VOU0UgZmlsZS4KKy8vCisKKy8vIEVBR0xGdW5jdGlvbnMuaDogRXhwb3Npbmcg
dGhlIHNvZnQtbGlua2VkIEVBR0wgaW50ZXJmYWNlLgorCisjaWZuZGVmIEVBR0xfRlVOQ1RJT05T
X0hfCisjZGVmaW5lIEVBR0xfRlVOQ1RJT05TX0hfCisKKyNpbmNsdWRlICJjb21tb24vcGxhdGZv
cm0uaCIKKworI2lmIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5H
TEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUND
QVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCisjaW1wb3J0IDxPcGVuR0xF
Uy9FQUdMLmg+CisjaW1wb3J0IDxPcGVuR0xFUy9FQUdMRHJhd2FibGUuaD4KKyNpbXBvcnQgPE9w
ZW5HTEVTL0VBR0xJT1N1cmZhY2UuaD4KKworI2luY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2ds
L1NvZnRMaW5raW5nX2FwcGxlLmgiCisKK1NPRlRfTElOS19GUkFNRVdPUktfSEVBREVSKE9wZW5H
TEVTKQorCitTT0ZUX0xJTktfQ0xBU1NfSEVBREVSKEVBR0xDb250ZXh0KQorCisjZW5kaWYgLy8g
KGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9N
QUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSAmJiBk
ZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCisKKyNlbmRpZiAvLyBDR0xfRlVOQ1RJT05TX0hfCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9FQUdMRnVuY3Rpb25zLm1tIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xp
YkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFHTEZ1bmN0aW9ucy5tbQpuZXcgZmlsZSBtb2RlIDEw
MDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hN2Rm
YTIxYmI3MjM0ZmJiMjgyNzBiZjhlNWUwZjczOGRjYTFjNmE0Ci0tLSAvZGV2L251bGwKKysrIGIv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvRUFH
TEZ1bmN0aW9ucy5tbQpAQCAtMCwwICsxLDI0IEBACisvLworLy8gQ29weXJpZ2h0IDIwMjAgQXBw
bGUsIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKy8vIFVzZSBvZiB0aGlzIHNvdXJjZSBjb2Rl
IGlzIGdvdmVybmVkIGJ5IGEgQlNELXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmUKKy8vIGZvdW5k
IGluIHRoZSBMSUNFTlNFIGZpbGUuCisvLworCisvLyBFQUdMRnVuY3Rpb25zLmNwcDogRXhwb3Np
bmcgdGhlIHNvZnQtbGlua2VkIEVBR0wgaW50ZXJmYWNlLgorCisjaW5jbHVkZSAiY29tbW9uL3Bs
YXRmb3JtLmgiCisKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVk
KEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKKworI2ltcG9ydCA8T3Bl
bkdMRVMvRUFHTC5oPgorI2ltcG9ydCA8T3BlbkdMRVMvRUFHTERyYXdhYmxlLmg+CisjaW1wb3J0
IDxPcGVuR0xFUy9FQUdMSU9TdXJmYWNlLmg+CisKKyNpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJl
ci9nbC9Tb2Z0TGlua2luZ19hcHBsZS5oIgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX1NPVVJDRShP
cGVuR0xFUykKKworU09GVF9MSU5LX0NMQVNTKE9wZW5HTEVTLCBFQUdMQ29udGV4dCkKKworI2Vu
ZGlmIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvVGhp
cmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9JT1N1cmZhY2VTdXJm
YWNlRUFHTC5tbSBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJl
ci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCmluZGV4IDliNjI2OWQyNDEwODIwMjg4
Y2FkMWY1NTliYjM1YmVkMjYwZmEzOTcuLjcyYTNlYTNiODIyNDM2MTBjODI3Nzk4ZTllN2QyNWY0
ZDJhOTJjMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdM
RS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1cmZhY2VFQUdMLm1tCisrKyBiL1NvdXJjZS9U
aGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL0lPU3VyZmFjZVN1
cmZhY2VFQUdMLm1tCkBAIC05LDcgKzksNyBAQAogCiAjaW1wb3J0ICJjb21tb24vcGxhdGZvcm0u
aCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5lZChBTkdMRV9Q
TEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYm
ICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKIAogIyAg
ICBpbXBvcnQgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvSU9TdXJmYWNlU3VyZmFjZUVBR0wu
aCIKIApAQCAtNDI3LDQgKzQyNyw0IEBAIElPU3VyZmFjZUxvY2tPcHRpb25zIElPU3VyZmFjZVN1
cmZhY2VFQUdMOjpnZXRJT1N1cmZhY2VMb2NrT3B0aW9ucygpIGNvbnN0CiAKIH0gIC8vIG5hbWVz
cGFjZSByeAogCi0jZW5kaWYgIC8vIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKQorI2VuZGlm
ICAvLyAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRG
T1JNX01BQ0NBVEFMWVNUKSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1Qp
ICYmIGRlZmluZWQoQU5HTEVfQ1BVX0FSTTY0KSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBh
cnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFH
TC5jcHAgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wv
ZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuY3BwCmluZGV4IDM2ZjFjMTViOTc1ZGRjYjBhMDk3ZWM5
OTYxZmIyMzRkNGE3YzRmMTkuLmNiMTY2YTRhZWU3MzNmNTc0YTk4ZWU0ZWVmYzJlNWUxNjdhMGZk
MWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5k
ZXJlci9nbC9lYWdsL1BidWZmZXJTdXJmYWNlRUFHTC5jcHAKKysrIGIvU291cmNlL1RoaXJkUGFy
dHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUGJ1ZmZlclN1cmZhY2VFQUdM
LmNwcApAQCAtOSw3ICs5LDcgQEAKIAogI2ltcG9ydCAiY29tbW9uL3BsYXRmb3JtLmgiCiAKLSNp
ZiBkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpCisjaWYgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9TKSAmJiAhZGVmaW5l
ZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkpIHx8IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JN
X01BQ0NBVEFMWVNUKSAmJiBkZWZpbmVkKEFOR0xFX0NQVV9BUk02NCkpCiAKICMgICAgaW5jbHVk
ZSAibGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9QYnVmZmVyU3VyZmFjZUVBR0wuaCIKIApAQCAt
MTQ0LDQgKzE0NCw0IEBAIEZyYW1lYnVmZmVySW1wbCAqUGJ1ZmZlclN1cmZhY2VFQUdMOjpjcmVh
dGVEZWZhdWx0RnJhbWVidWZmZXIoY29uc3QgZ2w6OkNvbnRleHQKIAogfSAgLy8gbmFtZXNwYWNl
IHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisjZW5kaWYgIC8v
IChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1f
TUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYg
ZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1RoaXJkUGFydHkv
QU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVuZGVyZXJFQUdMLmNwcCBiL1Nv
dXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1JlbmRl
cmVyRUFHTC5jcHAKaW5kZXggYTQ3MzhiMjU2NmIzYTM5ZmFmZTc4YjZmYTc2MDBlMWFmNmE2MzY5
YS4uNGQzY2ZiYmU3YzM1MTA2NmZmN2QwODg5YzI3YTJjNDYwZmZkZDliNSAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvUmVu
ZGVyZXJFQUdMLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9BTkdMRS9zcmMvbGliQU5HTEUv
cmVuZGVyZXIvZ2wvZWFnbC9SZW5kZXJlckVBR0wuY3BwCkBAIC04LDcgKzgsNyBAQAogCiAjaW1w
b3J0ICJjb21tb24vcGxhdGZvcm0uaCIKIAotI2lmIGRlZmluZWQoQU5HTEVfUExBVEZPUk1fSU9T
KSAmJiAhZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkKKyNpZiAoZGVmaW5lZChB
TkdMRV9QTEFURk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNU
KSkgfHwgKGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpICYmIGRlZmluZWQoQU5H
TEVfQ1BVX0FSTTY0KSkKIAogIyAgICBpbmNsdWRlICJsaWJBTkdMRS9yZW5kZXJlci9nbC9lYWds
L0Rpc3BsYXlFQUdMLmgiCiAjICAgIGluY2x1ZGUgImxpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wv
UmVuZGVyZXJFQUdMLmgiCkBAIC0zMSw0ICszMSw0IEBAIFdvcmtlckNvbnRleHQgKlJlbmRlcmVy
RUFHTDo6Y3JlYXRlV29ya2VyQ29udGV4dChzdGQ6OnN0cmluZyAqaW5mb0xvZykKIAogfSAgLy8g
bmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFURk9STV9JT1MpCisj
ZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVf
UExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRB
TFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1Ro
aXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFj
ZUVBR0wuaCBiL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9yZW5kZXJlci9n
bC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLmgKaW5kZXggY2Q0NzdjYzNjYWUyNzk5NjM0OGY1MWE5
MjExZDkyZTRiY2Y1YjcyNi4uNjkzZTljZDYwNmM5ZDBmZmM2YjE2YWUxMGE3ZDcyNmM3MWQ3OTJl
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRl
cmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wuaAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oCkBA
IC0yMiw3ICsyMiw3IEBAIHN0cnVjdCBfX0lPU3VyZmFjZTsKIHR5cGVkZWYgX19JT1N1cmZhY2Ug
KklPU3VyZmFjZVJlZjsKIAogLy8gV2ViS2l0J3MgYnVpbGQgcHJvY2VzcyByZXF1aXJlcyB0aGF0
IGV2ZXJ5IE9iamVjdGl2ZS1DIGNsYXNzIG5hbWUgaGFzIHRoZSBwcmVmaXggIldlYiIuCi1AY2xh
c3MgV2ViU3dhcExheWVyOworQGNsYXNzIFdlYlN3YXBMYXllckVBR0w7CiAKIG5hbWVzcGFjZSBy
eAogewpAQCAtOTEsNyArOTEsNyBAQCBjbGFzcyBXaW5kb3dTdXJmYWNlRUFHTCA6IHB1YmxpYyBT
dXJmYWNlR0wKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBj
b25zdCBnbDo6RnJhbWVidWZmZXJTdGF0ZSAmc3RhdGUpIG92ZXJyaWRlOwogCiAgIHByaXZhdGU6
Ci0gICAgV2ViU3dhcExheWVyICptU3dhcExheWVyOworICAgIFdlYlN3YXBMYXllckVBR0wgKm1T
d2FwTGF5ZXI7CiAgICAgU2hhcmVkU3dhcFN0YXRlIG1Td2FwU3RhdGU7CiAgICAgdWludDY0X3Qg
bUN1cnJlbnRTd2FwSWQ7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3Ny
Yy9saWJBTkdMRS9yZW5kZXJlci9nbC9lYWdsL1dpbmRvd1N1cmZhY2VFQUdMLm1tIGIvU291cmNl
L1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3Vy
ZmFjZUVBR0wubW0KaW5kZXggMzhkMjUzZWJkZWIzYjNjYzE2MzIzNzQzNDk1NDdiMDU1MzlmZWQz
Yy4uN2EzNGI4ZmMzNTM3MGQ0MzRlM2VlZTYxNzIyNTU4ODRiZTRkNGMzMiAxMDA2NDQKLS0tIGEv
U291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2lu
ZG93U3VyZmFjZUVBR0wubW0KKysrIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFO
R0xFL3JlbmRlcmVyL2dsL2VhZ2wvV2luZG93U3VyZmFjZUVBR0wubW0KQEAgLTgsNyArOCw3IEBA
CiAKICNpbXBvcnQgImNvbW1vbi9wbGF0Zm9ybS5oIgogCi0jaWYgZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpICYmICFkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX01BQ0NBVEFMWVNUKQorI2lmIChk
ZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFD
Q0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlTVCkgJiYgZGVm
aW5lZChBTkdMRV9DUFVfQVJNNjQpKQogCiAjICAgIGltcG9ydCAibGliQU5HTEUvcmVuZGVyZXIv
Z2wvZWFnbC9XaW5kb3dTdXJmYWNlRUFHTC5oIgogCkBAIC0xOCwxMyArMTgsMTkgQEAKICMgICAg
aW1wb3J0ICJsaWJBTkdMRS9yZW5kZXJlci9nbC9SZW5kZXJlckdMLmgiCiAjICAgIGltcG9ydCAi
bGliQU5HTEUvcmVuZGVyZXIvZ2wvU3RhdGVNYW5hZ2VyR0wuaCIKICMgICAgaW1wb3J0ICJsaWJB
TkdMRS9yZW5kZXJlci9nbC9lYWdsL0Rpc3BsYXlFQUdMLmgiCisjICAgIGltcG9ydCAibGliQU5H
TEUvcmVuZGVyZXIvZ2wvZWFnbC9FQUdMRnVuY3Rpb25zLmgiCiAKLSMgICAgaW1wb3J0IDxPcGVu
R0xFUy9FQUdMLmg+CiAjICAgIGltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpDb3JlLmg+CiAKLS8v
IFRPRE8oYW5nbGVidWcuY29tLzQyNzUpOiBJdCdzIG5vdCBjbGVhciB3aHkgdGhpcyBuZWVkcyB0
byBiZSBhbiBFQUdMTGF5ZXIuCisjaWYgZGVmaW5lZChBTkdMRV9QTEFURk9STV9NQUNDQVRBTFlT
VCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpCiAKLUBpbnRlcmZhY2UgV2ViU3dhcExheWVy
IDogQ0FFQUdMTGF5ZXIgeworLy8gRklYTUU6IE5lY2Vzc2FyeSBiZWNhdXNlIENBRUFHTExheWVy
IGlzIG5vdCBpbiB0aGUgcHVibGljIFF1YXJ0ekNvcmUgaGVhZGVycyBpbiB0aGlzIGNvbmZpZ3Vy
YXRpb24uCitAaW50ZXJmYWNlIENBRUFHTExheWVyIDogQ0FMYXllcgorQGVuZAorCisjZW5kaWYK
KworQGludGVyZmFjZSBXZWJTd2FwTGF5ZXJFQUdMIDogQ0FFQUdMTGF5ZXIgewogICAgIEVBR0xD
b250ZXh0T2JqIG1EaXNwbGF5Q29udGV4dDsKIAogICAgIGJvb2wgaW5pdGlhbGl6ZWQ7CkBAIC0z
OCw3ICs0NCw3IEBACiAgICAgICAgICAgICB3aXRoRnVuY3Rpb25zOihjb25zdCByeDo6RnVuY3Rp
b25zR0wgKilmdW5jdGlvbnM7CiBAZW5kCiAKLUBpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXIK
K0BpbXBsZW1lbnRhdGlvbiBXZWJTd2FwTGF5ZXJFQUdMCiAtIChpZClpbml0V2l0aFNoYXJlZFN0
YXRlOihyeDo6U2hhcmVkU3dhcFN0YXRlICopc3dhcFN0YXRlCiAgICAgICAgICAgICAgIHdpdGhD
b250ZXh0OihFQUdMQ29udGV4dE9iailkaXNwbGF5Q29udGV4dAogICAgICAgICAgICAgd2l0aEZ1
bmN0aW9uczooY29uc3Qgcng6OkZ1bmN0aW9uc0dMICopZnVuY3Rpb25zCkBAIC02OSw3ICs3NSw3
IEBACiAgICAgfQogICAgIHB0aHJlYWRfbXV0ZXhfdW5sb2NrKCZtU3dhcFN0YXRlLT5tdXRleCk7
CiAKLSAgICBbRUFHTENvbnRleHQgc2V0Q3VycmVudENvbnRleHQ6bURpc3BsYXlDb250ZXh0XTsK
KyAgICBbZ2V0RUFHTENvbnRleHRDbGFzcygpIHNldEN1cnJlbnRDb250ZXh0Om1EaXNwbGF5Q29u
dGV4dF07CiAKICAgICBpZiAoIWluaXRpYWxpemVkKQogICAgIHsKQEAgLTEwNSw3ICsxMTEsNyBA
QAogCiAgICAgbUZ1bmN0aW9ucy0+YmluZFJlbmRlcmJ1ZmZlcihHTF9SRU5ERVJCVUZGRVIsIHRl
eHR1cmUudGV4dHVyZSk7CiAgICAgW21EaXNwbGF5Q29udGV4dCBwcmVzZW50UmVuZGVyYnVmZmVy
OkdMX1JFTkRFUkJVRkZFUl07Ci0gICAgW0VBR0xDb250ZXh0IHNldEN1cnJlbnRDb250ZXh0Om5p
bF07CisgICAgW2dldEVBR0xDb250ZXh0Q2xhc3MoKSBzZXRDdXJyZW50Q29udGV4dDpuaWxdOwog
fQogQGVuZAogCkBAIC0xNzQsOSArMTgwLDkgQEAgZWdsOjpFcnJvciBXaW5kb3dTdXJmYWNlRUFH
TDo6aW5pdGlhbGl6ZShjb25zdCBlZ2w6OkRpc3BsYXkgKmRpc3BsYXkpCiAgICAgbVN3YXBTdGF0
ZS5sYXN0UmVuZGVyZWQgICA9ICZtU3dhcFN0YXRlLnRleHR1cmVzWzFdOwogICAgIG1Td2FwU3Rh
dGUuYmVpbmdQcmVzZW50ZWQgPSAmbVN3YXBTdGF0ZS50ZXh0dXJlc1syXTsKIAotICAgIG1Td2Fw
TGF5ZXIgPSBbW1dlYlN3YXBMYXllciBhbGxvY10gaW5pdFdpdGhTaGFyZWRTdGF0ZTombVN3YXBT
dGF0ZQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRo
Q29udGV4dDptQ29udGV4dAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgd2l0aEZ1bmN0aW9uczptRnVuY3Rpb25zXTsKKyAgICBtU3dhcExheWVyID0gW1tXZWJT
d2FwTGF5ZXJFQUdMIGFsbG9jXSBpbml0V2l0aFNoYXJlZFN0YXRlOiZtU3dhcFN0YXRlCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aXRoQ29udGV4
dDptQ29udGV4dAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIHdpdGhGdW5jdGlvbnM6bUZ1bmN0aW9uc107CiAgICAgW21MYXllciBhZGRTdWJsYXllcjpt
U3dhcExheWVyXTsKICAgICBbbVN3YXBMYXllciBzZXRDb250ZW50c1NjYWxlOlttTGF5ZXIgY29u
dGVudHNTY2FsZV1dOwogCkBAIC0zMDYsNCArMzEyLDQgQEAgRnJhbWVidWZmZXJJbXBsICpXaW5k
b3dTdXJmYWNlRUFHTDo6Y3JlYXRlRGVmYXVsdEZyYW1lYnVmZmVyKGNvbnN0IGdsOjpDb250ZXh0
ICoKIAogfSAgLy8gbmFtZXNwYWNlIHJ4CiAKLSNlbmRpZiAgLy8gZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9JT1MpCisjZW5kaWYgIC8vIChkZWZpbmVkKEFOR0xFX1BMQVRGT1JNX0lPUykgJiYgIWRl
ZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpKSB8fCAoZGVmaW5lZChBTkdMRV9QTEFU
Rk9STV9NQUNDQVRBTFlTVCkgJiYgZGVmaW5lZChBTkdMRV9DUFVfQVJNNjQpKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3JlbmRlcmVyL2dsL3JlbmRl
cmVyZ2xfdXRpbHMuY3BwIGIvU291cmNlL1RoaXJkUGFydHkvQU5HTEUvc3JjL2xpYkFOR0xFL3Jl
bmRlcmVyL2dsL3JlbmRlcmVyZ2xfdXRpbHMuY3BwCmluZGV4IDVjY2IzM2E0MDVhYzQxM2U3ZDQ4
ZWViODQyNzJlZWY4NDA4ZjViODYuLmRmMDZiZDY1NDMyM2E1NWI3YjFkZGMxNmY3N2FkMDY0ZDQw
ZmIxNDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9UaGlyZFBhcnR5L0FOR0xFL3NyYy9saWJBTkdMRS9y
ZW5kZXJlci9nbC9yZW5kZXJlcmdsX3V0aWxzLmNwcAorKysgYi9Tb3VyY2UvVGhpcmRQYXJ0eS9B
TkdMRS9zcmMvbGliQU5HTEUvcmVuZGVyZXIvZ2wvcmVuZGVyZXJnbF91dGlscy5jcHAKQEAgLTEz
NDQsMTIgKzEzNDQsMTkgQEAgdm9pZCBHZW5lcmF0ZUNhcHMoY29uc3QgRnVuY3Rpb25zR0wgKmZ1
bmN0aW9ucywKICAgICAgICAgZnVuY3Rpb25zLT5oYXNHTEVTRXh0ZW5zaW9uKCJHTF9FWFRfY29t
cHJlc3NlZF9FVEMxX1JHQjhfc3ViX3RleHR1cmUiKTsKIAogI2lmIGRlZmluZWQoQU5HTEVfUExB
VEZPUk1fTUFDT1MpIHx8IGRlZmluZWQoQU5HTEVfUExBVEZPUk1fTUFDQ0FUQUxZU1QpCi0gICAg
VmVuZG9ySUQgdmVuZG9yID0gR2V0VmVuZG9ySUQoZnVuY3Rpb25zKTsKLSAgICBpZiAoKElzQU1E
KHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9ydGVkRVNWZXJzaW9uID49
IGdsOjpWZXJzaW9uKDMsIDApKQorICAgIGFuZ2xlOjpTeXN0ZW1JbmZvIGluZm87CisgICAgaWYg
KGFuZ2xlOjpHZXRTeXN0ZW1JbmZvKCZpbmZvKSkKICAgICB7Ci0gICAgICAgIC8vIEFwcGxlIElu
dGVsL0FNRCBkcml2ZXJzIGRvIG5vdCBjb3JyZWN0bHkgdXNlIHRoZSBURVhUVVJFX1NSR0JfREVD
T0RFIHByb3BlcnR5IG9mIHNhbXBsZXIKLSAgICAgICAgLy8gc3RhdGVzLiAgRGlzYWJsZSB0aGlz
IGV4dGVuc2lvbiB3aGVuIHdlIHdvdWxkIGFkdmVydGlzZSBhbnkgRVMgdmVyc2lvbiB0aGF0IGhh
cyBzYW1wbGVycy4KLSAgICAgICAgZXh0ZW5zaW9ucy0+dGV4dHVyZVNSR0JEZWNvZGUgPSBmYWxz
ZTsKKyAgICAgICAgaWYgKCFpbmZvLmlzaU9TQXBwT25NYWMpCisgICAgICAgIHsKKyAgICAgICAg
ICAgIFZlbmRvcklEIHZlbmRvciA9IEdldFZlbmRvcklEKGZ1bmN0aW9ucyk7CisgICAgICAgICAg
ICBpZiAoKElzQU1EKHZlbmRvcikgfHwgSXNJbnRlbCh2ZW5kb3IpKSAmJiAqbWF4U3VwcG9ydGVk
RVNWZXJzaW9uID49IGdsOjpWZXJzaW9uKDMsIDApKQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIC8vIEFwcGxlIEludGVsL0FNRCBkcml2ZXJzIGRvIG5vdCBjb3JyZWN0bHkgdXNlIHRo
ZSBURVhUVVJFX1NSR0JfREVDT0RFIHByb3BlcnR5IG9mIHNhbXBsZXIKKyAgICAgICAgICAgICAg
ICAvLyBzdGF0ZXMuICBEaXNhYmxlIHRoaXMgZXh0ZW5zaW9uIHdoZW4gd2Ugd291bGQgYWR2ZXJ0
aXNlIGFueSBFUyB2ZXJzaW9uIHRoYXQgaGFzIHNhbXBsZXJzLgorICAgICAgICAgICAgICAgIGV4
dGVuc2lvbnMtPnRleHR1cmVTUkdCRGVjb2RlID0gZmFsc2U7CisgICAgICAgICAgICB9CisgICAg
ICAgIH0KICAgICB9CiAjZW5kaWYKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ29uZmln
dXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZyBiL1NvdXJjZS9XZWJDb3JlL0NvbmZpZ3VyYXRpb25z
L1dlYkNvcmUueGNjb25maWcKaW5kZXggYjgxMDllNjM0NjZkYWE2YTQ3YzE0NWE3MTFjMTg5YTI5
MDMwYjE5NS4uNTcxZThlYjA3MDYwYzE5N2NjM2U5NTQxMWJiYTQzNzU3ZTg1MWI1OSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvQ29uZmlndXJhdGlvbnMvV2ViQ29yZS54Y2NvbmZpZworKysg
Yi9Tb3VyY2UvV2ViQ29yZS9Db25maWd1cmF0aW9ucy9XZWJDb3JlLnhjY29uZmlnCkBAIC0xMDUs
MTYgKzEwNSw2IEBAIFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1NfY29jb2F0b3VjaCA9
IC1mcmFtZXdvcmsgTW9iaWxlQ29yZVNlcnZpY2VzOwogV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFH
UyA9ICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHU18kKFdLX0NPQ09BX1RPVUNIKSk7CiBXS19N
T0JJTEVfR0VTVEFMVF9MREZMQUdTX2NvY29hdG91Y2ggPSAtbE1vYmlsZUdlc3RhbHQ7CiAKLVdL
X09QRU5HTF9MREZMQUdTID0gJChXS19PUEVOR0xfTERGTEFHU18kKFdLX1BMQVRGT1JNX05BTUUp
KTsKLVdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zID0gLWZyYW1ld29yayBPcGVuR0xFUzsKLVdL
X09QRU5HTF9MREZMQUdTX2lwaG9uZXNpbXVsYXRvciA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7Ci1X
S19PUEVOR0xfTERGTEFHU193YXRjaG9zID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVvcyk7
Ci1XS19PUEVOR0xfTERGTEFHU193YXRjaHNpbXVsYXRvciA9ICQoV0tfT1BFTkdMX0xERkxBR1Nf
aXBob25lc2ltdWxhdG9yKTsKLVdLX09QRU5HTF9MREZMQUdTX2FwcGxldHZvcyA9ICQoV0tfT1BF
TkdMX0xERkxBR1NfaXBob25lb3MpOwotV0tfT1BFTkdMX0xERkxBR1NfYXBwbGV0dnNpbXVsYXRv
ciA9ICQoV0tfT1BFTkdMX0xERkxBR1NfaXBob25lc2ltdWxhdG9yKTsKLVdLX09QRU5HTF9MREZM
QUdTX21hY2NhdGFseXN0ID0gLWZyYW1ld29yayBPcGVuR0w7Ci1XS19PUEVOR0xfTERGTEFHU19t
YWNvc3ggPSAtZnJhbWV3b3JrIE9wZW5HTDsKLQogV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERG
TEFHUyA9ICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHU18kKFdLX1BMQVRGT1JNX05B
TUUpKTsKIFdLX1NZU1RFTV9DT05GSUdVUkFUSU9OX0xERkxBR1NfbWFjb3N4ID0gLWZyYW1ld29y
ayBTeXN0ZW1Db25maWd1cmF0aW9uOwogCkBAIC0xMjQsNyArMTE0LDcgQEAgV0tfVVJMX0ZPUk1B
VFRJTkdfTERGTEFHUyA9ICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHU18kKFdLX0hBVkVfVVJM
X0ZPUk1BVFRJTkcKIFdLX1VSTF9GT1JNQVRUSU5HX0xERkxBR1NfWUVTID0gLWZyYW1ld29yayBV
UkxGb3JtYXR0aW5nOwogCiAvLyBGSVhNRTogUmVkdWNlIHRoZSBudW1iZXIgb2YgYWxsb3dhYmxl
X2NsaWVudHMgPHJkYXI6Ly9wcm9ibGVtLzMxODIzOTY5PgotT1RIRVJfTERGTEFHUyA9ICQoaW5o
ZXJpdGVkKSAkKFdLX1JFTE9DQVRBQkxFX0ZSQU1FV09SS19MREZMQUdTKSAtbHNxbGl0ZTMgLWxv
YmpjIC1sQU5HTEUgLWFsbG93YWJsZV9jbGllbnQgV2ViQ29yZVRlc3RTdXBwb3J0IC1hbGxvd2Fi
bGVfY2xpZW50IFdlYktpdExlZ2FjeSAtZm9yY2VfbG9hZCAkKEJVSUxUX1BST0RVQ1RTX0RJUikv
bGliUEFMLmEgLWZyYW1ld29yayBDRk5ldHdvcmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1l
d29yayBDb3JlR3JhcGhpY3MgLWZyYW1ld29yayBDb3JlVGV4dCAtZnJhbWV3b3JrIEZvdW5kYXRp
b24gLWZyYW1ld29yayBJT1N1cmZhY2UgLWZyYW1ld29yayBJbWFnZUlPIC1mcmFtZXdvcmsgTWV0
YWwgJChPVEhFUl9MREZMQUdTX1BMQVRGT1JNXyQoV0tfQ09DT0FfVE9VQ0gpKSAkKE9USEVSX0xE
RkxBR1NfUExBVEZPUk1fJChXS19QTEFURk9STV9OQU1FKSkgJChXS19BUFBLSVRfTERGTEFHUykg
JChXS19BUFBTVVBQT1JUX0xERkxBR1MpICQoV0tfQVVESU9fVU5JVF9MREZMQUdTKSAkKFdLX0NB
UkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfVUlfTERGTEFHUykgJChXS19EQVRBX0RFVEVDVE9SU19D
T1JFX0xERkxBR1MpICQoV0tfR1JBUEhJQ1NfU0VSVklDRVNfTERGTEFHUykgJChXS19JT1NVUkZB
Q0VfQUNDRUxFUkFUT1JfTERGTEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19NT0JJ
TEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1MpICQo
V0tfT1BFTkdMX0xERkxBR1MpICQoV0tfU1lTVEVNX0NPTkZJR1VSQVRJT05fTERGTEFHUykgJChX
S19DT1JFX0lNQUdFX0xERkxBR1MpICQoV0tfVVJMX0ZPUk1BVFRJTkdfTERGTEFHUyk7CitPVEhF
Ul9MREZMQUdTID0gJChpbmhlcml0ZWQpICQoV0tfUkVMT0NBVEFCTEVfRlJBTUVXT1JLX0xERkxB
R1MpIC1sc3FsaXRlMyAtbG9iamMgLWxBTkdMRSAtYWxsb3dhYmxlX2NsaWVudCBXZWJDb3JlVGVz
dFN1cHBvcnQgLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0TGVnYWN5IC1mb3JjZV9sb2FkICQoQlVJ
TFRfUFJPRFVDVFNfRElSKS9saWJQQUwuYSAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3Jr
IENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENvcmVUZXh0IC1m
cmFtZXdvcmsgRm91bmRhdGlvbiAtZnJhbWV3b3JrIElPU3VyZmFjZSAtZnJhbWV3b3JrIEltYWdl
SU8gLWZyYW1ld29yayBNZXRhbCAkKE9USEVSX0xERkxBR1NfUExBVEZPUk1fJChXS19DT0NPQV9U
T1VDSCkpICQoT1RIRVJfTERGTEFHU19QTEFURk9STV8kKFdLX1BMQVRGT1JNX05BTUUpKSAkKFdL
X0FQUEtJVF9MREZMQUdTKSAkKFdLX0FQUFNVUFBPUlRfTERGTEFHUykgJChXS19BVURJT19VTklU
X0xERkxBR1MpICQoV0tfQ0FSQk9OX0xERkxBR1MpICQoV0tfQ09SRV9VSV9MREZMQUdTKSAkKFdL
X0RBVEFfREVURUNUT1JTX0NPUkVfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJWSUNFU19MREZM
QUdTKSAkKFdLX0lPU1VSRkFDRV9BQ0NFTEVSQVRPUl9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19M
REZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dF
U1RBTFRfTERGTEFHUykgJChXS19TWVNURU1fQ09ORklHVVJBVElPTl9MREZMQUdTKSAkKFdLX0NP
UkVfSU1BR0VfTERGTEFHUykgJChXS19VUkxfRk9STUFUVElOR19MREZMQUdTKTsKIAogT1RIRVJf
TERGTEFHU19QTEFURk9STV9jb2NvYXRvdWNoID0gLWFsbG93YWJsZV9jbGllbnQgV2ViS2l0IC1h
bGxvd2FibGVfY2xpZW50IGlUdW5lc1UgLWFsbG93YWJsZV9jbGllbnQgQ2FzYWJsYW5jYSAtYWxs
b3dhYmxlX2NsaWVudCBSZW1vdGUgLWFsbG93YWJsZV9jbGllbnQgVFZCb29rcyAtYWxsb3dhYmxl
X2NsaWVudCBEdW1wUmVuZGVyVHJlZSAtYWxsb3dhYmxlX2NsaWVudCBXZWJLaXRUZXN0UnVubmVy
IC1hbGxvd2FibGVfY2xpZW50IFRlc3RXZWJLaXRBUEk7CiBPVEhFUl9MREZMQUdTX1BMQVRGT1JN
X21hY29zeCA9IC1zdWJfbGlicmFyeSBsaWJvYmpjIC11bWJyZWxsYSBXZWJLaXQ7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2ogYi9T
b3VyY2UvV2ViQ29yZS9QQUwvUEFMLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKaW5kZXggNjA1
ZjYwNzNlZTkzNzVjMWZkMDAzMjNjN2U2YWZhZWU3NWQzOTc1My4uODcyOTBlZmZiYzNlMjgwYzNi
ZWI5MTY5MDc1NzJiYTEwYWM2ZmRkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvUEFML1BB
TC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCisrKyBiL1NvdXJjZS9XZWJDb3JlL1BBTC9QQUwu
eGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMTE5LDYgKzExOSw4IEBACiAJCTJFMTM0MkND
MjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlL
aXRTb2Z0TGluay5oICovOyB9OwogCQkyRTEzNDJDRDIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRT
b2Z0TGluay5tbSBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1tICovOyB9OwogCQkz
MTMwOEIxNDIwQTIxNzA1MDAzRkI5MjkgLyogU3lzdGVtUHJldmlld1NQSS5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzEzMDhCMTMyMEEyMTcwNTAwM0ZC
OTI5IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLzsgfTsKKwkJMzE2NDdGQjAyNTE3NTlERDAwMTBG
OEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIgLyogT3BlbkdMU29m
dExpbmtDb2NvYS5tbSAqLzsgfTsKKwkJMzE2NDdGQjEyNTE3NTlFRjAwMTBGOEZCIC8qIE9wZW5H
TFNvZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDMxNjQ3RkFGMjUxNzU5REMwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmgg
Ki87IH07CiAJCTQxNkU5OTUzMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGlu
ay5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSA0MTZF
OTk1MTIzREFFNkJEMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuY3BwICovOyB9Owog
CQk0MTZFOTk1NDIzREFFNkJFMDBFODcxQ0IgLyogQXVkaW9Ub29sYm94U29mdExpbmsuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDQxNkU5OTUyMjNEQUU2
QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovOyB9OwogCQk0MUUxRjM0NDI0
OEE2QTAwMDAyMkQ1REUgLyogVmlkZW9Ub29sYm94U29mdExpbmsuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gNDE2RTk5NTUyM0RBRUZGNzAwRTg3MUNC
IC8qIFZpZGVvVG9vbGJveFNvZnRMaW5rLmNwcCAqLzsgfTsKQEAgLTMwNSw2ICszMDcsOCBAQAog
CQkyRTEzNDJDQTIxNUFBMTBBMDA3MTk5RDIgLyogVUlLaXRTb2Z0TGluay5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0g
c291cmNlY29kZS5jLmg7IHBhdGggPSBVSUtpdFNvZnRMaW5rLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CiAJCTJFMTM0MkNCMjE1QUExMEEwMDcxOTlEMiAvKiBVSUtpdFNvZnRMaW5rLm1t
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2JqY3BwOyBwYXRoID0gVUlLaXRTb2Z0TGluay5t
bTsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzEzMDhCMTMyMEEyMTcwNTAwM0ZCOTI5
IC8qIFN5c3RlbVByZXZpZXdTUEkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gU3lzdGVtUHJldmlld1NQSS5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBRTI1MTc1OURCMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IE9wZW5HTFNv
ZnRMaW5rQ29jb2EubW07IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxNjQ3RkFGMjUx
NzU5REMwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE9w
ZW5HTFNvZnRMaW5rQ29jb2EuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzcxMTlB
NzgyMENDQjVGRjAwMkM2REM5IC8qIFdlYktpdFRhcmdldENvbmRpdGlvbmFscy54Y2NvbmZpZyAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQueGNj
b25maWc7IHBhdGggPSBXZWJLaXRUYXJnZXRDb25kaXRpb25hbHMueGNjb25maWc7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQxNkU5OTUxMjNEQUU2QkQwMEU4NzFDQiAvKiBBdWRpb1Rv
b2xib3hTb2Z0TGluay5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29k
aW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBB
dWRpb1Rvb2xib3hTb2Z0TGluay5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTQx
NkU5OTUyMjNEQUU2QkUwMEU4NzFDQiAvKiBBdWRpb1Rvb2xib3hTb2Z0TGluay5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBBdWRpb1Rvb2xib3hTb2Z0TGluay5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjU0LDYgKzY1OCw4IEBACiAJCQkJMUMwMjJFRkMyMkNG
RThFMDAwNkRGMDFCIC8qIEd1bnppcC5jcHAgKi8sCiAJCQkJQ0RBQ0IzNUUyMzg3M0U0ODAwMThE
N0NFIC8qIE1lZGlhVG9vbGJveFNvZnRMaW5rLmNwcCAqLywKIAkJCQlDREFDQjM1RjIzODczRTQ4
MDAxOEQ3Q0UgLyogTWVkaWFUb29sYm94U29mdExpbmsuaCAqLywKKwkJCQkzMTY0N0ZBRjI1MTc1
OURDMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovLAorCQkJCTMxNjQ3RkFFMjUx
NzU5REIwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tICovLAogCQkJCUExRjYzQzlE
MjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsuaCAqLywKIAkJCQlBMUY2M0M5RTIx
QTREQkY3MDA2RkI0M0IgLyogUGFzc0tpdFNvZnRMaW5rLm1tICovLAogCQkJCTA3NjExREI0MjQz
RkE1QkUwMEQ4MDcwNCAvKiBVc2FnZVRyYWNraW5nU29mdExpbmsuaCAqLywKQEAgLTg1OSw2ICs4
NjUsNyBAQAogCQkJCTBDNzc4NTlEMUY0NTEzMEYwMEY0RUJCNiAvKiBOU1dpbmRvd1NQSS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTcwQUI4RjkyMEFGNkUzRDAwQjhCRTg3IC8qIE5TWFBDQ29ubmVj
dGlvblNQSS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEM1QUY5MUYxRjQzQTRDNzAwMkVBQzAyIC8q
IE9wZW5HTEVTU1BJLmggaW4gSGVhZGVycyAqLywKKwkJCQkzMTY0N0ZCMTI1MTc1OUVGMDAxMEY4
RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQTE2OUIwNDEy
NDhFRjA1MjAwRUU4QjdCIC8qIFBhc3NLaXRJbnN0YWxsbWVudHNTUEkuaCBpbiBIZWFkZXJzICov
LAogCQkJCUExRjYzQzlGMjFBNERCRjcwMDZGQjQzQiAvKiBQYXNzS2l0U29mdExpbmsuaCBpbiBI
ZWFkZXJzICovLAogCQkJCTBDMkRBMTU1MUYzQkVCNDkwMERCQzMxNyAvKiBQYXNzS2l0U1BJLmgg
aW4gSGVhZGVycyAqLywKQEAgLTk5NSw2ICsxMDAyLDcgQEAKIAkJCQk1QzdDNzg3NDIzQUMzRTc3
MDA2NUY0N0UgLyogTWFuYWdlZENvbmZpZ3VyYXRpb25Tb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LAogCQkJCTBDRjk5Q0E0MUY3MzYzNzUwMDdFRTc5MyAvKiBNZWRpYVRpbWVBVkZvdW5kYXRpb24u
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQ0RBQ0IzNjAyMzg3NDI1QjAwMThEN0NFIC8qIE1lZGlh
VG9vbGJveFNvZnRMaW5rLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTMxNjQ3RkIwMjUxNzU5REQw
MDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlua0NvY29hLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJQTFG
NjNDQTAyMUE0REJGNzAwNkZCNDNCIC8qIFBhc3NLaXRTb2Z0TGluay5tbSBpbiBTb3VyY2VzICov
LAogCQkJCUExMTc1QjRGMUY2QjMzNzMwMEM0QjlGMCAvKiBQb3B1cE1lbnUubW0gaW4gU291cmNl
cyAqLywKIAkJCQk0NDUwRkM5RjIxRjVGNjAyMDA0REZBNTYgLyogUXVpY2tMb29rU29mdExpbmsu
bW0gaW4gU291cmNlcyAqLywKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvUGxh
dGZvcm1NYWMuY21ha2UgYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL1BsYXRmb3JtTWFjLmNtYWtl
CmluZGV4IDY1OTFkNzk5ZWE1Y2E5NDM4YTM5YjlkMzg4ODY0NjZmMDM1NjUyNTMuLmNkZjAxYjM2
NmRkOTg5NmU1N2I5OWVmMzcyNGQzMmVjMzQ2MTIzNzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL1BBTC9wYWwvUGxhdGZvcm1NYWMuY21ha2UKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3Bh
bC9QbGF0Zm9ybU1hYy5jbWFrZQpAQCAtNiw2ICs2LDcgQEAgbGlzdChBUFBFTkQgUEFMX1BVQkxJ
Q19IRUFERVJTCiAgICAgY29jb2EvQXBwU1NPU29mdExpbmsuaAogICAgIGNvY29hL0FWRm91bmRh
dGlvblNvZnRMaW5rLmgKICAgICBjb2NvYS9NZWRpYVRvb2xib3hTb2Z0TGluay5oCisgICAgY29j
b2EvT3BlbkdMU29mdExpbmtDb2NvYS5oCiAgICAgY29jb2EvUGFzc0tpdFNvZnRMaW5rLmgKIAog
ICAgIG1hYy9Mb29rdXBTb2Z0TGluay5oCkBAIC0xMjMsNiArMTI0LDcgQEAgbGlzdChBUFBFTkQg
UEFMX1NPVVJDRVMKICAgICBjb2NvYS9GaWxlU2l6ZUZvcm1hdHRlckNvY29hLm1tCiAgICAgY29j
b2EvR3VuemlwLmNwcAogICAgIGNvY29hL01lZGlhVG9vbGJveFNvZnRMaW5rLmNwcAorICAgIGNv
Y29hL09wZW5HTFNvZnRMaW5rQ29jb2EubW0KICAgICBjb2NvYS9QYXNzS2l0U29mdExpbmsubW0K
IAogICAgIGNyeXB0by9jb21tb25jcnlwdG8vQ3J5cHRvRGlnZXN0Q29tbW9uQ3J5cHRvLmNwcApk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0Nv
Y29hLmggYi9Tb3VyY2UvV2ViQ29yZS9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi4zZGU5ZDM3NmQ3YjViY2NhMzkwM2NmYTE2NjExZGQ0NzcwY2E1NWM1Ci0t
LSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLmgKQEAgLTAsMCArMSw0OCBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAyMCBB
cHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5k
IHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2Rp
ZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRp
dGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUg
bXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0
cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmln
aHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dp
bmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1h
dGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZU
V0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLgorICovCisKKyNwcmFnbWEgb25jZQorCisjaW5jbHVkZSA8d3RmL1NvZnRMaW5r
aW5nLmg+CisKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorCisj
aW5jbHVkZSA8T3BlbkdML09wZW5HTC5oPgorCitTT0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9IRUFE
RVIoUEFMLCBPcGVuR0wpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBBTCwgT3Bl
bkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhlbEZvcm1h
dEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQgKm5waXgp
LCAoYXR0cmlicywgcGl4LCBucGl4KSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfSEVBREVSKFBB
TCwgT3BlbkdMLCBDR0xDcmVhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2Jq
IHBpeCwgQ0dMQ29udGV4dE9iaiBzaGFyZSwgQ0dMQ29udGV4dE9iaiAqY3R4KSwgKHBpeCwgc2hh
cmUsIGN0eCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dM
RGVzY3JpYmVQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgsIEdM
aW50IHBpeF9udW0sIENHTFBpeGVsRm9ybWF0QXR0cmlidXRlIGF0dHJpYiwgR0xpbnQgKnZhbHVl
KSwgKHBpeCwgcGl4X251bSwgYXR0cmliLCB2YWx1ZSkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9S
X0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzY3JpYmVSZW5kZXJlciwgQ0dMRXJyb3IsIChDR0xS
ZW5kZXJlckluZm9PYmogcmVuZCwgR0xpbnQgcmVuZF9udW0sIENHTFJlbmRlcmVyUHJvcGVydHkg
cHJvcCwgR0xpbnQgKnZhbHVlKSwgKHJlbmQsIHJlbmRfbnVtLCBwcm9wLCB2YWx1ZSkpCitTT0ZU
X0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUwsIE9wZW5HTCwgQ0dMRGVzdHJveUNvbnRleHQs
IENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgpLCAoY3R4KSkKK1NPRlRfTElOS19GVU5DVElP
Tl9GT1JfSEVBREVSKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95UmVuZGVyZXJJbmZvLCBDR0xFcnJv
ciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kKSwgKHJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9O
X0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENHTEdldFBhcmFtZXRlciwgQ0dMRXJyb3IsIChDR0xD
b250ZXh0T2JqIGN0eCwgQ0dMQ29udGV4dFBhcmFtZXRlciBwbmFtZSwgR0xpbnQgKnBhcmFtcyks
IChjdHgsIHBuYW1lLCBwYXJhbXMpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFM
LCBPcGVuR0wsIENHTFF1ZXJ5UmVuZGVyZXJJbmZvLCBDR0xFcnJvciwgKEdMdWludCBkaXNwbGF5
X21hc2ssIENHTFJlbmRlcmVySW5mb09iaiAqcmVuZCwgR0xpbnQgKm5yZW5kKSwgKGRpc3BsYXlf
bWFzaywgcmVuZCwgbnJlbmQpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBP
cGVuR0wsIENHTFJlbGVhc2VQaXhlbEZvcm1hdCwgdm9pZCwgKENHTFBpeGVsRm9ybWF0T2JqIHBp
eCksIChwaXgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9IRUFERVIoUEFMLCBPcGVuR0wsIENH
TFNldFZpcnR1YWxTY3JlZW4sIENHTEVycm9yLCAoQ0dMQ29udGV4dE9iaiBjdHgsIEdMaW50IHNj
cmVlbiksIChjdHgsIHNjcmVlbikpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX0hFQURFUihQQUws
IE9wZW5HTCwgQ0dMVXBkYXRlQ29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCks
IChjdHgpKQorCisjZW5kaWYKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29j
b2EvT3BlbkdMU29mdExpbmtDb2NvYS5tbSBiL1NvdXJjZS9XZWJDb3JlL1BBTC9wYWwvY29jb2Ev
T3BlbkdMU29mdExpbmtDb2NvYS5tbQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5lMDZlZTJmMDVmOTFmMmQ1OWNmMGJk
YjZlN2FhZTJlZmUyYzVmZDNjCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUvUEFM
L3BhbC9jb2NvYS9PcGVuR0xTb2Z0TGlua0NvY29hLm1tCkBAIC0wLDAgKzEsNDggQEAKKy8qCisg
KiBDb3B5cmlnaHQgKEMpIDIwMjAgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoK
KyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdp
dGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRo
YXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmli
dXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJv
ZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVu
dGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0
aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIElOQy4gT1IKKyAqIENPTlRSSUJV
VE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVD
SUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywg
QlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBP
UiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVT
UyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBM
SUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQK
KyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdB
WSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9G
IFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4KKyAqLworCisjaW5jbHVkZSAiY29uZmln
LmgiCisKKyNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQorCisjaW5j
bHVkZSA8T3BlbkdML09wZW5HTC5oPgorI2luY2x1ZGUgPHd0Zi9Tb2Z0TGlua2luZy5oPgorCitT
T0ZUX0xJTktfRlJBTUVXT1JLX0ZPUl9TT1VSQ0VfV0lUSF9FWFBPUlQoUEFMLCBPcGVuR0wsIFBB
TF9FWFBPUlQpCisKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBB
TCwgT3BlbkdMLCBDR0xDaG9vc2VQaXhlbEZvcm1hdCwgQ0dMRXJyb3IsIChjb25zdCBDR0xQaXhl
bEZvcm1hdEF0dHJpYnV0ZSAqYXR0cmlicywgQ0dMUGl4ZWxGb3JtYXRPYmogKnBpeCwgR0xpbnQg
Km5waXgpLCAoYXR0cmlicywgcGl4LCBucGl4KSwgUEFMX0VYUE9SVCkKK1NPRlRfTElOS19GVU5D
VElPTl9GT1JfU09VUkNFX1dJVEhfRVhQT1JUKFBBTCwgT3BlbkdMLCBDR0xSZWxlYXNlUGl4ZWxG
b3JtYXQsIHZvaWQsIChDR0xQaXhlbEZvcm1hdE9iaiBwaXgpLCAocGl4KSwgUEFMX0VYUE9SVCkK
KworU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVuR0wsIENHTENyZWF0ZUNv
bnRleHQsIENHTEVycm9yLCAoQ0dMUGl4ZWxGb3JtYXRPYmogcGl4LCBDR0xDb250ZXh0T2JqIHNo
YXJlLCBDR0xDb250ZXh0T2JqICpjdHgpLCAocGl4LCBzaGFyZSwgY3R4KSkKK1NPRlRfTElOS19G
VU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xEZXNjcmliZVBpeGVsRm9ybWF0LCBD
R0xFcnJvciwgKENHTFBpeGVsRm9ybWF0T2JqIHBpeCwgR0xpbnQgcGl4X251bSwgQ0dMUGl4ZWxG
b3JtYXRBdHRyaWJ1dGUgYXR0cmliLCBHTGludCAqdmFsdWUpLCAocGl4LCBwaXhfbnVtLCBhdHRy
aWIsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBD
R0xEZXNjcmliZVJlbmRlcmVyLCBDR0xFcnJvciwgKENHTFJlbmRlcmVySW5mb09iaiByZW5kLCBH
TGludCByZW5kX251bSwgQ0dMUmVuZGVyZXJQcm9wZXJ0eSBwcm9wLCBHTGludCAqdmFsdWUpLCAo
cmVuZCwgcmVuZF9udW0sIHByb3AsIHZhbHVlKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09V
UkNFKFBBTCwgT3BlbkdMLCBDR0xEZXN0cm95Q29udGV4dCwgQ0dMRXJyb3IsIChDR0xDb250ZXh0
T2JqIGN0eCksIChjdHgpKQorU09GVF9MSU5LX0ZVTkNUSU9OX0ZPUl9TT1VSQ0UoUEFMLCBPcGVu
R0wsIENHTERlc3Ryb3lSZW5kZXJlckluZm8sIENHTEVycm9yLCAoQ0dMUmVuZGVyZXJJbmZvT2Jq
IHJlbmQpLCAocmVuZCkpCitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5H
TCwgQ0dMR2V0UGFyYW1ldGVyLCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4LCBDR0xDb250
ZXh0UGFyYW1ldGVyIHBuYW1lLCBHTGludCAqcGFyYW1zKSwgKGN0eCwgcG5hbWUsIHBhcmFtcykp
CitTT0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMUXVlcnlSZW5k
ZXJlckluZm8sIENHTEVycm9yLCAoR0x1aW50IGRpc3BsYXlfbWFzaywgQ0dMUmVuZGVyZXJJbmZv
T2JqICpyZW5kLCBHTGludCAqbnJlbmQpLCAoZGlzcGxheV9tYXNrLCByZW5kLCBucmVuZCkpCitT
T0ZUX0xJTktfRlVOQ1RJT05fRk9SX1NPVVJDRShQQUwsIE9wZW5HTCwgQ0dMU2V0VmlydHVhbFNj
cmVlbiwgQ0dMRXJyb3IsIChDR0xDb250ZXh0T2JqIGN0eCwgR0xpbnQgc2NyZWVuKSwgKGN0eCwg
c2NyZWVuKSkKK1NPRlRfTElOS19GVU5DVElPTl9GT1JfU09VUkNFKFBBTCwgT3BlbkdMLCBDR0xV
cGRhdGVDb250ZXh0LCBDR0xFcnJvciwgKENHTENvbnRleHRPYmogY3R4KSwgKGN0eCkpCisKKyNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVj
dC5wYnhwcm9qIGIvU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhw
cm9qCmluZGV4IDBlMjYzOTZjZDg2MDFmMGEzZDhhZmE3NTVkN2UwM2ZiZTUyZDk2NDQuLjRjMDE0
ZjZhZjhjMTIxNjQ2N2ZkMmU2ZjZiNGYxMzc2ZjI0MzAyMzQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKQEAgLTkwOCw2ICs5MDgsNyBA
QAogCQkzMTQ4NzdFNjFGQUFCMDI1MDBDMDU3NTkgLyogSlNPZmZzY3JlZW5DYW52YXMuaCBpbiBI
ZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNDg3N0U0MUZBQUIw
MjIwMEMwNTc1OSAvKiBKU09mZnNjcmVlbkNhbnZhcy5oICovOyB9OwogCQkzMTRCRTNBMTFCMzBG
NkI3MDAxNDE5ODIgLyogQ1NTTmFtZWRJbWFnZVZhbHVlLmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAzMTRCRTNBMDFCMzBGNkI3MDAxNDE5ODIgLyogQ1NT
TmFtZWRJbWFnZVZhbHVlLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwg
KTsgfTsgfTsKIAkJMzE0QkUzQTcxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0
ZWRJbWFnZS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0g
MzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgyIC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICov
OyB9OworCQkzMTY0N0ZBQjI1MTYxOEUyMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtDb2NvYS5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2NDdGQTgy
NTE2MTZCRDAwMTBGOEZCIC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EuaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkzMTZEQ0IyMDFFNzhDQTU1MDAxQjVG
ODcgLyogSlNSVENPZmZlckFuc3dlck9wdGlvbnMuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBC
WEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDMxNkRDQjFBMUU3OENBNTUwMDFCNUY4NyAvKiBKU1JUQ09m
ZmVyQW5zd2VyT3B0aW9ucy5oICovOyB9OwogCQkzMTZEQ0IyMjFFNzhDQTU1MDAxQjVGODcgLyog
SlNSVENSdHBUcmFuc2NlaXZlckRpcmVjdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJY
QnVpbGRGaWxlOyBmaWxlUmVmID0gMzE2RENCMUMxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDUnRw
VHJhbnNjZWl2ZXJEaXJlY3Rpb24uaCAqLzsgfTsKIAkJMzE2RENCNEMxRTc5MTBBNjAwMUI1Rjg3
IC8qIEpTUlRDSWNlQ29ubmVjdGlvblN0YXRlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhC
dWlsZEZpbGU7IGZpbGVSZWYgPSAzMTZEQ0I0NjFFNzkxMEE2MDAxQjVGODcgLyogSlNSVENJY2VD
b25uZWN0aW9uU3RhdGUuaCAqLzsgfTsKQEAgLTcxOTYsNiArNzE5Nyw4IEBACiAJCTMxNEJFM0E0
MUIzMTAzRkIwMDE0MTk4MiAvKiBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuY3BwICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTmFtZWRJbWFnZUdlbmVyYXRlZEltYWdlLmNw
cDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE0QkUzQTUxQjMxMDNGQjAwMTQxOTgy
IC8qIE5hbWVkSW1hZ2VHZW5lcmF0ZWRJbWFnZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBOYW1lZEltYWdlR2VuZXJhdGVkSW1hZ2UuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMzE1NTc0Q0MyMThGNjZEMDAwRDg4RjY2IC8qIFBvaW50ZXJFdmVudElPUy5jcHAg
Ki8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3du
RmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBQb2ludGVyRXZlbnRJT1MuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIg
LyogT3BlbkdMU29mdExpbmtDb2NvYS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxh
c3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBPcGVuR0xTb2Z0TGlua0Nv
Y29hLmg7IHBhdGggPSAuLi8uLi8uLi9QQUwvcGFsL2NvY29hL09wZW5HTFNvZnRMaW5rQ29jb2Eu
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMzE2NDdGQTkyNTE2MTZCRDAwMTBGOEZC
IC8qIE9wZW5HTFNvZnRMaW5rQ29jb2EubW0gKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
bGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5vYmpjcHA7IG5hbWUgPSBPcGVuR0xT
b2Z0TGlua0NvY29hLm1tOyBwYXRoID0gLi4vLi4vLi4vUEFML3BhbC9jb2NvYS9PcGVuR0xTb2Z0
TGlua0NvY29hLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkzMTZEQ0IxMjFFNzhC
RTQzMDAxQjVGODcgLyogUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IHBhdGggPSBSVENPZmZlckFuc3dlck9wdGlvbnMuaWRsOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OwogCQkzMTZEQ0IxNzFFNzhDMzMwMDAxQjVGODcgLyogUlRDUnRwVHJhbnNjZWl2ZXJEaXJl
Y3Rpb24uaWRsICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gdGV4dDsgcGF0aCA9IFJUQ1J0cFRyYW5zY2VpdmVyRGlyZWN0aW9uLmlkbDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzE2RENCMTkxRTc4Q0E1NTAwMUI1Rjg3IC8qIEpTUlRDT2Zm
ZXJBbnN3ZXJPcHRpb25zLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IEpTUlRDT2ZmZXJBbnN3ZXJPcHRpb25zLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
QEAgLTI2MzM1LDYgKzI2MzM4LDggQEAKIAkJCQlBRDlGRjZFMDE5MDgzOTFEMDAzQjYxRTAgLyog
SU9TdXJmYWNlUG9vbENvY29hLm1tICovLAogCQkJCUNEQzQ4QUM4MjE0OUNGMkEwMDI0RkQ1OSAv
KiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29jb2EuY3BwICovLAogCQkJCUNEQzQ4
QUM3MjE0OUNGMkEwMDI0RkQ1OSAvKiBNZWRpYUVuZ2luZUNvbmZpZ3VyYXRpb25GYWN0b3J5Q29j
b2EuaCAqLywKKwkJCQkzMTY0N0ZBODI1MTYxNkJEMDAxMEY4RkIgLyogT3BlbkdMU29mdExpbmtD
b2NvYS5oICovLAorCQkJCTMxNjQ3RkE5MjUxNjE2QkQwMDEwRjhGQiAvKiBPcGVuR0xTb2Z0TGlu
a0NvY29hLm1tICovLAogCQkJCUNERUIzRDcyMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VCdWZm
ZXJQYXJzZXIuY3BwICovLAogCQkJCUNERUIzRDczMjRDNDFBNkUwMDFGQkVFRiAvKiBTb3VyY2VC
dWZmZXJQYXJzZXIuaCAqLywKIAkJCQlDRDhGNjY3MDI0QzBGMjA4MDAwQzQyMUMgLyogU291cmNl
QnVmZmVyUGFyc2VyV2ViTS5jcHAgKi8sCkBAIC0zMjc4Myw3ICszMjc4OCw5IEBACiAJCQkJNkY2
MzgzRjYyNDI3QUY0QTAwREFCQTUzIC8qIExheW91dEluaXRpYWxDb250YWluaW5nQmxvY2suaCBp
biBIZWFkZXJzICovLAogCQkJCTZGMEI5OEI1MjNGMjY4RUMwMEVFQzJGMiAvKiBMYXlvdXRJbmxp
bmVUZXh0Qm94LmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDE4MDI1NTIzRDQ1NDlCMDBGRkIwNzEg
LyogTGF5b3V0SW50ZWdyYXRpb25Cb3hUcmVlLmggaW4gSGVhZGVycyAqLywKKwkJCQlFNDAzQjdB
MjI1MUIxMTkzMDAxOUU4MDAgLyogTGF5b3V0SW50ZWdyYXRpb25Db3ZlcmFnZS5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJRTRBQkFCREQyMzYwODhGRTAwRkE0MzQ1IC8qIExheW91dEludGVncmF0aW9u
TGluZUxheW91dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJRTQwM0I3QTMyNTFCMTFDMTAwMTlFODAw
IC8qIExheW91dEludGVncmF0aW9uUGFnaW5hdGlvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMTEz
MTBDRjQyMEJBNEEzRDAwNjVBOEQwIC8qIExheW91dEl0ZXJhdG9yLmggaW4gSGVhZGVycyAqLywK
IAkJCQk2RkZBNEMwMTIzRjJGRUQ5MDA3RTRFQkMgLyogTGF5b3V0TGluZUJyZWFrQm94LmggaW4g
SGVhZGVycyAqLywKIAkJCQk5MzFENzJGNjE1RkU2OTUzMDBDNEMwN0UgLyogTGF5b3V0TWlsZXN0
b25lLmggaW4gSGVhZGVycyAqLywKQEAgLTMyODI4LDcgKzMyODM1LDYgQEAKIAkJCQlCMjIyNzk2
NTBEMDBCRjIyMDA3MUI3ODIgLyogTGluZWFyR3JhZGllbnRBdHRyaWJ1dGVzLmggaW4gSGVhZGVy
cyAqLywKIAkJCQlBQjMxQzkxRTEwQUUxQjhFMDAwQzdCOTIgLyogTGluZUNsYW1wVmFsdWUuaCBp
biBIZWFkZXJzICovLAogCQkJCUZGRUZBQjJBMTgzODBEQTAwMDUxNDUzNCAvKiBMaW5lTGF5b3V0
U3RhdGUuaCBpbiBIZWFkZXJzICovLAotCQkJCUU0MDNCN0EyMjUxQjExOTMwMDE5RTgwMCAvKiBM
YXlvdXRJbnRlZ3JhdGlvbkNvdmVyYWdlLmggaW4gSGVhZGVycyAqLywKIAkJCQlFNDg0QTMzRTIz
MDU1MzI1MDA5QURFNkEgLyogTGluZUxheW91dFRyYXZlcnNhbC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJRTQzNDNEMjUyMzkyNzc5MDAwRUJCQjY2IC8qIExpbmVMYXlvdXRUcmF2ZXJzYWxDb21wbGV4
UGF0aC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRTQ1MUM2MjgyMzkyOTNFQzAwOTkzMTkwIC8qIExp
bmVMYXlvdXRUcmF2ZXJzYWxEaXNwbGF5UnVuUGF0aC5oIGluIEhlYWRlcnMgKi8sCkBAIC0zMzEz
Miw2ICszMzEzOCw3IEBACiAJCQkJRkRBM0U5NUMxMzRBNDlFRjAwOEQ0QjVBIC8qIE9mZmxpbmVB
dWRpb0Rlc3RpbmF0aW9uTm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE0ODc3RTMxRkFBOEZF
OTAwQzA1NzU5IC8qIE9mZnNjcmVlbkNhbnZhcy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMzE0MEM1
MjAxRkRGMTUxQTAwRDJBODczIC8qIE9mZnNjcmVlbkNhbnZhc1JlbmRlcmluZ0NvbnRleHQyRC5o
IGluIEhlYWRlcnMgKi8sCisJCQkJMzE2NDdGQUIyNTE2MThFMjAwMTBGOEZCIC8qIE9wZW5HTFNv
ZnRMaW5rQ29jb2EuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyRDNEQTY1MEQwMDZDRDYwMEVGNkYz
QSAvKiBPcGVuVHlwZUNHLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkQzREE2NTBEMDA2Q0Q2MDBF
RjZGMjcgLyogT3BlblR5cGVNYXRoRGF0YS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQjJEM0VBNjUw
RDAwNkNENjAwRUY2RjI4IC8qIE9wZW5UeXBlVHlwZXMuaCBpbiBIZWFkZXJzICovLApAQCAtMzM2
OTcsNyArMzM3MDQsNiBAQAogCQkJCTIyOEMyODQ1MTBEODI1MDAwMDlEMEQwRSAvKiBTY3JpcHRX
cmFwcGFibGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTE0MDBEN0E4MTcxMzZFQTcwMDc3Q0UwNSAv
KiBTY3JpcHRXcmFwcGFibGVJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlCQzhBRTM0RjEy
RUEwOTZBMDBFQjNBRTYgLyogU2Nyb2xsYWJsZUFyZWEuaCBpbiBIZWFkZXJzICovLAotCQkJCUU0
MDNCN0EzMjUxQjExQzEwMDE5RTgwMCAvKiBMYXlvdXRJbnRlZ3JhdGlvblBhZ2luYXRpb24uaCBp
biBIZWFkZXJzICovLAogCQkJCTVEOTI1QjY4MEY2NEQ0REQwMEI4NDdGMCAvKiBTY3JvbGxBbGln
bm1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUNBM0JGNjdFMTBEOTlCQUUwMEU2Q0U1MyAvKiBT
Y3JvbGxBbmltYXRvci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMEYxNzc0ODAxMzc4Qjc3MjAwOURB
NzZBIC8qIFNjcm9sbEFuaW1hdG9ySU9TLmggaW4gSGVhZGVycyAqLywKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdMLmNwcAppbmRl
eCAxNmNjMTBjNzdlMmY2NmRlMGFhNzk4MDM5Yjc4MzY0ZWE5NmRmODc5Li44ZDBlYWI5Y2NlMDNl
YTZmYjQ5MWQ4NzkzN2NlODU0NDgzMzAxYzMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9HcmFwaGljc0NvbnRleHRHTC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0R0wuY3BwCkBAIC0xODQsNiArMTg0
LDIzIEBAIHVpbnQ4X3QgR3JhcGhpY3NDb250ZXh0R0w6OmdldENoYW5uZWxCaXRzQnlGb3JtYXQo
R0NHTGVudW0gZm9ybWF0KQogICAgIH0KIH0KIAorI2lmICFQTEFURk9STShDT0NPQSkgJiYgVVNF
KEFOR0xFKQorR0NHTGVudW0gR3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJn
ZXQoKQoreworICAgIHJldHVybiBURVhUVVJFXzJEOworfQorCitHQ0dMZW51bSBHcmFwaGljc0Nv
bnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldFF1ZXJ5KCkKK3sKKyAgICByZXR1cm4gVEVY
VFVSRV9CSU5ESU5HXzJEOworfQorCitHQ0dMaW50IEdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1
cmZhY2VUZXh0dXJlVGFyZ2V0KCkKK3sKKyAgICByZXR1cm4gMHgzMDVGOyAvLyBFR0xfVEVYVFVS
RV8yRAorfQorI2VuZGlmCisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vIEVO
QUJMRShXRUJHTCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L0dyYXBoaWNzQ29udGV4dEdMLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9H
cmFwaGljc0NvbnRleHRHTC5oCmluZGV4IGM0ZWQ3ZjEyZThiZDBmZDRmOWUzMDA3NDY0MTNjYTEw
NzVhZjU2MDAuLmZhMjQxYmJlOGMzZjE3MjMwNWIxZjQ4MGJhMmYzOThjY2Q3MjEzMmQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL0dyYXBoaWNzQ29udGV4dEdM
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvR3JhcGhpY3NDb250ZXh0
R0wuaApAQCAtNzc4LDIwICs3NzgsMTIgQEAgcHVibGljOgogICAgIH07CiAKICNpZiBVU0UoQU5H
TEUpCi0gICAgZW51bSB7Ci0gICAgICAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgcmVkZWZpbmVk
IGhlcmUgZnJvbSBBTkdMRSdzIE9wZW5HTCBFUyBoZWFkZXJzIHRvCi0gICAgICAgIC8vIHByb3Zp
ZGUgYSBzaW5nbGUgcGxhY2Ugd2hlcmUgbXVsdGlwbGUgcG9ydGlvbnMgb2YgcGxhdGZvcm0gY29k
ZSBjYW4KLSAgICAgICAgLy8gcmVmZXJlbmNlIHRoZW0uCi0jaWYgUExBVEZPUk0oTUFDKSB8fCBQ
TEFURk9STShNQUNDQVRBTFlTVCkKLSAgICAgICAgSU9TdXJmYWNlVGV4dHVyZVRhcmdldCA9IFRF
WFRVUkVfUkVDVEFOR0xFX0FSQiwgLy8gYWxzbyBHTF9URVhUVVJFX1JFQ1RBTkdMRV9BTkdMRQot
ICAgICAgICBJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0UXVlcnkgPSBURVhUVVJFX0JJTkRJTkdfUkVD
VEFOR0xFX0FSQiwKLSAgICAgICAgRUdMSU9TdXJmYWNlVGV4dHVyZVRhcmdldCA9IDB4MzQ1Qiwg
Ly8gRUdMX1RFWFRVUkVfUkVDVEFOR0xFX0FOR0xFCi0jZWxzZQotICAgICAgICBJT1N1cmZhY2VU
ZXh0dXJlVGFyZ2V0ID0gVEVYVFVSRV8yRCwKLSAgICAgICAgSU9TdXJmYWNlVGV4dHVyZVRhcmdl
dFF1ZXJ5ID0gVEVYVFVSRV9CSU5ESU5HXzJELAotICAgICAgICBFR0xJT1N1cmZhY2VUZXh0dXJl
VGFyZ2V0ID0gMHgzMDVGLCAvLyBFR0xfVEVYVFVSRV8yRAotI2VuZGlmIC8vIFBMQVRGT1JNKE1B
QykKLSAgICB9OworICAgIC8vIFRoZXNlIGNvbnN0YW50cyBhcmUgcmVkZWZpbmVkIGhlcmUgZnJv
bSBBTkdMRSdzIE9wZW5HTCBFUyBoZWFkZXJzIHRvCisgICAgLy8gcHJvdmlkZSBhIHNpbmdsZSBw
bGFjZSB3aGVyZSBtdWx0aXBsZSBwb3J0aW9ucyBvZiBwbGF0Zm9ybSBjb2RlIGNhbgorICAgIC8v
IHJlZmVyZW5jZSB0aGVtLgorICAgIHN0YXRpYyBHQ0dMZW51bSBJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KCk7CisgICAgc3RhdGljIEdDR0xlbnVtIElPU3VyZmFjZVRleHR1cmVUYXJnZXRRdWVyeSgp
OworICAgIHN0YXRpYyBHQ0dMaW50IEVHTElPU3VyZmFjZVRleHR1cmVUYXJnZXQoKTsKICNlbmRp
ZiAvLyBVU0UoQU5HTEUpCiAKICAgICB2aXJ0dWFsIFBsYXRmb3JtR3JhcGhpY3NDb250ZXh0R0wg
cGxhdGZvcm1HcmFwaGljc0NvbnRleHRHTCgpIGNvbnN0ID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2FuZ2xlL0dyYXBoaWNzQ29udGV4dEdMQU5HTEUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUvR3JhcGhpY3NDb250
ZXh0R0xBTkdMRS5jcHAKaW5kZXggZGIwYjI4ZjhlZDA3Yzg1OWU3M2QwOTUyMWM0ZjlmYTVhYTE4
ZWI0Zi4uNzJlZWViMzIwN2QxY2EzNjQ5MThhMmY5NDk5NWQzNTIyM2EzMzI1OCAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUvR3JhcGhpY3NDb250ZXh0
R0xBTkdMRS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYW5nbGUv
R3JhcGhpY3NDb250ZXh0R0xBTkdMRS5jcHAKQEAgLTIzMSwxMCArMjMxLDEwIEBAIGJvb2wgR3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0w6OnJlc2hhcGVGQk9zKGNvbnN0IEludFNpemUmIHNpemUpCiAg
ICAgICAgIGdsOjpCaW5kVGV4dHVyZShHTF9URVhUVVJFXzJELCB0ZXh0dXJlMkRCaW5kaW5nKTsK
ICAgICAgICAgLy8gQXR0YWNoIG1fdGV4dHVyZSB0byBtX3ByZXNlcnZlRHJhd2luZ0J1ZmZlckZC
TyBmb3IgbGF0ZXIgYmxpdHRpbmcuCiAgICAgICAgIGdsOjpCaW5kRnJhbWVidWZmZXIoR0xfRlJB
TUVCVUZGRVIsIG1fcHJlc2VydmVEcmF3aW5nQnVmZmVyRkJPKTsKLSAgICAgICAgZ2w6OkZyYW1l
YnVmZmVyVGV4dHVyZTJEKEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR3Jh
cGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQsIG1fdGV4dHVyZSwgMCk7Cisg
ICAgICAgIGdsOjpGcmFtZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1Jf
QVRUQUNITUVOVDAsIEdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCks
IG1fdGV4dHVyZSwgMCk7CiAgICAgICAgIGdsOjpCaW5kRnJhbWVidWZmZXIoR0xfRlJBTUVCVUZG
RVIsIG1fZmJvKTsKICAgICB9IGVsc2UKLSAgICAgICAgZ2w6OkZyYW1lYnVmZmVyVGV4dHVyZTJE
KEdMX0ZSQU1FQlVGRkVSLCBHTF9DT0xPUl9BVFRBQ0hNRU5UMCwgR3JhcGhpY3NDb250ZXh0R0w6
OklPU3VyZmFjZVRleHR1cmVUYXJnZXQsIG1fdGV4dHVyZSwgMCk7CisgICAgICAgIGdsOjpGcmFt
ZWJ1ZmZlclRleHR1cmUyRChHTF9GUkFNRUJVRkZFUiwgR0xfQ09MT1JfQVRUQUNITUVOVDAsIEdy
YXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCksIG1fdGV4dHVyZSwgMCk7
CiAjZWxpZiBQTEFURk9STShHVEspCiAgICAgZ2w6OkJpbmRUZXh0dXJlKEdMX1RFWFRVUkVfUkVD
VEFOR0xFX0FOR0xFLCBtX3RleHR1cmUpOwogICAgIGdsOjpUZXhJbWFnZTJEKEdMX1RFWFRVUkVf
UkVDVEFOR0xFX0FOR0xFLCAwLCBtX2ludGVybmFsQ29sb3JGb3JtYXQsIHdpZHRoLCBoZWlnaHQs
IDAsIGNvbG9yRm9ybWF0LCBHTF9VTlNJR05FRF9CWVRFLCAwKTsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdM
Q29jb2EubW0gYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9HcmFwaGlj
c0NvbnRleHRHTE9wZW5HTENvY29hLm1tCmluZGV4IGE2MjZhMTUyZjhlMjM5NDQwYmU5MGQ1YThh
N2Y1OTQzMzc0ODk2MzMuLmMyMjFjMTQ2MTUzN2ViOWU4MDc3MjQ2YjM5ZGI4N2YzNTQzZjg3ODMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29hL0dyYXBo
aWNzQ29udGV4dEdMT3BlbkdMQ29jb2EubW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvR3JhcGhpY3NDb250ZXh0R0xPcGVuR0xDb2NvYS5tbQpAQCAtMzksNiAr
MzksNyBAQAogI2ltcG9ydCAiSG9zdFdpbmRvdy5oIgogI2ltcG9ydCAiSW1hZ2VCdWZmZXIuaCIK
ICNpbXBvcnQgIkxvZ2dpbmcuaCIKKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2EuaCIKICNp
bXBvcnQgIldlYkdMTGF5ZXIuaCIKICNpbXBvcnQgIldlYkdMT2JqZWN0LmgiCiAjaW1wb3J0ICJX
ZWJHTFJlbmRlcmluZ0NvbnRleHRCYXNlLmgiCkBAIC0xMDIsNiArMTAzLDIyIEBAIHB1YmxpYzoK
ICAgICB+R3JhcGhpY3NDb250ZXh0R0xPcGVuR0xQcml2YXRlKCkgeyB9CiB9OwogCisjaWYgUExB
VEZPUk0oTUFDKSB8fCBQTEFURk9STShNQUNDQVRBTFlTVCkKK3N0YXRpYyBib29sIGlzaU9TQXBw
T25NYWMoKQoreworI2lmIFBMQVRGT1JNKE1BQ0NBVEFMWVNUKSAmJiBDUFUoQVJNNjQpCisgICAg
c3RhdGljIGJvb2wgaXNpT1NBcHBPbk1hYyA9IGZhbHNlOworICAgIHN0YXRpYyBkaXNwYXRjaF9v
bmNlX3Qgb25jZTsKKyAgICBkaXNwYXRjaF9vbmNlKCZvbmNlLCBeeworICAgICAgICBpc2lPU0Fw
cE9uTWFjID0gW1tOU1Byb2Nlc3NJbmZvIHByb2Nlc3NJbmZvXSBpc2lPU0FwcE9uTWFjXTsKKyAg
ICB9KTsKKyAgICByZXR1cm4gaXNpT1NBcHBPbk1hYzsKKyNlbHNlCisgICAgcmV0dXJuIGZhbHNl
OworI2VuZGlmCit9CisjZW5kaWYKKwogUmVmUHRyPEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMPiBH
cmFwaGljc0NvbnRleHRHTE9wZW5HTDo6Y3JlYXRlKEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRl
cyBhdHRycywgSG9zdFdpbmRvdyogaG9zdFdpbmRvdywgR3JhcGhpY3NDb250ZXh0R0w6OkRlc3Rp
bmF0aW9uIGRlc3RpbmF0aW9uKQogewogICAgIC8vIFRoaXMgaW1wbGVtZW50YXRpb24gZG9lc24n
dCBjdXJyZW50bHkgc3VwcG9ydCByZW5kZXJpbmcgZGlyZWN0bHkgdG8gdGhlIEhvc3RXaW5kb3cu
CkBAIC0zODcsMTggKzQwNCwyMCBAQCBHcmFwaGljc0NvbnRleHRHTE9wZW5HTDo6R3JhcGhpY3ND
b250ZXh0R0xPcGVuR0woR3JhcGhpY3NDb250ZXh0R0xBdHRyaWJ1dGVzIGF0dAogI2lmIFBMQVRG
T1JNKE1BQykgfHwgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCiAgICAgRXh0ZW5zaW9uc0dMJiBleHRl
bnNpb25zID0gZ2V0RXh0ZW5zaW9ucygpOwogCi0gICAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBj
aGFyKiByZXF1aXJlZEV4dGVuc2lvbnNbXSA9IHsKLSAgICAgICAgIkdMX0FOR0xFX3RleHR1cmVf
cmVjdGFuZ2xlIiwgLy8gRm9yIElPU3VyZmFjZS1iYWNrZWQgdGV4dHVyZXMuCi0gICAgICAgICJH
TF9FWFRfdGV4dHVyZV9mb3JtYXRfQkdSQTg4ODgiLCAvLyBGb3IgY3JlYXRpbmcgdGhlIEVHTCBz
dXJmYWNlIGZyb20gYW4gSU9TdXJmYWNlLgotICAgIH07CisgICAgaWYgKCFpc2lPU0FwcE9uTWFj
KCkpIHsKKyAgICAgICAgc3RhdGljIGNvbnN0ZXhwciBjb25zdCBjaGFyKiByZXF1aXJlZEV4dGVu
c2lvbnNbXSA9IHsKKyAgICAgICAgICAgICJHTF9BTkdMRV90ZXh0dXJlX3JlY3RhbmdsZSIsIC8v
IEZvciBJT1N1cmZhY2UtYmFja2VkIHRleHR1cmVzLgorICAgICAgICAgICAgIkdMX0VYVF90ZXh0
dXJlX2Zvcm1hdF9CR1JBODg4OCIsIC8vIEZvciBjcmVhdGluZyB0aGUgRUdMIHN1cmZhY2UgZnJv
bSBhbiBJT1N1cmZhY2UuCisgICAgICAgIH07CiAKLSAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8
IFdURl9BUlJBWV9MRU5HVEgocmVxdWlyZWRFeHRlbnNpb25zKTsgKytpKSB7Ci0gICAgICAgIGlm
ICghZXh0ZW5zaW9ucy5zdXBwb3J0cyhyZXF1aXJlZEV4dGVuc2lvbnNbaV0pKSB7Ci0gICAgICAg
ICAgICBMT0coV2ViR0wsICJNaXNzaW5nIHJlcXVpcmVkIGV4dGVuc2lvbi4gJXMiLCByZXF1aXJl
ZEV4dGVuc2lvbnNbaV0pOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CisgICAgICAg
IGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RGX0FSUkFZX0xFTkdUSChyZXF1aXJlZEV4dGVuc2lv
bnMpOyArK2kpIHsKKyAgICAgICAgICAgIGlmICghZXh0ZW5zaW9ucy5zdXBwb3J0cyhyZXF1aXJl
ZEV4dGVuc2lvbnNbaV0pKSB7CisgICAgICAgICAgICAgICAgTE9HKFdlYkdMLCAiTWlzc2luZyBy
ZXF1aXJlZCBleHRlbnNpb24uICVzIiwgcmVxdWlyZWRFeHRlbnNpb25zW2ldKTsKKyAgICAgICAg
ICAgICAgICByZXR1cm47CisgICAgICAgICAgICB9CiAKLSAgICAgICAgZXh0ZW5zaW9ucy5lbnN1
cmVFbmFibGVkKHJlcXVpcmVkRXh0ZW5zaW9uc1tpXSk7CisgICAgICAgICAgICBleHRlbnNpb25z
LmVuc3VyZUVuYWJsZWQocmVxdWlyZWRFeHRlbnNpb25zW2ldKTsKKyAgICAgICAgfQogICAgIH0K
ICNlbmRpZiAvLyBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKE1BQ0NBVEFMWVNUKQogCkBAIC00
NTQsNyArNDczLDcgQEAgR3JhcGhpY3NDb250ZXh0R0xPcGVuR0w6OkdyYXBoaWNzQ29udGV4dEdM
T3BlbkdMKEdyYXBoaWNzQ29udGV4dEdMQXR0cmlidXRlcyBhdHQKIAogI2VsaWYgVVNFKEFOR0xF
KQogCi0gICAgR0xlbnVtIHRleHR1cmVUYXJnZXQgPSBHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJm
YWNlVGV4dHVyZVRhcmdldDsKKyAgICBHTGVudW0gdGV4dHVyZVRhcmdldCA9IEdyYXBoaWNzQ29u
dGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCk7CiAKICAgICBnbDo6R2VuVGV4dHVyZXMo
MSwgJm1fdGV4dHVyZSk7CiAgICAgZ2w6OkJpbmRUZXh0dXJlKHRleHR1cmVUYXJnZXQsIG1fdGV4
dHVyZSk7CkBAIC02MTgsNiArNjM3LDQ3IEBAIEdyYXBoaWNzQ29udGV4dEdMT3BlbkdMOjp+R3Jh
cGhpY3NDb250ZXh0R0xPcGVuR0woKQogICAgIExPRyhXZWJHTCwgIkRlc3Ryb3llZCBhIEdyYXBo
aWNzQ29udGV4dEdMT3BlbkdMICglcCkuIiwgdGhpcyk7CiB9CiAKKyNpZiBVU0UoQU5HTEUpCitH
Q0dMZW51bSBHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCgpCit7Cisj
aWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgaWYgKGlzaU9TQXBwT25NYWMoKSkKKyAgICAg
ICAgcmV0dXJuIFRFWFRVUkVfMkQ7CisgICAgcmV0dXJuIFRFWFRVUkVfUkVDVEFOR0xFX0FSQjsK
KyNlbGlmIFBMQVRGT1JNKE1BQykKKyAgICByZXR1cm4gVEVYVFVSRV9SRUNUQU5HTEVfQVJCOwor
I2Vsc2UKKyAgICByZXR1cm4gVEVYVFVSRV8yRDsKKyNlbmRpZgorfQorCitHQ0dMZW51bSBHcmFw
aGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldFF1ZXJ5KCkKK3sKKyNpZiBQTEFU
Rk9STShNQUNDQVRBTFlTVCkKKyAgICBpZiAoaXNpT1NBcHBPbk1hYygpKQorICAgICAgICByZXR1
cm4gVEVYVFVSRV9CSU5ESU5HXzJEOworICAgIHJldHVybiBURVhUVVJFX0JJTkRJTkdfUkVDVEFO
R0xFX0FSQjsKKyNlbGlmIFBMQVRGT1JNKE1BQykKKyAgICByZXR1cm4gVEVYVFVSRV9CSU5ESU5H
X1JFQ1RBTkdMRV9BUkI7CisjZWxzZQorICAgIHJldHVybiBURVhUVVJFX0JJTkRJTkdfMkQ7Cisj
ZW5kaWYKK30KKworR0NHTGludCBHcmFwaGljc0NvbnRleHRHTDo6RUdMSU9TdXJmYWNlVGV4dHVy
ZVRhcmdldCgpCit7CisjaWYgUExBVEZPUk0oTUFDQ0FUQUxZU1QpCisgICAgaWYgKGlzaU9TQXBw
T25NYWMoKSkKKyAgICAgICAgcmV0dXJuIDB4MzA1RjsgLy8gRUdMX1RFWFRVUkVfMkQKKyAgICBy
ZXR1cm4gMHgzNDVCOyAvLyBFR0xfVEVYVFVSRV9SRUNUQU5HTEVfQU5HTEUKKyNlbGlmIFBMQVRG
T1JNKE1BQykKKyAgICByZXR1cm4gMHgzNDVCOyAvLyBFR0xfVEVYVFVSRV9SRUNUQU5HTEVfQU5H
TEUKKyNlbHNlCisgICAgcmV0dXJuIDB4MzA1RjsgLy8gRUdMX1RFWFRVUkVfMkQKKyNlbmRpZgor
fQorI2VuZGlmCisKICNpZiBVU0UoT1BFTkdMX0VTKQogdm9pZCBHcmFwaGljc0NvbnRleHRHTE9w
ZW5HTDo6c2V0UmVuZGVyYnVmZmVyU3RvcmFnZUZyb21EcmF3YWJsZShHQ0dMc2l6ZWkgd2lkdGgs
IEdDR0xzaXplaSBoZWlnaHQpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jb2NvYS9XZWJHTExheWVyLm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY29jb2EvV2ViR0xMYXllci5tbQppbmRleCA0Yjk5Nzc2NTc3YmFlNDBkNGMzY2Rh
ZDAwMGI0NTFhN2YyNmYzZWE4Li4zNzlhYzEzNjYyZTVmOGRhODBlMTAxYjljNmFjZGMzMTRkNGY5
ZGQwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jb2NvYS9X
ZWJHTExheWVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NvY29h
L1dlYkdMTGF5ZXIubW0KQEAgLTIwNiwxMCArMjA2LDEwIEBAIHN0YXRpYyB2b2lkIGZyZWVEYXRh
KHZvaWQgKiwgY29uc3Qgdm9pZCAqZGF0YSwgc2l6ZV90IC8qIHNpemUgKi8pCiAgICAgICAgIGlm
IChfbGF0Y2hlZFBidWZmZXIpIHsKICAgICAgICAgICAgIFdURjo6T3B0aW9uYWw8U2NvcGVkUmVz
dG9yZVRleHR1cmVCaW5kaW5nPiByZXN0b3JlQmluZGluZzsKICAgICAgICAgICAgIC8vIFdlIGRv
bid0IG5lZWQgdG8gcmVzdG9yZSBHTF9URVhUVVJFX1JFQ1RBTkdMRSBiZWNhdXNlIGl0J3Mgbm90
IGFjY2Vzc2libGUgZnJvbSB1c2VyIGNvZGUuCi0gICAgICAgICAgICBpZiAoV2ViQ29yZTo6R3Jh
cGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQgIT0gV2ViQ29yZTo6R3JhcGhp
Y3NDb250ZXh0R0w6OlRFWFRVUkVfUkVDVEFOR0xFX0FSQikKLSAgICAgICAgICAgICAgICByZXN0
b3JlQmluZGluZy5lbXBsYWNlKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VU
ZXh0dXJlVGFyZ2V0UXVlcnksIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VU
ZXh0dXJlVGFyZ2V0KTsKKyAgICAgICAgICAgIGlmIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRH
TDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCgpICE9IFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdM
OjpURVhUVVJFX1JFQ1RBTkdMRV9BUkIpCisgICAgICAgICAgICAgICAgcmVzdG9yZUJpbmRpbmcu
ZW1wbGFjZShXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdl
dFF1ZXJ5KCksIFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KCkpOwogICAgICAgICAgICAgR0NHTGVudW0gdGV4dHVyZSA9IF9jb250ZXh0LT5wbGF0Zm9y
bVRleHR1cmUoKTsKLSAgICAgICAgICAgIGdsOjpCaW5kVGV4dHVyZShXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCwgdGV4dHVyZSk7CisgICAgICAgICAg
ICBnbDo6QmluZFRleHR1cmUoV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OklPU3VyZmFjZVRl
eHR1cmVUYXJnZXQoKSwgdGV4dHVyZSk7CiAgICAgICAgICAgICBpZiAoIUVHTF9SZWxlYXNlVGV4
SW1hZ2UoX2VnbERpc3BsYXksIF9sYXRjaGVkUGJ1ZmZlciwgRUdMX0JBQ0tfQlVGRkVSKSkgewog
ICAgICAgICAgICAgICAgIC8vIEZJWE1FOiByZXBvcnQgZXJyb3IuCiAgICAgICAgICAgICAgICAg
bm90SW1wbGVtZW50ZWQoKTsKQEAgLTI5Niw3ICsyOTYsNyBAQCBzdGF0aWMgdm9pZCBmcmVlRGF0
YSh2b2lkICosIGNvbnN0IHZvaWQgKmRhdGEsIHNpemVfdCAvKiBzaXplICovKQogICAgICAgICBF
R0xfV0lEVEgsIHNpemUud2lkdGgoKSwKICAgICAgICAgRUdMX0hFSUdIVCwgc2l6ZS5oZWlnaHQo
KSwKICAgICAgICAgRUdMX0lPU1VSRkFDRV9QTEFORV9BTkdMRSwgMCwKLSAgICAgICAgRUdMX1RF
WFRVUkVfVEFSR0VULCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6RUdMSU9TdXJmYWNlVGV4
dHVyZVRhcmdldCwKKyAgICAgICAgRUdMX1RFWFRVUkVfVEFSR0VULCBXZWJDb3JlOjpHcmFwaGlj
c0NvbnRleHRHTDo6RUdMSU9TdXJmYWNlVGV4dHVyZVRhcmdldCgpLAogICAgICAgICBFR0xfVEVY
VFVSRV9JTlRFUk5BTF9GT1JNQVRfQU5HTEUsIHVzaW5nQWxwaGEgPyBHTF9CR1JBX0VYVCA6IEdM
X1JHQiwKICAgICAgICAgRUdMX1RFWFRVUkVfRk9STUFULCBFR0xfVEVYVFVSRV9SR0JBLAogICAg
ICAgICBFR0xfVEVYVFVSRV9UWVBFX0FOR0xFLCBHTF9VTlNJR05FRF9CWVRFLApAQCAtMzM1LDEy
ICszMzUsMTIgQEAgc3RhdGljIHZvaWQgZnJlZURhdGEodm9pZCAqLCBjb25zdCB2b2lkICpkYXRh
LCBzaXplX3QgLyogc2l6ZSAqLykKICNlbGlmIFVTRShBTkdMRSkKICAgICBXVEY6Ok9wdGlvbmFs
PFNjb3BlZFJlc3RvcmVUZXh0dXJlQmluZGluZz4gcmVzdG9yZUJpbmRpbmc7CiAgICAgLy8gV2Ug
ZG9uJ3QgbmVlZCB0byByZXN0b3JlIEdMX1RFWFRVUkVfUkVDVEFOR0xFIGJlY2F1c2UgaXQncyBu
b3QgYWNjZXNzaWJsZSBmcm9tIHVzZXIgY29kZS4KLSAgICBpZiAoV2ViQ29yZTo6R3JhcGhpY3ND
b250ZXh0R0w6OklPU3VyZmFjZVRleHR1cmVUYXJnZXQgIT0gV2ViQ29yZTo6R3JhcGhpY3NDb250
ZXh0R0w6OlRFWFRVUkVfUkVDVEFOR0xFX0FSQikKLSAgICAgICAgcmVzdG9yZUJpbmRpbmcuZW1w
bGFjZShXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldFF1
ZXJ5LCBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCk7
CisgICAgaWYgKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFy
Z2V0KCkgIT0gV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0R0w6OlRFWFRVUkVfUkVDVEFOR0xFX0FS
QikKKyAgICAgICAgcmVzdG9yZUJpbmRpbmcuZW1wbGFjZShXZWJDb3JlOjpHcmFwaGljc0NvbnRl
eHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldFF1ZXJ5KCksIFdlYkNvcmU6OkdyYXBoaWNzQ29u
dGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCkpOwogCiAgICAgR0NHTGVudW0gdGV4dHVy
ZSA9IF9jb250ZXh0LT5wbGF0Zm9ybVRleHR1cmUoKTsKIAotICAgIGdsOjpCaW5kVGV4dHVyZShX
ZWJDb3JlOjpHcmFwaGljc0NvbnRleHRHTDo6SU9TdXJmYWNlVGV4dHVyZVRhcmdldCwgdGV4dHVy
ZSk7CisgICAgZ2w6OkJpbmRUZXh0dXJlKFdlYkNvcmU6OkdyYXBoaWNzQ29udGV4dEdMOjpJT1N1
cmZhY2VUZXh0dXJlVGFyZ2V0KCksIHRleHR1cmUpOwogCiAgICAgaWYgKF9sYXRjaGVkUGJ1ZmZl
cikgewogICAgICAgICBpZiAoIUVHTF9SZWxlYXNlVGV4SW1hZ2UoX2VnbERpc3BsYXksIF9sYXRj
aGVkUGJ1ZmZlciwgRUdMX0JBQ0tfQlVGRkVSKSkgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvVmlkZW9UZXh0dXJlQ29waWVyQ1YuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY3YvVmlkZW9UZXh0dXJlQ29waWVyQ1YuY3BwCmlu
ZGV4IDQ4NzA0MmM1YjE0NzhjYTJkM2M3MzJkNWE1OWM5OGFkYTkzN2YwZjguLmFhZmQ4MjM3ZGFm
ZjllZTk1NjJmMjA3MmU0MTdhZWI4YmI4ZWEwZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2N2L1ZpZGVvVGV4dHVyZUNvcGllckNWLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jdi9WaWRlb1RleHR1cmVDb3BpZXJDVi5jcHAK
QEAgLTczOSw3ICs3MzksNyBAQCB2b2lkKiBWaWRlb1RleHR1cmVDb3BpZXJDVjo6YXR0YWNoSU9T
dXJmYWNlVG9UZXh0dXJlKEdDR0xlbnVtIHRhcmdldCwgR0NHTGVudW0gaQogICAgICAgICBMT0co
V2ViR0wsICJVbmtub3duIHRleHR1cmUgdGFyZ2V0ICVkLiIsIHN0YXRpY19jYXN0PGludD4odGFy
Z2V0KSk7CiAgICAgICAgIHJldHVybiBudWxscHRyOwogICAgIH0KLSAgICBpZiAoZWdsVGV4dHVy
ZVRhcmdldCAhPSBHcmFwaGljc0NvbnRleHRHTDo6RUdMSU9TdXJmYWNlVGV4dHVyZVRhcmdldCkg
eworICAgIGlmIChlZ2xUZXh0dXJlVGFyZ2V0ICE9IEdyYXBoaWNzQ29udGV4dEdMOjpFR0xJT1N1
cmZhY2VUZXh0dXJlVGFyZ2V0KCkpIHsKICAgICAgICAgTE9HKFdlYkdMLCAiTWlzbWF0Y2ggaW4g
RUdMIHRleHR1cmUgdGFyZ2V0ICVkLiIsIHN0YXRpY19jYXN0PGludD4odGFyZ2V0KSk7CiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogICAgIH0KQEAgLTg1OCw3ICs4NTgsNyBAQCBib29sIFZpZGVv
VGV4dHVyZUNvcGllckNWOjpjb3B5SW1hZ2VUb1BsYXRmb3JtVGV4dHVyZShDVlBpeGVsQnVmZmVy
UmVmIGltYWdlLCBzaQogI2VsaWYgVVNFKE9QRU5HTCkKICAgICBHQ0dMZW51bSB2aWRlb1RleHR1
cmVUYXJnZXQgPSBHcmFwaGljc0NvbnRleHRHTDo6VEVYVFVSRV9SRUNUQU5HTEVfQVJCOwogI2Vs
aWYgVVNFKEFOR0xFKQotICAgIEdDR0xlbnVtIHZpZGVvVGV4dHVyZVRhcmdldCA9IEdyYXBoaWNz
Q29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0OworICAgIEdDR0xlbnVtIHZpZGVvVGV4
dHVyZVRhcmdldCA9IEdyYXBoaWNzQ29udGV4dEdMOjpJT1N1cmZhY2VUZXh0dXJlVGFyZ2V0KCk7
CiAjZWxzZQogI2Vycm9yIFVuc3VwcG9ydGVkIGNvbmZpZ3VyYXRpb24KICNlbmRpZgpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1BsYXRmb3JtU2NyZWVuTWFjLm1tCmluZGV4IGEx
Yjk0Y2QxYTkxZDk5NTg2ZjU2ZDZmZGY1MzJmYzQxY2ZkZDMyNWIuLjI1M2UzZjI0NGRhOWRhODQ3
OTNlZDViNWI4NjQ0MGEyNWIwOTNjY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL21hYy9QbGF0Zm9ybVNjcmVlbk1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9tYWMvUGxhdGZvcm1TY3JlZW5NYWMubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIkZs
b2F0UmVjdC5oIgogI2ltcG9ydCAiRnJhbWVWaWV3LmgiCiAjaW1wb3J0ICJIb3N0V2luZG93Lmgi
CisjaW1wb3J0ICJPcGVuR0xTb2Z0TGlua0NvY29hLmgiCiAjaW1wb3J0ICJTY3JlZW5Qcm9wZXJ0
aWVzLmgiCiAjaW1wb3J0IDxDb2xvclN5bmMvQ29sb3JTeW5jLmg+CiAjaW1wb3J0IDxwYWwvc3Bp
L2NnL0NvcmVHcmFwaGljc1NQSS5oPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbWFjL1dlYkdMQmxvY2tsaXN0Lm1tIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbWFjL1dl
YkdMQmxvY2tsaXN0Lm1tCmluZGV4IGRiZjMxZDhhYTM5MWZiNWQ0NWYwYTZmNTRmZWYzMTlhNTY1
ZWJhZDQuLjZjMWQyNmU0NzlhMDI4MTdiZGQ1YjE4NmZhYTJhYTc2YTVlY2JkYmMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL21hYy9XZWJHTEJsb2NrbGlzdC5tbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvV2ViR0xCbG9ja2xpc3QubW0KQEAgLTI5LDcgKzI5
LDcgQEAKICNpZiBQTEFURk9STShNQUMpCiAKICNpbXBvcnQgIkJsb2NrbGlzdFVwZGF0ZXIuaCIK
LSNpbXBvcnQgPE9wZW5HTC9PcGVuR0wuaD4KKyNpbXBvcnQgIk9wZW5HTFNvZnRMaW5rQ29jb2Eu
aCIKICNpbXBvcnQgPHBhbC9zcGkvY2YvQ0ZVdGlsaXRpZXNTUEkuaD4KIAogbmFtZXNwYWNlIFdl
YkNvcmUgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9Db25maWd1cmF0aW9ucy9XZWJLaXQu
eGNjb25maWcgYi9Tb3VyY2UvV2ViS2l0L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZwpp
bmRleCBlMTg0Y2Y2Yzk5NDdhYmE1Y2Y3ZDVkMmIwNjNjYTQ1Y2ZjOTQyZmMxLi41Zjc1ZWNiYjE0
OWM1NTFhNDUxMWE5MDZmZDdmNDNjMTdlOTg4OTIxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L0NvbmZpZ3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZworKysgYi9Tb3VyY2UvV2ViS2l0L0NvbmZp
Z3VyYXRpb25zL1dlYktpdC54Y2NvbmZpZwpAQCAtODgsMTYgKzg4LDYgQEAgV0tfTU9CSUxFX0dF
U1RBTFRfTERGTEFHU19jb2NvYXRvdWNoID0gLWxNb2JpbGVHZXN0YWx0OwogV0tfTElCU0FOREJP
WF9MREZMQUdTID0gJChXS19MSUJTQU5EQk9YX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7
CiBXS19MSUJTQU5EQk9YX0xERkxBR1NfbWFjb3N4ID0gLWxzYW5kYm94OwogCi1XS19PUEVOR0xf
TERGTEFHUyA9ICQoV0tfT1BFTkdMX0xERkxBR1NfJChXS19QTEFURk9STV9OQU1FKSk7Ci1XS19P
UEVOR0xfTERGTEFHU19pcGhvbmVvcyA9IC1mcmFtZXdvcmsgT3BlbkdMRVM7Ci1XS19PUEVOR0xf
TERGTEFHU19tYWNjYXRhbHlzdCA9IC1mcmFtZXdvcmsgT3BlbkdMOwotV0tfT1BFTkdMX0xERkxB
R1NfaXBob25lc2ltdWxhdG9yID0gLWZyYW1ld29yayBPcGVuR0xFUzsKLVdLX09QRU5HTF9MREZM
QUdTX3dhdGNob3MgPSAkKFdLX09QRU5HTF9MREZMQUdTX2lwaG9uZW9zKTsKLVdLX09QRU5HTF9M
REZMQUdTX3dhdGNoc2ltdWxhdG9yID0gJChXS19PUEVOR0xfTERGTEFHU19pcGhvbmVzaW11bGF0
b3IpOwotV0tfT1BFTkdMX0xERkxBR1NfYXBwbGV0dm9zID0gJChXS19PUEVOR0xfTERGTEFHU19p
cGhvbmVvcyk7Ci1XS19PUEVOR0xfTERGTEFHU19hcHBsZXR2c2ltdWxhdG9yID0gJChXS19PUEVO
R0xfTERGTEFHU19pcGhvbmVzaW11bGF0b3IpOwotV0tfT1BFTkdMX0xERkxBR1NfbWFjb3N4ID0g
LWZyYW1ld29yayBPcGVuR0w7Ci0KIFdLX1BERktJVF9MREZMQUdTID0gJChXS19QREZLSVRfTERG
TEFHU18kKFdLX1BMQVRGT1JNX05BTUUpKTsKIFdLX1BERktJVF9MREZMQUdTX2lwaG9uZW9zID0g
LWZyYW1ld29yayBQREZLaXQ7CiBXS19QREZLSVRfTERGTEFHU19pcGhvbmVvc1tzZGs9aXBob25l
KjExLipdID0gOwpAQCAtMTMzLDcgKzEyMyw3IEBAIFdLX0FVVEhLSVRfTERGTEFHU19JT1NfU0lO
Q0VfMTMgPSAtZnJhbWV3b3JrIEF1dGhLaXQ7CiBXS19BVVRIS0lUX0xERkxBR1NfbWFjb3N4ID0g
JChXS19BVVRIS0lUX0xERkxBR1MkKFdLX01BQ09TXzEwMTUpKTsKIFdLX0FVVEhLSVRfTERGTEFH
U19NQUNPU19TSU5DRV8xMDE1ID0gLWZyYW1ld29yayBBdXRoS2l0OwogCi1GUkFNRVdPUktfQU5E
X0xJQlJBUllfTERGTEFHUyA9IC1sb2JqYyAtZnJhbWV3b3JrIENGTmV0d29yayAtZnJhbWV3b3Jr
IENvcmVBdWRpbyAtZnJhbWV3b3JrIENvcmVGb3VuZGF0aW9uIC1mcmFtZXdvcmsgQ29yZUdyYXBo
aWNzIC1mcmFtZXdvcmsgQ29yZVRleHQgLWZyYW1ld29yayBGb3VuZGF0aW9uIC1mcmFtZXdvcmsg
SW1hZ2VJTyAtZnJhbWV3b3JrIElPS2l0IC1mcmFtZXdvcmsgSU9TdXJmYWNlIC1mcmFtZXdvcmsg
V2ViS2l0TGVnYWN5IC1sbmV0d29yayAkKFdLX0FDQ0VTU0lCSUxJVFlfTERGTEFHUykgJChXS19B
UFBLSVRfTERGTEFHUykgJChXS19BU1NFUlRJT05fU0VSVklDRVNfTERGTEFHUykgJChXS19SVU5O
SU5HQk9BUkRfU0VSVklDRVNfTERGTEFHUykgJChXS19BVVRIS0lUX0xERkxBR1MpICQoV0tfQ0FS
Qk9OX0xERkxBR1MpICQoV0tfQ09SRV9QUkVESUNUSU9OX0xERkxBR1MpICQoV0tfQ09SRV9TRVJW
SUNFU19MREZMQUdTKSAkKFdLX0dSQVBISUNTX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfTElCU0FO
REJPWF9MREZMQUdTKSAkKFdLX0xJQldFQlJUQ19MREZMQUdTKSAkKFdLX01PQklMRV9DT1JFX1NF
UlZJQ0VTX0xERkxBR1MpICQoV0tfTU9CSUxFX0dFU1RBTFRfTERGTEFHUykgJChXS19PUEVOR0xf
TERGTEFHUykgJChXS19QREZLSVRfTERGTEFHUykgJChXS19TQUZFX0JST1dTSU5HX0xERkxBR1Mp
ICQoV0tfU0VDVVJJVFlfSU5URVJGQUNFX0xERkxBR1MpICQoV0tfVUlLSVRfTERGTEFHUykgJChX
S19VUkxfRk9STUFUVElOR19MREZMQUdTKSAkKFdLX1dFQklOU1BFQ1RPUlVJX0xERkxBR1MpOwor
RlJBTUVXT1JLX0FORF9MSUJSQVJZX0xERkxBR1MgPSAtbG9iamMgLWZyYW1ld29yayBDRk5ldHdv
cmsgLWZyYW1ld29yayBDb3JlQXVkaW8gLWZyYW1ld29yayBDb3JlRm91bmRhdGlvbiAtZnJhbWV3
b3JrIENvcmVHcmFwaGljcyAtZnJhbWV3b3JrIENvcmVUZXh0IC1mcmFtZXdvcmsgRm91bmRhdGlv
biAtZnJhbWV3b3JrIEltYWdlSU8gLWZyYW1ld29yayBJT0tpdCAtZnJhbWV3b3JrIElPU3VyZmFj
ZSAtZnJhbWV3b3JrIFdlYktpdExlZ2FjeSAtbG5ldHdvcmsgJChXS19BQ0NFU1NJQklMSVRZX0xE
RkxBR1MpICQoV0tfQVBQS0lUX0xERkxBR1MpICQoV0tfQVNTRVJUSU9OX1NFUlZJQ0VTX0xERkxB
R1MpICQoV0tfUlVOTklOR0JPQVJEX1NFUlZJQ0VTX0xERkxBR1MpICQoV0tfQVVUSEtJVF9MREZM
QUdTKSAkKFdLX0NBUkJPTl9MREZMQUdTKSAkKFdLX0NPUkVfUFJFRElDVElPTl9MREZMQUdTKSAk
KFdLX0NPUkVfU0VSVklDRVNfTERGTEFHUykgJChXS19HUkFQSElDU19TRVJWSUNFU19MREZMQUdT
KSAkKFdLX0xJQlNBTkRCT1hfTERGTEFHUykgJChXS19MSUJXRUJSVENfTERGTEFHUykgJChXS19N
T0JJTEVfQ09SRV9TRVJWSUNFU19MREZMQUdTKSAkKFdLX01PQklMRV9HRVNUQUxUX0xERkxBR1Mp
ICQoV0tfUERGS0lUX0xERkxBR1MpICQoV0tfU0FGRV9CUk9XU0lOR19MREZMQUdTKSAkKFdLX1NF
Q1VSSVRZX0lOVEVSRkFDRV9MREZMQUdTKSAkKFdLX1VJS0lUX0xERkxBR1MpICQoV0tfVVJMX0ZP
Uk1BVFRJTkdfTERGTEFHUykgJChXS19XRUJJTlNQRUNUT1JVSV9MREZMQUdTKTsKIAogLy8gUHJl
dmVudCBDKysgc3RhbmRhcmQgbGlicmFyeSBiYXNpY19zdHJpbmdzdHJlYW0sIG9wZXJhdG9yIG5l
dywgZGVsZXRlIGFuZCB0aGVpciByZWxhdGVkIGV4Y2VwdGlvbiB0eXBlcyBmcm9tIGJlaW5nIGV4
cG9ydGVkIGFzIHdlYWsgc3ltYm9scy4KIFVORVhQT1JURURfU1lNQk9MX0xERkxBR1MgPSAtV2ws
LXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUSVN0OWJhZF9hbGxvYyAtV2wsLXVuZXhwb3J0ZWRf
c3ltYm9sIC1XbCxfX1pUSVN0OWV4Y2VwdGlvbiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxf
X1pUU1N0OWJhZF9hbGxvYyAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUU1N0OWV4Y2Vw
dGlvbiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pkbFB2U18gLVdsLC11bmV4cG9ydGVk
X3N5bWJvbCAtV2wsX19abndtUHYgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19abndtIC1X
bCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUx
MlBvbGljeUFjdGlvbkVFRUMyRU9TNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0
M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzFFT1M0XyAtV2wsLXVu
ZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xp
Y3lBY3Rpb25FRUVhU0VEbiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pOS1N0M19fMThm
dW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFY2xFUzJfIC1XbCwtdW5leHBvcnRl
ZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNvcmUxMlBvbGljeUFjdGlv
bkVFRTRzd2FwRVJTNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5j
dGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFQzFFUktTNF8gLVdsLC11bmV4cG9ydGVk
X3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlvbklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9u
RUVFQzJFUktTNF8gLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aTlN0M19fMThmdW5jdGlv
bklGdk43V2ViQ29yZTEyUG9saWN5QWN0aW9uRUVFRDFFdiAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9s
IC1XbCxfX1pOU3QzX18xOGZ1bmN0aW9uSUZ2TjdXZWJDb3JlMTJQb2xpY3lBY3Rpb25FRUVEMkV2
IC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9fWk5TdDNfXzE4ZnVuY3Rpb25JRnZON1dlYkNv
cmUxMlBvbGljeUFjdGlvbkVFRWFTRVJLUzRfIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVdsLF9f
WlRWTlN0M19fMTE3YmFkX2Z1bmN0aW9uX2NhbGxFIC1XbCwtdW5leHBvcnRlZF9zeW1ib2wgLVds
LF9fWlRDTlN0M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5T
XzlhbGxvY2F0b3JJY0VFRUUwX05TXzEzYmFzaWNfaXN0cmVhbUljUzJfRUUgLVdsLC11bmV4cG9y
dGVkX3N5bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hh
cl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTBfTlNfMTRiYXNpY19pb3N0cmVhbUljUzJf
RUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdz
dHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvckljRUVFRTE2X05TXzEzYmFz
aWNfb3N0cmVhbUljUzJfRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAtV2wsX19aVFROU3QzX18x
MThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VFTlNfOWFsbG9jYXRvcklj
RUVFRSAtV2wsLXVuZXhwb3J0ZWRfc3ltYm9sIC1XbCxfX1pUVk5TdDNfXzExNWJhc2ljX3N0cmlu
Z2J1ZkljTlNfMTFjaGFyX3RyYWl0c0ljRUVOU185YWxsb2NhdG9ySWNFRUVFIC1XbCwtdW5leHBv
cnRlZF9zeW1ib2wgLVdsLF9fWlRWTlN0M19fMTE4YmFzaWNfc3RyaW5nc3RyZWFtSWNOU18xMWNo
YXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUgLVdsLC11bmV4cG9ydGVkX3N5bWJvbCAt
V2wsX19aVENOU3QzX18xMThiYXNpY19zdHJpbmdzdHJlYW1JY05TXzExY2hhcl90cmFpdHNJY0VF
TlNfOWFsbG9jYXRvckljRUVFRThfTlNfMTNiYXNpY19vc3RyZWFtSWNTMl9FRTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvU291cmNlc0NvY29hLnR4dCBiL1NvdXJjZS9XZWJLaXQvU291cmNl
c0NvY29hLnR4dAppbmRleCBhZjI0YWE5MjAxMmE4NDk5ZGRmZjYxYmNjNjdmY2ZhY2YxNDZhOTc5
Li41YTA4YzBiZjNlNTE0ZTg3MzdiNDNlMTAwNmY5ZDJiMWNkMTkxMTIxIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NvdXJjZXNDb2NvYS50eHQKKysrIGIvU291cmNlL1dlYktpdC9Tb3VyY2Vz
Q29jb2EudHh0CkBAIC00NzksNyArNDc5LDcgQEAgVUlQcm9jZXNzL0xhdW5jaGVyL21hYy9Qcm9j
ZXNzTGF1bmNoZXJNYWMubW0KIAogVUlQcm9jZXNzL21hYy9Db3JyZWN0aW9uUGFuZWwubW0KIFVJ
UHJvY2Vzcy9tYWMvRGlzcGxheUxpbmsuY3BwCi1VSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5j
ZUdQVU1hbmFnZXIuY3BwCitVSVByb2Nlc3MvbWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIu
bW0KIFVJUHJvY2Vzcy9tYWMvTGVnYWN5U2Vzc2lvblN0YXRlQ29kaW5nLmNwcAogVUlQcm9jZXNz
L21hYy9QYWdlQ2xpZW50SW1wbE1hYy5tbQogVUlQcm9jZXNzL21hYy9TZWNJdGVtU2hpbVByb3h5
LmNwcApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZp
ZXdJbnRlcmFjdGlvbi5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL2lvcy9XS0NvbnRlbnRW
aWV3SW50ZXJhY3Rpb24ubW0KaW5kZXggZjNkMTAzZWJhMjRkOTE0NDcxODY1ZDQ1M2I3MjFhZjk4
ODhjM2UyNC4uNjE3ZWQ4YzNkYzE2Y2I1YmQ3YjQxNDNhNjZjYTk5YjQwNmRiOTkzNCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvaW9zL1dLQ29udGVudFZpZXdJbnRlcmFjdGlv
bi5tbQorKysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9pb3MvV0tDb250ZW50Vmlld0ludGVy
YWN0aW9uLm1tCkBAIC0yMDM5LDggKzIwMzksOCBAQCBzdGF0aWMgTlNWYWx1ZSAqbnNTaXplRm9y
VGFwSGlnaGxpZ2h0Qm9yZGVyUmFkaXVzKFdlYkNvcmU6OkludFNpemUgYm9yZGVyUmFkaXVzLAog
ICAgIGlmIChfcGFnZS0+d2FpdGluZ0ZvclBvc3RMYXlvdXRFZGl0b3JTdGF0ZVVwZGF0ZUFmdGVy
Rm9jdXNpbmdFbGVtZW50KCkpCiAgICAgICAgIHJldHVybiBfZm9jdXNlZEVsZW1lbnRJbmZvcm1h
dGlvbi5pbnRlcmFjdGlvblJlY3Q7CiAKLSAgICBpZiAoIV9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBv
c3RMYXlvdXREYXRhKCkuc2VsZWN0aW9uQ2xpcFJlY3QuaXNFbXB0eSgpKQotICAgICAgICByZXR1
cm4gX3BhZ2UtPmVkaXRvclN0YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rpb25DbGlwUmVj
dDsKKyAgICAvLyBpZiAoIV9wYWdlLT5lZGl0b3JTdGF0ZSgpLnBvc3RMYXlvdXREYXRhKCkuc2Vs
ZWN0aW9uQ2xpcFJlY3QuaXNFbXB0eSgpKQorICAgIC8vICAgICByZXR1cm4gX3BhZ2UtPmVkaXRv
clN0YXRlKCkucG9zdExheW91dERhdGEoKS5zZWxlY3Rpb25DbGlwUmVjdDsKIAogICAgIHJldHVy
biBDR1JlY3ROdWxsOwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvbWFj
L0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
bWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0
NAppbmRleCBkZTkzOTY3ZWZkZjkyYjNjOGY3YjgzNDRjNDlkMDBiNjU2ZDljYTM5Li4wMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwCi0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmNwcAorKysgL2Rldi9udWxsCkBA
IC0xLDk3ICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTggQXBwbGUgSW5jLiBBbGwg
cmlnaHRzIHJlc2VydmVkLgotICoKLSAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNl
IGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAotICogbW9kaWZpY2F0aW9uLCBhcmUg
cGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCi0gKiBhcmUg
bWV0OgotICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRo
ZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMg
YW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KLSAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBi
aW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIg
aW4gdGhlCi0gKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlk
ZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgotICoKLSAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklE
RUQgQlkgQVBQTEUgSU5DLiBBTkQgSVRTIENPTlRSSUJVVE9SUyBgYEFTIElTJycKLSAqIEFORCBB
TlkgRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAotICogVEhFIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5E
IEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgotICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gSU4g
Tk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBPUiBJVFMgQ09OVFJJQlVUT1JTCi0gKiBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExB
UlksIE9SCi0gKiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLCBQUk9DVVJFTUVOVCBPRgotICogU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTCi0gKiBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhF
UiBJTgotICogQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQgKElOQ0xVRElORyBO
RUdMSUdFTkNFIE9SIE9USEVSV0lTRSkKLSAqIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRSBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YKLSAqIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4KLSAqLwotCi0jaW5jbHVkZSAiY29uZmlnLmgiCi0jaW5jbHVk
ZSAiSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5oIgotCi0jaWYgUExBVEZPUk0oTUFDKQotCi0j
aW5jbHVkZSAiTG9nZ2luZy5oIgotI2luY2x1ZGUgPE9wZW5HTC9DR0xUeXBlcy5oPgotI2luY2x1
ZGUgPE9wZW5HTC9PcGVuR0wuaD4KLSNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdM
T3BlbkdMTWFuYWdlci5oPgotCi1uYW1lc3BhY2UgV2ViS2l0IHsKLQotLy8gRklYTUU6IFRoaXMg
Y2xhc3MgaXMgdXNpbmcgT3BlbkdMIHRvIGNvbnRyb2wgdGhlIG11eGluZyBvZiBHUFVzLiBVbHRp
bWF0ZWx5Ci0vLyB3ZSB3YW50IHRvIHVzZSBNZXRhbCwgYnV0IGN1cnJlbnRseSB0aGVyZSBpc24n
dCBhIHdheSB0byAicmVsZWFzZSIgYQotLy8gZGlzY3JldGUgTVRMRGV2aWNlLCBzdWNoIHRoYXQg
dGhlIHByb2Nlc3MgbXV4ZXMgYmFjayB0byBhbiBpbnRlZ3JhdGVkIEdQVS4KLQotSGlnaFBlcmZv
cm1hbmNlR1BVTWFuYWdlciYgSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlcjo6c2luZ2xldG9uKCkK
LXsKLSAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlcj4g
c2hhcmVkTWFuYWdlcjsKLSAgICByZXR1cm4gc2hhcmVkTWFuYWdlcjsKLX0KLQotdm9pZCBIaWdo
UGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNl
KFdlYlByb2Nlc3NQcm94eSogcHJvY2VzcykKLXsKLSAgICBpZiAoIVdlYkNvcmU6Omhhc0xvd0Fu
ZEhpZ2hQb3dlckdQVXMoKSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgaWYgKG1fcHJvY2Vzc2Vz
UmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlLmFkZChwcm9jZXNzKSkgewotICAgICAgICBMT0coV2Vi
R0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVxdWlyaW5nSGlnaFBl
cmZvcm1hbmNlKCkgLSBhZGRpbmcgcHJvY2VzcyAlcCIsIHByb2Nlc3MpOwotICAgICAgICB1cGRh
dGVTdGF0ZSgpOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgTE9HKFdlYkdMLCAiSGln
aFBlcmZvcm1hbmNlR1BVTWFuYWdlcjo6YWRkUHJvY2Vzc1JlcXVpcmluZ0hpZ2hQZXJmb3JtYW5j
ZSgpIC0gcHJvY2VzcyAlcCB3YXMgYWxyZWFkeSByZXF1ZXN0aW5nIGhpZ2ggcGVyZm9ybWFuY2Ui
LCBwcm9jZXNzKTsKLX0KLQotdm9pZCBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjpyZW1vdmVQ
cm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKFdlYlByb2Nlc3NQcm94eSogcHJvY2VzcykK
LXsKLSAgICBpZiAoIVdlYkNvcmU6Omhhc0xvd0FuZEhpZ2hQb3dlckdQVXMoKSkKLSAgICAgICAg
cmV0dXJuOwotCi0gICAgaWYgKG1fcHJvY2Vzc2VzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlLnJl
bW92ZShwcm9jZXNzKSkgewotICAgICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVN
YW5hZ2VyOjpyZW1vdmVQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKCkgLSByZW1vdmlu
ZyBwcm9jZXNzICVwIiwgcHJvY2Vzcyk7Ci0gICAgICAgIHVwZGF0ZVN0YXRlKCk7Ci0gICAgICAg
IHJldHVybjsKLSAgICB9Ci0KLSAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5h
Z2VyOjpyZW1vdmVQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKCkgLSBwcm9jZXNzICVw
IHdhcyBub3QgcmVxdWVzdGluZyBoaWdoIHBlcmZvcm1hbmNlIiwgcHJvY2Vzcyk7Ci19Ci0KLXZv
aWQgSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlcjo6dXBkYXRlU3RhdGUoKQotewotICAgIGlmICht
X3Byb2Nlc3Nlc1JlcXVpcmluZ0hpZ2hQZXJmb3JtYW5jZS5zaXplKCkpIHsKLSAgICAgICAgaWYg
KCFtX3BpeGVsRm9ybWF0T2JqKSB7Ci0gICAgICAgICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9y
bWFuY2VHUFVNYW5hZ2VyIC0gdHVybmluZyBvbiBoaWdoLXBlcmZvcm1hbmNlIEdQVS4iKTsKLQot
ICAgICAgICAgICAgQ0dMUGl4ZWxGb3JtYXRBdHRyaWJ1dGUgYXR0cmlidXRlc1tdID0geyBrQ0dM
UEZBQWNjZWxlcmF0ZWQsIGtDR0xQRkFDb2xvclNpemUsIHN0YXRpY19jYXN0PENHTFBpeGVsRm9y
bWF0QXR0cmlidXRlPigzMiksIHN0YXRpY19jYXN0PENHTFBpeGVsRm9ybWF0QXR0cmlidXRlPigw
KSB9OwotICAgICAgICAgICAgR0xpbnQgbnVtUGl4ZWxGb3JtYXRzID0gMDsKLSAgICAgICAgICAg
IENHTENob29zZVBpeGVsRm9ybWF0KGF0dHJpYnV0ZXMsICZtX3BpeGVsRm9ybWF0T2JqLCAmbnVt
UGl4ZWxGb3JtYXRzKTsKLQotICAgICAgICAgICAgTE9HKFdlYkdMLCAiSGlnaFBlcmZvcm1hbmNl
R1BVTWFuYWdlciAtIENHTFBpeGVsRm9ybWF0T2JqIGlzICVwIiwgbV9waXhlbEZvcm1hdE9iaik7
Ci0gICAgICAgIH0KLSAgICB9IGVsc2UgaWYgKG1fcGl4ZWxGb3JtYXRPYmopIHsKLSAgICAgICAg
TE9HKFdlYkdMLCAiSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlciAtIHR1cm5pbmcgb2ZmIGhpZ2gt
cGVyZm9ybWFuY2UgR1BVLiIpOwotICAgICAgICBDR0xSZWxlYXNlUGl4ZWxGb3JtYXQobV9waXhl
bEZvcm1hdE9iaik7Ci0gICAgICAgIG1fcGl4ZWxGb3JtYXRPYmogPSBudWxscHRyOwotICAgIH0K
LX0KLQotfQotI2VuZGlmCi0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL21h
Yy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3Mv
bWFjL0hpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW0KbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k
ZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNWQ5MzE1OTMwOTI4
YmMzNjc4ZjY0NzViYzBlYTBiY2I2YThhMTQzZgotLS0gL2Rldi9udWxsCisrKyBiL1NvdXJjZS9X
ZWJLaXQvVUlQcm9jZXNzL21hYy9IaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLm1tCkBAIC0wLDAg
KzEsMTE5IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDE4IEFwcGxlIEluYy4gQWxsIHJpZ2h0
cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQg
YmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1p
dHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoK
KyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJv
dmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0
aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5
IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRo
ZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdp
dGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZ
IEFQUExFIElOQy4gQU5EIElUUyBDT05UUklCVVRPUlMgYGBBUyBJUycnCisgKiBBTkQgQU5ZIEVY
UFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywKKyAqIFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRO
RVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuIElOIE5PIEVW
RU5UIFNIQUxMIEFQUExFIElOQy4gT1IgSVRTIENPTlRSSUJVVE9SUworICogQkUgTElBQkxFIEZP
UiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwgRVhFTVBMQVJZLCBP
UgorICogQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBU
TywgUFJPQ1VSRU1FTlQgT0YKKyAqIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1Mg
T0YgVVNFLCBEQVRBLCBPUiBQUk9GSVRTOyBPUiBCVVNJTkVTUworICogSU5URVJSVVBUSU9OKSBI
T1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWSBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4K
KyAqIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUIChJTkNMVURJTkcgTkVHTElH
RU5DRSBPUiBPVEhFUldJU0UpCisgKiBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0Ug
T0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GCisgKiBUSEUgUE9TU0lCSUxJVFkg
T0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorI2luY2x1ZGUgIkhp
Z2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuaCIKKworI2lmIFBMQVRGT1JNKE1BQykKKworI2luY2x1
ZGUgIkxvZ2dpbmcuaCIKKyNpbmNsdWRlIDxXZWJDb3JlL0dyYXBoaWNzQ29udGV4dEdMT3BlbkdM
TWFuYWdlci5oPgorI2luY2x1ZGUgPFdlYkNvcmUvT3BlbkdMU29mdExpbmtDb2NvYS5oPgorCitu
YW1lc3BhY2UgV2ViS2l0IHsKKworc3RhdGljIGJvb2wgaXNpT1NBcHBPbk1hYygpCit7CisjaWYg
UExBVEZPUk0oTUFDQ0FUQUxZU1QpICYmIENQVShBUk02NCkKKyAgICBzdGF0aWMgYm9vbCBpc2lP
U0FwcE9uTWFjID0gZmFsc2U7CisgICAgc3RhdGljIGRpc3BhdGNoX29uY2VfdCBvbmNlOworICAg
IGRpc3BhdGNoX29uY2UoJm9uY2UsIF57CisgICAgICAgIGlzaU9TQXBwT25NYWMgPSBbW05TUHJv
Y2Vzc0luZm8gcHJvY2Vzc0luZm9dIGlzaU9TQXBwT25NYWNdOworICAgIH0pOworICAgIHJldHVy
biBpc2lPU0FwcE9uTWFjOworI2Vsc2UKKyAgICByZXR1cm4gZmFsc2U7CisjZW5kaWYKK30KKwor
Ly8gRklYTUU6IFRoaXMgY2xhc3MgaXMgdXNpbmcgT3BlbkdMIHRvIGNvbnRyb2wgdGhlIG11eGlu
ZyBvZiBHUFVzLiBVbHRpbWF0ZWx5CisvLyB3ZSB3YW50IHRvIHVzZSBNZXRhbCwgYnV0IGN1cnJl
bnRseSB0aGVyZSBpc24ndCBhIHdheSB0byAicmVsZWFzZSIgYQorLy8gZGlzY3JldGUgTVRMRGV2
aWNlLCBzdWNoIHRoYXQgdGhlIHByb2Nlc3MgbXV4ZXMgYmFjayB0byBhbiBpbnRlZ3JhdGVkIEdQ
VS4KKworSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlciYgSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdl
cjo6c2luZ2xldG9uKCkKK3sKKyAgICBzdGF0aWMgTmV2ZXJEZXN0cm95ZWQ8SGlnaFBlcmZvcm1h
bmNlR1BVTWFuYWdlcj4gc2hhcmVkTWFuYWdlcjsKKyAgICByZXR1cm4gc2hhcmVkTWFuYWdlcjsK
K30KKwordm9pZCBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVxdWlyaW5n
SGlnaFBlcmZvcm1hbmNlKFdlYlByb2Nlc3NQcm94eSogcHJvY2VzcykKK3sKKyAgICBpZiAoaXNp
T1NBcHBPbk1hYygpKQorICAgICAgICByZXR1cm47CisKKyAgICBpZiAoIVdlYkNvcmU6Omhhc0xv
d0FuZEhpZ2hQb3dlckdQVXMoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKG1fcHJvY2Vz
c2VzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlLmFkZChwcm9jZXNzKSkgeworICAgICAgICBMT0co
V2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjphZGRQcm9jZXNzUmVxdWlyaW5nSGln
aFBlcmZvcm1hbmNlKCkgLSBhZGRpbmcgcHJvY2VzcyAlcCIsIHByb2Nlc3MpOworICAgICAgICB1
cGRhdGVTdGF0ZSgpOworICAgICAgICByZXR1cm47CisgICAgfQorCisgICAgTE9HKFdlYkdMLCAi
SGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlcjo6YWRkUHJvY2Vzc1JlcXVpcmluZ0hpZ2hQZXJmb3Jt
YW5jZSgpIC0gcHJvY2VzcyAlcCB3YXMgYWxyZWFkeSByZXF1ZXN0aW5nIGhpZ2ggcGVyZm9ybWFu
Y2UiLCBwcm9jZXNzKTsKK30KKwordm9pZCBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjpyZW1v
dmVQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKFdlYlByb2Nlc3NQcm94eSogcHJvY2Vz
cykKK3sKKyAgICBpZiAoaXNpT1NBcHBPbk1hYygpKQorICAgICAgICByZXR1cm47CisKKyAgICBp
ZiAoIVdlYkNvcmU6Omhhc0xvd0FuZEhpZ2hQb3dlckdQVXMoKSkKKyAgICAgICAgcmV0dXJuOwor
CisgICAgaWYgKG1fcHJvY2Vzc2VzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlLnJlbW92ZShwcm9j
ZXNzKSkgeworICAgICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjpy
ZW1vdmVQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKCkgLSByZW1vdmluZyBwcm9jZXNz
ICVwIiwgcHJvY2Vzcyk7CisgICAgICAgIHVwZGF0ZVN0YXRlKCk7CisgICAgICAgIHJldHVybjsK
KyAgICB9CisKKyAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyOjpyZW1v
dmVQcm9jZXNzUmVxdWlyaW5nSGlnaFBlcmZvcm1hbmNlKCkgLSBwcm9jZXNzICVwIHdhcyBub3Qg
cmVxdWVzdGluZyBoaWdoIHBlcmZvcm1hbmNlIiwgcHJvY2Vzcyk7Cit9CisKK3ZvaWQgSGlnaFBl
cmZvcm1hbmNlR1BVTWFuYWdlcjo6dXBkYXRlU3RhdGUoKQoreworICAgIGlmIChpc2lPU0FwcE9u
TWFjKCkpCisgICAgICAgIHJldHVybjsKKworICAgIGlmIChtX3Byb2Nlc3Nlc1JlcXVpcmluZ0hp
Z2hQZXJmb3JtYW5jZS5zaXplKCkpIHsKKyAgICAgICAgaWYgKCFtX3BpeGVsRm9ybWF0T2JqKSB7
CisgICAgICAgICAgICBMT0coV2ViR0wsICJIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyIC0gdHVy
bmluZyBvbiBoaWdoLXBlcmZvcm1hbmNlIEdQVS4iKTsKKworICAgICAgICAgICAgQ0dMUGl4ZWxG
b3JtYXRBdHRyaWJ1dGUgYXR0cmlidXRlc1tdID0geyBrQ0dMUEZBQWNjZWxlcmF0ZWQsIGtDR0xQ
RkFDb2xvclNpemUsIHN0YXRpY19jYXN0PENHTFBpeGVsRm9ybWF0QXR0cmlidXRlPigzMiksIHN0
YXRpY19jYXN0PENHTFBpeGVsRm9ybWF0QXR0cmlidXRlPigwKSB9OworICAgICAgICAgICAgR0xp
bnQgbnVtUGl4ZWxGb3JtYXRzID0gMDsKKyAgICAgICAgICAgIENHTENob29zZVBpeGVsRm9ybWF0
KGF0dHJpYnV0ZXMsICZtX3BpeGVsRm9ybWF0T2JqLCAmbnVtUGl4ZWxGb3JtYXRzKTsKKworICAg
ICAgICAgICAgTE9HKFdlYkdMLCAiSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlciAtIENHTFBpeGVs
Rm9ybWF0T2JqIGlzICVwIiwgbV9waXhlbEZvcm1hdE9iaik7CisgICAgICAgIH0KKyAgICB9IGVs
c2UgaWYgKG1fcGl4ZWxGb3JtYXRPYmopIHsKKyAgICAgICAgTE9HKFdlYkdMLCAiSGlnaFBlcmZv
cm1hbmNlR1BVTWFuYWdlciAtIHR1cm5pbmcgb2ZmIGhpZ2gtcGVyZm9ybWFuY2UgR1BVLiIpOwor
ICAgICAgICBDR0xSZWxlYXNlUGl4ZWxGb3JtYXQobV9waXhlbEZvcm1hdE9iaik7CisgICAgICAg
IG1fcGl4ZWxGb3JtYXRPYmogPSBudWxscHRyOworICAgIH0KK30KKworfQorI2VuZGlmCisKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2og
Yi9Tb3VyY2UvV2ViS2l0L1dlYktpdC54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCmluZGV4IDU5
Yjk5MDdjN2ZjOTY3N2E5NzMyY2FmZjBmZTAwODliMGU0OWMxNDAuLmEyZTZkMDQ4MGE5OTFhZjlj
NjM4Mzc5NTgyMzBlODUxYTIwZTIxMjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvV2ViS2l0
Lnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oKKysrIGIvU291cmNlL1dlYktpdC9XZWJLaXQueGNv
ZGVwcm9qL3Byb2plY3QucGJ4cHJvagpAQCAtMzI0NSw3ICszMjQ1LDcgQEAKIAkJMzFBNjdFMEEx
NjVCMkE5OTAwNkNCQTY2IC8qIFBsdWdJbkF1dG9TdGFydFByb3ZpZGVyLmNwcCAqLyA9IHtpc2Eg
PSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9
IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IFBsdWdJbkF1dG9TdGFydFByb3ZpZGVyLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMzFBNjdFMEIxNjVCMkE5OTAwNkNCQTY2IC8q
IFBsdWdJbkF1dG9TdGFydFByb3ZpZGVyLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IFBsdWdJbkF1dG9TdGFydFByb3ZpZGVyLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTMxQUJBNzlDMjE1QUY5RTAwMEM5MEUzMSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2Vy
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3Vy
Y2Vjb2RlLmMuaDsgcGF0aCA9IEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuaDsgc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsgfTsKLQkJMzFBQkE3OUQyMTVBRjlFMDAwQzkwRTMxIC8qIEhpZ2hQZXJm
b3JtYW5jZUdQVU1hbmFnZXIuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSGlnaFBlcmZvcm1hbmNl
R1BVTWFuYWdlci5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTMxQUJBNzlEMjE1
QUY5RTAwMEM5MEUzMSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLm1tICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAub2Jq
Y3BwOyBwYXRoID0gSGlnaFBlcmZvcm1hbmNlR1BVTWFuYWdlci5tbTsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMzFCMzYyOEUyMTQxRUE0RDAwN0JGQTUzIC8qIEFQSUludGVybmFsRGVi
dWdGZWF0dXJlLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEFQSUludGVybmFsRGVidWdGZWF0dXJlLmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTMxQjM2MjkwMjE0MUVBQkMwMDdCRkE1MyAvKiBB
UElJbnRlcm5hbERlYnVnRmVhdHVyZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBBUElJbnRlcm5hbERlYnVnRmVhdHVyZS5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3Vw
PiI7IH07CiAJCTMxQjM2MjkyMjE0MUVCQUMwMDdCRkE1MyAvKiBfV0tJbnRlcm5hbERlYnVnRmVh
dHVyZS5tbSAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLm9iamNwcDsgcGF0aCA9IF9XS0ludGVy
bmFsRGVidWdGZWF0dXJlLm1tOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwpAQCAtNjM5MCwx
MSArNjM5MCwxMSBAQAogCQkJCTFEQkJCMDYxMjExQ0MzQ0IwMDUwMkVDQyAvKiBXS1NoYXJlU2hl
ZXQubW0gKi8sCiAJCQkJN0E3OEZGMkUyMjQxOTE3NTAwOTY0ODNFIC8qIFdLU3RvcmFnZUFjY2Vz
c0FsZXJ0LmggKi8sCiAJCQkJN0E3OEZGMkYyMjQxOTE3NjAwOTY0ODNFIC8qIFdLU3RvcmFnZUFj
Y2Vzc0FsZXJ0Lm1tICovLAorCQkJCTQxNDdEQzY4MjUxOUUyOUQwMDIxNEVFNyAvKiBXS1VzZXJN
ZWRpYUNhcHR1cmVBY2Nlc3NBbGVydC5oICovLAorCQkJCTQxNDdEQzY3MjUxOUUyOUQwMDIxNEVF
NyAvKiBXS1VzZXJNZWRpYUNhcHR1cmVBY2Nlc3NBbGVydC5tbSAqLywKIAkJCQkyRDdBQUZEMjE4
Qzg2NDA2MDBBN0FDRDQgLyogV0tXZWJWaWV3Q29udGVudFByb3ZpZGVyLmggKi8sCiAJCQkJMkRD
NkQ5QzExOEM0NEE2MTAwNDNCQUQ0IC8qIFdLV2ViVmlld0NvbnRlbnRQcm92aWRlclJlZ2lzdHJ5
LmggKi8sCiAJCQkJMkRDNkQ5QzIxOEM0NEE2MTAwNDNCQUQ0IC8qIFdLV2ViVmlld0NvbnRlbnRQ
cm92aWRlclJlZ2lzdHJ5Lm1tICovLAotCQkJCTQxNDdEQzY4MjUxOUUyOUQwMDIxNEVFNyAvKiBX
S1VzZXJNZWRpYUNhcHR1cmVBY2Nlc3NBbGVydC5oICovLAotCQkJCTQxNDdEQzY3MjUxOUUyOUQw
MDIxNEVFNyAvKiBXS1VzZXJNZWRpYUNhcHR1cmVBY2Nlc3NBbGVydC5tbSAqLywKIAkJCQlDMTcx
MENGMjI0QTdCRDAzMDBEN0MxMTIgLyogWFBDRXZlbnRIYW5kbGVyLmggKi8sCiAJCQkpOwogCQkJ
cGF0aCA9IENvY29hOwpAQCAtOTgyMCw4ICs5ODIwLDggQEAKIAkJCQlCODc4QjYxNDEzMzQyOERD
MDA2ODg4RTkgLyogQ29ycmVjdGlvblBhbmVsLm1tICovLAogCQkJCUMxODE3MzYyMjA1ODQ0QTkw
MERGREE2NSAvKiBEaXNwbGF5TGluay5jcHAgKi8sCiAJCQkJQzE4MTczNjAyMDU4NDI0NzAwREZE
QTY1IC8qIERpc3BsYXlMaW5rLmggKi8sCi0JCQkJMzFBQkE3OUQyMTVBRjlFMDAwQzkwRTMxIC8q
IEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIuY3BwICovLAogCQkJCTMxQUJBNzlDMjE1QUY5RTAw
MEM5MEUzMSAvKiBIaWdoUGVyZm9ybWFuY2VHUFVNYW5hZ2VyLmggKi8sCisJCQkJMzFBQkE3OUQy
MTVBRjlFMDAwQzkwRTMxIC8qIEhpZ2hQZXJmb3JtYW5jZUdQVU1hbmFnZXIubW0gKi8sCiAJCQkJ
MUFGREU2NUIxOTU0RThENTAwQzQ4RkZBIC8qIExlZ2FjeVNlc3Npb25TdGF0ZUNvZGluZy5jcHAg
Ki8sCiAJCQkJMEZDQjRFNTgxOEJCRTNEOTAwMEZDRkM5IC8qIFBhZ2VDbGllbnRJbXBsTWFjLmgg
Ki8sCiAJCQkJMEZDQjRFNTkxOEJCRTNEOTAwMEZDRkM5IC8qIFBhZ2VDbGllbnRJbXBsTWFjLm1t
ICovLApAQCAtMTI5NzUsNyArMTI5NzUsNiBAQAogCQkJCTJEMTFCN0JGMjEyNkEyODMwMDZGODg3
OCAvKiBVbmlmaWVkU291cmNlNTYtbW0ubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjdDMTIx
MjZBMjgzMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTU3LW1tLm1tIGluIFNvdXJjZXMgKi8sCiAJ
CQkJMkQxMUI3QzIyMTI2QTI4MzAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2U1Ny5jcHAgaW4gU291
cmNlcyAqLywKLQkJCQk0MTQ3REM2OTI1MTlFQzMzMDAyMTRFRTcgLyogV0tVc2VyTWVkaWFDYXB0
dXJlQWNjZXNzQWxlcnQubW0gaW4gU291cmNlcyAqLywKIAkJCQkyRDExQjdDMzIxMjZBMjgzMDA2
Rjg4NzggLyogVW5pZmllZFNvdXJjZTU4LW1tLm1tIGluIFNvdXJjZXMgKi8sCiAJCQkJMkQxMUI3
QzQyMTI2QTI4MzAwNkY4ODc4IC8qIFVuaWZpZWRTb3VyY2U1OC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQkyRDExQjdDNjIxMjZBMjgzMDA2Rjg4NzggLyogVW5pZmllZFNvdXJjZTU5LmNwcCBpbiBT
b3VyY2VzICovLApAQCAtMTMxMzAsNiArMTMxMjksNyBAQAogCQkJCTFEQjAxOTQ0MjExQ0YwMDUw
MDlGQjNFOCAvKiBXS1NoYXJlU2hlZXQubW0gaW4gU291cmNlcyAqLywKIAkJCQk3QTc4RkYzMzIy
NDE5MTlCMDA5NjQ4M0UgLyogV0tTdG9yYWdlQWNjZXNzQWxlcnQubW0gaW4gU291cmNlcyAqLywK
IAkJCQlDRTIxMjE2MDI0MEVFNTcxMDA2RUQ0NDMgLyogV0tUZXh0UGxhY2Vob2xkZXIubW0gaW4g
U291cmNlcyAqLywKKwkJCQk0MTQ3REM2OTI1MTlFQzMzMDAyMTRFRTcgLyogV0tVc2VyTWVkaWFD
YXB0dXJlQWNjZXNzQWxlcnQubW0gaW4gU291cmNlcyAqLywKIAkJCQlDMTREMzA2OTI0Qjc5QkUw
MDA0ODAzODcgLyogWFBDRW5kcG9pbnQubW0gaW4gU291cmNlcyAqLywKIAkJCQlDMTREMzA2QTI0
Qjc5QkU0MDA0ODAzODcgLyogWFBDRW5kcG9pbnRDbGllbnQubW0gaW4gU291cmNlcyAqLywKIAkJ
CSk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>