<?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>82486</bug_id>
          
          <creation_ts>2012-03-28 11:06:50 -0700</creation_ts>
          <short_desc>[chromium] Fix tiled layer assert for huge layers</short_desc>
          <delta_ts>2012-03-28 17:56:38 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>82536</dependson>
          <blocked>82263</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adrienne Walker">enne</reporter>
          <assigned_to name="Adrienne Walker">enne</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>danakj</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>senorblanco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>590151</commentid>
    <comment_count>0</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 11:06:50 -0700</bug_when>
    <thetext>[chromium] Fix tiled layer assert for huge layers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590171</commentid>
    <comment_count>1</comment_count>
      <attachid>134344</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 11:15:32 -0700</bug_when>
    <thetext>Created attachment 134344
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590178</commentid>
    <comment_count>2</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 11:19:13 -0700</bug_when>
    <thetext>In running DRT with --enable-threaded-compositing, TilingData::assertTile was being hit sporadically from compositing/tiling/crash-huge-layer.html being loaded, but then trying to paint while some other test loaded.

In single-treaded compositing DRT, we never tried to update this layer, so it wouldn&apos;t crash.  Sad trombone noise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590203</commentid>
    <comment_count>3</comment_count>
      <attachid>134344</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-03-28 11:38:36 -0700</bug_when>
    <thetext>Comment on attachment 134344
Patch

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

woo

&gt; Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp:735
&gt; +        if ((drawTransformIsAnimating() || screenSpaceTransformIsAnimating()) &amp;&amp; m_tiler-&gt;numTilesX() &lt;= 4 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 4)

s/4/3/ to not cause this to prepaint more tiles than before. Though it would instead paint less..

bool hasFewTiles = m_tiler-&gt;numTilesX() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesX() * m_tiler-&gt;numTilesY() &lt;= 9; ?

&gt; Source/WebCore/platform/graphics/gpu/TilingData.h:54
&gt; +    int numTiles() const;

meant to remove this line?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590214</commentid>
    <comment_count>4</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 11:52:51 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 134344 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=134344&amp;action=review
&gt; 
&gt; woo
&gt; 
&gt; &gt; Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp:735
&gt; &gt; +        if ((drawTransformIsAnimating() || screenSpaceTransformIsAnimating()) &amp;&amp; m_tiler-&gt;numTilesX() &lt;= 4 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 4)
&gt; 
&gt; s/4/3/ to not cause this to prepaint more tiles than before. Though it would instead paint less..
&gt; 
&gt; bool hasFewTiles = m_tiler-&gt;numTilesX() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesX() * m_tiler-&gt;numTilesY() &lt;= 9; ?

In some cases it would paint more (4x3 layer would get painted, but wouldn&apos;t before) but also paint less (9x1 layer wouldn&apos;t get painted, but would before).  I think this is a more reasonable bound on the amount of prepainting per frame, but don&apos;t feel too strongly about it.

&gt; &gt; Source/WebCore/platform/graphics/gpu/TilingData.h:54
&gt; &gt; +    int numTiles() const;
&gt; 
&gt; meant to remove this line?

OOPS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590218</commentid>
    <comment_count>5</comment_count>
      <attachid>134344</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-03-28 11:56:28 -0700</bug_when>
    <thetext>Comment on attachment 134344
Patch

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

&gt;&gt;&gt; Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp:735
&gt;&gt;&gt; +        if ((drawTransformIsAnimating() || screenSpaceTransformIsAnimating()) &amp;&amp; m_tiler-&gt;numTilesX() &lt;= 4 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 4)
&gt;&gt; 
&gt;&gt; s/4/3/ to not cause this to prepaint more tiles than before. Though it would instead paint less..
&gt;&gt; 
&gt;&gt; bool hasFewTiles = m_tiler-&gt;numTilesX() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesY() &lt;= 9 &amp;&amp; m_tiler-&gt;numTilesX() * m_tiler-&gt;numTilesY() &lt;= 9; ?
&gt; 
&gt; In some cases it would paint more (4x3 layer would get painted, but wouldn&apos;t before) but also paint less (9x1 layer wouldn&apos;t get painted, but would before).  I think this is a more reasonable bound on the amount of prepainting per frame, but don&apos;t feel too strongly about it.

I know Eric was concerned about limiting it to not negatively affect android, and we came up with ~9 tiles as a compromise. Here &lt;= 4 &amp;&amp; &lt;= 4 allows 16 tiles which is almost double the amount. I&apos;d rather decrease it than increase it right now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590220</commentid>
    <comment_count>6</comment_count>
      <attachid>134357</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 11:56:47 -0700</bug_when>
    <thetext>Created attachment 134357
Remove numTiles declaration</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590225</commentid>
    <comment_count>7</comment_count>
      <attachid>134360</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 12:01:18 -0700</bug_when>
    <thetext>Created attachment 134360
Revert prepainting change</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590246</commentid>
    <comment_count>8</comment_count>
      <attachid>134360</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-03-28 12:13:34 -0700</bug_when>
    <thetext>Comment on attachment 134360
Revert prepainting change

Thanks :) lgtm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590320</commentid>
    <comment_count>9</comment_count>
      <attachid>134360</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-03-28 13:05:11 -0700</bug_when>
    <thetext>Comment on attachment 134360
Revert prepainting change

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

OK

&gt; Source/WebKit/chromium/tests/TilingDataTest.cpp:55
&gt; +        ASSERT(numTiles &gt;= 0);

in a unit test we should probably use ASSERT_TRUE() from gtest and not ASSERT() from wtf/ so it&apos;s still compiled in for release builds and produces gtest-style failures</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590325</commentid>
    <comment_count>10</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 13:10:10 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (From update of attachment 134360 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=134360&amp;action=review
&gt; 
&gt; OK
&gt; 
&gt; &gt; Source/WebKit/chromium/tests/TilingDataTest.cpp:55
&gt; &gt; +        ASSERT(numTiles &gt;= 0);
&gt; 
&gt; in a unit test we should probably use ASSERT_TRUE() from gtest and not ASSERT() from wtf/ so it&apos;s still compiled in for release builds and produces gtest-style failures

You can&apos;t call gtest asserts from within a non-void function.  I&apos;ll make them EXPECT instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590338</commentid>
    <comment_count>11</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 13:20:44 -0700</bug_when>
    <thetext>Committed r112432: &lt;http://trac.webkit.org/changeset/112432&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590495</commentid>
    <comment_count>12</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 15:09:34 -0700</bug_when>
    <thetext>Rolled out in http://trac.webkit.org/changeset/112449.

http://test-results.appspot.com/dashboards/flakiness_dashboard.html#showExpectations=true&amp;tests=css3%2Ffilters%2Fcustom%2Fcustom-filter-shader-cache.html%2Ccss3%2Ffilters%2Fcustom%2Feffect-custom-combined-missing.html%2Ccss3%2Ffilters%2Fcustom%2Feffect-custom-parameters.html%2Ccss3%2Ffilters%2Fcustom%2Feffect-custom.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590564</commentid>
    <comment_count>13</comment_count>
      <attachid>134436</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 16:15:35 -0700</bug_when>
    <thetext>Created attachment 134436
Now with fewer test crashes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590569</commentid>
    <comment_count>14</comment_count>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-03-28 16:17:13 -0700</bug_when>
    <thetext>diff --git a/Source/WebCore/platform/graphics/gpu/Texture.cpp b/Source/WebCore/platform/graphics/gpu/Texture.cpp
index 3cad13a..7c2b86e 100644
--- a/Source/WebCore/platform/graphics/gpu/Texture.cpp
+++ b/Source/WebCore/platform/graphics/gpu/Texture.cpp
@@ -92,8 +92,8 @@ PassRefPtr&lt;Texture&gt; Texture::create(GraphicsContext3D* context, Format format, i
     TilingData tiling(maxTextureSize, width, height, true);
 
     // Check for overflow.
-    int numTiles = width * height;
-    if (numTiles / width != height) {
+    int numTiles = tiling.numTilesX() * tiling.numTilesY();
+    if (numTiles / tiling.numTilesX() != tiling.numTilesY()) {
         tiling.setTotalSize(0, 0);
         numTiles = 0;
     }
@@ -110,8 +110,8 @@ PassRefPtr&lt;Texture&gt; Texture::create(GraphicsContext3D* context, Format format, i
         }
         textureIds-&gt;at(i) = textureId;
 
-        int xIndex = i % width;
-        int yIndex = i / width;
+        int xIndex = i % tiling.numTilesX();
+        int yIndex = i / tiling.numTilesX();
         IntRect tileBoundsWithBorder = tiling.tileBoundsWithBorder(xIndex, yIndex);
 
         unsigned int glFormat = 0;
@@ -177,8 +177,8 @@ void Texture::updateSubRect(void* pixels, const IntRect&amp; updateRect)
     OwnArrayPtr&lt;uint32_t&gt; tempBuff = adoptArrayPtr(new uint32_t[tempBuffSize]);
 
     for (int tile = 0; tile &lt; m_tiles.numTilesX() * m_tiles.numTilesY(); tile++) {
-        int xIndex = tile % m_tiles.totalSizeX();
-        int yIndex = tile / m_tiles.totalSizeX();
+        int xIndex = tile % m_tiles.numTilesX();
+        int yIndex = tile / m_tiles.numTilesX();
 
         // Intersect with tile
         IntRect tileBoundsWithBorder = m_tiles.tileBoundsWithBorder(xIndex, yIndex);
diff --git a/Source/WebKit/chromium/tests/TilingDataTest.cpp b/Source/WebKit/chromium/tests/TilingDataTest.cpp
index f01e25c..47c0361 100755
--- a/Source/WebKit/chromium/tests/TilingDataTest.cpp
+++ b/Source/WebKit/chromium/tests/TilingDataTest.cpp
@@ -52,9 +52,9 @@ public:
         int numTiles = numTilesX() * numTilesY();
 
         // Assert no overflow.
-        ASSERT(numTiles &gt;= 0);
+        EXPECT_GE(numTiles, 0);
         if (numTiles &gt; 0)
-            ASSERT(numTiles / numTilesX() == numTilesY());
+            EXPECT_EQ(numTiles / numTilesX(), numTilesY());
 
         return numTiles;
     }</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590674</commentid>
    <comment_count>15</comment_count>
      <attachid>134436</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-28 17:56:33 -0700</bug_when>
    <thetext>Comment on attachment 134436
Now with fewer test crashes

Clearing flags on attachment: 134436

Committed r112481: &lt;http://trac.webkit.org/changeset/112481&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>590675</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-03-28 17:56:38 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134344</attachid>
            <date>2012-03-28 11:15:32 -0700</date>
            <delta_ts>2012-03-28 11:56:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82486-20120328111531.patch</filename>
            <type>text/plain</type>
            <size>62250</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDNmODdjYzYwNDNjZWI1
N2Q3MzJlNzA1N2MwNDIyYmRlMjhkOWRlMS4uZTY2NzVmOTVmNmEzOGMyYTE5ODBmZTYxNWYyODBi
Y2E0Y2IyZjQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTAzLTI4ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
dGlsZWQgbGF5ZXIgYXNzZXJ0IGZvciBodWdlIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0ODYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBUaWxlZExheWVyQ2hyb21pdW1UZXN0Lmh1
Z2VMYXllclVwZGF0ZUNyYXNoCisKKyAgICAgICAgVGlsaW5nRGF0YTo6bnVtVGlsZXMoKSBpcyBj
YWxjdWxhdGVkIGFzIHRoZSBwcm9kdWN0IG9mIHR3byBpbnRzIGFuZCBzbworICAgICAgICBjYW4g
cG90ZW50aWFsbHkgb3ZlcmZsb3csIGNhdXNpbmcgbnVtVGlsZXMoKSB0byBiZSBpbmNvcnJlY3Qu
IFRvIGF2b2lkCisgICAgICAgIGNhbGxpbmcgY29kZSBhY2NpZGVudGFsbHkgZmFsbGluZyBpbnRv
IHRoaXMgdHJhcCwgcmVtb3ZlIHRoaXMgZnVuY3Rpb24KKyAgICAgICAgYW5kIGFsbCBjb2RlIHRo
YXQgdXNlcyB0aWxlIGluZGV4IGZyb20gVGlsaW5nRGF0YS4gIFRoaXMgcmVxdWlyZXMKKyAgICAg
ICAgZml4aW5nIHVwIGEgYnVuY2ggb2YgY2FsbGVycyBvZiBUaWxpbmdEYXRhIGFuZCBDQ0xheWVy
VGlsaW5nRGF0YS4KKworICAgICAgICBBZGRpdGlvbmFsbHksIFRpbGluZ0RhdGE6Om51bVRpbGVz
KCkgaGFzIGxvbmcgYmVlbiBhIGNvbmZ1c2luZworICAgICAgICBmdW5jdGlvbiBuYW1lIGluIHNv
bWUgY29udGV4dHMsIHNvIHJlbmFtZSB0byBib29sIGhhc0VtcHR5Qm91bmRzKCkuCisKKyAgICAg
ICAgQWxzbywgcmVtb3ZlIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdRdWFkIGJlY2F1c2UgdGhl
cmUgYXJlIG5vCisgICAgICAgIGNsaWVudHMgb2YgdGhhdCBmdW5jdGlvbi4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnJlc2VydmVUZXh0dXJlcyk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZUlkbGUpOgorICAg
ICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVtOjpuZWVkc0lkbGVQYWludCk6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmlkbGVQYWludFJlY3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjp0aWxlUmVjdCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjpoYXNFbXB0eUJvdW5kcyk6CisgICAg
ICAgIChXZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6aXNFbXB0eSk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlOjpj
cmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZTo6dXBkYXRlU3ViUmVjdCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdE
YXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdEYXRh
Ojp0aWxlQm91bmRzTm9ybWFsaXplZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L1RpbGluZ0RhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGluZ0RhdGE6Omhhc0VtcHR5Qm91
bmRzKToKKyAgICAgICAgKFRpbGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGlsaW5nRGF0
YTo6YXNzZXJ0VGlsZSk6CisKIDIwMTItMDMtMjggIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBvbmx5IHVwZGF0ZSBUaW1lbGlu
ZSBvdmVydmlldyB3aGVuIHJlYWxseSBuZWVkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5k
ZXggNWYwYWNiYzk0YTViODQwOTBiYmQ4Mjc3ZTgwYzI2NjVhOGI2ZTEwOC4uNDlmYjdkZjE5NzU1
ZDYxNzYzNTQyMDJkYTUxZmViNmU1N2I0MWUwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyNCBAQAorMjAxMi0wMy0yOCAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29n
bGUuY29tPgorCisgICAgICAgIFtjaHJvbWl1bV0gRml4IHRpbGVkIGxheWVyIGFzc2VydCBmb3Ig
aHVnZSBsYXllcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgyNDg2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWRkIHRlc3QgZm9yIHVwZGF0aW5nIGEgaHVnZSBsYXllciB0aGF0IHdvdWxkIGFzc2VydCBw
cmlvciB0byB0aGlzCisgICAgICAgIGNvZGUuIEZpeCB1cCBUaWxpbmdEYXRhIHRlc3RzIHRvIHVz
ZSBhIHRlc3RpbmcgY2xhc3MgdGhhdCBwcm92aWRlcyBhCisgICAgICAgIHNhZmUgdmVyc2lvbiBv
ZiBudW1UaWxlcygpLgorCisgICAgICAgICogdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5j
cHA6CisgICAgICAgIChXVEY6OlRFU1QpOgorICAgICAgICAoV1RGKToKKyAgICAgICAgKiB0ZXN0
cy9UaWxpbmdEYXRhVGVzdC5jcHA6CisgICAgICAgIChUZXN0VGlsaW5nKToKKyAgICAgICAgKFdl
YkNvcmU6OlRlc3RUaWxpbmc6OlRlc3RUaWxpbmcpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdFRp
bGluZzo6bnVtVGlsZXMpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpU
RVNUKToKKwogMjAxMi0wMy0yNyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFtjaHJvbWl1bV0gVHJhbnNmZXIgd2hlZWwgZmxpbmcgdmlhIFdlYkNvbXBv
c2l0b3JJbnB1dEhhbmRsZXJDbGllbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwCmlu
ZGV4IDQ1NjYzMmNjOTlkMzIwZDkxY2VmOTcwMDMyZTg3MTcyMDgxOTEyMWMuLmE0YjZjN2I1Y2Vm
YjgzNzY2NDE0ZDliOTA2ZmQ4N2EyOGMzOWM3NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcApAQCAtMTY2LDcgKzE2Niw4IEBAIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3
c0NvbnRlbnQoKSBjb25zdAogICAgIGlmICghTGF5ZXJDaHJvbWl1bTo6ZHJhd3NDb250ZW50KCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZl
clRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMoKSA+IDEpCisgICAgYm9vbCBoYXNNb3JlVGhhbk9u
ZVRpbGUgPSBtX3RpbGVyLT5udW1UaWxlc1goKSA+IDEgfHwgbV90aWxlci0+bnVtVGlsZXNZKCkg
PiAxOworICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgaGFzTW9yZVRoYW5P
bmVUaWxlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTU1
Niw3ICs1NTcsNyBAQCB2b2lkIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cmVzZXJ2ZVRleHR1cmVzKCkK
ICAgICB1cGRhdGVCb3VuZHMoKTsKIAogICAgIGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCA9IHZp
c2libGVMYXllclJlY3QoKTsKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCAhbV90aWxl
ci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCBtX3RpbGVyLT5o
YXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQgbGVmdCwgdG9wLCBy
aWdodCwgYm90dG9tOwpAQCAtNjA5LDcgKzYxMCw3IEBAIHZvaWQgVGlsZWRMYXllckNocm9taXVt
OjpwcmVwYXJlVG9VcGRhdGUoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0LCBjb25zdCBDQ09jY2x1
CiAKICAgICByZXNldFVwZGF0ZVN0YXRlKCk7CiAKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHko
KSB8fCAhbV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8
fCBtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQg
bGVmdCwgdG9wLCByaWdodCwgYm90dG9tOwpAQCAtNjI4LDcgKzYyOSw3IEBAIHZvaWQgVGlsZWRM
YXllckNocm9taXVtOjpwcmVwYXJlVG9VcGRhdGVJZGxlKGNvbnN0IEludFJlY3QmIGxheWVyUmVj
dCwgY29uc3QgQ0NPCiAKICAgICB1cGRhdGVCb3VuZHMoKTsKIAotICAgIGlmICghbV90aWxlci0+
bnVtVGlsZXMoKSkKKyAgICBpZiAobV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgSW50UmVjdCBpZGxlUGFpbnRMYXllclJlY3QgPSBpZGxlUGFpbnRSZWN0
KGxheWVyUmVjdCk7CkBAIC03MDEsNyArNzAyLDcgQEAgYm9vbCBUaWxlZExheWVyQ2hyb21pdW06
Om5lZWRzSWRsZVBhaW50KGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCkKICAgICBpZiAobV9za2lw
c0lkbGVQYWludCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFtX3RpbGVyLT5u
dW1UaWxlcygpKQorICAgIGlmIChtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBJbnRSZWN0IGlkbGVQYWludExheWVyUmVjdCA9IGlkbGVQYWlu
dFJlY3QobGF5ZXJSZWN0KTsKQEAgLTczMSw3ICs3MzIsNyBAQCBJbnRSZWN0IFRpbGVkTGF5ZXJD
aHJvbWl1bTo6aWRsZVBhaW50UmVjdChjb25zdCBJbnRSZWN0JiB2aXNpYmxlTGF5ZXJSZWN0KQog
ICAgIC8vIG9mIHRoZW0gaXMgZ29pbmcgdG8gYmVjb21lIHZpc2libGUuIEZvciBzbWFsbCBsYXll
cnMgd2UgcmV0dXJuIHRoZSBlbnRpcmUgbGF5ZXIsIGZvciBsYXJnZXIKICAgICAvLyBvbmVzIHdl
IGF2b2lkIHByZXBhaW50aW5nIHRoZSBsYXllciBhdCBhbGwuCiAgICAgaWYgKHZpc2libGVMYXll
clJlY3QuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlzQW5pbWF0aW5n
KCkgfHwgc2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3RpbGVyLT5udW1U
aWxlcygpIDw9IDkpCisgICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlzQW5pbWF0aW5nKCkgfHwg
c2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3RpbGVyLT5udW1UaWxlc1go
KSA8PSA0ICYmIG1fdGlsZXItPm51bVRpbGVzWSgpIDw9IDQpCiAgICAgICAgICAgICByZXR1cm4g
SW50UmVjdChJbnRQb2ludCgpLCBjb250ZW50Qm91bmRzKCkpOwogICAgICAgICByZXR1cm4gSW50
UmVjdCgpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcAppbmRleCAx
OWQwMjUxZGMwYWNmOWUzODJlYzBmMWZkZmU3ZDAzZGU2YmQ5MGI4Li40MmYxZThkMWFiNTk4Yzgz
NzVkNWI1YzE3ZGQyNWU2MGU4M2JiNjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0Rh
dGEuY3BwCkBAIC0xMDYsOCArMTA2LDcgQEAgdm9pZCBDQ0xheWVyVGlsaW5nRGF0YTo6bGF5ZXJS
ZWN0VG9UaWxlSW5kaWNlcyhjb25zdCBJbnRSZWN0JiBsYXllclJlY3QsIGludCYgbGUKIAogSW50
UmVjdCBDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZVJlY3QoY29uc3QgVGlsZSogdGlsZSkgY29uc3QK
IHsKLSAgICBjb25zdCBpbnQgaW5kZXggPSBtX3RpbGluZ0RhdGEudGlsZUluZGV4KHRpbGUtPmko
KSwgdGlsZS0+aigpKTsKLSAgICBJbnRSZWN0IHRpbGVSZWN0ID0gbV90aWxpbmdEYXRhLnRpbGVC
b3VuZHNXaXRoQm9yZGVyKGluZGV4KTsKKyAgICBJbnRSZWN0IHRpbGVSZWN0ID0gbV90aWxpbmdE
YXRhLnRpbGVCb3VuZHNXaXRoQm9yZGVyKHRpbGUtPmkoKSwgdGlsZS0+aigpKTsKICAgICB0aWxl
UmVjdC5zZXRTaXplKG1fdGlsZVNpemUpOwogICAgIHJldHVybiB0aWxlUmVjdDsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUaWxpbmdEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5oCmluZGV4IDllMTg2OTVlOGMxNDIyYjZjNmM3ZmY1Mzcz
NmNiYWE0OTk0ZmUzYmIuLmQ4N2RjZDI2MGE2MjM0OGU5YjZkNmU5NjNmOWY2NmY5NjIzMjUxMTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDTGF5ZXJUaWxpbmdEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaApAQCAtNDQsMTAgKzQ0LDEwIEBAIHB1
YmxpYzoKIAogICAgIHN0YXRpYyBQYXNzT3duUHRyPENDTGF5ZXJUaWxpbmdEYXRhPiBjcmVhdGUo
Y29uc3QgSW50U2l6ZSYgdGlsZVNpemUsIEJvcmRlclRleGVsT3B0aW9uKTsKIAotICAgIGludCBu
dW1UaWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5udW1UaWxlcygpOyB9CisgICAg
Ym9vbCBoYXNFbXB0eUJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5oYXNFbXB0
eUJvdW5kcygpOyB9CiAgICAgaW50IG51bVRpbGVzWCgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5n
RGF0YS5udW1UaWxlc1goKTsgfQogICAgIGludCBudW1UaWxlc1koKSBjb25zdCB7IHJldHVybiBt
X3RpbGluZ0RhdGEubnVtVGlsZXNZKCk7IH0KLSAgICBJbnRSZWN0IHRpbGVCb3VuZHMoaW50IGks
IGludCBqKSBjb25zdCB7IHJldHVybiBtX3RpbGluZ0RhdGEudGlsZUJvdW5kcyhtX3RpbGluZ0Rh
dGEudGlsZUluZGV4KGksIGopKTsgfQorICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQgaSwgaW50
IGopIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS50aWxlQm91bmRzKGksIGopOyB9CiAgICAg
SW50UG9pbnQgdGV4dHVyZU9mZnNldChpbnQgeEluZGV4LCBpbnQgeUluZGV4KSBjb25zdCB7IHJl
dHVybiBtX3RpbGluZ0RhdGEudGV4dHVyZU9mZnNldCh4SW5kZXgsIHlJbmRleCk7IH0KIAogICAg
IC8vIENoYW5nZSB0aGUgdGlsZSBzaXplLiBUaGlzIG1heSBpbnZhbGlkYXRlIGFsbCB0aGUgZXhp
c3RpbmcgdGlsZXMuCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEJvcmRl
clRleGVsT3B0aW9uKEJvcmRlclRleGVsT3B0aW9uKTsKICAgICBib29sIGhhc0JvcmRlclRleGVs
cygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5ib3JkZXJUZXhlbHMoKTsgfQogCi0gICAg
Ym9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gIW1fdGlsaW5nRGF0YS5udW1UaWxlcygpIHx8
ICF0aWxlcygpLnNpemUoKTsgfQorICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJuIGhh
c0VtcHR5Qm91bmRzKCkgfHwgIXRpbGVzKCkuc2l6ZSgpOyB9CiAKICAgICBjb25zdCBDQ0xheWVy
VGlsaW5nRGF0YSYgb3BlcmF0b3I9KGNvbnN0IENDTGF5ZXJUaWxpbmdEYXRhJik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGls
ZWRMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKaW5kZXggZGE4M2U2NTUxYzY0N2NjNTc0Yjk3ZDcx
NWM2ZDI0MzM4OTY5ZmRlYy4uMTA1MTE2NWIxN2YzM2ViMzU0ZmYxNmY0ZDMwNTE0YmVhNWY5Yzk1
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NUaWxlZExheWVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKQEAgLTgwLDcgKzgwLDggQEAg
dm9pZCBDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKExheWVyUmVuZGVyZXJD
aHJvbWl1bSogbGF5ZXJSZW5kZXJlcikKIHsKICAgICAvLyBUaGlzIGZ1bmN0aW9uIGlzIG9ubHkg
dmFsaWQgZm9yIHNpbmdsZSB0ZXh0dXJlIGxheWVycywgZS5nLiBtYXNrcy4KICAgICBBU1NFUlQo
bV90aWxlcik7Ci0gICAgQVNTRVJUKG1fdGlsZXItPm51bVRpbGVzKCkgPT0gMSk7CisgICAgQVNT
RVJUKG1fdGlsZXItPm51bVRpbGVzWCgpID09IDEpOworICAgIEFTU0VSVChtX3RpbGVyLT5udW1U
aWxlc1koKSA9PSAxKTsKIAogICAgIERyYXdhYmxlVGlsZSogdGlsZSA9IHRpbGVBdCgwLCAwKTsK
ICAgICBQbGF0Zm9ybTNET2JqZWN0IHRleHR1cmVJZCA9IHRpbGUgPyB0aWxlLT50ZXh0dXJlSWQo
KSA6IDA7CkBAIC0xNDMsNyArMTQ0LDcgQEAgdm9pZCBDQ1RpbGVkTGF5ZXJJbXBsOjphcHBlbmRR
dWFkcyhDQ1F1YWRDdWxsZXImIHF1YWRMaXN0LCBjb25zdCBDQ1NoYXJlZFF1YWRTdGEKIAogICAg
IGFwcGVuZEd1dHRlclF1YWRzKHF1YWRMaXN0LCBzaGFyZWRRdWFkU3RhdGUpOwogCi0gICAgaWYg
KCFtX3RpbGVyIHx8ICFtX3RpbGVyLT5udW1UaWxlcygpIHx8IGxheWVyUmVjdC5pc0VtcHR5KCkp
CisgICAgaWYgKCFtX3RpbGVyIHx8IG1fdGlsZXItPmhhc0VtcHR5Qm91bmRzKCkgfHwgbGF5ZXJS
ZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaW50IGxlZnQsIHRvcCwgcmln
aHQsIGJvdHRvbTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dwdS9UZXh0dXJlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9U
ZXh0dXJlLmNwcAppbmRleCA1ZmY3ZDgxMWZlZmUyYTkyNGNhYjQyY2JhZjY5Yjk0OTQxZWY2NGQ1
Li4zY2FkMTNhYTQ2N2FiNmQ5NGQ5YmExOTdiODEwM2ExNzMxYjI2MDQ5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RleHR1cmUuY3BwCkBAIC05MCw3ICs5
MCwxMyBAQCBQYXNzUmVmUHRyPFRleHR1cmU+IFRleHR1cmU6OmNyZWF0ZShHcmFwaGljc0NvbnRl
eHQzRCogY29udGV4dCwgRm9ybWF0IGZvcm1hdCwgaQogICAgIGludCBtYXhUZXh0dXJlU2l6ZSA9
IDA7CiAgICAgY29udGV4dC0+Z2V0SW50ZWdlcnYoR3JhcGhpY3NDb250ZXh0M0Q6Ok1BWF9URVhU
VVJFX1NJWkUsICZtYXhUZXh0dXJlU2l6ZSk7CiAgICAgVGlsaW5nRGF0YSB0aWxpbmcobWF4VGV4
dHVyZVNpemUsIHdpZHRoLCBoZWlnaHQsIHRydWUpOwotICAgIGludCBudW1UaWxlcyA9IHRpbGlu
Zy5udW1UaWxlcygpOworCisgICAgLy8gQ2hlY2sgZm9yIG92ZXJmbG93LgorICAgIGludCBudW1U
aWxlcyA9IHdpZHRoICogaGVpZ2h0OworICAgIGlmIChudW1UaWxlcyAvIHdpZHRoICE9IGhlaWdo
dCkgeworICAgICAgICB0aWxpbmcuc2V0VG90YWxTaXplKDAsIDApOworICAgICAgICBudW1UaWxl
cyA9IDA7CisgICAgfQogCiAgICAgT3duUHRyPFZlY3Rvcjx1bnNpZ25lZCBpbnQ+ID4gdGV4dHVy
ZUlkcyA9IGFkb3B0UHRyKG5ldyBWZWN0b3I8dW5zaWduZWQgaW50PihudW1UaWxlcykpOwogICAg
IHRleHR1cmVJZHMtPmZpbGwoMCwgbnVtVGlsZXMpOwpAQCAtMTA0LDcgKzExMCw5IEBAIFBhc3NS
ZWZQdHI8VGV4dHVyZT4gVGV4dHVyZTo6Y3JlYXRlKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0
LCBGb3JtYXQgZm9ybWF0LCBpCiAgICAgICAgIH0KICAgICAgICAgdGV4dHVyZUlkcy0+YXQoaSkg
PSB0ZXh0dXJlSWQ7CiAKLSAgICAgICAgSW50UmVjdCB0aWxlQm91bmRzV2l0aEJvcmRlciA9IHRp
bGluZy50aWxlQm91bmRzV2l0aEJvcmRlcihpKTsKKyAgICAgICAgaW50IHhJbmRleCA9IGkgJSB3
aWR0aDsKKyAgICAgICAgaW50IHlJbmRleCA9IGkgLyB3aWR0aDsKKyAgICAgICAgSW50UmVjdCB0
aWxlQm91bmRzV2l0aEJvcmRlciA9IHRpbGluZy50aWxlQm91bmRzV2l0aEJvcmRlcih4SW5kZXgs
IHlJbmRleCk7CiAKICAgICAgICAgdW5zaWduZWQgaW50IGdsRm9ybWF0ID0gMDsKICAgICAgICAg
dW5zaWduZWQgaW50IGdsVHlwZSA9IDA7CkBAIC0xNjgsOSArMTc2LDEyIEBAIHZvaWQgVGV4dHVy
ZTo6dXBkYXRlU3ViUmVjdCh2b2lkKiBwaXhlbHMsIGNvbnN0IEludFJlY3QmIHVwZGF0ZVJlY3Qp
CiAgICAgICAgIG1pbihtX3RpbGVzLm1heFRleHR1cmVTaXplKCksIG1fdGlsZXMuYm9yZGVyVGV4
ZWxzKCkgKyB1cGRhdGVSZWN0U2FuaXRpemVkLmhlaWdodCgpKTsKICAgICBPd25BcnJheVB0cjx1
aW50MzJfdD4gdGVtcEJ1ZmYgPSBhZG9wdEFycmF5UHRyKG5ldyB1aW50MzJfdFt0ZW1wQnVmZlNp
emVdKTsKIAotICAgIGZvciAoaW50IHRpbGUgPSAwOyB0aWxlIDwgbV90aWxlcy5udW1UaWxlcygp
OyB0aWxlKyspIHsKKyAgICBmb3IgKGludCB0aWxlID0gMDsgdGlsZSA8IG1fdGlsZXMubnVtVGls
ZXNYKCkgKiBtX3RpbGVzLm51bVRpbGVzWSgpOyB0aWxlKyspIHsKKyAgICAgICAgaW50IHhJbmRl
eCA9IHRpbGUgJSBtX3RpbGVzLnRvdGFsU2l6ZVgoKTsKKyAgICAgICAgaW50IHlJbmRleCA9IHRp
bGUgLyBtX3RpbGVzLnRvdGFsU2l6ZVgoKTsKKwogICAgICAgICAvLyBJbnRlcnNlY3Qgd2l0aCB0
aWxlCi0gICAgICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIgPSBtX3RpbGVzLnRpbGVC
b3VuZHNXaXRoQm9yZGVyKHRpbGUpOworICAgICAgICBJbnRSZWN0IHRpbGVCb3VuZHNXaXRoQm9y
ZGVyID0gbV90aWxlcy50aWxlQm91bmRzV2l0aEJvcmRlcih4SW5kZXgsIHlJbmRleCk7CiAKICAg
ICAgICAgSW50UmVjdCB1cGRhdGVSZWN0SW50ZXJzZWN0ZWQgPSB1cGRhdGVSZWN0U2FuaXRpemVk
OwogICAgICAgICB1cGRhdGVSZWN0SW50ZXJzZWN0ZWQuaW50ZXJzZWN0KHRpbGVCb3VuZHNXaXRo
Qm9yZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dw
dS9UaWxpbmdEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9U
aWxpbmdEYXRhLmNwcAppbmRleCAyMGRiNDQxY2UyNWY1N2M2YzdmZmVhNjI2NWI3NTM3ZmJhMDk1
MzFlLi42YmFkNjI4NDQwNzgyZTg5ZjMxOTBjNTY2NDgxOGEyOGY0ZjI0YmFiIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwCkBA
IC05OSwyMyArOTksMjEgQEAgaW50IFRpbGluZ0RhdGE6OnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
aW50IHNyY1BvcykgY29uc3QKICAgICByZXR1cm4gbWluKG1heCh5LCAwKSwgbnVtVGlsZXNZKCkg
LSAxKTsKIH0KIAotSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzKGludCB0aWxlKSBjb25z
dAorSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzKGludCBpLCBpbnQgaikgY29uc3QKIHsK
LSAgICBhc3NlcnRUaWxlKHRpbGUpOwotICAgIGludCBpeCA9IHRpbGVYSW5kZXgodGlsZSk7Ci0g
ICAgaW50IGl5ID0gdGlsZVlJbmRleCh0aWxlKTsKLSAgICBpbnQgeCA9IHRpbGVQb3NpdGlvblgo
aXgpOwotICAgIGludCB5ID0gdGlsZVBvc2l0aW9uWShpeSk7Ci0gICAgaW50IHdpZHRoID0gdGls
ZVNpemVYKGl4KTsKLSAgICBpbnQgaGVpZ2h0ID0gdGlsZVNpemVZKGl5KTsKKyAgICBhc3NlcnRU
aWxlKGksIGopOworICAgIGludCB4ID0gdGlsZVBvc2l0aW9uWChpKTsKKyAgICBpbnQgeSA9IHRp
bGVQb3NpdGlvblkoaik7CisgICAgaW50IHdpZHRoID0gdGlsZVNpemVYKGkpOworICAgIGludCBo
ZWlnaHQgPSB0aWxlU2l6ZVkoaik7CiAgICAgQVNTRVJUKHggPj0gMCAmJiB5ID49IDAgJiYgd2lk
dGggPj0gMCAmJiBoZWlnaHQgPj0gMCk7CiAgICAgQVNTRVJUKHggPD0gdG90YWxTaXplWCgpICYm
IHkgPD0gdG90YWxTaXplWSgpKTsKICAgICByZXR1cm4gSW50UmVjdCh4LCB5LCB3aWR0aCwgaGVp
Z2h0KTsKIH0KIAotSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcihpbnQg
dGlsZSkgY29uc3QKK0ludFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50
IGksIGludCBqKSBjb25zdAogewotICAgIEludFJlY3QgYm91bmRzID0gdGlsZUJvdW5kcyh0aWxl
KTsKKyAgICBJbnRSZWN0IGJvdW5kcyA9IHRpbGVCb3VuZHMoaSwgaik7CiAKICAgICBpZiAobV9i
b3JkZXJUZXhlbHMpIHsKICAgICAgICAgaW50IHgxID0gYm91bmRzLngoKTsKQEAgLTEyMywxMyAr
MTIxLDEzIEBAIEludFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50IHRp
bGUpIGNvbnN0CiAgICAgICAgIGludCB5MSA9IGJvdW5kcy55KCk7CiAgICAgICAgIGludCB5MiA9
IGJvdW5kcy5tYXhZKCk7CiAKLSAgICAgICAgaWYgKHRpbGVYSW5kZXgodGlsZSkgPiAwKQorICAg
ICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgICB4MS0tOwotICAgICAgICBpZiAodGlsZVhJbmRl
eCh0aWxlKSA8IChudW1UaWxlc1goKSAtIDEpKQorICAgICAgICBpZiAoaSA8IChudW1UaWxlc1go
KSAtIDEpKQogICAgICAgICAgICAgeDIrKzsKLSAgICAgICAgaWYgKHRpbGVZSW5kZXgodGlsZSkg
PiAwKQorICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICB5MS0tOwotICAgICAgICBpZiAo
dGlsZVlJbmRleCh0aWxlKSA8IChudW1UaWxlc1koKSAtIDEpKQorICAgICAgICBpZiAoaiA8IChu
dW1UaWxlc1koKSAtIDEpKQogICAgICAgICAgICAgeTIrKzsKIAogICAgICAgICBib3VuZHMgPSBJ
bnRSZWN0KHgxLCB5MSwgeDIgLSB4MSwgeTIgLSB5MSk7CkBAIC0xMzgsMTAgKzEzNiwxMCBAQCBJ
bnRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCB0aWxlKSBjb25zdAog
ICAgIHJldHVybiBib3VuZHM7CiB9CiAKLUZsb2F0UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRz
Tm9ybWFsaXplZChpbnQgdGlsZSkgY29uc3QKK0Zsb2F0UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91
bmRzTm9ybWFsaXplZChpbnQgaSwgaW50IGopIGNvbnN0CiB7Ci0gICAgYXNzZXJ0VGlsZSh0aWxl
KTsKLSAgICBGbG9hdFJlY3QgYm91bmRzKHRpbGVCb3VuZHModGlsZSkpOworICAgIGFzc2VydFRp
bGUoaSwgaik7CisgICAgRmxvYXRSZWN0IGJvdW5kcyh0aWxlQm91bmRzKGksIGopKTsKICAgICBi
b3VuZHMuc2NhbGUoMS4wZiAvIG1fdG90YWxTaXplWCwgMS4wZiAvIG1fdG90YWxTaXplWSk7CiAg
ICAgcmV0dXJuIGJvdW5kczsKIH0KQEAgLTIxNiwzNiArMjE0LDYgQEAgSW50UmVjdCBUaWxpbmdE
YXRhOjpvdmVybGFwcGVkVGlsZUluZGljZXMoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0ICZzcmNS
ZWN0KSBjb24KICAgICByZXR1cm4gb3ZlcmxhcHBlZFRpbGVJbmRpY2VzKGVuY2xvc2luZ0ludFJl
Y3Qoc3JjUmVjdCkpOwogfQogCi12b2lkIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdRdWFkKGNv
bnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBpbnQgdGls
ZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmxvYXRSZWN0KiBuZXdTcmMs
IEZsb2F0UmVjdCogbmV3RHN0KSBjb25zdAotewotICAgIC8vIEludGVyc2VjdCB3aXRoIHRpbGUK
LSAgICBGbG9hdFJlY3QgdGlsZUJvdW5kcyA9IHRoaXMtPnRpbGVCb3VuZHModGlsZSk7Ci0gICAg
RmxvYXRSZWN0IHNyY1JlY3RJbnRlcnNlY3RlZCA9IHNyY1JlY3Q7Ci0gICAgc3JjUmVjdEludGVy
c2VjdGVkLmludGVyc2VjdCh0aWxlQm91bmRzKTsKLQotICAgIGlmIChzcmNSZWN0SW50ZXJzZWN0
ZWQuaXNFbXB0eSgpKSB7Ci0gICAgICAgICpuZXdTcmMgPSAqbmV3RHN0ID0gRmxvYXRSZWN0KDAs
IDAsIDAsIDApOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgZmxvYXQgc3JjUmVjdElu
dGVyc2VjdGVkTm9ybVggPSAoc3JjUmVjdEludGVyc2VjdGVkLngoKSAtIHNyY1JlY3QueCgpKSAv
IHNyY1JlY3Qud2lkdGgoKTsKLSAgICBmbG9hdCBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtWSA9IChz
cmNSZWN0SW50ZXJzZWN0ZWQueSgpIC0gc3JjUmVjdC55KCkpIC8gc3JjUmVjdC5oZWlnaHQoKTsK
LSAgICBmbG9hdCBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtVyA9IHNyY1JlY3RJbnRlcnNlY3RlZC53
aWR0aCgpIC8gc3JjUmVjdC53aWR0aCgpOwotICAgIGZsb2F0IHNyY1JlY3RJbnRlcnNlY3RlZE5v
cm1IID0gc3JjUmVjdEludGVyc2VjdGVkLmhlaWdodCgpIC8gc3JjUmVjdC5oZWlnaHQoKTsKLQot
ICAgICpuZXdTcmMgPSBzcmNSZWN0SW50ZXJzZWN0ZWQ7Ci0gICAgbmV3U3JjLT5tb3ZlKAotICAg
ICAgICAtdGlsZUJvdW5kcy54KCkgKyAoKHRpbGVYSW5kZXgodGlsZSkgPiAwKSA/IG1fYm9yZGVy
VGV4ZWxzIDogMCksCi0gICAgICAgIC10aWxlQm91bmRzLnkoKSArICgodGlsZVlJbmRleCh0aWxl
KSA+IDApID8gbV9ib3JkZXJUZXhlbHMgOiAwKSk7Ci0KLSAgICAqbmV3RHN0ID0gRmxvYXRSZWN0
KAotICAgICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtWCAqIGRzdFJlY3Qud2lkdGgoKSArIGRz
dFJlY3QueCgpLAotICAgICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtWSAqIGRzdFJlY3QuaGVp
Z2h0KCkgKyBkc3RSZWN0LnkoKSwKLSAgICAgICAgc3JjUmVjdEludGVyc2VjdGVkTm9ybVcgKiBk
c3RSZWN0LndpZHRoKCksCi0gICAgICAgIHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1IICogZHN0UmVj
dC5oZWlnaHQoKSk7Ci19Ci0KIEludFBvaW50IFRpbGluZ0RhdGE6OnRleHR1cmVPZmZzZXQoaW50
IHhJbmRleCwgaW50IHlJbmRleCkgY29uc3QKIHsKICAgICBpbnQgbGVmdCA9ICgheEluZGV4IHx8
IG1fbnVtVGlsZXNYID09IDEpID8gMCA6IG1fYm9yZGVyVGV4ZWxzOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuaCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRhLmgKaW5kZXggYmM4NjFlZjY4
M2EzMTcyZDQ4ODNlNDBhNDVhZmYzODgwNWFmZmI1MS4uYmI3NDQ2NjhlMWQzNTEwMTQ0YzIzYmMw
YTQ1OTUzYzI1MTAzMmU2MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZ3B1L1RpbGluZ0RhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvVGlsaW5nRGF0YS5oCkBAIC01MCwxOCArNTAsMTYgQEAgcHVibGljOgogICAgIHZv
aWQgc2V0SGFzQm9yZGVyVGV4ZWxzKGJvb2wpOwogICAgIGludCBib3JkZXJUZXhlbHMoKSBjb25z
dCB7IHJldHVybiBtX2JvcmRlclRleGVsczsgfQogCi0gICAgaW50IG51bVRpbGVzKCkgY29uc3Qg
eyByZXR1cm4gbnVtVGlsZXNYKCkgKiBudW1UaWxlc1koKTsgfQorICAgIGJvb2wgaGFzRW1wdHlC
b3VuZHMoKSBjb25zdCB7IHJldHVybiAhbnVtVGlsZXNYKCkgfHwgIW51bVRpbGVzWSgpOyB9Cisg
ICAgaW50IG51bVRpbGVzKCkgY29uc3Q7CiAgICAgaW50IG51bVRpbGVzWCgpIGNvbnN0IHsgcmV0
dXJuIG1fbnVtVGlsZXNYOyB9CiAgICAgaW50IG51bVRpbGVzWSgpIGNvbnN0IHsgcmV0dXJuIG1f
bnVtVGlsZXNZOyB9Ci0gICAgaW50IHRpbGVJbmRleChpbnQgeCwgaW50IHkpIGNvbnN0IHsgcmV0
dXJuIHggKyB5ICogbnVtVGlsZXNYKCk7IH0KLSAgICBpbnQgdGlsZVhJbmRleChpbnQgdGlsZSkg
Y29uc3QgeyBhc3NlcnRUaWxlKHRpbGUpOyByZXR1cm4gdGlsZSAlIG51bVRpbGVzWCgpOyB9Ci0g
ICAgaW50IHRpbGVZSW5kZXgoaW50IHRpbGUpIGNvbnN0IHsgYXNzZXJ0VGlsZSh0aWxlKTsgcmV0
dXJuIHRpbGUgLyBudW1UaWxlc1goKTsgfQogICAgIGludCB0aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KGludCkgY29uc3Q7CiAgICAgaW50IHRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoaW50KSBjb25zdDsK
IAotICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQgdGlsZSkgY29uc3Q7Ci0gICAgSW50UmVjdCB0
aWxlQm91bmRzV2l0aEJvcmRlcihpbnQgdGlsZSkgY29uc3Q7Ci0gICAgRmxvYXRSZWN0IHRpbGVC
b3VuZHNOb3JtYWxpemVkKGludCB0aWxlKSBjb25zdDsKKyAgICBJbnRSZWN0IHRpbGVCb3VuZHMo
aW50LCBpbnQpIGNvbnN0OworICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50LCBp
bnQpIGNvbnN0OworICAgIEZsb2F0UmVjdCB0aWxlQm91bmRzTm9ybWFsaXplZChpbnQsIGludCkg
Y29uc3Q7CiAgICAgaW50IHRpbGVQb3NpdGlvblgoaW50IHhJbmRleCkgY29uc3Q7CiAgICAgaW50
IHRpbGVQb3NpdGlvblkoaW50IHlJbmRleCkgY29uc3Q7CiAgICAgaW50IHRpbGVTaXplWChpbnQg
eEluZGV4KSBjb25zdDsKQEAgLTY5LDE2ICs2NywxMiBAQCBwdWJsaWM6CiAgICAgSW50UmVjdCBv
dmVybGFwcGVkVGlsZUluZGljZXMoY29uc3QgSW50UmVjdCYgc3JjUmVjdCkgY29uc3Q7CiAgICAg
SW50UmVjdCBvdmVybGFwcGVkVGlsZUluZGljZXMoY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0KSBj
b25zdDsKIAotICAgIC8vIEdpdmVuIGEgc2V0IG9mIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gY29v
cmRpbmF0ZXMgZm9yIGEgZHJhd2luZyBxdWFkCi0gICAgLy8gaW4gdGV4ZWwgdW5pdHMsIHJldHVy
bnMgYWRqdXN0ZWQgZGF0YSB0byByZW5kZXIganVzdCB0aGUgb25lIHRpbGUuCi0gICAgdm9pZCBp
bnRlcnNlY3REcmF3UXVhZChjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0UmVj
dCYgZHN0UmVjdCwgaW50IHRpbGUsIEZsb2F0UmVjdCogbmV3U3JjLCBGbG9hdFJlY3QqIG5ld0Rz
dCkgY29uc3Q7Ci0KICAgICAvLyBEaWZmZXJlbmNlIGJldHdlZW4gdGlsZUJvdW5kJ3MgYW5kIHRp
bGVCb3VuZFdpdGhCb3JkZXIncyBsb2NhdGlvbigpLgogICAgIEludFBvaW50IHRleHR1cmVPZmZz
ZXQoaW50IHhJbmRleCwgaW50IHlJbmRleCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgVGlsaW5n
RGF0YSgpIDogbV9tYXhUZXh0dXJlU2l6ZSgwKSwgbV90b3RhbFNpemVYKDApLCBtX3RvdGFsU2l6
ZVkoMCkge30KLSAgICB2b2lkIGFzc2VydFRpbGUoaW50IHRpbGUpIGNvbnN0IHsgQVNTRVJUX1VO
VVNFRCh0aWxlLCB0aWxlID49IDAgJiYgdGlsZSA8IG51bVRpbGVzKCkpOyB9CisgICAgdm9pZCBh
c3NlcnRUaWxlKGludCBpLCBpbnQgaikgY29uc3QgeyBBU1NFUlRfVU5VU0VEKGksIGkgPj0gMCAm
JiBpIDwgbnVtVGlsZXNYKCkpOyBBU1NFUlRfVU5VU0VEKGosIGogPj0gMCAmJiBqIDwgbnVtVGls
ZXNZKCkpOyB9CiAgICAgdm9pZCByZWNvbXB1dGVOdW1UaWxlcygpOwogCiAgICAgaW50IG1fbWF4
VGV4dHVyZVNpemU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1Rp
bGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9U
aWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcAppbmRleCAxMjljOTE1OTRkNGJkYzgzMDAwZDNlNzZm
OTQ1ZTE5OWE1ODlhYjM0Li40NjEwNmU0MTg1ZjM2OTY0YmIzYjk5OGU3YWI1MDY4M2RhZjE5YjY3
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJv
bWl1bVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXll
ckNocm9taXVtVGVzdC5jcHAKQEAgLTEwODIsNiArMTA4MiwxOSBAQCBURVNUKFRpbGVkTGF5ZXJD
aHJvbWl1bVRlc3QsIHJlc2l6ZVRvU21hbGxlcikKICAgICBsYXllci0+aW52YWxpZGF0ZVJlY3Qo
SW50UmVjdCgwLCAwLCAyMDAsIDIwMCkpOwogfQogCitURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRl
c3QsIGh1Z2VMYXllclVwZGF0ZUNyYXNoKQoreworICAgIE93blB0cjxUZXh0dXJlTWFuYWdlcj4g
dGV4dHVyZU1hbmFnZXIgPSBUZXh0dXJlTWFuYWdlcjo6Y3JlYXRlKDYwKjEwMjQqMTAyNCwgNjAq
MTAyNCoxMDI0LCAxMDI0KTsKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gbGF5
ZXIgPSBhZG9wdFJlZihuZXcgRmFrZVRpbGVkTGF5ZXJDaHJvbWl1bSh0ZXh0dXJlTWFuYWdlci5n
ZXQoKSkpOworCisgICAgaW50IHNpemUgPSAxIDw8IDMwOworICAgIGxheWVyLT5zZXRCb3VuZHMo
SW50U2l6ZShzaXplLCBzaXplKSk7CisgICAgbGF5ZXItPmludmFsaWRhdGVSZWN0KEludFJlY3Qo
MCwgMCwgc2l6ZSwgc2l6ZSkpOworCisgICAgLy8gRW5zdXJlIG5vIGNyYXNoIGZvciBib3VuZHMg
d2hlcmUgc2l6ZSAqIHNpemUgd291bGQgb3ZlcmZsb3cgYW4gaW50LgorICAgIGxheWVyLT5wcmVw
YXJlVG9VcGRhdGUoSW50UmVjdCgwLCAwLCA3MDAsIDcwMCksIDApOworfQorCiBURVNUKFRpbGVk
TGF5ZXJDaHJvbWl1bVRlc3QsIHBhcnRpYWxVcGRhdGVzKQogewogICAgIENDU2V0dGluZ3Mgc2V0
dGluZ3M7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGluZ0Rh
dGFUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsaW5nRGF0YVRlc3Qu
Y3BwCmluZGV4IGMyOTc0M2Y4NmFkNDViOTE2MWQ2MDUyMThmYWVhZWVjYzMxYzc4NDIuLmYwMWUy
NWNlNGRiYTAxZjFiY2E5MDhkODliMGU5ZDU5MDYxMGI5YjggMTAwNzU1Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsaW5nRGF0YVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvVGlsaW5nRGF0YVRlc3QuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAj
aW5jbHVkZSAiY29uZmlnLmgiCiAKICNpbmNsdWRlICJUaWxpbmdEYXRhLmgiCisjaW5jbHVkZSA8
d3RmL0Fzc2VydGlvbnMuaD4KIAogI2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKQEAgLTM4LDM4
NSArMzksNDA2IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgewogCitj
bGFzcyBUZXN0VGlsaW5nIDogcHVibGljIFRpbGluZ0RhdGEgeworcHVibGljOgorICAgIFRlc3RU
aWxpbmcoaW50IG1heFRleHR1cmVTaXplLCBpbnQgdG90YWxTaXplWCwgaW50IHRvdGFsU2l6ZVks
IGJvb2wgaGFzQm9yZGVyVGV4ZWxzKQorICAgICAgICA6IFRpbGluZ0RhdGEobWF4VGV4dHVyZVNp
emUsIHRvdGFsU2l6ZVgsIHRvdGFsU2l6ZVksIGhhc0JvcmRlclRleGVscykKKyAgICB7CisgICAg
fQorCisgICAgLy8gVGhpcyBmdW5jdGlvbiBvbmx5IGF2YWlsYWJsZSBmb3IgdGVzdGluZyBiZWNh
dXNlIG9mIHBvdGVudGlhbCBvdmVyZmxvdy4KKyAgICBpbnQgbnVtVGlsZXMoKSBjb25zdAorICAg
IHsKKyAgICAgICAgaW50IG51bVRpbGVzID0gbnVtVGlsZXNYKCkgKiBudW1UaWxlc1koKTsKKwor
ICAgICAgICAvLyBBc3NlcnQgbm8gb3ZlcmZsb3cuCisgICAgICAgIEFTU0VSVChudW1UaWxlcyA+
PSAwKTsKKyAgICAgICAgaWYgKG51bVRpbGVzID4gMCkKKyAgICAgICAgICAgIEFTU0VSVChudW1U
aWxlcyAvIG51bVRpbGVzWCgpID09IG51bVRpbGVzWSgpKTsKKworICAgICAgICByZXR1cm4gbnVt
VGlsZXM7CisgICAgfQorfTsKKwogVEVTVChUaWxpbmdEYXRhVGVzdCwgbnVtVGlsZXNfTm9UaWxp
bmcpCiB7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMTYsIDE2LCAxNiwgZmFsc2UpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE2LCAxNSwgMTUsIHRydWUp
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE2LCAxNiwgMTYsIHRy
dWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE2LCAgMSwgMTYs
IGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxNSwgMTUs
IDE1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwg
MTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MTYsIDE1LCAxNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMTYsIDE2LCAxNiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RU
aWxpbmcoMTYsICAxLCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBU
ZXN0VGlsaW5nKDE1LCAxNSwgMTUsIHRydWUpLm51bVRpbGVzKCkpOwogfQogCiBURVNUKFRpbGlu
Z0RhdGFUZXN0LCBudW1UaWxlc19UaWxpbmdOb0JvcmRlcnMpCiB7Ci0gICAgRVhQRUNUX0VRKDAs
IFRpbGluZ0RhdGEoMCwgIDAsICAwLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDAsIFRpbGluZ0RhdGEoMCwgIDQsICAwLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMCwgIDAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoNCwgIDQsICAwLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoNCwgIDAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoLTgsIDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoLTEsIDEsICAxLCBmYWxzZSkubnVtVGlsZXMo
KSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMCwgIDEsICAxLCBmYWxzZSkubnVtVGls
ZXMoKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxLCAgMSwgIDEsIGZhbHNlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgxLCAgMSwgIDIsIGZhbHNl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgxLCAgMiwgIDEsIGZh
bHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAgMSwgIDEs
IGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAgMSwg
IDIsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAg
MiwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgy
LCAgMiwgIDIsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0
YSgzLCAgMywgIDMsIGZhbHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxp
bmdEYXRhKDQsICAxLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDQsICAyLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDQsICAzLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgxLCBUaWxpbmdEYXRhKDQsICA0LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDQsICA1LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgyLCBUaWxpbmdEYXRhKDQsICA2LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDQsICA3LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDQsICA4LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDQsICA5LCAgNCwgZmFsc2UpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDQsIDEwLCAgNCwgZmFsc2UpLm51bVRp
bGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDQsIDExLCAgNCwgZmFsc2UpLm51
bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDEsICA1LCBmYWxz
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDIsICA1LCBm
YWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDMsICA1
LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDQs
ICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwg
IDUsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
NSwgIDYsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0Rh
dGEoNSwgIDcsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGlu
Z0RhdGEoNSwgIDgsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoNSwgIDksICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIs
IFRpbGluZ0RhdGEoNSwgMTAsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDMsIFRpbGluZ0RhdGEoNSwgMTEsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBFWFBF
Q1RfRVEoMSwgVGlsaW5nRGF0YSgxNiwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMTcsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDE1LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg4LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoNiwgVGlsaW5nRGF0YSg4LCAxNywgMTYsIGZhbHNlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgMCwgIDAsIGZhbHNlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgNCwgIDAsIGZhbHNl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgMCwgIDQsIGZh
bHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZyg0LCAgNCwgIDAs
IGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZyg0LCAgMCwg
IDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygtOCwg
MSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygt
MSwgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygwLCAgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0
VGlsaW5nKDEsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBU
ZXN0VGlsaW5nKDEsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgy
LCBUZXN0VGlsaW5nKDEsICAyLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDIsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgxLCBUZXN0VGlsaW5nKDIsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAyLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAyLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsICAzLCAgMywgZmFsc2UpLm51bVRpbGVzKCkp
OworCisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDEsICA0LCBmYWxzZSkubnVtVGls
ZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDIsICA0LCBmYWxzZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDMsICA0LCBmYWxzZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDQsICA0LCBmYWxz
ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNCwgIDUsICA0LCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNCwgIDYsICA0
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNCwgIDcs
ICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNCwg
IDgsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmco
NCwgIDksICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoNCwgMTAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RU
aWxpbmcoNCwgMTEsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwg
VGVzdFRpbGluZyg1LCAgMSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZyg1LCAgMiwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZyg1LCAgMywgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgNCwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgNiwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgNywgIDUsIGZhbHNlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgOCwgIDUsIGZhbHNlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgOSwgIDUsIGZhbHNlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAxMCwgIDUsIGZhbHNlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMSwgIDUsIGZhbHNl
KS5udW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDE2LCAxNiwgMTYs
IGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNywgMTYs
IDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoMTUs
IDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5n
KDgsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg2LCBUZXN0VGls
aW5nKDgsIDE3LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwogfQogCiBURVNUKFRpbGluZ0RhdGFU
ZXN0LCBudW1UaWxlc19UaWxpbmdXaXRoQm9yZGVycykKIHsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgwLCAgMCwgIDAsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBU
aWxpbmdEYXRhKDAsICA0LCAgMCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAs
IFRpbGluZ0RhdGEoMCwgIDAsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSg0LCAgNCwgIDAsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDQsICAwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoLTgsIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgtMSwgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0KLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxLCAgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEsICAxLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgIDIsICAxLCB0cnVlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAgMSwgIDEsIHRydWUpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAxLCAgMiwgdHJ1ZSkubnVtVGls
ZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMiwgIDIsICAxLCB0cnVlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAgMiwgIDIsIHRydWUpLm51
bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgIDEsICAzLCB0cnVl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAgMiwgIDMsIHRy
dWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAzLCAgMywg
dHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgIDQsICAz
LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgNSwg
IDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsICA2
LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoMywg
IDcsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRh
KDQsICAxLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoNCwgIDIsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSg0LCAgMywgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxp
bmdEYXRhKDQsICA0LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoNCwgIDUsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwg
VGlsaW5nRGF0YSg0LCAgNiwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgz
LCBUaWxpbmdEYXRhKDQsICA3LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDMsIFRpbGluZ0RhdGEoNCwgIDgsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1Rf
RVEoNCwgVGlsaW5nRGF0YSg0LCAgOSwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSg0LCBUaWxpbmdEYXRhKDQsIDEwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQ
RUNUX0VRKDUsIFRpbGluZ0RhdGEoNCwgMTEsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLQotICAg
IEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICAxLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDIsICA1LCB0cnVlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMywgIDUsIHRydWUpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICA0LCAgNSwgdHJ1ZSkubnVtVGlsZXMo
KSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDUsICA1LCB0cnVlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNiwgIDUsIHRydWUpLm51bVRp
bGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDUsICA3LCAgNSwgdHJ1ZSkubnVt
VGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNSwgIDgsICA1LCB0cnVlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAgOSwgIDUsIHRydWUp
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDEwLCAgNSwgdHJ1
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgMTEsICA1LCB0
cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgMCwgIDAs
IHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICA0LCAg
MCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDAs
ICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZyg0LCAg
NCwgIDAsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQs
ICAwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmco
LTgsIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygtMSwgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDAsICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZygxLCAgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDEsICAxLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMSwgIDIsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZygyLCAgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDIsICAxLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoMiwgIDIsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMiwgIDIsIHRydWUpLm51bVRpbGVzKCkpOworCisgICAg
RVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgIDEsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAgMiwgIDMsIHRydWUpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsICAzLCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgIDQsICAzLCB0cnVlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgNSwgIDMsIHRydWUpLm51bVRpbGVz
KCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsICA2LCAgMywgdHJ1ZSkubnVtVGls
ZXMoKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoMywgIDcsICAzLCB0cnVlKS5udW1U
aWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAxLCAgNCwgdHJ1ZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDIsICA0LCB0cnVl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg0LCAgMywgIDQsIHRy
dWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICA0LCAgNCwg
dHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNCwgIDUsICA0
LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNiwg
IDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDQsICA3
LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNCwg
IDgsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg0
LCAgOSwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5n
KDQsIDEwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxp
bmcoNCwgMTEsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0
VGlsaW5nKDUsICAxLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRl
c3RUaWxpbmcoNSwgIDIsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwg
VGVzdFRpbGluZyg1LCAgMywgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgx
LCBUZXN0VGlsaW5nKDUsICA0LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VR
KDEsIFRlc3RUaWxpbmcoNSwgIDUsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1Rf
RVEoMiwgVGVzdFRpbGluZyg1LCAgNiwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgyLCBUZXN0VGlsaW5nKDUsICA3LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQ
RUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDgsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAgOSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDEwLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Cisg
ICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTEsICA1LCB0cnVlKS5udW1UaWxlcygpKTsK
IH0KIAogVEVTVChUaWxpbmdEYXRhVGVzdCwgdGlsZVhJbmRleEZyb21TcmNDb29yZCkKIHsKLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDMpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDQpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0
YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKLSAgICBFWFBF
Q1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDYpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDcpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKLSAgICBFWFBFQ1Rf
RVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KDkpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDEwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywg
MTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMSkpOwotCi0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEw
LCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VRKDIs
IFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMpKTsK
LSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoNCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
dHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg1KSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGlu
Z0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKLSAgICBF
WFBFQ1RfRVEoNiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoNykpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSku
dGlsZVhJbmRleEZyb21TcmNDb29yZCg4KSk7Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEo
MywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKLSAgICBFWFBFQ1Rf
RVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MTApKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEs
IDEsIDEsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSgzLCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMikpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwgMywgZmFsc2UpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDQsIDMsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7
Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMykpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgMSwgMSwg
dHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGlu
Z0RhdGEoMiwgMiwgMiwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVhJ
bmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywg
MywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0KLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA0LCAzLCB0cnVlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgz
LCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSgzLCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMpKTsK
KyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAs
IGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDQpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKKyAgICBF
WFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDYpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDcpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKKyAgICBFWFBF
Q1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDkpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmco
MywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMSkpOworCisgICAgRVhQ
RUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
IDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNUX0VR
KDIsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoNCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg1KSk7CisgICAgRVhQRUNUX0VRKDUsIFRl
c3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKKyAg
ICBFWFBFQ1RfRVEoNiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoNykpOworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1
ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg4KSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxp
bmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKKyAgICBFWFBF
Q1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMTApKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDEsIDEsIDEsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgw
KSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgZmFsc2UpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMs
IGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAg
RVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoMikpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNCwgMywgZmFsc2Up
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDMsIDQsIDMsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1Rf
RVEoMCwgVGVzdFRpbGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgy
KSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoMykpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgMSwg
MSwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRl
c3RUaWxpbmcoMiwgMiwgMiwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAg
RVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmND
b29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGls
ZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywg
MywgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7CisK
KyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA0LCAzLCB0cnVl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGlu
ZygzLCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZygzLCA0LCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMp
KTsKIH0KIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVZSW5kZXhGcm9tU3JjQ29vcmQpCiB7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGlu
Z0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAg
RVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCgzKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg0KSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg1KSk7Ci0gICAgRVhQ
RUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCg2KSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCg3KSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
MywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg4KSk7Ci0gICAgRVhQRUNU
X0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29y
ZCg5KSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgxMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKLQotICAgIEVYUEVD
VF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29y
ZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAx
MCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgzKSk7
Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDQpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAs
IHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNSkpOwotICAgIEVYUEVDVF9FUSg1LCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg2KSk7Ci0gICAg
RVhQRUNUX0VRKDYsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDcpKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUp
LnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOCkpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRh
KDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg5KSk7Ci0gICAgRVhQRUNU
X0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDEwKSk7Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDExKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgx
LCAxLCAxLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VR
KDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGlu
Z0RhdGEoMywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDIpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDQsIGZhbHNlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAzLCA0LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VR
KDAsIFRpbGluZ0RhdGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDMsIDQsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDMpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEsIDEsIDEs
IHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxp
bmdEYXRhKDIsIDIsIDIsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIHRydWUpLnRpbGVZ
SW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMs
IDMsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBU
aWxpbmdEYXRhKDMsIDMsIDMsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotCi0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgNCwgdHJ1ZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEo
MywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VR
KDEsIFRpbGluZ0RhdGEoMywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgzKSk7
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEw
LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRl
c3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgzKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg0KSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RU
aWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg1KSk7CisgICAg
RVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCg2KSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg3KSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxp
bmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg4KSk7CisgICAgRVhQ
RUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCg5KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgxMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5n
KDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKKworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygz
LCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9F
USgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgz
KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDQpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygzLCAxMCwg
MTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNSkpOworICAgIEVYUEVDVF9FUSg1LCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg2KSk7Cisg
ICAgRVhQRUNUX0VRKDYsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDcpKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRy
dWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOCkpOworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGls
aW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg5KSk7CisgICAgRVhQ
RUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDEwKSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDExKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygxLCAxLCAxLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNU
X0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
MCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIGZhbHNlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAz
LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRl
c3RUaWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDIpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDQsIGZhbHNl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygzLCAzLCA0LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNU
X0VRKDAsIFRlc3RUaWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
MikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDMsIDQsIGZhbHNlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDEsIDEs
IDEsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDIsIDIsIDIsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3Jj
Q29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIHRydWUpLnRp
bGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMs
IDMsIDMsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDMsIDMsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwor
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgNCwgdHJ1
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoMywgMywgNCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgz
KSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWCkKIHsKLSAgICBFWFBFQ1Rf
RVEoNSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVY
UEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA1LCAgNSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLQot
ICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVTaXplWCgw
KSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNp
emVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIHRydWUpLnRp
bGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNSwgIDYsICA2LCB0cnVl
KS50aWxlU2l6ZVgoMSkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgIDgsICA4
LCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAg
OCwgIDgsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRh
KDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5n
RGF0YSg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0KLSAgICBFWFBFQ1RfRVEoNSwg
VGlsaW5nRGF0YSg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9F
USg1LCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDEpKTsK
LSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWCgy
KSk7Ci0KLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAxMSwgMTEsIHRydWUpLnRpbGVT
aXplWCgyKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgMTIsIDEyLCB0cnVlKS50
aWxlU2l6ZVgoMikpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsICA1LCAgNSwgZmFs
c2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgIDUsICA1
LCB0cnVlKS50aWxlU2l6ZVgoMCkpOworCisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwg
IDYsICA2LCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGlu
Zyg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0
VGlsaW5nKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMiwg
VGVzdFRpbGluZyg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWCgxKSk7CisKKyAgICBFWFBFQ1Rf
RVEoNSwgVGVzdFRpbGluZyg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7Cisg
ICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVgoMCkp
OworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNpemVY
KDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgZmFsc2UpLnRp
bGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCBmYWxz
ZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1LCAxMCwgMTAs
IHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTAs
IDEwLCB0cnVlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUs
IDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKKworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGls
aW5nKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZyg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWCgyKSk7CiB9CiBURVNUKFRpbGluZ0Rh
dGFUZXN0LCB0aWxlU2l6ZVkpCiB7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgIDUs
ICA1LCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1
LCAgNSwgIDUsIHRydWUpLnRpbGVTaXplWSgwKSk7Ci0KLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5n
RGF0YSg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQRUNUX0VR
KDQsIFRpbGluZ0RhdGEoNSwgIDYsICA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKLQotICAg
IEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWSgwKSk7
Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVZ
KDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAgOCwgIDgsIHRydWUpLnRpbGVT
aXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCB0cnVlKS50
aWxlU2l6ZVkoMSkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCBm
YWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAxMCwg
MTAsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUs
IDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0
YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMikpOwotCi0gICAgRVhQRUNUX0VRKDQs
IFRpbGluZ0RhdGEoNSwgMTEsIDExLCB0cnVlKS50aWxlU2l6ZVkoMikpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDUsIDEyLCAxMiwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKKyAgICBFWFBF
Q1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAg
IEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsICA1LCAgNSwgdHJ1ZSkudGlsZVNpemVZKDApKTsK
KworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVTaXpl
WSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDYsICA2LCBmYWxzZSkudGls
ZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIHRydWUp
LnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDYsICA2LCB0
cnVlKS50aWxlU2l6ZVkoMSkpOworCisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgIDgs
ICA4LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1
LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGls
aW5nKDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVz
dFRpbGluZyg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWSgxKSk7CisKKyAgICBFWFBFQ1RfRVEo
NSwgVGVzdFRpbGluZyg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVD
VF9FUSg1LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgZmFsc2UpLnRpbGVTaXplWSgxKSk7CisgICAg
RVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMCkpOwor
ICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZKDEp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXpl
WSgyKSk7CisKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1LCAxMSwgMTEsIHRydWUpLnRp
bGVTaXplWSgyKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTIsIDEyLCB0cnVl
KS50aWxlU2l6ZVkoMikpOwogfQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCB0aWxlU2l6ZVhfYW5k
X3RpbGVQb3NpdGlvblgpCiB7CiAgICAgLy8gU2luZ2xlIHRpbGUgY2FzZXM6Ci0gICAgRVhQRUNU
X0VRKDEsIFRpbGluZ0RhdGEoMywgMSwgICAxLCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBF
WFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxLCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxLCAxMDAsIGZhbHNlKS50aWxlU2l6
ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEsIDEwMCwgZmFsc2UpLnRp
bGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDMsICAgMSwg
ZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywg
ICAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0Rh
dGEoMywgMywgMTAwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCAzLCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgzLCAxLCAgIDEsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMSwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDApKTsK
LSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxLCAxMDAsIHRydWUpLnRpbGVTaXplWCgw
KSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMSwgMTAwLCB0cnVlKS50aWxlUG9z
aXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAzLCAgIDEsIHRydWUp
LnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgICAxLCB0
cnVlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAz
LCAxMDAsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEo
MywgMywgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZygzLCAxLCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDEsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVY
UEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMSwgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9u
WCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMywgICAxLCBmYWxzZSkudGls
ZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAgIDEsIGZhbHNl
KS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAzLCAx
MDAsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMs
IDMsIDEwMCwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0
VGlsaW5nKDMsIDEsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCAxLCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVD
VF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxLCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkp
OworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDMsICAgMSwgdHJ1ZSkudGlsZVNpemVY
KDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAgIDEsIHRydWUpLnRpbGVQ
b3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDMsIDEwMCwgdHJ1
ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAxMDAs
IHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwogCiAgICAgLy8gTXVsdGlwbGUgdGlsZXM6CiAgICAg
Ly8gbm8gYm9yZGVyCiAgICAgLy8gcG9zaXRpb25zIDAsIDMKLSAgICBFWFBFQ1RfRVEoMiwgVGls
aW5nRGF0YSgzLCA2LCAgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCA2LCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNiwgICAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7
Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgICAxLCBmYWxzZSkudGlsZVBvc2l0
aW9uWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCBmYWxzZSku
dGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIGZh
bHNlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDYsIDEw
MCwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRh
KDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMSkpOworICAgIEVYUEVDVF9FUSgyLCBU
ZXN0VGlsaW5nKDMsIDYsICAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNU
X0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgICAxLCBmYWxzZSkudGlsZVNpemVYKDEpKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA2LCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAgIDEsIGZhbHNlKS50aWxlUG9z
aXRpb25YKDEpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAxMDAsIGZhbHNl
KS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwg
ZmFsc2UpLnRpbGVTaXplWCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNiwg
MTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoMywgNiwgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgxKSk7CiAKICAgICAvLyBNdWx0aXBs
ZSB0aWxlczoKICAgICAvLyB3aXRoIGJvcmRlcgogICAgIC8vIHBvc2l0aW9ucyAwLCAyLCAzLCA0
Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXpl
WCgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxl
U2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSku
dGlsZVNpemVYKDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRy
dWUpLnRpbGVTaXplWCgzKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNiwgICAx
LCB0cnVlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgz
LCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxp
bmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgyKSk7Ci0gICAgRVhQRUNUX0VR
KDQsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDMpKTsKLSAgICBF
WFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMSkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVY
KDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVT
aXplWCgzKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50
aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCA2LCAxMDAs
IHRydWUpLnRpbGVQb3NpdGlvblgoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMs
IDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgyKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGlu
Z0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDMpKTsKKyAgICBFWFBFQ1RfRVEo
NCwgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgyLCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXplWCgxKSk7CisgICAg
RVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMikpOwor
ICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDMp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3Np
dGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSku
dGlsZVBvc2l0aW9uWCgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgICAx
LCB0cnVlKS50aWxlUG9zaXRpb25YKDIpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygz
LCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMykpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0
VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwg
VGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgxKSk7CisgICAgRVhQRUNUX0VR
KDEsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMikpOworICAgIEVYUEVD
VF9FUSgyLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDMpKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkp
OworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0
aW9uWCgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50
aWxlUG9zaXRpb25YKDIpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygzLCA2LCAxMDAs
IHRydWUpLnRpbGVQb3NpdGlvblgoMykpOwogfQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCB0aWxl
U2l6ZVlfYW5kX3RpbGVQb3NpdGlvblkpCiB7CiAgICAgLy8gU2luZ2xlIHRpbGUgY2FzZXM6Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgICAxLCAxLCBmYWxzZSkudGlsZVNpemVZKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDEsIGZhbHNlKS50aWxlUG9z
aXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMDAsIDEsIGZhbHNl
KS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwMCwgMSwg
ZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMs
ICAgMSwgMywgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0Rh
dGEoMywgICAxLCAzLCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMs
IFRpbGluZ0RhdGEoMywgMTAwLCAzLCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDMsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAgIDEsIDEsIHRydWUpLnRpbGVTaXplWSgwKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgICAxLCAxLCB0cnVlKS50aWxlUG9zaXRp
b25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMDAsIDEsIHRydWUpLnRp
bGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCAxLCB0cnVl
KS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgIDEs
IDMsIHRydWUpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywg
ICAxLCAzLCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5n
RGF0YSgzLCAxMDAsIDMsIHRydWUpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMywgMTAwLCAzLCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZygzLCAgIDEsIDEsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkp
OworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwMCwgMSwgZmFsc2UpLnRpbGVTaXpl
WSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAwLCAxLCBmYWxzZSkudGls
ZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgICAxLCAzLCBm
YWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEs
IDMsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGlu
ZygzLCAxMDAsIDMsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0
VGlsaW5nKDMsIDEwMCwgMywgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDMsICAgMSwgMSwgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEsIDEsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwMCwgMSwgdHJ1ZSkudGlsZVNpemVZKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDEsIHRydWUpLnRpbGVQb3Np
dGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsICAgMSwgMywgdHJ1ZSku
dGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEsIDMsIHRy
dWUpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEw
MCwgMywgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygz
LCAxMDAsIDMsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwogCiAgICAgLy8gTXVsdGlwbGUgdGls
ZXM6CiAgICAgLy8gbm8gYm9yZGVyCiAgICAgLy8gcG9zaXRpb25zIDAsIDMKLSAgICBFWFBFQ1Rf
RVEoMiwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVTaXplWSgxKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgICAxLCA2LCBmYWxzZSkudGlsZVBvc2l0
aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgICAxLCA2LCBmYWxzZSku
dGlsZVBvc2l0aW9uWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAwLCA2
LCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAx
MDAsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRh
KDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBU
aWxpbmdEYXRhKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMSkpOworICAgIEVYUEVD
VF9FUSgyLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Cisg
ICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgICAxLCA2LCBmYWxzZSkudGlsZVNpemVZKDEp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEsIDYsIGZhbHNlKS50aWxlUG9z
aXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDYsIGZhbHNl
KS50aWxlUG9zaXRpb25ZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMDAs
IDYsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMs
IDEwMCwgNiwgZmFsc2UpLnRpbGVTaXplWSgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoMywgMTAwLCA2LCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDMs
IFRlc3RUaWxpbmcoMywgMTAwLCA2LCBmYWxzZSkudGlsZVBvc2l0aW9uWSgxKSk7CiAKICAgICAv
LyBNdWx0aXBsZSB0aWxlczoKICAgICAvLyB3aXRoIGJvcmRlcgogICAgIC8vIHBvc2l0aW9ucyAw
LCAyLCAzLCA0Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0cnVlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUp
LnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0
cnVlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAgMSwg
NiwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAg
IDEsIDYsIHRydWUpLnRpbGVTaXplWSgzKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEo
MywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGls
aW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMSkpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgyKSk7Ci0gICAg
RVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDMp
KTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXpl
WSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxl
U2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSku
dGlsZVNpemVZKDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRy
dWUpLnRpbGVTaXplWSgzKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCA2
LCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgz
LCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxp
bmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgyKSk7Ci0gICAgRVhQRUNUX0VR
KDQsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDMpKTsKKyAgICBF
WFBFQ1RfRVEoNCwgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsK
KyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgx
KSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6
ZVkoMikpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGls
ZVNpemVZKDMpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUp
LnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsICAgMSwg
NiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmco
MywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDIpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVz
dFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMykpOworICAgIEVYUEVDVF9F
USgyLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7CisgICAg
RVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMikpOwor
ICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDMp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3Np
dGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSku
dGlsZVBvc2l0aW9uWSgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAwLCA2
LCB0cnVlKS50aWxlUG9zaXRpb25ZKDIpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygz
LCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMykpOwogfQogCiBURVNUKFRpbGluZ0RhdGFU
ZXN0LCBzZXRUb3RhbFNpemUpCiB7Ci0gICAgVGlsaW5nRGF0YSBkYXRhKDUsIDUsIDUsIGZhbHNl
KTsKKyAgICBUZXN0VGlsaW5nIGRhdGEoNSwgNSwgNSwgZmFsc2UpOwogICAgIEVYUEVDVF9FUSg1
LCBkYXRhLnRvdGFsU2l6ZVgoKSk7CiAgICAgRVhQRUNUX0VRKDUsIGRhdGEudG90YWxTaXplWSgp
KTsKICAgICBFWFBFQ1RfRVEoMSwgZGF0YS5udW1UaWxlc1goKSk7CkBAIC00NDYsNyArNDY4LDcg
QEAgVEVTVChUaWxpbmdEYXRhVGVzdCwgc2V0VG90YWxTaXplKQogCiBURVNUKFRpbGluZ0RhdGFU
ZXN0LCBzZXRNYXhUZXh0dXJlU2l6ZU5vQm9yZGVycykKIHsKLSAgICBUaWxpbmdEYXRhIGRhdGEo
OCwgMTYsIDMyLCBmYWxzZSk7CisgICAgVGVzdFRpbGluZyBkYXRhKDgsIDE2LCAzMiwgZmFsc2Up
OwogICAgIEVYUEVDVF9FUSgyLCBkYXRhLm51bVRpbGVzWCgpKTsKICAgICBFWFBFQ1RfRVEoNCwg
ZGF0YS5udW1UaWxlc1koKSk7CiAKQEAgLTQ2OCw3ICs0OTAsNyBAQCBURVNUKFRpbGluZ0RhdGFU
ZXN0LCBzZXRNYXhUZXh0dXJlU2l6ZU5vQm9yZGVycykKIAogVEVTVChUaWxpbmdEYXRhVGVzdCwg
c2V0TWF4VGV4dHVyZVNpemVCb3JkZXJzKQogewotICAgIFRpbGluZ0RhdGEgZGF0YSg4LCAxNiwg
MzIsIHRydWUpOworICAgIFRlc3RUaWxpbmcgZGF0YSg4LCAxNiwgMzIsIHRydWUpOwogICAgIEVY
UEVDVF9FUSgzLCBkYXRhLm51bVRpbGVzWCgpKTsKICAgICBFWFBFQ1RfRVEoNSwgZGF0YS5udW1U
aWxlc1koKSk7CiAKQEAgLTQ5MSw4ICs1MTMsOCBAQCBURVNUKFRpbGluZ0RhdGFUZXN0LCBzZXRN
YXhUZXh0dXJlU2l6ZUJvcmRlcnMpCiBURVNUKFRpbGluZ0RhdGFUZXN0LCBhc3NpZ25tZW50KQog
ewogICAgIHsKLSAgICAgICAgVGlsaW5nRGF0YSBzb3VyY2UoOCwgMTYsIDMyLCB0cnVlKTsKLSAg
ICAgICAgVGlsaW5nRGF0YSBkZXN0ID0gc291cmNlOworICAgICAgICBUZXN0VGlsaW5nIHNvdXJj
ZSg4LCAxNiwgMzIsIHRydWUpOworICAgICAgICBUZXN0VGlsaW5nIGRlc3QgPSBzb3VyY2U7CiAg
ICAgICAgIEVYUEVDVF9FUShzb3VyY2UuYm9yZGVyVGV4ZWxzKCksIGRlc3QuYm9yZGVyVGV4ZWxz
KCkpOwogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLm1heFRleHR1cmVTaXplKCksIGRlc3QubWF4
VGV4dHVyZVNpemUoKSk7CiAgICAgICAgIEVYUEVDVF9FUShzb3VyY2UubnVtVGlsZXNYKCksIGRl
c3QubnVtVGlsZXNYKCkpOwpAQCAtNTAxLDggKzUyMyw4IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3Qs
IGFzc2lnbm1lbnQpCiAgICAgICAgIEVYUEVDVF9FUShzb3VyY2UudG90YWxTaXplWSgpLCBkZXN0
LnRvdGFsU2l6ZVkoKSk7CiAgICAgfQogICAgIHsKLSAgICAgICAgVGlsaW5nRGF0YSBzb3VyY2Uo
MywgNiwgMTAwLCBmYWxzZSk7Ci0gICAgICAgIFRpbGluZ0RhdGEgZGVzdChzb3VyY2UpOworICAg
ICAgICBUZXN0VGlsaW5nIHNvdXJjZSgzLCA2LCAxMDAsIGZhbHNlKTsKKyAgICAgICAgVGVzdFRp
bGluZyBkZXN0KHNvdXJjZSk7CiAgICAgICAgIEVYUEVDVF9FUShzb3VyY2UuYm9yZGVyVGV4ZWxz
KCksIGRlc3QuYm9yZGVyVGV4ZWxzKCkpOwogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLm1heFRl
eHR1cmVTaXplKCksIGRlc3QubWF4VGV4dHVyZVNpemUoKSk7CiAgICAgICAgIEVYUEVDVF9FUShz
b3VyY2UubnVtVGlsZXNYKCksIGRlc3QubnVtVGlsZXNYKCkpOwpAQCAtNTE0LDcgKzUzNiw3IEBA
IFRFU1QoVGlsaW5nRGF0YVRlc3QsIGFzc2lnbm1lbnQpCiAKIFRFU1QoVGlsaW5nRGF0YVRlc3Qs
IHNldEJvcmRlclRleGVscykKIHsKLSAgICBUaWxpbmdEYXRhIGRhdGEoOCwgMTYsIDMyLCBmYWxz
ZSk7CisgICAgVGVzdFRpbGluZyBkYXRhKDgsIDE2LCAzMiwgZmFsc2UpOwogICAgIEVYUEVDVF9F
USgyLCBkYXRhLm51bVRpbGVzWCgpKTsKICAgICBFWFBFQ1RfRVEoNCwgZGF0YS5udW1UaWxlc1ko
KSk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134357</attachid>
            <date>2012-03-28 11:56:47 -0700</date>
            <delta_ts>2012-03-28 12:01:15 -0700</delta_ts>
            <desc>Remove numTiles declaration</desc>
            <filename>bug-82486-20120328115646.patch</filename>
            <type>text/plain</type>
            <size>63020</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDNmODdjYzYwNDNjZWI1
N2Q3MzJlNzA1N2MwNDIyYmRlMjhkOWRlMS4uZTY2NzVmOTVmNmEzOGMyYTE5ODBmZTYxNWYyODBi
Y2E0Y2IyZjQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTAzLTI4ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
dGlsZWQgbGF5ZXIgYXNzZXJ0IGZvciBodWdlIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0ODYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBUaWxlZExheWVyQ2hyb21pdW1UZXN0Lmh1
Z2VMYXllclVwZGF0ZUNyYXNoCisKKyAgICAgICAgVGlsaW5nRGF0YTo6bnVtVGlsZXMoKSBpcyBj
YWxjdWxhdGVkIGFzIHRoZSBwcm9kdWN0IG9mIHR3byBpbnRzIGFuZCBzbworICAgICAgICBjYW4g
cG90ZW50aWFsbHkgb3ZlcmZsb3csIGNhdXNpbmcgbnVtVGlsZXMoKSB0byBiZSBpbmNvcnJlY3Qu
IFRvIGF2b2lkCisgICAgICAgIGNhbGxpbmcgY29kZSBhY2NpZGVudGFsbHkgZmFsbGluZyBpbnRv
IHRoaXMgdHJhcCwgcmVtb3ZlIHRoaXMgZnVuY3Rpb24KKyAgICAgICAgYW5kIGFsbCBjb2RlIHRo
YXQgdXNlcyB0aWxlIGluZGV4IGZyb20gVGlsaW5nRGF0YS4gIFRoaXMgcmVxdWlyZXMKKyAgICAg
ICAgZml4aW5nIHVwIGEgYnVuY2ggb2YgY2FsbGVycyBvZiBUaWxpbmdEYXRhIGFuZCBDQ0xheWVy
VGlsaW5nRGF0YS4KKworICAgICAgICBBZGRpdGlvbmFsbHksIFRpbGluZ0RhdGE6Om51bVRpbGVz
KCkgaGFzIGxvbmcgYmVlbiBhIGNvbmZ1c2luZworICAgICAgICBmdW5jdGlvbiBuYW1lIGluIHNv
bWUgY29udGV4dHMsIHNvIHJlbmFtZSB0byBib29sIGhhc0VtcHR5Qm91bmRzKCkuCisKKyAgICAg
ICAgQWxzbywgcmVtb3ZlIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdRdWFkIGJlY2F1c2UgdGhl
cmUgYXJlIG5vCisgICAgICAgIGNsaWVudHMgb2YgdGhhdCBmdW5jdGlvbi4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnJlc2VydmVUZXh0dXJlcyk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZUlkbGUpOgorICAg
ICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVtOjpuZWVkc0lkbGVQYWludCk6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmlkbGVQYWludFJlY3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjp0aWxlUmVjdCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjpoYXNFbXB0eUJvdW5kcyk6CisgICAg
ICAgIChXZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6aXNFbXB0eSk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlOjpj
cmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZTo6dXBkYXRlU3ViUmVjdCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdE
YXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdEYXRh
Ojp0aWxlQm91bmRzTm9ybWFsaXplZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L1RpbGluZ0RhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGluZ0RhdGE6Omhhc0VtcHR5Qm91
bmRzKToKKyAgICAgICAgKFRpbGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGlsaW5nRGF0
YTo6YXNzZXJ0VGlsZSk6CisKIDIwMTItMDMtMjggIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBvbmx5IHVwZGF0ZSBUaW1lbGlu
ZSBvdmVydmlldyB3aGVuIHJlYWxseSBuZWVkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5k
ZXggNWYwYWNiYzk0YTViODQwOTBiYmQ4Mjc3ZTgwYzI2NjVhOGI2ZTEwOC4uNDlmYjdkZjE5NzU1
ZDYxNzYzNTQyMDJkYTUxZmViNmU1N2I0MWUwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyNCBAQAorMjAxMi0wMy0yOCAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29n
bGUuY29tPgorCisgICAgICAgIFtjaHJvbWl1bV0gRml4IHRpbGVkIGxheWVyIGFzc2VydCBmb3Ig
aHVnZSBsYXllcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgyNDg2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWRkIHRlc3QgZm9yIHVwZGF0aW5nIGEgaHVnZSBsYXllciB0aGF0IHdvdWxkIGFzc2VydCBw
cmlvciB0byB0aGlzCisgICAgICAgIGNvZGUuIEZpeCB1cCBUaWxpbmdEYXRhIHRlc3RzIHRvIHVz
ZSBhIHRlc3RpbmcgY2xhc3MgdGhhdCBwcm92aWRlcyBhCisgICAgICAgIHNhZmUgdmVyc2lvbiBv
ZiBudW1UaWxlcygpLgorCisgICAgICAgICogdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5j
cHA6CisgICAgICAgIChXVEY6OlRFU1QpOgorICAgICAgICAoV1RGKToKKyAgICAgICAgKiB0ZXN0
cy9UaWxpbmdEYXRhVGVzdC5jcHA6CisgICAgICAgIChUZXN0VGlsaW5nKToKKyAgICAgICAgKFdl
YkNvcmU6OlRlc3RUaWxpbmc6OlRlc3RUaWxpbmcpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdFRp
bGluZzo6bnVtVGlsZXMpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpU
RVNUKToKKwogMjAxMi0wMy0yNyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFtjaHJvbWl1bV0gVHJhbnNmZXIgd2hlZWwgZmxpbmcgdmlhIFdlYkNvbXBv
c2l0b3JJbnB1dEhhbmRsZXJDbGllbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwCmlu
ZGV4IDQ1NjYzMmNjOTlkMzIwZDkxY2VmOTcwMDMyZTg3MTcyMDgxOTEyMWMuLmE0YjZjN2I1Y2Vm
YjgzNzY2NDE0ZDliOTA2ZmQ4N2EyOGMzOWM3NzAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcApAQCAtMTY2LDcgKzE2Niw4IEBAIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3
c0NvbnRlbnQoKSBjb25zdAogICAgIGlmICghTGF5ZXJDaHJvbWl1bTo6ZHJhd3NDb250ZW50KCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZl
clRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMoKSA+IDEpCisgICAgYm9vbCBoYXNNb3JlVGhhbk9u
ZVRpbGUgPSBtX3RpbGVyLT5udW1UaWxlc1goKSA+IDEgfHwgbV90aWxlci0+bnVtVGlsZXNZKCkg
PiAxOworICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgaGFzTW9yZVRoYW5P
bmVUaWxlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTU1
Niw3ICs1NTcsNyBAQCB2b2lkIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cmVzZXJ2ZVRleHR1cmVzKCkK
ICAgICB1cGRhdGVCb3VuZHMoKTsKIAogICAgIGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCA9IHZp
c2libGVMYXllclJlY3QoKTsKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCAhbV90aWxl
ci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCBtX3RpbGVyLT5o
YXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQgbGVmdCwgdG9wLCBy
aWdodCwgYm90dG9tOwpAQCAtNjA5LDcgKzYxMCw3IEBAIHZvaWQgVGlsZWRMYXllckNocm9taXVt
OjpwcmVwYXJlVG9VcGRhdGUoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0LCBjb25zdCBDQ09jY2x1
CiAKICAgICByZXNldFVwZGF0ZVN0YXRlKCk7CiAKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHko
KSB8fCAhbV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8
fCBtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQg
bGVmdCwgdG9wLCByaWdodCwgYm90dG9tOwpAQCAtNjI4LDcgKzYyOSw3IEBAIHZvaWQgVGlsZWRM
YXllckNocm9taXVtOjpwcmVwYXJlVG9VcGRhdGVJZGxlKGNvbnN0IEludFJlY3QmIGxheWVyUmVj
dCwgY29uc3QgQ0NPCiAKICAgICB1cGRhdGVCb3VuZHMoKTsKIAotICAgIGlmICghbV90aWxlci0+
bnVtVGlsZXMoKSkKKyAgICBpZiAobV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgSW50UmVjdCBpZGxlUGFpbnRMYXllclJlY3QgPSBpZGxlUGFpbnRSZWN0
KGxheWVyUmVjdCk7CkBAIC03MDEsNyArNzAyLDcgQEAgYm9vbCBUaWxlZExheWVyQ2hyb21pdW06
Om5lZWRzSWRsZVBhaW50KGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCkKICAgICBpZiAobV9za2lw
c0lkbGVQYWludCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFtX3RpbGVyLT5u
dW1UaWxlcygpKQorICAgIGlmIChtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBJbnRSZWN0IGlkbGVQYWludExheWVyUmVjdCA9IGlkbGVQYWlu
dFJlY3QobGF5ZXJSZWN0KTsKQEAgLTczMSw3ICs3MzIsNyBAQCBJbnRSZWN0IFRpbGVkTGF5ZXJD
aHJvbWl1bTo6aWRsZVBhaW50UmVjdChjb25zdCBJbnRSZWN0JiB2aXNpYmxlTGF5ZXJSZWN0KQog
ICAgIC8vIG9mIHRoZW0gaXMgZ29pbmcgdG8gYmVjb21lIHZpc2libGUuIEZvciBzbWFsbCBsYXll
cnMgd2UgcmV0dXJuIHRoZSBlbnRpcmUgbGF5ZXIsIGZvciBsYXJnZXIKICAgICAvLyBvbmVzIHdl
IGF2b2lkIHByZXBhaW50aW5nIHRoZSBsYXllciBhdCBhbGwuCiAgICAgaWYgKHZpc2libGVMYXll
clJlY3QuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlzQW5pbWF0aW5n
KCkgfHwgc2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3RpbGVyLT5udW1U
aWxlcygpIDw9IDkpCisgICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlzQW5pbWF0aW5nKCkgfHwg
c2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3RpbGVyLT5udW1UaWxlc1go
KSA8PSA0ICYmIG1fdGlsZXItPm51bVRpbGVzWSgpIDw9IDQpCiAgICAgICAgICAgICByZXR1cm4g
SW50UmVjdChJbnRQb2ludCgpLCBjb250ZW50Qm91bmRzKCkpOwogICAgICAgICByZXR1cm4gSW50
UmVjdCgpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcAppbmRleCAx
OWQwMjUxZGMwYWNmOWUzODJlYzBmMWZkZmU3ZDAzZGU2YmQ5MGI4Li40MmYxZThkMWFiNTk4Yzgz
NzVkNWI1YzE3ZGQyNWU2MGU4M2JiNjM1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5jcHAKKysrIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0Rh
dGEuY3BwCkBAIC0xMDYsOCArMTA2LDcgQEAgdm9pZCBDQ0xheWVyVGlsaW5nRGF0YTo6bGF5ZXJS
ZWN0VG9UaWxlSW5kaWNlcyhjb25zdCBJbnRSZWN0JiBsYXllclJlY3QsIGludCYgbGUKIAogSW50
UmVjdCBDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZVJlY3QoY29uc3QgVGlsZSogdGlsZSkgY29uc3QK
IHsKLSAgICBjb25zdCBpbnQgaW5kZXggPSBtX3RpbGluZ0RhdGEudGlsZUluZGV4KHRpbGUtPmko
KSwgdGlsZS0+aigpKTsKLSAgICBJbnRSZWN0IHRpbGVSZWN0ID0gbV90aWxpbmdEYXRhLnRpbGVC
b3VuZHNXaXRoQm9yZGVyKGluZGV4KTsKKyAgICBJbnRSZWN0IHRpbGVSZWN0ID0gbV90aWxpbmdE
YXRhLnRpbGVCb3VuZHNXaXRoQm9yZGVyKHRpbGUtPmkoKSwgdGlsZS0+aigpKTsKICAgICB0aWxl
UmVjdC5zZXRTaXplKG1fdGlsZVNpemUpOwogICAgIHJldHVybiB0aWxlUmVjdDsKIH0KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUaWxpbmdEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5oCmluZGV4IDllMTg2OTVlOGMxNDIyYjZjNmM3ZmY1Mzcz
NmNiYWE0OTk0ZmUzYmIuLmQ4N2RjZDI2MGE2MjM0OGU5YjZkNmU5NjNmOWY2NmY5NjIzMjUxMTcg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2Nj
L0NDTGF5ZXJUaWxpbmdEYXRhLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaApAQCAtNDQsMTAgKzQ0LDEwIEBAIHB1
YmxpYzoKIAogICAgIHN0YXRpYyBQYXNzT3duUHRyPENDTGF5ZXJUaWxpbmdEYXRhPiBjcmVhdGUo
Y29uc3QgSW50U2l6ZSYgdGlsZVNpemUsIEJvcmRlclRleGVsT3B0aW9uKTsKIAotICAgIGludCBu
dW1UaWxlcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5udW1UaWxlcygpOyB9CisgICAg
Ym9vbCBoYXNFbXB0eUJvdW5kcygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5oYXNFbXB0
eUJvdW5kcygpOyB9CiAgICAgaW50IG51bVRpbGVzWCgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5n
RGF0YS5udW1UaWxlc1goKTsgfQogICAgIGludCBudW1UaWxlc1koKSBjb25zdCB7IHJldHVybiBt
X3RpbGluZ0RhdGEubnVtVGlsZXNZKCk7IH0KLSAgICBJbnRSZWN0IHRpbGVCb3VuZHMoaW50IGks
IGludCBqKSBjb25zdCB7IHJldHVybiBtX3RpbGluZ0RhdGEudGlsZUJvdW5kcyhtX3RpbGluZ0Rh
dGEudGlsZUluZGV4KGksIGopKTsgfQorICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQgaSwgaW50
IGopIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS50aWxlQm91bmRzKGksIGopOyB9CiAgICAg
SW50UG9pbnQgdGV4dHVyZU9mZnNldChpbnQgeEluZGV4LCBpbnQgeUluZGV4KSBjb25zdCB7IHJl
dHVybiBtX3RpbGluZ0RhdGEudGV4dHVyZU9mZnNldCh4SW5kZXgsIHlJbmRleCk7IH0KIAogICAg
IC8vIENoYW5nZSB0aGUgdGlsZSBzaXplLiBUaGlzIG1heSBpbnZhbGlkYXRlIGFsbCB0aGUgZXhp
c3RpbmcgdGlsZXMuCkBAIC01Nyw3ICs1Nyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEJvcmRl
clRleGVsT3B0aW9uKEJvcmRlclRleGVsT3B0aW9uKTsKICAgICBib29sIGhhc0JvcmRlclRleGVs
cygpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5ib3JkZXJUZXhlbHMoKTsgfQogCi0gICAg
Ym9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gIW1fdGlsaW5nRGF0YS5udW1UaWxlcygpIHx8
ICF0aWxlcygpLnNpemUoKTsgfQorICAgIGJvb2wgaXNFbXB0eSgpIGNvbnN0IHsgcmV0dXJuIGhh
c0VtcHR5Qm91bmRzKCkgfHwgIXRpbGVzKCkuc2l6ZSgpOyB9CiAKICAgICBjb25zdCBDQ0xheWVy
VGlsaW5nRGF0YSYgb3BlcmF0b3I9KGNvbnN0IENDTGF5ZXJUaWxpbmdEYXRhJik7CiAKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDVGls
ZWRMYXllckltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKaW5kZXggZGE4M2U2NTUxYzY0N2NjNTc0Yjk3ZDcx
NWM2ZDI0MzM4OTY5ZmRlYy4uMTA1MTE2NWIxN2YzM2ViMzU0ZmYxNmY0ZDMwNTE0YmVhNWY5Yzk1
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NUaWxlZExheWVySW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAKQEAgLTgwLDcgKzgwLDggQEAg
dm9pZCBDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKExheWVyUmVuZGVyZXJD
aHJvbWl1bSogbGF5ZXJSZW5kZXJlcikKIHsKICAgICAvLyBUaGlzIGZ1bmN0aW9uIGlzIG9ubHkg
dmFsaWQgZm9yIHNpbmdsZSB0ZXh0dXJlIGxheWVycywgZS5nLiBtYXNrcy4KICAgICBBU1NFUlQo
bV90aWxlcik7Ci0gICAgQVNTRVJUKG1fdGlsZXItPm51bVRpbGVzKCkgPT0gMSk7CisgICAgQVNT
RVJUKG1fdGlsZXItPm51bVRpbGVzWCgpID09IDEpOworICAgIEFTU0VSVChtX3RpbGVyLT5udW1U
aWxlc1koKSA9PSAxKTsKIAogICAgIERyYXdhYmxlVGlsZSogdGlsZSA9IHRpbGVBdCgwLCAwKTsK
ICAgICBQbGF0Zm9ybTNET2JqZWN0IHRleHR1cmVJZCA9IHRpbGUgPyB0aWxlLT50ZXh0dXJlSWQo
KSA6IDA7CkBAIC0xNDMsNyArMTQ0LDcgQEAgdm9pZCBDQ1RpbGVkTGF5ZXJJbXBsOjphcHBlbmRR
dWFkcyhDQ1F1YWRDdWxsZXImIHF1YWRMaXN0LCBjb25zdCBDQ1NoYXJlZFF1YWRTdGEKIAogICAg
IGFwcGVuZEd1dHRlclF1YWRzKHF1YWRMaXN0LCBzaGFyZWRRdWFkU3RhdGUpOwogCi0gICAgaWYg
KCFtX3RpbGVyIHx8ICFtX3RpbGVyLT5udW1UaWxlcygpIHx8IGxheWVyUmVjdC5pc0VtcHR5KCkp
CisgICAgaWYgKCFtX3RpbGVyIHx8IG1fdGlsZXItPmhhc0VtcHR5Qm91bmRzKCkgfHwgbGF5ZXJS
ZWN0LmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgaW50IGxlZnQsIHRvcCwgcmln
aHQsIGJvdHRvbTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2ZpbHRlcnMvRkVDdXN0b21GaWx0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHAKaW5kZXggZGI4ZDNkOTFjMTg4ODUwODE2
ZmJlMDYzYWQ2MWE1M2UxZDU5ZTBkNS4uOTUyYWJhNGM0MTM5MzhjMzNjMmJiOGQzNmI1ZWE2OTU1
MGE0NWJhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmls
dGVycy9GRUN1c3RvbUZpbHRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvZmlsdGVycy9GRUN1c3RvbUZpbHRlci5jcHAKQEAgLTExMiw3ICsxMTIsNyBAQCB2b2lk
IEZFQ3VzdG9tRmlsdGVyOjpwbGF0Zm9ybUFwcGx5U29mdHdhcmUoKQogICAgICAgICByZXNpemVD
b250ZXh0KG5ld0NvbnRleHRTaXplKTsKICAgICAKICAgICAvLyBEbyBub3QgZHJhdyB0aGUgZmls
dGVyIGlmIHRoZSBpbnB1dCBpbWFnZSBjYW5ub3QgZml0IGluc2lkZSBhIHNpbmdsZSBHUFUgdGV4
dHVyZS4KLSAgICBpZiAobV9pbnB1dFRleHR1cmUtPnRpbGVzKCkubnVtVGlsZXMoKSAhPSAxKQor
ICAgIGlmIChtX2lucHV0VGV4dHVyZS0+dGlsZXMoKS5udW1UaWxlc1goKSAhPSAxICYmIG1faW5w
dXRUZXh0dXJlLT50aWxlcygpLm51bVRpbGVzWSgpICE9IDEpCiAgICAgICAgIHJldHVybjsKICAg
ICAKICAgICAvLyBUaGUgc2hhZGVyIGhhZCBjb21waWxlciBlcnJvcnMuIFdlIGNhbm5vdCBkcmF3
IGFueXRoaW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Z3B1L1RleHR1cmUuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1Rl
eHR1cmUuY3BwCmluZGV4IDVmZjdkODExZmVmZTJhOTI0Y2FiNDJjYmFmNjliOTQ5NDFlZjY0ZDUu
LjNjYWQxM2FhNDY3YWI2ZDk0ZDliYTE5N2I4MTAzYTE3MzFiMjYwNDkgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKQEAgLTkwLDcgKzkw
LDEzIEBAIFBhc3NSZWZQdHI8VGV4dHVyZT4gVGV4dHVyZTo6Y3JlYXRlKEdyYXBoaWNzQ29udGV4
dDNEKiBjb250ZXh0LCBGb3JtYXQgZm9ybWF0LCBpCiAgICAgaW50IG1heFRleHR1cmVTaXplID0g
MDsKICAgICBjb250ZXh0LT5nZXRJbnRlZ2VydihHcmFwaGljc0NvbnRleHQzRDo6TUFYX1RFWFRV
UkVfU0laRSwgJm1heFRleHR1cmVTaXplKTsKICAgICBUaWxpbmdEYXRhIHRpbGluZyhtYXhUZXh0
dXJlU2l6ZSwgd2lkdGgsIGhlaWdodCwgdHJ1ZSk7Ci0gICAgaW50IG51bVRpbGVzID0gdGlsaW5n
Lm51bVRpbGVzKCk7CisKKyAgICAvLyBDaGVjayBmb3Igb3ZlcmZsb3cuCisgICAgaW50IG51bVRp
bGVzID0gd2lkdGggKiBoZWlnaHQ7CisgICAgaWYgKG51bVRpbGVzIC8gd2lkdGggIT0gaGVpZ2h0
KSB7CisgICAgICAgIHRpbGluZy5zZXRUb3RhbFNpemUoMCwgMCk7CisgICAgICAgIG51bVRpbGVz
ID0gMDsKKyAgICB9CiAKICAgICBPd25QdHI8VmVjdG9yPHVuc2lnbmVkIGludD4gPiB0ZXh0dXJl
SWRzID0gYWRvcHRQdHIobmV3IFZlY3Rvcjx1bnNpZ25lZCBpbnQ+KG51bVRpbGVzKSk7CiAgICAg
dGV4dHVyZUlkcy0+ZmlsbCgwLCBudW1UaWxlcyk7CkBAIC0xMDQsNyArMTEwLDkgQEAgUGFzc1Jl
ZlB0cjxUZXh0dXJlPiBUZXh0dXJlOjpjcmVhdGUoR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQs
IEZvcm1hdCBmb3JtYXQsIGkKICAgICAgICAgfQogICAgICAgICB0ZXh0dXJlSWRzLT5hdChpKSA9
IHRleHR1cmVJZDsKIAotICAgICAgICBJbnRSZWN0IHRpbGVCb3VuZHNXaXRoQm9yZGVyID0gdGls
aW5nLnRpbGVCb3VuZHNXaXRoQm9yZGVyKGkpOworICAgICAgICBpbnQgeEluZGV4ID0gaSAlIHdp
ZHRoOworICAgICAgICBpbnQgeUluZGV4ID0gaSAvIHdpZHRoOworICAgICAgICBJbnRSZWN0IHRp
bGVCb3VuZHNXaXRoQm9yZGVyID0gdGlsaW5nLnRpbGVCb3VuZHNXaXRoQm9yZGVyKHhJbmRleCwg
eUluZGV4KTsKIAogICAgICAgICB1bnNpZ25lZCBpbnQgZ2xGb3JtYXQgPSAwOwogICAgICAgICB1
bnNpZ25lZCBpbnQgZ2xUeXBlID0gMDsKQEAgLTE2OCw5ICsxNzYsMTIgQEAgdm9pZCBUZXh0dXJl
Ojp1cGRhdGVTdWJSZWN0KHZvaWQqIHBpeGVscywgY29uc3QgSW50UmVjdCYgdXBkYXRlUmVjdCkK
ICAgICAgICAgbWluKG1fdGlsZXMubWF4VGV4dHVyZVNpemUoKSwgbV90aWxlcy5ib3JkZXJUZXhl
bHMoKSArIHVwZGF0ZVJlY3RTYW5pdGl6ZWQuaGVpZ2h0KCkpOwogICAgIE93bkFycmF5UHRyPHVp
bnQzMl90PiB0ZW1wQnVmZiA9IGFkb3B0QXJyYXlQdHIobmV3IHVpbnQzMl90W3RlbXBCdWZmU2l6
ZV0pOwogCi0gICAgZm9yIChpbnQgdGlsZSA9IDA7IHRpbGUgPCBtX3RpbGVzLm51bVRpbGVzKCk7
IHRpbGUrKykgeworICAgIGZvciAoaW50IHRpbGUgPSAwOyB0aWxlIDwgbV90aWxlcy5udW1UaWxl
c1goKSAqIG1fdGlsZXMubnVtVGlsZXNZKCk7IHRpbGUrKykgeworICAgICAgICBpbnQgeEluZGV4
ID0gdGlsZSAlIG1fdGlsZXMudG90YWxTaXplWCgpOworICAgICAgICBpbnQgeUluZGV4ID0gdGls
ZSAvIG1fdGlsZXMudG90YWxTaXplWCgpOworCiAgICAgICAgIC8vIEludGVyc2VjdCB3aXRoIHRp
bGUKLSAgICAgICAgSW50UmVjdCB0aWxlQm91bmRzV2l0aEJvcmRlciA9IG1fdGlsZXMudGlsZUJv
dW5kc1dpdGhCb3JkZXIodGlsZSk7CisgICAgICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3Jk
ZXIgPSBtX3RpbGVzLnRpbGVCb3VuZHNXaXRoQm9yZGVyKHhJbmRleCwgeUluZGV4KTsKIAogICAg
ICAgICBJbnRSZWN0IHVwZGF0ZVJlY3RJbnRlcnNlY3RlZCA9IHVwZGF0ZVJlY3RTYW5pdGl6ZWQ7
CiAgICAgICAgIHVwZGF0ZVJlY3RJbnRlcnNlY3RlZC5pbnRlcnNlY3QodGlsZUJvdW5kc1dpdGhC
b3JkZXIpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L1RpbGluZ0RhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1Rp
bGluZ0RhdGEuY3BwCmluZGV4IDIwZGI0NDFjZTI1ZjU3YzZjN2ZmZWE2MjY1Yjc1MzdmYmEwOTUz
MWUuLjZiYWQ2Mjg0NDA3ODJlODlmMzE5MGM1NjY0ODE4YTI4ZjRmMjRiYWIgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRhLmNwcAorKysg
Yi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5jcHAKQEAg
LTk5LDIzICs5OSwyMSBAQCBpbnQgVGlsaW5nRGF0YTo6dGlsZVlJbmRleEZyb21TcmNDb29yZChp
bnQgc3JjUG9zKSBjb25zdAogICAgIHJldHVybiBtaW4obWF4KHksIDApLCBudW1UaWxlc1koKSAt
IDEpOwogfQogCi1JbnRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHMoaW50IHRpbGUpIGNvbnN0
CitJbnRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHMoaW50IGksIGludCBqKSBjb25zdAogewot
ICAgIGFzc2VydFRpbGUodGlsZSk7Ci0gICAgaW50IGl4ID0gdGlsZVhJbmRleCh0aWxlKTsKLSAg
ICBpbnQgaXkgPSB0aWxlWUluZGV4KHRpbGUpOwotICAgIGludCB4ID0gdGlsZVBvc2l0aW9uWChp
eCk7Ci0gICAgaW50IHkgPSB0aWxlUG9zaXRpb25ZKGl5KTsKLSAgICBpbnQgd2lkdGggPSB0aWxl
U2l6ZVgoaXgpOwotICAgIGludCBoZWlnaHQgPSB0aWxlU2l6ZVkoaXkpOworICAgIGFzc2VydFRp
bGUoaSwgaik7CisgICAgaW50IHggPSB0aWxlUG9zaXRpb25YKGkpOworICAgIGludCB5ID0gdGls
ZVBvc2l0aW9uWShqKTsKKyAgICBpbnQgd2lkdGggPSB0aWxlU2l6ZVgoaSk7CisgICAgaW50IGhl
aWdodCA9IHRpbGVTaXplWShqKTsKICAgICBBU1NFUlQoeCA+PSAwICYmIHkgPj0gMCAmJiB3aWR0
aCA+PSAwICYmIGhlaWdodCA+PSAwKTsKICAgICBBU1NFUlQoeCA8PSB0b3RhbFNpemVYKCkgJiYg
eSA8PSB0b3RhbFNpemVZKCkpOwogICAgIHJldHVybiBJbnRSZWN0KHgsIHksIHdpZHRoLCBoZWln
aHQpOwogfQogCi1JbnRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCB0
aWxlKSBjb25zdAorSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcihpbnQg
aSwgaW50IGopIGNvbnN0CiB7Ci0gICAgSW50UmVjdCBib3VuZHMgPSB0aWxlQm91bmRzKHRpbGUp
OworICAgIEludFJlY3QgYm91bmRzID0gdGlsZUJvdW5kcyhpLCBqKTsKIAogICAgIGlmIChtX2Jv
cmRlclRleGVscykgewogICAgICAgICBpbnQgeDEgPSBib3VuZHMueCgpOwpAQCAtMTIzLDEzICsx
MjEsMTMgQEAgSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcihpbnQgdGls
ZSkgY29uc3QKICAgICAgICAgaW50IHkxID0gYm91bmRzLnkoKTsKICAgICAgICAgaW50IHkyID0g
Ym91bmRzLm1heFkoKTsKIAotICAgICAgICBpZiAodGlsZVhJbmRleCh0aWxlKSA+IDApCisgICAg
ICAgIGlmIChpID4gMCkKICAgICAgICAgICAgIHgxLS07Ci0gICAgICAgIGlmICh0aWxlWEluZGV4
KHRpbGUpIDwgKG51bVRpbGVzWCgpIC0gMSkpCisgICAgICAgIGlmIChpIDwgKG51bVRpbGVzWCgp
IC0gMSkpCiAgICAgICAgICAgICB4MisrOwotICAgICAgICBpZiAodGlsZVlJbmRleCh0aWxlKSA+
IDApCisgICAgICAgIGlmIChqID4gMCkKICAgICAgICAgICAgIHkxLS07Ci0gICAgICAgIGlmICh0
aWxlWUluZGV4KHRpbGUpIDwgKG51bVRpbGVzWSgpIC0gMSkpCisgICAgICAgIGlmIChqIDwgKG51
bVRpbGVzWSgpIC0gMSkpCiAgICAgICAgICAgICB5MisrOwogCiAgICAgICAgIGJvdW5kcyA9IElu
dFJlY3QoeDEsIHkxLCB4MiAtIHgxLCB5MiAtIHkxKTsKQEAgLTEzOCwxMCArMTM2LDEwIEBAIElu
dFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50IHRpbGUpIGNvbnN0CiAg
ICAgcmV0dXJuIGJvdW5kczsKIH0KIAotRmxvYXRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHNO
b3JtYWxpemVkKGludCB0aWxlKSBjb25zdAorRmxvYXRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3Vu
ZHNOb3JtYWxpemVkKGludCBpLCBpbnQgaikgY29uc3QKIHsKLSAgICBhc3NlcnRUaWxlKHRpbGUp
OwotICAgIEZsb2F0UmVjdCBib3VuZHModGlsZUJvdW5kcyh0aWxlKSk7CisgICAgYXNzZXJ0VGls
ZShpLCBqKTsKKyAgICBGbG9hdFJlY3QgYm91bmRzKHRpbGVCb3VuZHMoaSwgaikpOwogICAgIGJv
dW5kcy5zY2FsZSgxLjBmIC8gbV90b3RhbFNpemVYLCAxLjBmIC8gbV90b3RhbFNpemVZKTsKICAg
ICByZXR1cm4gYm91bmRzOwogfQpAQCAtMjE2LDM2ICsyMTQsNiBAQCBJbnRSZWN0IFRpbGluZ0Rh
dGE6Om92ZXJsYXBwZWRUaWxlSW5kaWNlcyhjb25zdCBXZWJDb3JlOjpGbG9hdFJlY3QgJnNyY1Jl
Y3QpIGNvbgogICAgIHJldHVybiBvdmVybGFwcGVkVGlsZUluZGljZXMoZW5jbG9zaW5nSW50UmVj
dChzcmNSZWN0KSk7CiB9CiAKLXZvaWQgVGlsaW5nRGF0YTo6aW50ZXJzZWN0RHJhd1F1YWQoY29u
c3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBjb25zdCBGbG9hdFJlY3QmIGRzdFJlY3QsIGludCB0aWxl
LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBGbG9hdFJlY3QqIG5ld1NyYywg
RmxvYXRSZWN0KiBuZXdEc3QpIGNvbnN0Ci17Ci0gICAgLy8gSW50ZXJzZWN0IHdpdGggdGlsZQot
ICAgIEZsb2F0UmVjdCB0aWxlQm91bmRzID0gdGhpcy0+dGlsZUJvdW5kcyh0aWxlKTsKLSAgICBG
bG9hdFJlY3Qgc3JjUmVjdEludGVyc2VjdGVkID0gc3JjUmVjdDsKLSAgICBzcmNSZWN0SW50ZXJz
ZWN0ZWQuaW50ZXJzZWN0KHRpbGVCb3VuZHMpOwotCi0gICAgaWYgKHNyY1JlY3RJbnRlcnNlY3Rl
ZC5pc0VtcHR5KCkpIHsKLSAgICAgICAgKm5ld1NyYyA9ICpuZXdEc3QgPSBGbG9hdFJlY3QoMCwg
MCwgMCwgMCk7Ci0gICAgICAgIHJldHVybjsKLSAgICB9Ci0KLSAgICBmbG9hdCBzcmNSZWN0SW50
ZXJzZWN0ZWROb3JtWCA9IChzcmNSZWN0SW50ZXJzZWN0ZWQueCgpIC0gc3JjUmVjdC54KCkpIC8g
c3JjUmVjdC53aWR0aCgpOwotICAgIGZsb2F0IHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1ZID0gKHNy
Y1JlY3RJbnRlcnNlY3RlZC55KCkgLSBzcmNSZWN0LnkoKSkgLyBzcmNSZWN0LmhlaWdodCgpOwot
ICAgIGZsb2F0IHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1XID0gc3JjUmVjdEludGVyc2VjdGVkLndp
ZHRoKCkgLyBzcmNSZWN0LndpZHRoKCk7Ci0gICAgZmxvYXQgc3JjUmVjdEludGVyc2VjdGVkTm9y
bUggPSBzcmNSZWN0SW50ZXJzZWN0ZWQuaGVpZ2h0KCkgLyBzcmNSZWN0LmhlaWdodCgpOwotCi0g
ICAgKm5ld1NyYyA9IHNyY1JlY3RJbnRlcnNlY3RlZDsKLSAgICBuZXdTcmMtPm1vdmUoCi0gICAg
ICAgIC10aWxlQm91bmRzLngoKSArICgodGlsZVhJbmRleCh0aWxlKSA+IDApID8gbV9ib3JkZXJU
ZXhlbHMgOiAwKSwKLSAgICAgICAgLXRpbGVCb3VuZHMueSgpICsgKCh0aWxlWUluZGV4KHRpbGUp
ID4gMCkgPyBtX2JvcmRlclRleGVscyA6IDApKTsKLQotICAgICpuZXdEc3QgPSBGbG9hdFJlY3Qo
Ci0gICAgICAgIHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1YICogZHN0UmVjdC53aWR0aCgpICsgZHN0
UmVjdC54KCksCi0gICAgICAgIHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1ZICogZHN0UmVjdC5oZWln
aHQoKSArIGRzdFJlY3QueSgpLAotICAgICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtVyAqIGRz
dFJlY3Qud2lkdGgoKSwKLSAgICAgICAgc3JjUmVjdEludGVyc2VjdGVkTm9ybUggKiBkc3RSZWN0
LmhlaWdodCgpKTsKLX0KLQogSW50UG9pbnQgVGlsaW5nRGF0YTo6dGV4dHVyZU9mZnNldChpbnQg
eEluZGV4LCBpbnQgeUluZGV4KSBjb25zdAogewogICAgIGludCBsZWZ0ID0gKCF4SW5kZXggfHwg
bV9udW1UaWxlc1ggPT0gMSkgPyAwIDogbV9ib3JkZXJUZXhlbHM7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5oIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuaAppbmRleCBiYzg2MWVmNjgz
YTMxNzJkNDg4M2U0MGE0NWFmZjM4ODA1YWZmYjUxLi4xNDZkZmUxOWJmZTY2N2Q2YTFhYTE2YjA1
MTI3MGI3NmU2ODM5NjM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvVGlsaW5nRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9UaWxpbmdEYXRhLmgKQEAgLTUwLDE4ICs1MCwxNSBAQCBwdWJsaWM6CiAgICAgdm9p
ZCBzZXRIYXNCb3JkZXJUZXhlbHMoYm9vbCk7CiAgICAgaW50IGJvcmRlclRleGVscygpIGNvbnN0
IHsgcmV0dXJuIG1fYm9yZGVyVGV4ZWxzOyB9CiAKLSAgICBpbnQgbnVtVGlsZXMoKSBjb25zdCB7
IHJldHVybiBudW1UaWxlc1goKSAqIG51bVRpbGVzWSgpOyB9CisgICAgYm9vbCBoYXNFbXB0eUJv
dW5kcygpIGNvbnN0IHsgcmV0dXJuICFudW1UaWxlc1goKSB8fCAhbnVtVGlsZXNZKCk7IH0KICAg
ICBpbnQgbnVtVGlsZXNYKCkgY29uc3QgeyByZXR1cm4gbV9udW1UaWxlc1g7IH0KICAgICBpbnQg
bnVtVGlsZXNZKCkgY29uc3QgeyByZXR1cm4gbV9udW1UaWxlc1k7IH0KLSAgICBpbnQgdGlsZUlu
ZGV4KGludCB4LCBpbnQgeSkgY29uc3QgeyByZXR1cm4geCArIHkgKiBudW1UaWxlc1goKTsgfQot
ICAgIGludCB0aWxlWEluZGV4KGludCB0aWxlKSBjb25zdCB7IGFzc2VydFRpbGUodGlsZSk7IHJl
dHVybiB0aWxlICUgbnVtVGlsZXNYKCk7IH0KLSAgICBpbnQgdGlsZVlJbmRleChpbnQgdGlsZSkg
Y29uc3QgeyBhc3NlcnRUaWxlKHRpbGUpOyByZXR1cm4gdGlsZSAvIG51bVRpbGVzWCgpOyB9CiAg
ICAgaW50IHRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoaW50KSBjb25zdDsKICAgICBpbnQgdGlsZVlJ
bmRleEZyb21TcmNDb29yZChpbnQpIGNvbnN0OwogCi0gICAgSW50UmVjdCB0aWxlQm91bmRzKGlu
dCB0aWxlKSBjb25zdDsKLSAgICBJbnRSZWN0IHRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCB0aWxl
KSBjb25zdDsKLSAgICBGbG9hdFJlY3QgdGlsZUJvdW5kc05vcm1hbGl6ZWQoaW50IHRpbGUpIGNv
bnN0OworICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQsIGludCkgY29uc3Q7CisgICAgSW50UmVj
dCB0aWxlQm91bmRzV2l0aEJvcmRlcihpbnQsIGludCkgY29uc3Q7CisgICAgRmxvYXRSZWN0IHRp
bGVCb3VuZHNOb3JtYWxpemVkKGludCwgaW50KSBjb25zdDsKICAgICBpbnQgdGlsZVBvc2l0aW9u
WChpbnQgeEluZGV4KSBjb25zdDsKICAgICBpbnQgdGlsZVBvc2l0aW9uWShpbnQgeUluZGV4KSBj
b25zdDsKICAgICBpbnQgdGlsZVNpemVYKGludCB4SW5kZXgpIGNvbnN0OwpAQCAtNjksMTYgKzY2
LDEyIEBAIHB1YmxpYzoKICAgICBJbnRSZWN0IG92ZXJsYXBwZWRUaWxlSW5kaWNlcyhjb25zdCBJ
bnRSZWN0JiBzcmNSZWN0KSBjb25zdDsKICAgICBJbnRSZWN0IG92ZXJsYXBwZWRUaWxlSW5kaWNl
cyhjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QpIGNvbnN0OwogCi0gICAgLy8gR2l2ZW4gYSBzZXQg
b2Ygc291cmNlIGFuZCBkZXN0aW5hdGlvbiBjb29yZGluYXRlcyBmb3IgYSBkcmF3aW5nIHF1YWQK
LSAgICAvLyBpbiB0ZXhlbCB1bml0cywgcmV0dXJucyBhZGp1c3RlZCBkYXRhIHRvIHJlbmRlciBq
dXN0IHRoZSBvbmUgdGlsZS4KLSAgICB2b2lkIGludGVyc2VjdERyYXdRdWFkKGNvbnN0IEZsb2F0
UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBpbnQgdGlsZSwgRmxvYXRS
ZWN0KiBuZXdTcmMsIEZsb2F0UmVjdCogbmV3RHN0KSBjb25zdDsKLQogICAgIC8vIERpZmZlcmVu
Y2UgYmV0d2VlbiB0aWxlQm91bmQncyBhbmQgdGlsZUJvdW5kV2l0aEJvcmRlcidzIGxvY2F0aW9u
KCkuCiAgICAgSW50UG9pbnQgdGV4dHVyZU9mZnNldChpbnQgeEluZGV4LCBpbnQgeUluZGV4KSBj
b25zdDsKIAogcHJpdmF0ZToKICAgICBUaWxpbmdEYXRhKCkgOiBtX21heFRleHR1cmVTaXplKDAp
LCBtX3RvdGFsU2l6ZVgoMCksIG1fdG90YWxTaXplWSgwKSB7fQotICAgIHZvaWQgYXNzZXJ0VGls
ZShpbnQgdGlsZSkgY29uc3QgeyBBU1NFUlRfVU5VU0VEKHRpbGUsIHRpbGUgPj0gMCAmJiB0aWxl
IDwgbnVtVGlsZXMoKSk7IH0KKyAgICB2b2lkIGFzc2VydFRpbGUoaW50IGksIGludCBqKSBjb25z
dCB7IEFTU0VSVF9VTlVTRUQoaSwgaSA+PSAwICYmIGkgPCBudW1UaWxlc1goKSk7IEFTU0VSVF9V
TlVTRUQoaiwgaiA+PSAwICYmIGogPCBudW1UaWxlc1koKSk7IH0KICAgICB2b2lkIHJlY29tcHV0
ZU51bVRpbGVzKCk7CiAKICAgICBpbnQgbV9tYXhUZXh0dXJlU2l6ZTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCmlu
ZGV4IDEyOWM5MTU5NGQ0YmRjODMwMDBkM2U3NmY5NDVlMTk5YTU4OWFiMzQuLjQ2MTA2ZTQxODVm
MzY5NjRiYjNiOTk4ZTdhYjUwNjgzZGFmMTliNjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAKKysrIGIvU291cmNlL1dl
YktpdC9jaHJvbWl1bS90ZXN0cy9UaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcApAQCAtMTA4Miw2
ICsxMDgyLDE5IEBAIFRFU1QoVGlsZWRMYXllckNocm9taXVtVGVzdCwgcmVzaXplVG9TbWFsbGVy
KQogICAgIGxheWVyLT5pbnZhbGlkYXRlUmVjdChJbnRSZWN0KDAsIDAsIDIwMCwgMjAwKSk7CiB9
CiAKK1RFU1QoVGlsZWRMYXllckNocm9taXVtVGVzdCwgaHVnZUxheWVyVXBkYXRlQ3Jhc2gpCit7
CisgICAgT3duUHRyPFRleHR1cmVNYW5hZ2VyPiB0ZXh0dXJlTWFuYWdlciA9IFRleHR1cmVNYW5h
Z2VyOjpjcmVhdGUoNjAqMTAyNCoxMDI0LCA2MCoxMDI0KjEwMjQsIDEwMjQpOworICAgIFJlZlB0
cjxGYWtlVGlsZWRMYXllckNocm9taXVtPiBsYXllciA9IGFkb3B0UmVmKG5ldyBGYWtlVGlsZWRM
YXllckNocm9taXVtKHRleHR1cmVNYW5hZ2VyLmdldCgpKSk7CisKKyAgICBpbnQgc2l6ZSA9IDEg
PDwgMzA7CisgICAgbGF5ZXItPnNldEJvdW5kcyhJbnRTaXplKHNpemUsIHNpemUpKTsKKyAgICBs
YXllci0+aW52YWxpZGF0ZVJlY3QoSW50UmVjdCgwLCAwLCBzaXplLCBzaXplKSk7CisKKyAgICAv
LyBFbnN1cmUgbm8gY3Jhc2ggZm9yIGJvdW5kcyB3aGVyZSBzaXplICogc2l6ZSB3b3VsZCBvdmVy
ZmxvdyBhbiBpbnQuCisgICAgbGF5ZXItPnByZXBhcmVUb1VwZGF0ZShJbnRSZWN0KDAsIDAsIDcw
MCwgNzAwKSwgMCk7Cit9CisKIFRFU1QoVGlsZWRMYXllckNocm9taXVtVGVzdCwgcGFydGlhbFVw
ZGF0ZXMpCiB7CiAgICAgQ0NTZXR0aW5ncyBzZXR0aW5nczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsaW5nRGF0YVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS90ZXN0cy9UaWxpbmdEYXRhVGVzdC5jcHAKaW5kZXggYzI5NzQzZjg2YWQ0NWI5MTYx
ZDYwNTIxOGZhZWFlZWNjMzFjNzg0Mi4uZjAxZTI1Y2U0ZGJhMDFmMWJjYTkwOGQ4OWIwZTlkNTkw
NjEwYjliOCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9UaWxpbmdE
YXRhVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9UaWxpbmdEYXRh
VGVzdC5jcHAKQEAgLTMxLDYgKzMxLDcgQEAKICNpbmNsdWRlICJjb25maWcuaCIKIAogI2luY2x1
ZGUgIlRpbGluZ0RhdGEuaCIKKyNpbmNsdWRlIDx3dGYvQXNzZXJ0aW9ucy5oPgogCiAjaW5jbHVk
ZSA8Z3Rlc3QvZ3Rlc3QuaD4KIApAQCAtMzgsMzg1ICszOSw0MDYgQEAgdXNpbmcgbmFtZXNwYWNl
IFdlYkNvcmU7CiAKIG5hbWVzcGFjZSB7CiAKK2NsYXNzIFRlc3RUaWxpbmcgOiBwdWJsaWMgVGls
aW5nRGF0YSB7CitwdWJsaWM6CisgICAgVGVzdFRpbGluZyhpbnQgbWF4VGV4dHVyZVNpemUsIGlu
dCB0b3RhbFNpemVYLCBpbnQgdG90YWxTaXplWSwgYm9vbCBoYXNCb3JkZXJUZXhlbHMpCisgICAg
ICAgIDogVGlsaW5nRGF0YShtYXhUZXh0dXJlU2l6ZSwgdG90YWxTaXplWCwgdG90YWxTaXplWSwg
aGFzQm9yZGVyVGV4ZWxzKQorICAgIHsKKyAgICB9CisKKyAgICAvLyBUaGlzIGZ1bmN0aW9uIG9u
bHkgYXZhaWxhYmxlIGZvciB0ZXN0aW5nIGJlY2F1c2Ugb2YgcG90ZW50aWFsIG92ZXJmbG93Lgor
ICAgIGludCBudW1UaWxlcygpIGNvbnN0CisgICAgeworICAgICAgICBpbnQgbnVtVGlsZXMgPSBu
dW1UaWxlc1goKSAqIG51bVRpbGVzWSgpOworCisgICAgICAgIC8vIEFzc2VydCBubyBvdmVyZmxv
dy4KKyAgICAgICAgQVNTRVJUKG51bVRpbGVzID49IDApOworICAgICAgICBpZiAobnVtVGlsZXMg
PiAwKQorICAgICAgICAgICAgQVNTRVJUKG51bVRpbGVzIC8gbnVtVGlsZXNYKCkgPT0gbnVtVGls
ZXNZKCkpOworCisgICAgICAgIHJldHVybiBudW1UaWxlczsKKyAgICB9Cit9OworCiBURVNUKFRp
bGluZ0RhdGFUZXN0LCBudW1UaWxlc19Ob1RpbGluZykKIHsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgxNiwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMTYsIDE1LCAxNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDEsIFRpbGluZ0RhdGEoMTYsIDE2LCAxNiwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDEsIFRpbGluZ0RhdGEoMTYsICAxLCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE1LCAxNSwgMTUsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDE2LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgMTUsIDE1LCB0cnVlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgMTYsIDE2LCB0cnVlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgIDEsIDE2LCBmYWxzZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMTUsIDE1LCAxNSwgdHJ1ZSku
bnVtVGlsZXMoKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIG51bVRpbGVzX1RpbGluZ05v
Qm9yZGVycykKIHsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMCwgIDAsIGZhbHNl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgNCwgIDAsIGZh
bHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMCwgIDQs
IGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSg0LCAgNCwg
IDAsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSg0LCAg
MCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgt
OCwgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgtMSwgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSgwLCAgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDEsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDEsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDEsICAyLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSgxLCBUaWxpbmdEYXRhKDIsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAzLCAgMywgZmFsc2UpLm51bVRpbGVz
KCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDEsICA0LCBmYWxzZSkubnVt
VGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDIsICA0LCBmYWxzZSku
bnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDMsICA0LCBmYWxz
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDQsICA0LCBm
YWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNCwgIDUsICA0
LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNCwgIDYs
ICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNCwg
IDcsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
NCwgIDgsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0Rh
dGEoNCwgIDksICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoNCwgMTAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRp
bGluZ0RhdGEoNCwgMTEsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSg1LCAgMSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSg1LCAgMiwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMywgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNCwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNiwgIDUsIGZhbHNlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNywgIDUsIGZhbHNlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgOCwgIDUsIGZhbHNlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgOSwgIDUsIGZhbHNlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAxMCwgIDUsIGZhbHNl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMSwgIDUsIGZh
bHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE2LCAxNiwg
MTYsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxNywg
MTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEo
MTUsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdE
YXRhKDgsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg2LCBUaWxp
bmdEYXRhKDgsIDE3LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDAsICAwLCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDAsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgwLCBUZXN0VGlsaW5nKDAsICAwLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDQsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQsICAwLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC04LCAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC0xLCAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVz
KCkpOworCisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMSwgIDEsICAxLCBmYWxzZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMSwgIDEsICAyLCBmYWxzZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMSwgIDIsICAxLCBmYWxz
ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDEsICAxLCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDEsICAy
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDIs
ICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwg
IDIsICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MywgIDMsICAzLCBmYWxzZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZyg0LCAgMSwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZyg0LCAgMiwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwg
VGVzdFRpbGluZyg0LCAgMywgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZyg0LCAgNCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1Rf
RVEoMiwgVGVzdFRpbGluZyg0LCAgNSwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNiwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNywgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgOCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAgOSwgIDQsIGZhbHNlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAxMCwgIDQsIGZhbHNlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAxMSwgIDQsIGZhbHNlKS5udW1U
aWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAxLCAgNSwgZmFsc2Up
Lm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAyLCAgNSwgZmFs
c2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAzLCAgNSwg
ZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA0LCAg
NSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA1
LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUs
ICA2LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5n
KDUsICA3LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGls
aW5nKDUsICA4LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0
VGlsaW5nKDUsICA5LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBU
ZXN0VGlsaW5nKDUsIDEwLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDUsIDExLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworCisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoMTYsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgxLCBUZXN0VGlsaW5nKDE3LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygxNSwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoOCwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMo
KSk7CisgICAgRVhQRUNUX0VRKDYsIFRlc3RUaWxpbmcoOCwgMTcsIDE2LCBmYWxzZSkubnVtVGls
ZXMoKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIG51bVRpbGVzX1RpbGluZ1dpdGhCb3Jk
ZXJzKQogewotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAwLCAgMCwgdHJ1ZSkubnVt
VGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMCwgIDQsICAwLCB0cnVlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMCwgIDQsIHRydWUp
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDQsICA0LCAgMCwgdHJ1
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoNCwgIDAsICA0LCB0
cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgtOCwgMSwgIDEs
IHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKC0xLCAxLCAg
MSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMCwgIDEs
ICAxLCB0cnVlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDEs
ICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEo
MSwgIDEsICAyLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgxLCAgMiwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdE
YXRhKDIsICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGlu
Z0RhdGEoMiwgIDEsICAyLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgyLCAgMiwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDIsICAyLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSgzLCAgMSwgIDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgxLCBUaWxpbmdEYXRhKDMsICAyLCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDEsIFRpbGluZ0RhdGEoMywgIDMsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAgNCwgIDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICA1LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgIDYsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSgzLCAgNywgIDMsIHRydWUpLm51bVRpbGVzKCkpOwot
Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDEsICA0LCB0cnVlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg0LCAgMiwgIDQsIHRydWUpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDQsICAzLCAgNCwgdHJ1ZSkubnVtVGls
ZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDQsICA0LCB0cnVlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgNSwgIDQsIHRydWUpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDQsICA2LCAgNCwgdHJ1ZSku
bnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNCwgIDcsICA0LCB0cnVl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAgOCwgIDQsIHRy
dWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDQsICA5LCAgNCwg
dHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNCwgMTAsICA0
LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg0LCAxMSwg
IDQsIHRydWUpLm51bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwg
IDEsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1
LCAgMiwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRh
KDUsICAzLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoNSwgIDQsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSg1LCAgNSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxp
bmdEYXRhKDUsICA2LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoNSwgIDcsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwg
VGlsaW5nRGF0YSg1LCAgOCwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgz
LCBUaWxpbmdEYXRhKDUsICA5LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDMsIFRpbGluZ0RhdGEoNSwgMTAsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1Rf
RVEoMywgVGlsaW5nRGF0YSg1LCAxMSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDAsICAwLCAgMCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQ
RUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDQsICAwLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgMCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQsICA0LCAgMCwgdHJ1ZSkubnVtVGlsZXMoKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoNCwgIDAsICA0LCB0cnVlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygtOCwgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC0xLCAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMo
KSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDEsICAxLCB0cnVlKS5udW1UaWxl
cygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDEsICAxLCAgMSwgdHJ1ZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgIDEsICAyLCB0cnVlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygxLCAgMiwgIDEsIHRydWUp
Lm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAxLCAgMSwgdHJ1
ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDEsICAyLCB0
cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMiwgIDEs
IHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAyLCAg
MiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAg
MSwgIDMsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
ICAyLCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MywgIDMsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGlu
ZygzLCAgNCwgIDMsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDMsICA1LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RU
aWxpbmcoMywgIDYsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVz
dFRpbGluZygzLCAgNywgIDMsIHRydWUpLm51bVRpbGVzKCkpOworCisgICAgRVhQRUNUX0VRKDEs
IFRlc3RUaWxpbmcoNCwgIDEsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZyg0LCAgMiwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDQsICAzLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoNCwgIDQsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNSwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgyLCBUZXN0VGlsaW5nKDQsICA2LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAg
RVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNCwgIDcsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAgOCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDQsICA5LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNCwgMTAsICA0LCB0cnVlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg0LCAxMSwgIDQsIHRydWUpLm51bVRpbGVz
KCkpOworCisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDEsICA1LCB0cnVlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgMiwgIDUsIHRydWUpLm51
bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAzLCAgNSwgdHJ1ZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDQsICA1LCB0cnVl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIHRy
dWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUsICA2LCAgNSwg
dHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDcsICA1
LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgOCwg
IDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsICA5
LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwg
MTAsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1
LCAxMSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwogfQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCB0
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKQogewotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEw
LCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNCkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoNSkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAx
MCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOwotICAgIEVYUEVDVF9FUSgyLCBU
aWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNykpOwot
ICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoOCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
ZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKLSAg
ICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDExKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAs
IHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAg
RVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUp
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRh
KDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7Ci0gICAgRVhQRUNU
X0VRKDQsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KDUpKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoNikpOwotICAgIEVYUEVDVF9FUSg2LCBUaWxpbmdEYXRhKDMsIDEw
LCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7Ci0gICAgRVhQRUNUX0VRKDcs
IFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDgpKTsK
LSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoOSkpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
dHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMSkpOwotCi0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgMSwgMSwgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAz
LCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDQsIDMsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0
YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgzKSk7Ci0KLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgxLCAxLCAxLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCB0cnVlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAy
LCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBF
WFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgw
LCBUaWxpbmdEYXRhKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwot
ICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDQsIDMsIHRydWUp
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
NCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoNSkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEw
LCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOworICAgIEVYUEVDVF9FUSgy
LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNykp
OworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoOCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOworICAgIEVYUEVDVF9FUSgzLCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsK
KyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDExKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwg
MTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRy
dWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7CisgICAgRVhQ
RUNUX0VRKDQsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDUpKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOworICAgIEVYUEVDVF9FUSg2LCBUZXN0VGlsaW5nKDMs
IDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7CisgICAgRVhQRUNUX0VR
KDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDgp
KTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoOSkpOworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOworICAgIEVYUEVDVF9FUSg3LCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMSkpOwor
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgMSwgMSwgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRp
bGluZygyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQ
RUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAz
LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7CisKKyAgICBFWFBFQ1RfRVEo
MCwgVGVzdFRpbGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDQsIDMsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgzKSk7CisKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygxLCAxLCAxLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCB0cnVlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAy
LCAyLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAg
ICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9F
USgwLCBUZXN0VGlsaW5nKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkp
OworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDQsIDMsIHRy
dWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwogfQogVEVTVChUaWxpbmdEYXRhVGVzdCwg
dGlsZVlJbmRleEZyb21TcmNDb29yZCkKIHsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAx
MCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDQp
KTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDUpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwg
MTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKLSAgICBFWFBFQ1RfRVEoMiwg
VGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDcpKTsK
LSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDgpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAs
IGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGls
aW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEwKSk7Ci0g
ICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgxMSkpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEw
LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAg
IEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0
YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkpOwotICAgIEVYUEVD
VF9FUSg0LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29y
ZCg1KSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKLSAgICBFWFBFQ1RfRVEoNiwgVGlsaW5nRGF0YSgzLCAx
MCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOwotICAgIEVYUEVDVF9FUSg3
LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg4KSk7
Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDkpKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAs
IHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKLSAgICBFWFBFQ1RfRVEoNywgVGls
aW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKLQot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEsIDEsIDEsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0Rh
dGEoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVD
VF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCBmYWxzZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywg
MywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotCi0gICAgRVhQRUNUX0VRKDAs
IFRpbGluZ0RhdGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDQsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCA0LCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMykpOwotCi0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgMSwgMSwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29y
ZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgdHJ1ZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwg
MiwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAg
RVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsK
LSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAzLCA0LCB0cnVl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygz
LCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDQpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAx
MCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKKyAgICBFWFBFQ1RfRVEo
MiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDcp
KTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDgpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwg
MTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKKyAgICBFWFBFQ1RfRVEoMywg
VGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEwKSk7
CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgxMSkpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAs
IDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0
cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRp
bGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkpOworICAgIEVY
UEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCg1KSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKKyAgICBFWFBFQ1RfRVEoNiwgVGVzdFRpbGluZygz
LCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOworICAgIEVYUEVDVF9F
USg3LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg4
KSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDkpKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwg
MTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKKyAgICBFWFBFQ1RfRVEoNywg
VGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsK
KworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDEsIDEsIDEsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RU
aWxpbmcoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCBmYWxzZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywg
MywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOworCisgICAgRVhQRUNUX0VR
KDAsIFRlc3RUaWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDQsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCA0LCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RU
aWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMykpOworCisgICAg
RVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgMSwgMSwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgdHJ1ZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwg
MiwgMiwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMCwgVGVzdFRpbGluZygzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEp
KTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAzLCA0LCB0
cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKIH0KIAogVEVTVChUaWxpbmdEYXRhVGVz
dCwgdGlsZVNpemVYKQogewotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA1LCAgNSwg
ZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgIDUs
ICA1LCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEo
NSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSg0LCBU
aWxpbmdEYXRhKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEo
MiwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0KLSAgICBFWFBF
Q1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7
Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVgo
MCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNp
emVYKDEpKTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgZmFsc2Up
LnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCBm
YWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAxMCwg
MTAsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwg
MTAsIDEwLCB0cnVlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRh
KDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKLQotICAgIEVYUEVDVF9FUSg0LCBUaWxp
bmdEYXRhKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNUX0VR
KDUsIFRlc3RUaWxpbmcoNSwgIDUsICA1LCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBF
Q1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIHRydWUpLnRpbGVTaXplWCgwKSk7CisKKyAg
ICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVgoMCkp
OworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVTaXpl
WCgxKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDYsICA2LCB0cnVlKS50aWxl
U2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgdHJ1ZSku
dGlsZVNpemVYKDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsICA4LCAgOCwg
ZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgIDgs
ICA4LCBmYWxzZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1
LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxp
bmcoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVgoMSkpOworCisgICAgRVhQRUNUX0VRKDUsIFRl
c3RUaWxpbmcoNSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEo
NSwgVGVzdFRpbGluZyg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVD
VF9FUSg0LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKyAgICBF
WFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWCgxKSk7Cisg
ICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVgoMikp
OworCisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgMTEsIDExLCB0cnVlKS50aWxlU2l6
ZVgoMikpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDEyLCAxMiwgdHJ1ZSkudGls
ZVNpemVYKDIpKTsKIH0KIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWSkKIHsKLSAgICBF
WFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwot
ICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA1LCAgNSwgdHJ1ZSkudGlsZVNpemVZKDAp
KTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVT
aXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDYsICA2LCBmYWxzZSku
dGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIHRy
dWUpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNSwgIDYsICA2
LCB0cnVlKS50aWxlU2l6ZVkoMSkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwg
IDgsICA4LCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0
YSg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxp
bmdEYXRhKDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoNCwg
VGlsaW5nRGF0YSg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0KLSAgICBFWFBFQ1Rf
RVEoNSwgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVY
UEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgZmFsc2UpLnRpbGVTaXplWSgxKSk7Ci0g
ICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMCkp
OwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZ
KDEpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVT
aXplWSgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAxMSwgMTEsIHRydWUp
LnRpbGVTaXplWSgyKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgMTIsIDEyLCB0
cnVlKS50aWxlU2l6ZVkoMikpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsICA1LCAg
NSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwg
IDUsICA1LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworCisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxp
bmcoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZyg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSg0
LCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMiwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7CisKKyAgICBF
WFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwor
ICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWSgx
KSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6
ZVkoMCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgdHJ1ZSkudGls
ZVNpemVZKDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgZmFs
c2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgMTAsIDEw
LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1LCAx
MCwgMTAsIHRydWUpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmco
NSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKKworICAgIEVYUEVDVF9FUSg0LCBU
ZXN0VGlsaW5nKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKKyAgICBFWFBFQ1RfRVEo
MywgVGVzdFRpbGluZyg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWSgyKSk7CiB9CiAKIFRFU1Qo
VGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWF9hbmRfdGlsZVBvc2l0aW9uWCkKIHsKICAgICAvLyBT
aW5nbGUgdGlsZSBjYXNlczoKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxLCAgIDEs
IGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEs
ICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdE
YXRhKDMsIDEsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMywgMSwgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNU
X0VRKDMsIFRpbGluZ0RhdGEoMywgMywgICAxLCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBF
WFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAzLCAxMDAsIGZhbHNlKS50aWxlU2l6
ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDEwMCwgZmFsc2UpLnRp
bGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEsICAgMSwg
dHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxLCAg
IDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRh
KDMsIDEsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSgzLCAxLCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgz
LCBUaWxpbmdEYXRhKDMsIDMsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDMsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsK
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAxMDAsIHRydWUpLnRpbGVQb3NpdGlv
blgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEsICAgMSwgZmFsc2UpLnRp
bGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMSwgICAxLCBmYWxz
ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMSwg
MTAwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygz
LCAxLCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZygzLCAzLCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDMsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDMsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9u
WCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMSwgICAxLCB0cnVlKS50aWxl
U2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEsICAgMSwgdHJ1ZSku
dGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMSwgMTAw
LCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEs
IDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoMywgMywgICAxLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0
VGlsaW5nKDMsIDMsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VR
KDMsIFRlc3RUaWxpbmcoMywgMywgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CiAK
ICAgICAvLyBNdWx0aXBsZSB0aWxlczoKICAgICAvLyBubyBib3JkZXIKICAgICAvLyBwb3NpdGlv
bnMgMCwgMwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgZmFsc2UpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgZmFsc2Up
LnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgICAxLCBm
YWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA2LCAg
IDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0
YSgzLCA2LCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDEpKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCA2LCAxMDAsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7
Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCBmYWxzZSkudGlsZVBvc2l0
aW9uWCgxKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgICAxLCBmYWxzZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgICAxLCBmYWxz
ZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAgIDEs
IGZhbHNlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDYs
ICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMSkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNU
X0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCBmYWxzZSkudGlsZVNpemVYKDEpKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA2LCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAxMDAsIGZhbHNlKS50aWxlUG9z
aXRpb25YKDEpKTsKIAogICAgIC8vIE11bHRpcGxlIHRpbGVzOgogICAgIC8vIHdpdGggYm9yZGVy
CiAgICAgLy8gcG9zaXRpb25zIDAsIDIsIDMsIDQKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0
YSgzLCA2LCAgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdE
YXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMikpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDMpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwot
ICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9u
WCgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxl
UG9zaXRpb25YKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRy
dWUpLnRpbGVQb3NpdGlvblgoMykpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYs
IDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgz
LCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMikpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxp
bmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDMpKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgxKSk7Ci0g
ICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25Y
KDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVQ
b3NpdGlvblgoMykpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1
ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0
cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDYsICAg
MSwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCA2
LCAgIDEsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmco
MywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDIs
IFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsKKyAgICBFWFBF
Q1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMikpOwor
ICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9u
WCgzKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50aWxl
U2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSku
dGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRy
dWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgMTAw
LCB0cnVlKS50aWxlU2l6ZVgoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDYs
IDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxp
bmcoMywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsKKyAgICBFWFBFQ1RfRVEoMywg
VGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMikpOworICAgIEVYUEVD
VF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgzKSk7CiB9
CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWV9hbmRfdGlsZVBvc2l0aW9uWSkKIHsK
ICAgICAvLyBTaW5nbGUgdGlsZSBjYXNlczoKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgz
LCAgIDEsIDEsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdE
YXRhKDMsICAgMSwgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDMsIDEwMCwgMSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgICAxLCAzLCBmYWxzZSkudGlsZVNpemVZKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDMsIGZhbHNlKS50aWxlUG9z
aXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMDAsIDMsIGZhbHNl
KS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwMCwgMywg
ZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMs
ICAgMSwgMSwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCAgIDEsIDEsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDMsIDEwMCwgMSwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgzLCAxMDAsIDEsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVY
UEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICAgMSwgMywgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDMsIHRydWUpLnRpbGVQb3NpdGlvblko
MCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwMCwgMywgdHJ1ZSkudGlsZVNp
emVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDMsIHRydWUpLnRp
bGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsICAgMSwgMSwg
ZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgICAx
LCAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMywgMTAwLCAxLCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAxMDAsIDEsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDMsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwgMywgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkp
OworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwMCwgMywgZmFsc2UpLnRpbGVTaXpl
WSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAwLCAzLCBmYWxzZSkudGls
ZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgICAxLCAxLCB0
cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwg
MSwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MywgMTAwLCAxLCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDEwMCwgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDMs
IFRlc3RUaWxpbmcoMywgICAxLCAzLCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9F
USgwLCBUZXN0VGlsaW5nKDMsICAgMSwgMywgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAg
RVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAwLCAzLCB0cnVlKS50aWxlU2l6ZVkoMCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwMCwgMywgdHJ1ZSkudGlsZVBvc2l0aW9u
WSgwKSk7CiAKICAgICAvLyBNdWx0aXBsZSB0aWxlczoKICAgICAvLyBubyBib3JkZXIKICAgICAv
LyBwb3NpdGlvbnMgMCwgMwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwg
ZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICAgMSwg
NiwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywg
ICAxLCA2LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDEpKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVTaXplWSgxKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCBmYWxzZSkudGlsZVBvc2l0
aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCBmYWxzZSku
dGlsZVBvc2l0aW9uWSgxKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgICAxLCA2
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgICAx
LCA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygz
LCAgIDEsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMSkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Cisg
ICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCBmYWxzZSkudGlsZVNpemVZKDEp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDYsIGZhbHNlKS50aWxlUG9z
aXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMDAsIDYsIGZhbHNl
KS50aWxlUG9zaXRpb25ZKDEpKTsKIAogICAgIC8vIE11bHRpcGxlIHRpbGVzOgogICAgIC8vIHdp
dGggYm9yZGVyCiAgICAgLy8gcG9zaXRpb25zIDAsIDIsIDMsIDQKLSAgICBFWFBFQ1RfRVEoNCwg
VGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMikpOwotICAg
IEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDMpKTsK
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlv
blkoMCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGls
ZVBvc2l0aW9uWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0
cnVlKS50aWxlUG9zaXRpb25ZKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCAg
IDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMykpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdE
YXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMikpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDMpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwot
ICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9u
WSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxl
UG9zaXRpb25ZKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRy
dWUpLnRpbGVQb3NpdGlvblkoMykpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsICAg
MSwgNiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywg
ICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5n
KDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRl
c3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQ
RUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDEpKTsK
KyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlv
blkoMikpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGls
ZVBvc2l0aW9uWSgzKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0
cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwMCwg
NiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAx
MDAsIDYsIHRydWUpLnRpbGVTaXplWSgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmco
MywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDIs
IFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDEpKTsKKyAgICBFWFBF
Q1RfRVEoMywgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMikpOwor
ICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9u
WSgzKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldFRvdGFsU2l6ZSkKIHsKLSAgICBU
aWxpbmdEYXRhIGRhdGEoNSwgNSwgNSwgZmFsc2UpOworICAgIFRlc3RUaWxpbmcgZGF0YSg1LCA1
LCA1LCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDUsIGRhdGEudG90YWxTaXplWCgpKTsKICAgICBF
WFBFQ1RfRVEoNSwgZGF0YS50b3RhbFNpemVZKCkpOwogICAgIEVYUEVDVF9FUSgxLCBkYXRhLm51
bVRpbGVzWCgpKTsKQEAgLTQ0Niw3ICs0NjgsNyBAQCBURVNUKFRpbGluZ0RhdGFUZXN0LCBzZXRU
b3RhbFNpemUpCiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVTaXplTm9Cb3Jk
ZXJzKQogewotICAgIFRpbGluZ0RhdGEgZGF0YSg4LCAxNiwgMzIsIGZhbHNlKTsKKyAgICBUZXN0
VGlsaW5nIGRhdGEoOCwgMTYsIDMyLCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDIsIGRhdGEubnVt
VGlsZXNYKCkpOwogICAgIEVYUEVDVF9FUSg0LCBkYXRhLm51bVRpbGVzWSgpKTsKIApAQCAtNDY4
LDcgKzQ5MCw3IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVTaXplTm9Cb3Jk
ZXJzKQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCBzZXRNYXhUZXh0dXJlU2l6ZUJvcmRlcnMpCiB7
Ci0gICAgVGlsaW5nRGF0YSBkYXRhKDgsIDE2LCAzMiwgdHJ1ZSk7CisgICAgVGVzdFRpbGluZyBk
YXRhKDgsIDE2LCAzMiwgdHJ1ZSk7CiAgICAgRVhQRUNUX0VRKDMsIGRhdGEubnVtVGlsZXNYKCkp
OwogICAgIEVYUEVDVF9FUSg1LCBkYXRhLm51bVRpbGVzWSgpKTsKIApAQCAtNDkxLDggKzUxMyw4
IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVTaXplQm9yZGVycykKIFRFU1Qo
VGlsaW5nRGF0YVRlc3QsIGFzc2lnbm1lbnQpCiB7CiAgICAgewotICAgICAgICBUaWxpbmdEYXRh
IHNvdXJjZSg4LCAxNiwgMzIsIHRydWUpOwotICAgICAgICBUaWxpbmdEYXRhIGRlc3QgPSBzb3Vy
Y2U7CisgICAgICAgIFRlc3RUaWxpbmcgc291cmNlKDgsIDE2LCAzMiwgdHJ1ZSk7CisgICAgICAg
IFRlc3RUaWxpbmcgZGVzdCA9IHNvdXJjZTsKICAgICAgICAgRVhQRUNUX0VRKHNvdXJjZS5ib3Jk
ZXJUZXhlbHMoKSwgZGVzdC5ib3JkZXJUZXhlbHMoKSk7CiAgICAgICAgIEVYUEVDVF9FUShzb3Vy
Y2UubWF4VGV4dHVyZVNpemUoKSwgZGVzdC5tYXhUZXh0dXJlU2l6ZSgpKTsKICAgICAgICAgRVhQ
RUNUX0VRKHNvdXJjZS5udW1UaWxlc1goKSwgZGVzdC5udW1UaWxlc1goKSk7CkBAIC01MDEsOCAr
NTIzLDggQEAgVEVTVChUaWxpbmdEYXRhVGVzdCwgYXNzaWdubWVudCkKICAgICAgICAgRVhQRUNU
X0VRKHNvdXJjZS50b3RhbFNpemVZKCksIGRlc3QudG90YWxTaXplWSgpKTsKICAgICB9CiAgICAg
ewotICAgICAgICBUaWxpbmdEYXRhIHNvdXJjZSgzLCA2LCAxMDAsIGZhbHNlKTsKLSAgICAgICAg
VGlsaW5nRGF0YSBkZXN0KHNvdXJjZSk7CisgICAgICAgIFRlc3RUaWxpbmcgc291cmNlKDMsIDYs
IDEwMCwgZmFsc2UpOworICAgICAgICBUZXN0VGlsaW5nIGRlc3Qoc291cmNlKTsKICAgICAgICAg
RVhQRUNUX0VRKHNvdXJjZS5ib3JkZXJUZXhlbHMoKSwgZGVzdC5ib3JkZXJUZXhlbHMoKSk7CiAg
ICAgICAgIEVYUEVDVF9FUShzb3VyY2UubWF4VGV4dHVyZVNpemUoKSwgZGVzdC5tYXhUZXh0dXJl
U2l6ZSgpKTsKICAgICAgICAgRVhQRUNUX0VRKHNvdXJjZS5udW1UaWxlc1goKSwgZGVzdC5udW1U
aWxlc1goKSk7CkBAIC01MTQsNyArNTM2LDcgQEAgVEVTVChUaWxpbmdEYXRhVGVzdCwgYXNzaWdu
bWVudCkKIAogVEVTVChUaWxpbmdEYXRhVGVzdCwgc2V0Qm9yZGVyVGV4ZWxzKQogewotICAgIFRp
bGluZ0RhdGEgZGF0YSg4LCAxNiwgMzIsIGZhbHNlKTsKKyAgICBUZXN0VGlsaW5nIGRhdGEoOCwg
MTYsIDMyLCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDIsIGRhdGEubnVtVGlsZXNYKCkpOwogICAg
IEVYUEVDVF9FUSg0LCBkYXRhLm51bVRpbGVzWSgpKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134360</attachid>
            <date>2012-03-28 12:01:18 -0700</date>
            <delta_ts>2012-03-28 16:15:32 -0700</delta_ts>
            <desc>Revert prepainting change</desc>
            <filename>bug-82486-20120328120117.patch</filename>
            <type>text/plain</type>
            <size>63115</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDNmODdjYzYwNDNjZWI1
N2Q3MzJlNzA1N2MwNDIyYmRlMjhkOWRlMS4uZTY2NzVmOTVmNmEzOGMyYTE5ODBmZTYxNWYyODBi
Y2E0Y2IyZjQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTAzLTI4ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
dGlsZWQgbGF5ZXIgYXNzZXJ0IGZvciBodWdlIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0ODYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBUaWxlZExheWVyQ2hyb21pdW1UZXN0Lmh1
Z2VMYXllclVwZGF0ZUNyYXNoCisKKyAgICAgICAgVGlsaW5nRGF0YTo6bnVtVGlsZXMoKSBpcyBj
YWxjdWxhdGVkIGFzIHRoZSBwcm9kdWN0IG9mIHR3byBpbnRzIGFuZCBzbworICAgICAgICBjYW4g
cG90ZW50aWFsbHkgb3ZlcmZsb3csIGNhdXNpbmcgbnVtVGlsZXMoKSB0byBiZSBpbmNvcnJlY3Qu
IFRvIGF2b2lkCisgICAgICAgIGNhbGxpbmcgY29kZSBhY2NpZGVudGFsbHkgZmFsbGluZyBpbnRv
IHRoaXMgdHJhcCwgcmVtb3ZlIHRoaXMgZnVuY3Rpb24KKyAgICAgICAgYW5kIGFsbCBjb2RlIHRo
YXQgdXNlcyB0aWxlIGluZGV4IGZyb20gVGlsaW5nRGF0YS4gIFRoaXMgcmVxdWlyZXMKKyAgICAg
ICAgZml4aW5nIHVwIGEgYnVuY2ggb2YgY2FsbGVycyBvZiBUaWxpbmdEYXRhIGFuZCBDQ0xheWVy
VGlsaW5nRGF0YS4KKworICAgICAgICBBZGRpdGlvbmFsbHksIFRpbGluZ0RhdGE6Om51bVRpbGVz
KCkgaGFzIGxvbmcgYmVlbiBhIGNvbmZ1c2luZworICAgICAgICBmdW5jdGlvbiBuYW1lIGluIHNv
bWUgY29udGV4dHMsIHNvIHJlbmFtZSB0byBib29sIGhhc0VtcHR5Qm91bmRzKCkuCisKKyAgICAg
ICAgQWxzbywgcmVtb3ZlIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdRdWFkIGJlY2F1c2UgdGhl
cmUgYXJlIG5vCisgICAgICAgIGNsaWVudHMgb2YgdGhhdCBmdW5jdGlvbi4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnJlc2VydmVUZXh0dXJlcyk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZUlkbGUpOgorICAg
ICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVtOjpuZWVkc0lkbGVQYWludCk6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmlkbGVQYWludFJlY3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjp0aWxlUmVjdCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjpoYXNFbXB0eUJvdW5kcyk6CisgICAg
ICAgIChXZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6aXNFbXB0eSk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlOjpj
cmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZTo6dXBkYXRlU3ViUmVjdCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdE
YXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdEYXRh
Ojp0aWxlQm91bmRzTm9ybWFsaXplZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L1RpbGluZ0RhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGluZ0RhdGE6Omhhc0VtcHR5Qm91
bmRzKToKKyAgICAgICAgKFRpbGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGlsaW5nRGF0
YTo6YXNzZXJ0VGlsZSk6CisKIDIwMTItMDMtMjggIEFuZHJleSBLb3N5YWtvdiAgPGNhc2VxQGNo
cm9taXVtLm9yZz4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBvbmx5IHVwZGF0ZSBUaW1lbGlu
ZSBvdmVydmlldyB3aGVuIHJlYWxseSBuZWVkZWQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5k
ZXggNWYwYWNiYzk0YTViODQwOTBiYmQ4Mjc3ZTgwYzI2NjVhOGI2ZTEwOC4uNDlmYjdkZjE5NzU1
ZDYxNzYzNTQyMDJkYTUxZmViNmU1N2I0MWUwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwyNCBAQAorMjAxMi0wMy0yOCAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29n
bGUuY29tPgorCisgICAgICAgIFtjaHJvbWl1bV0gRml4IHRpbGVkIGxheWVyIGFzc2VydCBmb3Ig
aHVnZSBsYXllcnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTgyNDg2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgQWRkIHRlc3QgZm9yIHVwZGF0aW5nIGEgaHVnZSBsYXllciB0aGF0IHdvdWxkIGFzc2VydCBw
cmlvciB0byB0aGlzCisgICAgICAgIGNvZGUuIEZpeCB1cCBUaWxpbmdEYXRhIHRlc3RzIHRvIHVz
ZSBhIHRlc3RpbmcgY2xhc3MgdGhhdCBwcm92aWRlcyBhCisgICAgICAgIHNhZmUgdmVyc2lvbiBv
ZiBudW1UaWxlcygpLgorCisgICAgICAgICogdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5j
cHA6CisgICAgICAgIChXVEY6OlRFU1QpOgorICAgICAgICAoV1RGKToKKyAgICAgICAgKiB0ZXN0
cy9UaWxpbmdEYXRhVGVzdC5jcHA6CisgICAgICAgIChUZXN0VGlsaW5nKToKKyAgICAgICAgKFdl
YkNvcmU6OlRlc3RUaWxpbmc6OlRlc3RUaWxpbmcpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdFRp
bGluZzo6bnVtVGlsZXMpOgorICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpU
RVNUKToKKwogMjAxMi0wMy0yNyAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFtjaHJvbWl1bV0gVHJhbnNmZXIgd2hlZWwgZmxpbmcgdmlhIFdlYkNvbXBv
c2l0b3JJbnB1dEhhbmRsZXJDbGllbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21pdW0uY3BwCmlu
ZGV4IDQ1NjYzMmNjOTlkMzIwZDkxY2VmOTcwMDMyZTg3MTcyMDgxOTEyMWMuLjAxMGE0MzE4Yzgz
YWRjODc4ZTRhN2MwNzBjM2UyOThlOGE5MTNjZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcApAQCAtMTY2LDcgKzE2Niw4IEBAIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3
c0NvbnRlbnQoKSBjb25zdAogICAgIGlmICghTGF5ZXJDaHJvbWl1bTo6ZHJhd3NDb250ZW50KCkp
CiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZl
clRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMoKSA+IDEpCisgICAgYm9vbCBoYXNNb3JlVGhhbk9u
ZVRpbGUgPSBtX3RpbGVyLT5udW1UaWxlc1goKSA+IDEgfHwgbV90aWxlci0+bnVtVGlsZXNZKCkg
PiAxOworICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgaGFzTW9yZVRoYW5P
bmVUaWxlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gdHJ1ZTsKQEAgLTU1
Niw3ICs1NTcsNyBAQCB2b2lkIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cmVzZXJ2ZVRleHR1cmVzKCkK
ICAgICB1cGRhdGVCb3VuZHMoKTsKIAogICAgIGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCA9IHZp
c2libGVMYXllclJlY3QoKTsKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCAhbV90aWxl
ci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCBtX3RpbGVyLT5o
YXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQgbGVmdCwgdG9wLCBy
aWdodCwgYm90dG9tOwpAQCAtNjA5LDcgKzYxMCw3IEBAIHZvaWQgVGlsZWRMYXllckNocm9taXVt
OjpwcmVwYXJlVG9VcGRhdGUoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0LCBjb25zdCBDQ09jY2x1
CiAKICAgICByZXNldFVwZGF0ZVN0YXRlKCk7CiAKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHko
KSB8fCAhbV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8
fCBtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQg
bGVmdCwgdG9wLCByaWdodCwgYm90dG9tOwpAQCAtNjI4LDcgKzYyOSw3IEBAIHZvaWQgVGlsZWRM
YXllckNocm9taXVtOjpwcmVwYXJlVG9VcGRhdGVJZGxlKGNvbnN0IEludFJlY3QmIGxheWVyUmVj
dCwgY29uc3QgQ0NPCiAKICAgICB1cGRhdGVCb3VuZHMoKTsKIAotICAgIGlmICghbV90aWxlci0+
bnVtVGlsZXMoKSkKKyAgICBpZiAobV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSkKICAgICAgICAg
cmV0dXJuOwogCiAgICAgSW50UmVjdCBpZGxlUGFpbnRMYXllclJlY3QgPSBpZGxlUGFpbnRSZWN0
KGxheWVyUmVjdCk7CkBAIC03MDEsNyArNzAyLDcgQEAgYm9vbCBUaWxlZExheWVyQ2hyb21pdW06
Om5lZWRzSWRsZVBhaW50KGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCkKICAgICBpZiAobV9za2lw
c0lkbGVQYWludCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFtX3RpbGVyLT5u
dW1UaWxlcygpKQorICAgIGlmIChtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICBy
ZXR1cm4gZmFsc2U7CiAKICAgICBJbnRSZWN0IGlkbGVQYWludExheWVyUmVjdCA9IGlkbGVQYWlu
dFJlY3QobGF5ZXJSZWN0KTsKQEAgLTczMSw3ICs3MzIsOCBAQCBJbnRSZWN0IFRpbGVkTGF5ZXJD
aHJvbWl1bTo6aWRsZVBhaW50UmVjdChjb25zdCBJbnRSZWN0JiB2aXNpYmxlTGF5ZXJSZWN0KQog
ICAgIC8vIG9mIHRoZW0gaXMgZ29pbmcgdG8gYmVjb21lIHZpc2libGUuIEZvciBzbWFsbCBsYXll
cnMgd2UgcmV0dXJuIHRoZSBlbnRpcmUgbGF5ZXIsIGZvciBsYXJnZXIKICAgICAvLyBvbmVzIHdl
IGF2b2lkIHByZXBhaW50aW5nIHRoZSBsYXllciBhdCBhbGwuCiAgICAgaWYgKHZpc2libGVMYXll
clJlY3QuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlzQW5pbWF0aW5n
KCkgfHwgc2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3RpbGVyLT5udW1U
aWxlcygpIDw9IDkpCisgICAgICAgIGJvb2wgaXNTbWFsbExheWVyID0gbV90aWxlci0+bnVtVGls
ZXNYKCkgPD0gOSAmJiBtX3RpbGVyLT5udW1UaWxlc1koKSA8PSA5ICYmIG1fdGlsZXItPm51bVRp
bGVzWCgpICogbV90aWxlci0+bnVtVGlsZXNZKCkgPD0gOTsKKyAgICAgICAgaWYgKChkcmF3VHJh
bnNmb3JtSXNBbmltYXRpbmcoKSB8fCBzY3JlZW5TcGFjZVRyYW5zZm9ybUlzQW5pbWF0aW5nKCkp
ICYmIGlzU21hbGxMYXllcikKICAgICAgICAgICAgIHJldHVybiBJbnRSZWN0KEludFBvaW50KCks
IGNvbnRlbnRCb3VuZHMoKSk7CiAgICAgICAgIHJldHVybiBJbnRSZWN0KCk7CiAgICAgfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NM
YXllclRpbGluZ0RhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuY3BwCmluZGV4IDE5ZDAyNTFkYzBhY2Y5ZTM4MmVj
MGYxZmRmZTdkMDNkZTZiZDkwYjguLjQyZjFlOGQxYWI1OThjODM3NWQ1YjVjMTdkZDI1ZTYwZTgz
YmI2MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5jcHAKQEAgLTEwNiw4ICsx
MDYsNyBAQCB2b2lkIENDTGF5ZXJUaWxpbmdEYXRhOjpsYXllclJlY3RUb1RpbGVJbmRpY2VzKGNv
bnN0IEludFJlY3QmIGxheWVyUmVjdCwgaW50JiBsZQogCiBJbnRSZWN0IENDTGF5ZXJUaWxpbmdE
YXRhOjp0aWxlUmVjdChjb25zdCBUaWxlKiB0aWxlKSBjb25zdAogewotICAgIGNvbnN0IGludCBp
bmRleCA9IG1fdGlsaW5nRGF0YS50aWxlSW5kZXgodGlsZS0+aSgpLCB0aWxlLT5qKCkpOwotICAg
IEludFJlY3QgdGlsZVJlY3QgPSBtX3RpbGluZ0RhdGEudGlsZUJvdW5kc1dpdGhCb3JkZXIoaW5k
ZXgpOworICAgIEludFJlY3QgdGlsZVJlY3QgPSBtX3RpbGluZ0RhdGEudGlsZUJvdW5kc1dpdGhC
b3JkZXIodGlsZS0+aSgpLCB0aWxlLT5qKCkpOwogICAgIHRpbGVSZWN0LnNldFNpemUobV90aWxl
U2l6ZSk7CiAgICAgcmV0dXJuIHRpbGVSZWN0OwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdE
YXRhLmgKaW5kZXggOWUxODY5NWU4YzE0MjJiNmM2YzdmZjUzNzM2Y2JhYTQ5OTRmZTNiYi4uZDg3
ZGNkMjYwYTYyMzQ4ZTliNmQ2ZTk2M2Y5ZjY2Zjk2MjMyNTExNyAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEu
aAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xh
eWVyVGlsaW5nRGF0YS5oCkBAIC00NCwxMCArNDQsMTAgQEAgcHVibGljOgogCiAgICAgc3RhdGlj
IFBhc3NPd25QdHI8Q0NMYXllclRpbGluZ0RhdGE+IGNyZWF0ZShjb25zdCBJbnRTaXplJiB0aWxl
U2l6ZSwgQm9yZGVyVGV4ZWxPcHRpb24pOwogCi0gICAgaW50IG51bVRpbGVzKCkgY29uc3QgeyBy
ZXR1cm4gbV90aWxpbmdEYXRhLm51bVRpbGVzKCk7IH0KKyAgICBib29sIGhhc0VtcHR5Qm91bmRz
KCkgY29uc3QgeyByZXR1cm4gbV90aWxpbmdEYXRhLmhhc0VtcHR5Qm91bmRzKCk7IH0KICAgICBp
bnQgbnVtVGlsZXNYKCkgY29uc3QgeyByZXR1cm4gbV90aWxpbmdEYXRhLm51bVRpbGVzWCgpOyB9
CiAgICAgaW50IG51bVRpbGVzWSgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS5udW1UaWxl
c1koKTsgfQotICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQgaSwgaW50IGopIGNvbnN0IHsgcmV0
dXJuIG1fdGlsaW5nRGF0YS50aWxlQm91bmRzKG1fdGlsaW5nRGF0YS50aWxlSW5kZXgoaSwgaikp
OyB9CisgICAgSW50UmVjdCB0aWxlQm91bmRzKGludCBpLCBpbnQgaikgY29uc3QgeyByZXR1cm4g
bV90aWxpbmdEYXRhLnRpbGVCb3VuZHMoaSwgaik7IH0KICAgICBJbnRQb2ludCB0ZXh0dXJlT2Zm
c2V0KGludCB4SW5kZXgsIGludCB5SW5kZXgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS50
ZXh0dXJlT2Zmc2V0KHhJbmRleCwgeUluZGV4KTsgfQogCiAgICAgLy8gQ2hhbmdlIHRoZSB0aWxl
IHNpemUuIFRoaXMgbWF5IGludmFsaWRhdGUgYWxsIHRoZSBleGlzdGluZyB0aWxlcy4KQEAgLTU3
LDcgKzU3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Qm9yZGVyVGV4ZWxPcHRpb24oQm9yZGVy
VGV4ZWxPcHRpb24pOwogICAgIGJvb2wgaGFzQm9yZGVyVGV4ZWxzKCkgY29uc3QgeyByZXR1cm4g
bV90aWxpbmdEYXRhLmJvcmRlclRleGVscygpOyB9CiAKLSAgICBib29sIGlzRW1wdHkoKSBjb25z
dCB7IHJldHVybiAhbV90aWxpbmdEYXRhLm51bVRpbGVzKCkgfHwgIXRpbGVzKCkuc2l6ZSgpOyB9
CisgICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gaGFzRW1wdHlCb3VuZHMoKSB8fCAh
dGlsZXMoKS5zaXplKCk7IH0KIAogICAgIGNvbnN0IENDTGF5ZXJUaWxpbmdEYXRhJiBvcGVyYXRv
cj0oY29uc3QgQ0NMYXllclRpbGluZ0RhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1RpbGVkTGF5ZXJJ
bXBsLmNwcAppbmRleCBkYTgzZTY1NTFjNjQ3Y2M1NzRiOTdkNzE1YzZkMjQzMzg5NjlmZGVjLi4x
MDUxMTY1YjE3ZjMzZWIzNTRmZjE2ZjRkMzA1MTRiZWE1ZjljOTU3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1RpbGVkTGF5ZXJJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q1RpbGVkTGF5ZXJJbXBsLmNwcApAQCAtODAsNyArODAsOCBAQCB2b2lkIENDVGlsZWRMYXllcklt
cGw6OmJpbmRDb250ZW50c1RleHR1cmUoTGF5ZXJSZW5kZXJlckNocm9taXVtKiBsYXllclJlbmRl
cmVyKQogewogICAgIC8vIFRoaXMgZnVuY3Rpb24gaXMgb25seSB2YWxpZCBmb3Igc2luZ2xlIHRl
eHR1cmUgbGF5ZXJzLCBlLmcuIG1hc2tzLgogICAgIEFTU0VSVChtX3RpbGVyKTsKLSAgICBBU1NF
UlQobV90aWxlci0+bnVtVGlsZXMoKSA9PSAxKTsKKyAgICBBU1NFUlQobV90aWxlci0+bnVtVGls
ZXNYKCkgPT0gMSk7CisgICAgQVNTRVJUKG1fdGlsZXItPm51bVRpbGVzWSgpID09IDEpOwogCiAg
ICAgRHJhd2FibGVUaWxlKiB0aWxlID0gdGlsZUF0KDAsIDApOwogICAgIFBsYXRmb3JtM0RPYmpl
Y3QgdGV4dHVyZUlkID0gdGlsZSA/IHRpbGUtPnRleHR1cmVJZCgpIDogMDsKQEAgLTE0Myw3ICsx
NDQsNyBAQCB2b2lkIENDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKENDUXVhZEN1bGxlciYg
cXVhZExpc3QsIGNvbnN0IENDU2hhcmVkUXVhZFN0YQogCiAgICAgYXBwZW5kR3V0dGVyUXVhZHMo
cXVhZExpc3QsIHNoYXJlZFF1YWRTdGF0ZSk7CiAKLSAgICBpZiAoIW1fdGlsZXIgfHwgIW1fdGls
ZXItPm51bVRpbGVzKCkgfHwgbGF5ZXJSZWN0LmlzRW1wdHkoKSkKKyAgICBpZiAoIW1fdGlsZXIg
fHwgbV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSB8fCBsYXllclJlY3QuaXNFbXB0eSgpKQogICAg
ICAgICByZXR1cm47CiAKICAgICBpbnQgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tOwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9GRUN1c3RvbUZp
bHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3Vz
dG9tRmlsdGVyLmNwcAppbmRleCBkYjhkM2Q5MWMxODg4NTA4MTZmYmUwNjNhZDYxYTUzZTFkNTll
MGQ1Li4yM2I2ZmUxMTg0YzVmMDU4YmQ0ZGNmMmMyOGIzZmJlZmFjNjU2OGM4IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3VzdG9tRmlsdGVy
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3Vz
dG9tRmlsdGVyLmNwcApAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgRkVDdXN0b21GaWx0ZXI6OnBs
YXRmb3JtQXBwbHlTb2Z0d2FyZSgpCiAgICAgICAgIHJlc2l6ZUNvbnRleHQobmV3Q29udGV4dFNp
emUpOwogICAgIAogICAgIC8vIERvIG5vdCBkcmF3IHRoZSBmaWx0ZXIgaWYgdGhlIGlucHV0IGlt
YWdlIGNhbm5vdCBmaXQgaW5zaWRlIGEgc2luZ2xlIEdQVSB0ZXh0dXJlLgotICAgIGlmIChtX2lu
cHV0VGV4dHVyZS0+dGlsZXMoKS5udW1UaWxlcygpICE9IDEpCisgICAgaWYgKG1faW5wdXRUZXh0
dXJlLT50aWxlcygpLm51bVRpbGVzWCgpICE9IDEgfHwgbV9pbnB1dFRleHR1cmUtPnRpbGVzKCku
bnVtVGlsZXNZKCkgIT0gMSkKICAgICAgICAgcmV0dXJuOwogICAgIAogICAgIC8vIFRoZSBzaGFk
ZXIgaGFkIGNvbXBpbGVyIGVycm9ycy4gV2UgY2Fubm90IGRyYXcgYW55dGhpbmcuCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAKaW5kZXggNWZm
N2Q4MTFmZWZlMmE5MjRjYWI0MmNiYWY2OWI5NDk0MWVmNjRkNS4uM2NhZDEzYWE0NjdhYjZkOTRk
OWJhMTk3YjgxMDNhMTczMWIyNjA0OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L1RleHR1cmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcApAQCAtOTAsNyArOTAsMTMgQEAgUGFzc1JlZlB0cjxU
ZXh0dXJlPiBUZXh0dXJlOjpjcmVhdGUoR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIEZvcm1h
dCBmb3JtYXQsIGkKICAgICBpbnQgbWF4VGV4dHVyZVNpemUgPSAwOwogICAgIGNvbnRleHQtPmdl
dEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVEVYVFVSRV9TSVpFLCAmbWF4VGV4dHVy
ZVNpemUpOwogICAgIFRpbGluZ0RhdGEgdGlsaW5nKG1heFRleHR1cmVTaXplLCB3aWR0aCwgaGVp
Z2h0LCB0cnVlKTsKLSAgICBpbnQgbnVtVGlsZXMgPSB0aWxpbmcubnVtVGlsZXMoKTsKKworICAg
IC8vIENoZWNrIGZvciBvdmVyZmxvdy4KKyAgICBpbnQgbnVtVGlsZXMgPSB3aWR0aCAqIGhlaWdo
dDsKKyAgICBpZiAobnVtVGlsZXMgLyB3aWR0aCAhPSBoZWlnaHQpIHsKKyAgICAgICAgdGlsaW5n
LnNldFRvdGFsU2l6ZSgwLCAwKTsKKyAgICAgICAgbnVtVGlsZXMgPSAwOworICAgIH0KIAogICAg
IE93blB0cjxWZWN0b3I8dW5zaWduZWQgaW50PiA+IHRleHR1cmVJZHMgPSBhZG9wdFB0cihuZXcg
VmVjdG9yPHVuc2lnbmVkIGludD4obnVtVGlsZXMpKTsKICAgICB0ZXh0dXJlSWRzLT5maWxsKDAs
IG51bVRpbGVzKTsKQEAgLTEwNCw3ICsxMTAsOSBAQCBQYXNzUmVmUHRyPFRleHR1cmU+IFRleHR1
cmU6OmNyZWF0ZShHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCwgRm9ybWF0IGZvcm1hdCwgaQog
ICAgICAgICB9CiAgICAgICAgIHRleHR1cmVJZHMtPmF0KGkpID0gdGV4dHVyZUlkOwogCi0gICAg
ICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIgPSB0aWxpbmcudGlsZUJvdW5kc1dpdGhC
b3JkZXIoaSk7CisgICAgICAgIGludCB4SW5kZXggPSBpICUgd2lkdGg7CisgICAgICAgIGludCB5
SW5kZXggPSBpIC8gd2lkdGg7CisgICAgICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIg
PSB0aWxpbmcudGlsZUJvdW5kc1dpdGhCb3JkZXIoeEluZGV4LCB5SW5kZXgpOwogCiAgICAgICAg
IHVuc2lnbmVkIGludCBnbEZvcm1hdCA9IDA7CiAgICAgICAgIHVuc2lnbmVkIGludCBnbFR5cGUg
PSAwOwpAQCAtMTY4LDkgKzE3NiwxMiBAQCB2b2lkIFRleHR1cmU6OnVwZGF0ZVN1YlJlY3Qodm9p
ZCogcGl4ZWxzLCBjb25zdCBJbnRSZWN0JiB1cGRhdGVSZWN0KQogICAgICAgICBtaW4obV90aWxl
cy5tYXhUZXh0dXJlU2l6ZSgpLCBtX3RpbGVzLmJvcmRlclRleGVscygpICsgdXBkYXRlUmVjdFNh
bml0aXplZC5oZWlnaHQoKSk7CiAgICAgT3duQXJyYXlQdHI8dWludDMyX3Q+IHRlbXBCdWZmID0g
YWRvcHRBcnJheVB0cihuZXcgdWludDMyX3RbdGVtcEJ1ZmZTaXplXSk7CiAKLSAgICBmb3IgKGlu
dCB0aWxlID0gMDsgdGlsZSA8IG1fdGlsZXMubnVtVGlsZXMoKTsgdGlsZSsrKSB7CisgICAgZm9y
IChpbnQgdGlsZSA9IDA7IHRpbGUgPCBtX3RpbGVzLm51bVRpbGVzWCgpICogbV90aWxlcy5udW1U
aWxlc1koKTsgdGlsZSsrKSB7CisgICAgICAgIGludCB4SW5kZXggPSB0aWxlICUgbV90aWxlcy50
b3RhbFNpemVYKCk7CisgICAgICAgIGludCB5SW5kZXggPSB0aWxlIC8gbV90aWxlcy50b3RhbFNp
emVYKCk7CisKICAgICAgICAgLy8gSW50ZXJzZWN0IHdpdGggdGlsZQotICAgICAgICBJbnRSZWN0
IHRpbGVCb3VuZHNXaXRoQm9yZGVyID0gbV90aWxlcy50aWxlQm91bmRzV2l0aEJvcmRlcih0aWxl
KTsKKyAgICAgICAgSW50UmVjdCB0aWxlQm91bmRzV2l0aEJvcmRlciA9IG1fdGlsZXMudGlsZUJv
dW5kc1dpdGhCb3JkZXIoeEluZGV4LCB5SW5kZXgpOwogCiAgICAgICAgIEludFJlY3QgdXBkYXRl
UmVjdEludGVyc2VjdGVkID0gdXBkYXRlUmVjdFNhbml0aXplZDsKICAgICAgICAgdXBkYXRlUmVj
dEludGVyc2VjdGVkLmludGVyc2VjdCh0aWxlQm91bmRzV2l0aEJvcmRlcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5jcHAKaW5kZXgg
MjBkYjQ0MWNlMjVmNTdjNmM3ZmZlYTYyNjViNzUzN2ZiYTA5NTMxZS4uNmJhZDYyODQ0MDc4MmU4
OWYzMTkwYzU2NjQ4MThhMjhmNGYyNGJhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRhLmNwcApAQCAtOTksMjMgKzk5LDIxIEBAIGlu
dCBUaWxpbmdEYXRhOjp0aWxlWUluZGV4RnJvbVNyY0Nvb3JkKGludCBzcmNQb3MpIGNvbnN0CiAg
ICAgcmV0dXJuIG1pbihtYXgoeSwgMCksIG51bVRpbGVzWSgpIC0gMSk7CiB9CiAKLUludFJlY3Qg
VGlsaW5nRGF0YTo6dGlsZUJvdW5kcyhpbnQgdGlsZSkgY29uc3QKK0ludFJlY3QgVGlsaW5nRGF0
YTo6dGlsZUJvdW5kcyhpbnQgaSwgaW50IGopIGNvbnN0CiB7Ci0gICAgYXNzZXJ0VGlsZSh0aWxl
KTsKLSAgICBpbnQgaXggPSB0aWxlWEluZGV4KHRpbGUpOwotICAgIGludCBpeSA9IHRpbGVZSW5k
ZXgodGlsZSk7Ci0gICAgaW50IHggPSB0aWxlUG9zaXRpb25YKGl4KTsKLSAgICBpbnQgeSA9IHRp
bGVQb3NpdGlvblkoaXkpOwotICAgIGludCB3aWR0aCA9IHRpbGVTaXplWChpeCk7Ci0gICAgaW50
IGhlaWdodCA9IHRpbGVTaXplWShpeSk7CisgICAgYXNzZXJ0VGlsZShpLCBqKTsKKyAgICBpbnQg
eCA9IHRpbGVQb3NpdGlvblgoaSk7CisgICAgaW50IHkgPSB0aWxlUG9zaXRpb25ZKGopOworICAg
IGludCB3aWR0aCA9IHRpbGVTaXplWChpKTsKKyAgICBpbnQgaGVpZ2h0ID0gdGlsZVNpemVZKGop
OwogICAgIEFTU0VSVCh4ID49IDAgJiYgeSA+PSAwICYmIHdpZHRoID49IDAgJiYgaGVpZ2h0ID49
IDApOwogICAgIEFTU0VSVCh4IDw9IHRvdGFsU2l6ZVgoKSAmJiB5IDw9IHRvdGFsU2l6ZVkoKSk7
CiAgICAgcmV0dXJuIEludFJlY3QoeCwgeSwgd2lkdGgsIGhlaWdodCk7CiB9CiAKLUludFJlY3Qg
VGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50IHRpbGUpIGNvbnN0CitJbnRSZWN0
IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCBpLCBpbnQgaikgY29uc3QKIHsK
LSAgICBJbnRSZWN0IGJvdW5kcyA9IHRpbGVCb3VuZHModGlsZSk7CisgICAgSW50UmVjdCBib3Vu
ZHMgPSB0aWxlQm91bmRzKGksIGopOwogCiAgICAgaWYgKG1fYm9yZGVyVGV4ZWxzKSB7CiAgICAg
ICAgIGludCB4MSA9IGJvdW5kcy54KCk7CkBAIC0xMjMsMTMgKzEyMSwxMyBAQCBJbnRSZWN0IFRp
bGluZ0RhdGE6OnRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCB0aWxlKSBjb25zdAogICAgICAgICBp
bnQgeTEgPSBib3VuZHMueSgpOwogICAgICAgICBpbnQgeTIgPSBib3VuZHMubWF4WSgpOwogCi0g
ICAgICAgIGlmICh0aWxlWEluZGV4KHRpbGUpID4gMCkKKyAgICAgICAgaWYgKGkgPiAwKQogICAg
ICAgICAgICAgeDEtLTsKLSAgICAgICAgaWYgKHRpbGVYSW5kZXgodGlsZSkgPCAobnVtVGlsZXNY
KCkgLSAxKSkKKyAgICAgICAgaWYgKGkgPCAobnVtVGlsZXNYKCkgLSAxKSkKICAgICAgICAgICAg
IHgyKys7Ci0gICAgICAgIGlmICh0aWxlWUluZGV4KHRpbGUpID4gMCkKKyAgICAgICAgaWYgKGog
PiAwKQogICAgICAgICAgICAgeTEtLTsKLSAgICAgICAgaWYgKHRpbGVZSW5kZXgodGlsZSkgPCAo
bnVtVGlsZXNZKCkgLSAxKSkKKyAgICAgICAgaWYgKGogPCAobnVtVGlsZXNZKCkgLSAxKSkKICAg
ICAgICAgICAgIHkyKys7CiAKICAgICAgICAgYm91bmRzID0gSW50UmVjdCh4MSwgeTEsIHgyIC0g
eDEsIHkyIC0geTEpOwpAQCAtMTM4LDEwICsxMzYsMTAgQEAgSW50UmVjdCBUaWxpbmdEYXRhOjp0
aWxlQm91bmRzV2l0aEJvcmRlcihpbnQgdGlsZSkgY29uc3QKICAgICByZXR1cm4gYm91bmRzOwog
fQogCi1GbG9hdFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc05vcm1hbGl6ZWQoaW50IHRpbGUp
IGNvbnN0CitGbG9hdFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc05vcm1hbGl6ZWQoaW50IGks
IGludCBqKSBjb25zdAogewotICAgIGFzc2VydFRpbGUodGlsZSk7Ci0gICAgRmxvYXRSZWN0IGJv
dW5kcyh0aWxlQm91bmRzKHRpbGUpKTsKKyAgICBhc3NlcnRUaWxlKGksIGopOworICAgIEZsb2F0
UmVjdCBib3VuZHModGlsZUJvdW5kcyhpLCBqKSk7CiAgICAgYm91bmRzLnNjYWxlKDEuMGYgLyBt
X3RvdGFsU2l6ZVgsIDEuMGYgLyBtX3RvdGFsU2l6ZVkpOwogICAgIHJldHVybiBib3VuZHM7CiB9
CkBAIC0yMTYsMzYgKzIxNCw2IEBAIEludFJlY3QgVGlsaW5nRGF0YTo6b3ZlcmxhcHBlZFRpbGVJ
bmRpY2VzKGNvbnN0IFdlYkNvcmU6OkZsb2F0UmVjdCAmc3JjUmVjdCkgY29uCiAgICAgcmV0dXJu
IG92ZXJsYXBwZWRUaWxlSW5kaWNlcyhlbmNsb3NpbmdJbnRSZWN0KHNyY1JlY3QpKTsKIH0KIAot
dm9pZCBUaWxpbmdEYXRhOjppbnRlcnNlY3REcmF3UXVhZChjb25zdCBGbG9hdFJlY3QmIHNyY1Jl
Y3QsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgaW50IHRpbGUsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgIEZsb2F0UmVjdCogbmV3U3JjLCBGbG9hdFJlY3QqIG5ld0RzdCkg
Y29uc3QKLXsKLSAgICAvLyBJbnRlcnNlY3Qgd2l0aCB0aWxlCi0gICAgRmxvYXRSZWN0IHRpbGVC
b3VuZHMgPSB0aGlzLT50aWxlQm91bmRzKHRpbGUpOwotICAgIEZsb2F0UmVjdCBzcmNSZWN0SW50
ZXJzZWN0ZWQgPSBzcmNSZWN0OwotICAgIHNyY1JlY3RJbnRlcnNlY3RlZC5pbnRlcnNlY3QodGls
ZUJvdW5kcyk7Ci0KLSAgICBpZiAoc3JjUmVjdEludGVyc2VjdGVkLmlzRW1wdHkoKSkgewotICAg
ICAgICAqbmV3U3JjID0gKm5ld0RzdCA9IEZsb2F0UmVjdCgwLCAwLCAwLCAwKTsKLSAgICAgICAg
cmV0dXJuOwotICAgIH0KLQotICAgIGZsb2F0IHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1YID0gKHNy
Y1JlY3RJbnRlcnNlY3RlZC54KCkgLSBzcmNSZWN0LngoKSkgLyBzcmNSZWN0LndpZHRoKCk7Ci0g
ICAgZmxvYXQgc3JjUmVjdEludGVyc2VjdGVkTm9ybVkgPSAoc3JjUmVjdEludGVyc2VjdGVkLnko
KSAtIHNyY1JlY3QueSgpKSAvIHNyY1JlY3QuaGVpZ2h0KCk7Ci0gICAgZmxvYXQgc3JjUmVjdElu
dGVyc2VjdGVkTm9ybVcgPSBzcmNSZWN0SW50ZXJzZWN0ZWQud2lkdGgoKSAvIHNyY1JlY3Qud2lk
dGgoKTsKLSAgICBmbG9hdCBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtSCA9IHNyY1JlY3RJbnRlcnNl
Y3RlZC5oZWlnaHQoKSAvIHNyY1JlY3QuaGVpZ2h0KCk7Ci0KLSAgICAqbmV3U3JjID0gc3JjUmVj
dEludGVyc2VjdGVkOwotICAgIG5ld1NyYy0+bW92ZSgKLSAgICAgICAgLXRpbGVCb3VuZHMueCgp
ICsgKCh0aWxlWEluZGV4KHRpbGUpID4gMCkgPyBtX2JvcmRlclRleGVscyA6IDApLAotICAgICAg
ICAtdGlsZUJvdW5kcy55KCkgKyAoKHRpbGVZSW5kZXgodGlsZSkgPiAwKSA/IG1fYm9yZGVyVGV4
ZWxzIDogMCkpOwotCi0gICAgKm5ld0RzdCA9IEZsb2F0UmVjdCgKLSAgICAgICAgc3JjUmVjdElu
dGVyc2VjdGVkTm9ybVggKiBkc3RSZWN0LndpZHRoKCkgKyBkc3RSZWN0LngoKSwKLSAgICAgICAg
c3JjUmVjdEludGVyc2VjdGVkTm9ybVkgKiBkc3RSZWN0LmhlaWdodCgpICsgZHN0UmVjdC55KCks
Ci0gICAgICAgIHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1XICogZHN0UmVjdC53aWR0aCgpLAotICAg
ICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtSCAqIGRzdFJlY3QuaGVpZ2h0KCkpOwotfQotCiBJ
bnRQb2ludCBUaWxpbmdEYXRhOjp0ZXh0dXJlT2Zmc2V0KGludCB4SW5kZXgsIGludCB5SW5kZXgp
IGNvbnN0CiB7CiAgICAgaW50IGxlZnQgPSAoIXhJbmRleCB8fCBtX251bVRpbGVzWCA9PSAxKSA/
IDAgOiBtX2JvcmRlclRleGVsczsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9ncHUvVGlsaW5nRGF0YS5oCmluZGV4IGJjODYxZWY2ODNhMzE3MmQ0ODgzZTQwYTQ1YWZm
Mzg4MDVhZmZiNTEuLjE0NmRmZTE5YmZlNjY3ZDZhMWFhMTZiMDUxMjcwYjc2ZTY4Mzk2MzkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRh
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEu
aApAQCAtNTAsMTggKzUwLDE1IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldEhhc0JvcmRlclRleGVs
cyhib29sKTsKICAgICBpbnQgYm9yZGVyVGV4ZWxzKCkgY29uc3QgeyByZXR1cm4gbV9ib3JkZXJU
ZXhlbHM7IH0KIAotICAgIGludCBudW1UaWxlcygpIGNvbnN0IHsgcmV0dXJuIG51bVRpbGVzWCgp
ICogbnVtVGlsZXNZKCk7IH0KKyAgICBib29sIGhhc0VtcHR5Qm91bmRzKCkgY29uc3QgeyByZXR1
cm4gIW51bVRpbGVzWCgpIHx8ICFudW1UaWxlc1koKTsgfQogICAgIGludCBudW1UaWxlc1goKSBj
b25zdCB7IHJldHVybiBtX251bVRpbGVzWDsgfQogICAgIGludCBudW1UaWxlc1koKSBjb25zdCB7
IHJldHVybiBtX251bVRpbGVzWTsgfQotICAgIGludCB0aWxlSW5kZXgoaW50IHgsIGludCB5KSBj
b25zdCB7IHJldHVybiB4ICsgeSAqIG51bVRpbGVzWCgpOyB9Ci0gICAgaW50IHRpbGVYSW5kZXgo
aW50IHRpbGUpIGNvbnN0IHsgYXNzZXJ0VGlsZSh0aWxlKTsgcmV0dXJuIHRpbGUgJSBudW1UaWxl
c1goKTsgfQotICAgIGludCB0aWxlWUluZGV4KGludCB0aWxlKSBjb25zdCB7IGFzc2VydFRpbGUo
dGlsZSk7IHJldHVybiB0aWxlIC8gbnVtVGlsZXNYKCk7IH0KICAgICBpbnQgdGlsZVhJbmRleEZy
b21TcmNDb29yZChpbnQpIGNvbnN0OwogICAgIGludCB0aWxlWUluZGV4RnJvbVNyY0Nvb3JkKGlu
dCkgY29uc3Q7CiAKLSAgICBJbnRSZWN0IHRpbGVCb3VuZHMoaW50IHRpbGUpIGNvbnN0OwotICAg
IEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50IHRpbGUpIGNvbnN0OwotICAgIEZsb2F0
UmVjdCB0aWxlQm91bmRzTm9ybWFsaXplZChpbnQgdGlsZSkgY29uc3Q7CisgICAgSW50UmVjdCB0
aWxlQm91bmRzKGludCwgaW50KSBjb25zdDsKKyAgICBJbnRSZWN0IHRpbGVCb3VuZHNXaXRoQm9y
ZGVyKGludCwgaW50KSBjb25zdDsKKyAgICBGbG9hdFJlY3QgdGlsZUJvdW5kc05vcm1hbGl6ZWQo
aW50LCBpbnQpIGNvbnN0OwogICAgIGludCB0aWxlUG9zaXRpb25YKGludCB4SW5kZXgpIGNvbnN0
OwogICAgIGludCB0aWxlUG9zaXRpb25ZKGludCB5SW5kZXgpIGNvbnN0OwogICAgIGludCB0aWxl
U2l6ZVgoaW50IHhJbmRleCkgY29uc3Q7CkBAIC02OSwxNiArNjYsMTIgQEAgcHVibGljOgogICAg
IEludFJlY3Qgb3ZlcmxhcHBlZFRpbGVJbmRpY2VzKGNvbnN0IEludFJlY3QmIHNyY1JlY3QpIGNv
bnN0OwogICAgIEludFJlY3Qgb3ZlcmxhcHBlZFRpbGVJbmRpY2VzKGNvbnN0IEZsb2F0UmVjdCYg
c3JjUmVjdCkgY29uc3Q7CiAKLSAgICAvLyBHaXZlbiBhIHNldCBvZiBzb3VyY2UgYW5kIGRlc3Rp
bmF0aW9uIGNvb3JkaW5hdGVzIGZvciBhIGRyYXdpbmcgcXVhZAotICAgIC8vIGluIHRleGVsIHVu
aXRzLCByZXR1cm5zIGFkanVzdGVkIGRhdGEgdG8gcmVuZGVyIGp1c3QgdGhlIG9uZSB0aWxlLgot
ICAgIHZvaWQgaW50ZXJzZWN0RHJhd1F1YWQoY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBjb25z
dCBGbG9hdFJlY3QmIGRzdFJlY3QsIGludCB0aWxlLCBGbG9hdFJlY3QqIG5ld1NyYywgRmxvYXRS
ZWN0KiBuZXdEc3QpIGNvbnN0OwotCiAgICAgLy8gRGlmZmVyZW5jZSBiZXR3ZWVuIHRpbGVCb3Vu
ZCdzIGFuZCB0aWxlQm91bmRXaXRoQm9yZGVyJ3MgbG9jYXRpb24oKS4KICAgICBJbnRQb2ludCB0
ZXh0dXJlT2Zmc2V0KGludCB4SW5kZXgsIGludCB5SW5kZXgpIGNvbnN0OwogCiBwcml2YXRlOgog
ICAgIFRpbGluZ0RhdGEoKSA6IG1fbWF4VGV4dHVyZVNpemUoMCksIG1fdG90YWxTaXplWCgwKSwg
bV90b3RhbFNpemVZKDApIHt9Ci0gICAgdm9pZCBhc3NlcnRUaWxlKGludCB0aWxlKSBjb25zdCB7
IEFTU0VSVF9VTlVTRUQodGlsZSwgdGlsZSA+PSAwICYmIHRpbGUgPCBudW1UaWxlcygpKTsgfQor
ICAgIHZvaWQgYXNzZXJ0VGlsZShpbnQgaSwgaW50IGopIGNvbnN0IHsgQVNTRVJUX1VOVVNFRChp
LCBpID49IDAgJiYgaSA8IG51bVRpbGVzWCgpKTsgQVNTRVJUX1VOVVNFRChqLCBqID49IDAgJiYg
aiA8IG51bVRpbGVzWSgpKTsgfQogICAgIHZvaWQgcmVjb21wdXRlTnVtVGlsZXMoKTsKIAogICAg
IGludCBtX21heFRleHR1cmVTaXplOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS90ZXN0cy9UaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAKaW5kZXggMTI5YzkxNTk0ZDRiZGM4
MzAwMGQzZTc2Zjk0NWUxOTlhNTg5YWIzNC4uNDYxMDZlNDE4NWYzNjk2NGJiM2I5OThlN2FiNTA2
ODNkYWYxOWI2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9UaWxl
ZExheWVyQ2hyb21pdW1UZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3Rz
L1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCkBAIC0xMDgyLDYgKzEwODIsMTkgQEAgVEVTVChU
aWxlZExheWVyQ2hyb21pdW1UZXN0LCByZXNpemVUb1NtYWxsZXIpCiAgICAgbGF5ZXItPmludmFs
aWRhdGVSZWN0KEludFJlY3QoMCwgMCwgMjAwLCAyMDApKTsKIH0KIAorVEVTVChUaWxlZExheWVy
Q2hyb21pdW1UZXN0LCBodWdlTGF5ZXJVcGRhdGVDcmFzaCkKK3sKKyAgICBPd25QdHI8VGV4dHVy
ZU1hbmFnZXI+IHRleHR1cmVNYW5hZ2VyID0gVGV4dHVyZU1hbmFnZXI6OmNyZWF0ZSg2MCoxMDI0
KjEwMjQsIDYwKjEwMjQqMTAyNCwgMTAyNCk7CisgICAgUmVmUHRyPEZha2VUaWxlZExheWVyQ2hy
b21pdW0+IGxheWVyID0gYWRvcHRSZWYobmV3IEZha2VUaWxlZExheWVyQ2hyb21pdW0odGV4dHVy
ZU1hbmFnZXIuZ2V0KCkpKTsKKworICAgIGludCBzaXplID0gMSA8PCAzMDsKKyAgICBsYXllci0+
c2V0Qm91bmRzKEludFNpemUoc2l6ZSwgc2l6ZSkpOworICAgIGxheWVyLT5pbnZhbGlkYXRlUmVj
dChJbnRSZWN0KDAsIDAsIHNpemUsIHNpemUpKTsKKworICAgIC8vIEVuc3VyZSBubyBjcmFzaCBm
b3IgYm91bmRzIHdoZXJlIHNpemUgKiBzaXplIHdvdWxkIG92ZXJmbG93IGFuIGludC4KKyAgICBs
YXllci0+cHJlcGFyZVRvVXBkYXRlKEludFJlY3QoMCwgMCwgNzAwLCA3MDApLCAwKTsKK30KKwog
VEVTVChUaWxlZExheWVyQ2hyb21pdW1UZXN0LCBwYXJ0aWFsVXBkYXRlcykKIHsKICAgICBDQ1Nl
dHRpbmdzIHNldHRpbmdzOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0
cy9UaWxpbmdEYXRhVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGlu
Z0RhdGFUZXN0LmNwcAppbmRleCBjMjk3NDNmODZhZDQ1YjkxNjFkNjA1MjE4ZmFlYWVlY2MzMWM3
ODQyLi5mMDFlMjVjZTRkYmEwMWYxYmNhOTA4ZDg5YjBlOWQ1OTA2MTBiOWI4IDEwMDc1NQotLS0g
YS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGluZ0RhdGFUZXN0LmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGluZ0RhdGFUZXN0LmNwcApAQCAtMzEsNiAr
MzEsNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogCiAjaW5jbHVkZSAiVGlsaW5nRGF0YS5oIgor
I2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgog
CkBAIC0zOCwzODUgKzM5LDQwNiBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogbmFtZXNw
YWNlIHsKIAorY2xhc3MgVGVzdFRpbGluZyA6IHB1YmxpYyBUaWxpbmdEYXRhIHsKK3B1YmxpYzoK
KyAgICBUZXN0VGlsaW5nKGludCBtYXhUZXh0dXJlU2l6ZSwgaW50IHRvdGFsU2l6ZVgsIGludCB0
b3RhbFNpemVZLCBib29sIGhhc0JvcmRlclRleGVscykKKyAgICAgICAgOiBUaWxpbmdEYXRhKG1h
eFRleHR1cmVTaXplLCB0b3RhbFNpemVYLCB0b3RhbFNpemVZLCBoYXNCb3JkZXJUZXhlbHMpCisg
ICAgeworICAgIH0KKworICAgIC8vIFRoaXMgZnVuY3Rpb24gb25seSBhdmFpbGFibGUgZm9yIHRl
c3RpbmcgYmVjYXVzZSBvZiBwb3RlbnRpYWwgb3ZlcmZsb3cuCisgICAgaW50IG51bVRpbGVzKCkg
Y29uc3QKKyAgICB7CisgICAgICAgIGludCBudW1UaWxlcyA9IG51bVRpbGVzWCgpICogbnVtVGls
ZXNZKCk7CisKKyAgICAgICAgLy8gQXNzZXJ0IG5vIG92ZXJmbG93LgorICAgICAgICBBU1NFUlQo
bnVtVGlsZXMgPj0gMCk7CisgICAgICAgIGlmIChudW1UaWxlcyA+IDApCisgICAgICAgICAgICBB
U1NFUlQobnVtVGlsZXMgLyBudW1UaWxlc1goKSA9PSBudW1UaWxlc1koKSk7CisKKyAgICAgICAg
cmV0dXJuIG51bVRpbGVzOworICAgIH0KK307CisKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIG51bVRp
bGVzX05vVGlsaW5nKQogewotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE2LCAxNiwgMTYs
IGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxNiwgMTUs
IDE1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgxNiwg
MTYsIDE2LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgx
NiwgIDEsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoMTUsIDE1LCAxNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RU
aWxpbmcoMTYsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBU
ZXN0VGlsaW5nKDE2LCAxNSwgMTUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgx
LCBUZXN0VGlsaW5nKDE2LCAxNiwgMTYsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDE2LCAgMSwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZygxNSwgMTUsIDE1LCB0cnVlKS5udW1UaWxlcygpKTsKIH0KIAog
VEVTVChUaWxpbmdEYXRhVGVzdCwgbnVtVGlsZXNfVGlsaW5nTm9Cb3JkZXJzKQogewotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAwLCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAwLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDQsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDQsICAwLCAgNCwgZmFsc2UpLm51bVRp
bGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKC04LCAxLCAgMSwgZmFsc2UpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKC0xLCAxLCAgMSwgZmFsc2Up
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAxLCAgMSwgZmFs
c2UpLm51bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMSwgIDEsICAx
LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMSwgIDEs
ICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMSwg
IDIsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEo
MiwgIDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0Rh
dGEoMiwgIDEsICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGlu
Z0RhdGEoMiwgIDIsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRp
bGluZ0RhdGEoMiwgIDIsICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgIDMsICAzLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSg0LCAgMSwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMSwgVGlsaW5nRGF0YSg0LCAgMiwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg0LCAgMywgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg0LCAgNCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgNSwgIDQsIGZhbHNlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgNiwgIDQsIGZhbHNlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgNywgIDQsIGZhbHNlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgOCwgIDQsIGZhbHNlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAgOSwgIDQsIGZhbHNl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAxMCwgIDQsIGZh
bHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAxMSwgIDQs
IGZhbHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICAx
LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUs
ICAyLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRh
KDUsICAzLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdE
YXRhKDUsICA0LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxp
bmdEYXRhKDUsICA1LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBU
aWxpbmdEYXRhKDUsICA2LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDUsICA3LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDUsICA4LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDUsICA5LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgyLCBUaWxpbmdEYXRhKDUsIDEwLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDExLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOwot
Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMTYsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE3LCAxNiwgMTYsIGZhbHNlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgxNSwgMTYsIDE2LCBmYWxzZSku
bnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoOCwgMTYsIDE2LCBmYWxz
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDYsIFRpbGluZ0RhdGEoOCwgMTcsIDE2LCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDAsICAw
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDQs
ICAwLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwg
IDAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmco
NCwgIDQsICAwLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoNCwgIDAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RU
aWxpbmcoLTgsIDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRl
c3RUaWxpbmcoLTEsIDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMCwgIDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZygxLCAgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMiwgVGVzdFRpbGluZygxLCAgMSwgIDIsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMiwgVGVzdFRpbGluZygxLCAgMiwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMSwgIDIsIGZhbHNlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMiwgIDEsIGZhbHNlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMiwgIDIsIGZhbHNlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAgMywgIDMsIGZhbHNlKS5u
dW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAxLCAgNCwgZmFs
c2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAyLCAgNCwg
ZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAzLCAg
NCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICA0
LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDQs
ICA1LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5n
KDQsICA2LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGls
aW5nKDQsICA3LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0
VGlsaW5nKDQsICA4LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBU
ZXN0VGlsaW5nKDQsICA5LCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDQsIDEwLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgzLCBUZXN0VGlsaW5nKDQsIDExLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOworCisgICAgRVhQ
RUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDEsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAg
RVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDIsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDMsICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDQsICA1LCBmYWxzZSkubnVtVGlsZXMo
KSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDUsICA1LCBmYWxzZSkubnVtVGls
ZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDYsICA1LCBmYWxzZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDcsICA1LCBmYWxzZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDgsICA1LCBmYWxz
ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDksICA1LCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgMTAsICA1
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTEs
ICA1LCBmYWxzZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygx
NiwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMTcsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0
VGlsaW5nKDE1LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNCwg
VGVzdFRpbGluZyg4LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
NiwgVGVzdFRpbGluZyg4LCAxNywgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKIH0KIAogVEVTVChU
aWxpbmdEYXRhVGVzdCwgbnVtVGlsZXNfVGlsaW5nV2l0aEJvcmRlcnMpCiB7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMCwgIDAsICAwLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgNCwgIDAsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoNCwgIDQsICAwLCB0cnVlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSg0LCAgMCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKC04LCAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoLTEsIDEsICAxLCB0cnVlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMSwgIDEsIHRydWUpLm51bVRpbGVz
KCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMSwgIDEsICAxLCB0cnVlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgxLCAgMSwgIDIsIHRydWUpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEsICAyLCAgMSwgdHJ1ZSku
bnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMiwgIDEsICAxLCB0cnVl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgyLCAgMSwgIDIsIHRy
dWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMSwg
dHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMiwgIDIsICAy
LCB0cnVlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAx
LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywg
IDIsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgz
LCAgMywgIDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRh
KDMsICA0LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0Rh
dGEoMywgIDUsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5n
RGF0YSgzLCAgNiwgIDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg1LCBUaWxp
bmdEYXRhKDMsICA3LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMSwg
VGlsaW5nRGF0YSg0LCAgMSwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDQsICAyLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDEsIFRpbGluZ0RhdGEoNCwgIDMsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSg0LCAgNCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDQsICA1LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQ
RUNUX0VRKDIsIFRpbGluZ0RhdGEoNCwgIDYsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBF
WFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAgNywgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDQsICA4LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0g
ICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNCwgIDksICA0LCB0cnVlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg0LCAxMCwgIDQsIHRydWUpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDQsIDExLCAgNCwgdHJ1ZSkubnVtVGlsZXMo
KSk7Ci0KLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMSwgIDUsIHRydWUpLm51bVRp
bGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICAyLCAgNSwgdHJ1ZSkubnVt
VGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDMsICA1LCB0cnVlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNCwgIDUsIHRydWUp
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICA1LCAgNSwgdHJ1
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoNSwgIDYsICA1LCB0
cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNywgIDUs
IHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDUsICA4LCAg
NSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgIDks
ICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAx
MCwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUs
IDExLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmco
MCwgIDAsICAwLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygwLCAgNCwgIDAsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDAsICAwLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RU
aWxpbmcoNCwgIDQsICAwLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZyg0LCAgMCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKC04LCAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoLTEsIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEo
MCwgVGVzdFRpbGluZygwLCAgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOworCisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoMSwgIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygxLCAgMSwgIDIsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDEsICAyLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAg
RVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygyLCAgMSwgIDIsIHRydWUpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAyLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwgIDIsICAyLCB0cnVlKS5udW1UaWxlcygp
KTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsICAxLCAgMywgdHJ1ZSkubnVtVGls
ZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgIDIsICAzLCB0cnVlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAgMywgIDMsIHRydWUpLm51
bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsICA0LCAgMywgdHJ1ZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgIDUsICAzLCB0cnVl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygzLCAgNiwgIDMsIHRy
dWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDMsICA3LCAgMywg
dHJ1ZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg0LCAgMSwg
IDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAy
LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwg
IDMsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg0
LCAgNCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5n
KDQsICA1LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxp
bmcoNCwgIDYsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRp
bGluZyg0LCAgNywgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0
VGlsaW5nKDQsICA4LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDQsIFRl
c3RUaWxpbmcoNCwgIDksICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNCwg
VGVzdFRpbGluZyg0LCAxMCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSg1
LCBUZXN0VGlsaW5nKDQsIDExLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZyg1LCAgMSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgxLCBUZXN0VGlsaW5nKDUsICAyLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQ
RUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDMsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgNCwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA1LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Cisg
ICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDYsICA1LCB0cnVlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgNywgIDUsIHRydWUpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUsICA4LCAgNSwgdHJ1ZSkubnVtVGlsZXMo
KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgIDksICA1LCB0cnVlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMCwgIDUsIHRydWUpLm51bVRp
bGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDExLCAgNSwgdHJ1ZSkubnVt
VGlsZXMoKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQpCiB7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGls
ZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywg
MTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VR
KDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgy
KSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJ
bmRleEZyb21TcmNDb29yZCgzKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAs
IDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg1KSk7
Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRl
eEZyb21TcmNDb29yZCg2KSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAsIDEw
LCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg4KSk7Ci0g
ICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZy
b21TcmNDb29yZCg5KSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBm
YWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsKLQot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZy
b21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0
cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAgIEVY
UEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmND
b29yZCgzKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDQpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNSkpOwotICAgIEVYUEVDVF9F
USg1LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg2
KSk7Ci0gICAgRVhQRUNUX0VRKDYsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDcpKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwg
MTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOCkpOwotICAgIEVYUEVDVF9FUSg3LCBU
aWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg5KSk7Ci0g
ICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDEwKSk7Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0
cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDExKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgxLCAxLCAxLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAg
RVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIGZhbHNlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VR
KDAsIFRpbGluZ0RhdGEoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDIpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDQsIDMs
IGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAg
RVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDQsIDMsIGZhbHNlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRh
KDEsIDEsIDEsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIHRydWUpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIHRy
dWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdE
YXRhKDMsIDMsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVD
VF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MikpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwgMywgdHJ1ZSkudGlsZVhJ
bmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwg
MywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRp
bGluZ0RhdGEoMywgNCwgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAg
RVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgNCwgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmND
b29yZCgzKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSku
dGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmco
MywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNU
X0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCgyKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGls
ZVhJbmRleEZyb21TcmNDb29yZCgzKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywg
MTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7CisgICAgRVhQRUNUX0VR
KDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg1
KSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJ
bmRleEZyb21TcmNDb29yZCg2KSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAs
IDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7CisgICAgRVhQRUNUX0VRKDIs
IFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg4KSk7
CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSkudGlsZVhJbmRl
eEZyb21TcmNDb29yZCg5KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEw
LCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOworICAgIEVYUEVDVF9FUSgzLCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMTEpKTsK
KworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRl
eEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAsIDEw
LCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOworICAg
IEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21T
cmNDb29yZCgzKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDQpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNSkpOworICAgIEVYUEVD
VF9FUSg1LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCg2KSk7CisgICAgRVhQRUNUX0VRKDYsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDcpKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAx
MCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOCkpOworICAgIEVYUEVDVF9FUSg3
LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg5KSk7
CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDEwKSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEw
LCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDExKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygxLCAxLCAxLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygzLCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNU
X0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDQs
IDMsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Cisg
ICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNCwgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDQsIDMsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDEsIDEsIDEsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIHRydWUpLnRpbGVYSW5k
ZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMs
IHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0
VGlsaW5nKDMsIDMsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMikpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNCwgMywgdHJ1ZSkudGls
ZVhJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywg
NCwgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDEs
IFRlc3RUaWxpbmcoMywgNCwgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgNCwgMywgdHJ1ZSkudGlsZVhJbmRleEZyb21T
cmNDb29yZCgzKSk7CiB9CiBURVNUKFRpbGluZ0RhdGFUZXN0LCB0aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKQogewotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRp
bGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
MikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZ
SW5kZXhGcm9tU3JjQ29vcmQoMykpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEw
LCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNSkp
OwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5k
ZXhGcm9tU3JjQ29vcmQoNikpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAx
MCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOwotICAgIEVYUEVDVF9FUSgyLCBU
aWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOCkpOwot
ICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhG
cm9tU3JjQ29vcmQoOSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
ZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGls
aW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDExKSk7Ci0K
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhG
cm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
dHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGlu
Z0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBF
WFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3Jj
Q29vcmQoMykpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCg0KSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEo
MywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKLSAgICBFWFBFQ1Rf
RVEoNSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
NikpOwotICAgIEVYUEVDVF9FUSg2LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCg3KSk7Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAs
IDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKLSAgICBFWFBFQ1RfRVEoNywg
VGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOSkpOwot
ICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgxMCkpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwg
dHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxMSkpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMSwgMSwgMSwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAg
IEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIsIDIsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCBmYWxzZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEo
MywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCBmYWxzZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCA0
LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAg
IEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDQsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAzLCA0LCBmYWxzZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgzKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgxLCAxLCAxLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCB0cnVlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0
cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDIpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDQsIHRydWUpLnRpbGVZ
SW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMs
IDQsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDMsIDMsIDQsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAg
IEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDMsIDQsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3Jj
Q29vcmQoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2Up
LnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRp
bGVZSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkpOworICAgIEVYUEVDVF9F
USgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
NSkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZ
SW5kZXhGcm9tU3JjQ29vcmQoNikpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEw
LCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOworICAgIEVYUEVDVF9FUSgy
LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOCkp
OworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVZSW5k
ZXhGcm9tU3JjQ29vcmQoOSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKKyAgICBFWFBFQ1RfRVEoMywg
VGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDExKSk7
CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5k
ZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDEsIFRl
c3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9t
U3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCg0KSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxp
bmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKKyAgICBFWFBF
Q1RfRVEoNSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoNikpOworICAgIEVYUEVDVF9FUSg2LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCg3KSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywg
MTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKKyAgICBFWFBFQ1RfRVEo
NywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoOSkp
OworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgxMCkpOworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAx
MCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxMSkpOworCisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMSwgMSwgMSwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIsIDIsIDIsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoMywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCBmYWxzZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCgyKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAz
LCA0LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAs
IFRlc3RUaWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDQsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAzLCA0LCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgzKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRp
bGluZygxLCAxLCAxLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCB0cnVlKS50aWxlWUlu
ZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAz
LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDIpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDQsIHRydWUpLnRp
bGVZSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMs
IDMsIDQsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgx
LCBUZXN0VGlsaW5nKDMsIDMsIDQsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwor
ICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDMsIDQsIHRydWUpLnRpbGVZSW5kZXhGcm9t
U3JjQ29vcmQoMykpOwogfQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCB0aWxlU2l6ZVgpCiB7Ci0g
ICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgIDUsICA1LCBmYWxzZSkudGlsZVNpemVYKDAp
KTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIHRydWUpLnRpbGVTaXpl
WCgwKSk7Ci0KLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIGZhbHNlKS50
aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgZmFs
c2UpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgIDYsICA2
LCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDUsICA2
LCAgNiwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRh
KDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwg
VGlsaW5nRGF0YSg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VR
KDQsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVgoMSkpOwotCi0gICAgRVhQ
RUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAg
ICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVgoMSkp
OwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVY
KDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVT
aXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50
aWxlU2l6ZVgoMikpOwotCi0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgMTEsIDExLCB0
cnVlKS50aWxlU2l6ZVgoMikpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDEyLCAx
MiwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAg
NSwgIDUsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5n
KDUsICA1LCAgNSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0
VGlsaW5nKDUsICA2LCAgNiwgZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDEs
IFRlc3RUaWxpbmcoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1Rf
RVEoNCwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQ
RUNUX0VRKDIsIFRlc3RUaWxpbmcoNSwgIDYsICA2LCB0cnVlKS50aWxlU2l6ZVgoMSkpOworCisg
ICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVYKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6
ZVgoMSkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgdHJ1ZSkudGls
ZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZyg1LCAgOCwgIDgsIHRydWUp
LnRpbGVTaXplWCgxKSk7CisKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAxMCwgMTAs
IGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsIDEw
LCAxMCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmco
NSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZyg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWCgyKSk7CisKKyAgICBFWFBFQ1RfRVEo
NCwgVGVzdFRpbGluZyg1LCAxMSwgMTEsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNU
X0VRKDMsIFRlc3RUaWxpbmcoNSwgMTIsIDEyLCB0cnVlKS50aWxlU2l6ZVgoMikpOwogfQogVEVT
VChUaWxpbmdEYXRhVGVzdCwgdGlsZVNpemVZKQogewotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdE
YXRhKDUsICA1LCAgNSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRp
bGluZ0RhdGEoNSwgIDUsICA1LCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotCi0gICAgRVhQRUNUX0VR
KDUsIFRpbGluZ0RhdGEoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBF
Q1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOwotICAg
IEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsK
LSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWSgx
KSk7Ci0KLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgOCwgIDgsIGZhbHNlKS50aWxl
U2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgZmFsc2Up
LnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCB0
cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsICA4LCAg
OCwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUs
IDEwLCAxMCwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0Rh
dGEoNSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGls
aW5nRGF0YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMs
IFRpbGluZ0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKLQotICAgIEVY
UEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKLSAg
ICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWSgyKSk7
CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgIDUsICA1LCBmYWxzZSkudGlsZVNpemVZ
KDApKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIHRydWUpLnRpbGVT
aXplWSgwKSk7CisKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIGZhbHNl
KS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA2LCAgNiwg
ZmFsc2UpLnRpbGVTaXplWSgxKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDYs
ICA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUs
ICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGls
aW5nKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRl
c3RUaWxpbmcoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEo
NCwgVGVzdFRpbGluZyg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNU
X0VRKDQsIFRlc3RUaWxpbmcoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVkoMSkpOworCisgICAg
RVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVZKDApKTsK
KyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVko
MSkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNp
emVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMCwgMTAsIHRydWUpLnRp
bGVTaXplWSgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCB0cnVl
KS50aWxlU2l6ZVkoMikpOworCisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgMTEsIDEx
LCB0cnVlKS50aWxlU2l6ZVkoMikpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDEy
LCAxMiwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKIH0KIAogVEVTVChUaWxpbmdEYXRhVGVzdCwgdGls
ZVNpemVYX2FuZF90aWxlUG9zaXRpb25YKQogewogICAgIC8vIFNpbmdsZSB0aWxlIGNhc2VzOgot
ICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEsICAgMSwgZmFsc2UpLnRpbGVTaXplWCgw
KSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMSwgICAxLCBmYWxzZSkudGlsZVBv
c2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMSwgMTAwLCBmYWxz
ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxLCAxMDAs
IGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgz
LCAzLCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdE
YXRhKDMsIDMsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgz
LCBUaWxpbmdEYXRhKDMsIDMsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMSwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMCkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEsICAgMSwgdHJ1ZSkudGlsZVBvc2l0
aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMSwgMTAwLCB0cnVlKS50
aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEsIDEwMCwgdHJ1
ZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMywg
ICAxLCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDMsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoMywgMywgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBU
aWxpbmdEYXRhKDMsIDMsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNU
X0VRKDEsIFRlc3RUaWxpbmcoMywgMSwgICAxLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxLCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxLCAxMDAsIGZhbHNlKS50aWxlU2l6
ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEsIDEwMCwgZmFsc2UpLnRp
bGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDMsICAgMSwg
ZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywg
ICAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoMywgMywgMTAwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAzLCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZygzLCAxLCAgIDEsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQ
RUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMSwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDApKTsK
KyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxLCAxMDAsIHRydWUpLnRpbGVTaXplWCgw
KSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMSwgMTAwLCB0cnVlKS50aWxlUG9z
aXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAzLCAgIDEsIHRydWUp
LnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgICAxLCB0
cnVlKS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAz
LCAxMDAsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmco
MywgMywgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDApKTsKIAogICAgIC8vIE11bHRpcGxlIHRp
bGVzOgogICAgIC8vIG5vIGJvcmRlcgogICAgIC8vIHBvc2l0aW9ucyAwLCAzCi0gICAgRVhQRUNU
X0VRKDIsIFRpbGluZ0RhdGEoMywgNiwgICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQ
RUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgICAxLCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMSkp
OwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVQb3Np
dGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgZmFsc2Up
LnRpbGVQb3NpdGlvblgoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDYsIDEw
MCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywg
NiwgMTAwLCBmYWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCA2LCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCA2LCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDEpKTsKKyAgICBFWFBF
Q1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwor
ICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVTaXplWCgx
KSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNiwgICAxLCBmYWxzZSkudGlsZVBv
c2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgICAxLCBmYWxz
ZSkudGlsZVBvc2l0aW9uWCgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwg
MTAwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygz
LCA2LCAxMDAsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMSkpOwogCiAgICAg
Ly8gTXVsdGlwbGUgdGlsZXM6CiAgICAgLy8gd2l0aCBib3JkZXIKICAgICAvLyBwb3NpdGlvbnMg
MCwgMiwgMywgNAotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSku
bnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVl
KS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwg
dHJ1ZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCA2LCAg
IDEsIHRydWUpLnRpbGVTaXplWCgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywg
NiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMykpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRh
KDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsKLSAgICBFWFBFQ1Rf
RVEoMywgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMikpOwotICAg
IEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgz
KSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6
ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGls
ZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUp
LnRpbGVTaXplWCgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0
cnVlKS50aWxlU2l6ZVgoMykpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDYsIDEw
MCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
MywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGls
aW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMikpOwotICAgIEVYUEVDVF9F
USg0LCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgzKSk7CisgICAg
RVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXplWCgwKSk7
CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgo
MSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNp
emVYKDIpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRp
bGVTaXplWCgzKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVl
KS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAg
IDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5n
KDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgyKSk7CisgICAgRVhQRUNUX0VRKDQsIFRl
c3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDMpKTsKKyAgICBFWFBFQ1Rf
RVEoMiwgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQ
RUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMSkpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDIpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgz
KSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50aWxlUG9z
aXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUp
LnRpbGVQb3NpdGlvblgoMSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDYsIDEw
MCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgyKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmco
MywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDMpKTsKIH0KIAogVEVTVChUaWxpbmdEYXRh
VGVzdCwgdGlsZVNpemVZX2FuZF90aWxlUG9zaXRpb25ZKQogewogICAgIC8vIFNpbmdsZSB0aWxl
IGNhc2VzOgotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAgMSwgMSwgZmFsc2UpLnRp
bGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgICAxLCAxLCBmYWxz
ZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAw
LCAxLCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAxMDAsIDEsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGls
aW5nRGF0YSgzLCAgIDEsIDMsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgw
LCBUaWxpbmdEYXRhKDMsICAgMSwgMywgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVY
UEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwMCwgMywgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCAzLCBmYWxzZSkudGlsZVBvc2l0aW9u
WSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgICAxLCAxLCB0cnVlKS50aWxl
U2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsICAgMSwgMSwgdHJ1ZSku
dGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAwLCAx
LCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEw
MCwgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0Rh
dGEoMywgICAxLCAzLCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxp
bmdEYXRhKDMsICAgMSwgMywgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VR
KDMsIFRpbGluZ0RhdGEoMywgMTAwLCAzLCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVD
VF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwMCwgMywgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgICAxLCAxLCBmYWxzZSkudGlsZVNpemVZKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAgIDEsIDEsIGZhbHNlKS50aWxlUG9z
aXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMDAsIDEsIGZhbHNl
KS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwMCwgMSwg
ZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMs
ICAgMSwgMywgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoMywgICAxLCAzLCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDMs
IFRlc3RUaWxpbmcoMywgMTAwLCAzLCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDMsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAgIDEsIDEsIHRydWUpLnRpbGVTaXplWSgwKSk7
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgICAxLCAxLCB0cnVlKS50aWxlUG9zaXRp
b25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMDAsIDEsIHRydWUpLnRp
bGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAwLCAxLCB0cnVl
KS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEs
IDMsIHRydWUpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywg
ICAxLCAzLCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRp
bGluZygzLCAxMDAsIDMsIHRydWUpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRl
c3RUaWxpbmcoMywgMTAwLCAzLCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKIAogICAgIC8vIE11
bHRpcGxlIHRpbGVzOgogICAgIC8vIG5vIGJvcmRlcgogICAgIC8vIHBvc2l0aW9ucyAwLCAzCi0g
ICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgICAxLCA2LCBmYWxzZSkubnVtVGlsZXMoKSk7
Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgICAxLCA2LCBmYWxzZSkudGlsZVNpemVZ
KDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxl
U2l6ZVkoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgZmFsc2Up
LnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICAgMSwg
NiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRh
KDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoMywgMTAwLCA2LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgzLCAxMDAsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDEpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAgIDEsIDYsIGZhbHNlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDYsIGZhbHNlKS50aWxlU2l6
ZVkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLnRp
bGVTaXplWSgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgICAxLCA2LCBmYWxz
ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgICAx
LCA2LCBmYWxzZSkudGlsZVBvc2l0aW9uWSgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoMywgMTAwLCA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZygzLCAxMDAsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMSkp
OwogCiAgICAgLy8gTXVsdGlwbGUgdGlsZXM6CiAgICAgLy8gd2l0aCBib3JkZXIKICAgICAvLyBw
b3NpdGlvbnMgMCwgMiwgMywgNAotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsICAgMSwg
NiwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgICAx
LCA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMs
ICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0
YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGlu
Z0RhdGEoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOwotICAgIEVYUEVDVF9FUSgwLCBU
aWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNU
X0VRKDIsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDEpKTsKLSAg
ICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblko
MikpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBv
c2l0aW9uWSgzKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVl
KS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwg
dHJ1ZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMDAs
IDYsIHRydWUpLnRpbGVTaXplWSgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywg
MTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRh
KDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDEpKTsKLSAgICBFWFBFQ1Rf
RVEoMywgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMikpOwotICAg
IEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgz
KSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVT
aXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50
aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1
ZSkudGlsZVNpemVZKDIpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAgIDEsIDYs
IHRydWUpLnRpbGVTaXplWSgzKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgICAx
LCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGlu
ZygzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMSkpOworICAgIEVYUEVDVF9FUSgzLCBU
ZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgyKSk7CisgICAgRVhQRUNU
X0VRKDQsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDMpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXplWSgwKSk7
CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVko
MSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNp
emVZKDIpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRp
bGVTaXplWSgzKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0cnVl
KS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMDAs
IDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMSkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5n
KDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgyKSk7CisgICAgRVhQRUNUX0VRKDQsIFRl
c3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDMpKTsKIH0KIAogVEVTVChU
aWxpbmdEYXRhVGVzdCwgc2V0VG90YWxTaXplKQogewotICAgIFRpbGluZ0RhdGEgZGF0YSg1LCA1
LCA1LCBmYWxzZSk7CisgICAgVGVzdFRpbGluZyBkYXRhKDUsIDUsIDUsIGZhbHNlKTsKICAgICBF
WFBFQ1RfRVEoNSwgZGF0YS50b3RhbFNpemVYKCkpOwogICAgIEVYUEVDVF9FUSg1LCBkYXRhLnRv
dGFsU2l6ZVkoKSk7CiAgICAgRVhQRUNUX0VRKDEsIGRhdGEubnVtVGlsZXNYKCkpOwpAQCAtNDQ2
LDcgKzQ2OCw3IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldFRvdGFsU2l6ZSkKIAogVEVTVChU
aWxpbmdEYXRhVGVzdCwgc2V0TWF4VGV4dHVyZVNpemVOb0JvcmRlcnMpCiB7Ci0gICAgVGlsaW5n
RGF0YSBkYXRhKDgsIDE2LCAzMiwgZmFsc2UpOworICAgIFRlc3RUaWxpbmcgZGF0YSg4LCAxNiwg
MzIsIGZhbHNlKTsKICAgICBFWFBFQ1RfRVEoMiwgZGF0YS5udW1UaWxlc1goKSk7CiAgICAgRVhQ
RUNUX0VRKDQsIGRhdGEubnVtVGlsZXNZKCkpOwogCkBAIC00NjgsNyArNDkwLDcgQEAgVEVTVChU
aWxpbmdEYXRhVGVzdCwgc2V0TWF4VGV4dHVyZVNpemVOb0JvcmRlcnMpCiAKIFRFU1QoVGlsaW5n
RGF0YVRlc3QsIHNldE1heFRleHR1cmVTaXplQm9yZGVycykKIHsKLSAgICBUaWxpbmdEYXRhIGRh
dGEoOCwgMTYsIDMyLCB0cnVlKTsKKyAgICBUZXN0VGlsaW5nIGRhdGEoOCwgMTYsIDMyLCB0cnVl
KTsKICAgICBFWFBFQ1RfRVEoMywgZGF0YS5udW1UaWxlc1goKSk7CiAgICAgRVhQRUNUX0VRKDUs
IGRhdGEubnVtVGlsZXNZKCkpOwogCkBAIC00OTEsOCArNTEzLDggQEAgVEVTVChUaWxpbmdEYXRh
VGVzdCwgc2V0TWF4VGV4dHVyZVNpemVCb3JkZXJzKQogVEVTVChUaWxpbmdEYXRhVGVzdCwgYXNz
aWdubWVudCkKIHsKICAgICB7Ci0gICAgICAgIFRpbGluZ0RhdGEgc291cmNlKDgsIDE2LCAzMiwg
dHJ1ZSk7Ci0gICAgICAgIFRpbGluZ0RhdGEgZGVzdCA9IHNvdXJjZTsKKyAgICAgICAgVGVzdFRp
bGluZyBzb3VyY2UoOCwgMTYsIDMyLCB0cnVlKTsKKyAgICAgICAgVGVzdFRpbGluZyBkZXN0ID0g
c291cmNlOwogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLmJvcmRlclRleGVscygpLCBkZXN0LmJv
cmRlclRleGVscygpKTsKICAgICAgICAgRVhQRUNUX0VRKHNvdXJjZS5tYXhUZXh0dXJlU2l6ZSgp
LCBkZXN0Lm1heFRleHR1cmVTaXplKCkpOwogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLm51bVRp
bGVzWCgpLCBkZXN0Lm51bVRpbGVzWCgpKTsKQEAgLTUwMSw4ICs1MjMsOCBAQCBURVNUKFRpbGlu
Z0RhdGFUZXN0LCBhc3NpZ25tZW50KQogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLnRvdGFsU2l6
ZVkoKSwgZGVzdC50b3RhbFNpemVZKCkpOwogICAgIH0KICAgICB7Ci0gICAgICAgIFRpbGluZ0Rh
dGEgc291cmNlKDMsIDYsIDEwMCwgZmFsc2UpOwotICAgICAgICBUaWxpbmdEYXRhIGRlc3Qoc291
cmNlKTsKKyAgICAgICAgVGVzdFRpbGluZyBzb3VyY2UoMywgNiwgMTAwLCBmYWxzZSk7CisgICAg
ICAgIFRlc3RUaWxpbmcgZGVzdChzb3VyY2UpOwogICAgICAgICBFWFBFQ1RfRVEoc291cmNlLmJv
cmRlclRleGVscygpLCBkZXN0LmJvcmRlclRleGVscygpKTsKICAgICAgICAgRVhQRUNUX0VRKHNv
dXJjZS5tYXhUZXh0dXJlU2l6ZSgpLCBkZXN0Lm1heFRleHR1cmVTaXplKCkpOwogICAgICAgICBF
WFBFQ1RfRVEoc291cmNlLm51bVRpbGVzWCgpLCBkZXN0Lm51bVRpbGVzWCgpKTsKQEAgLTUxNCw3
ICs1MzYsNyBAQCBURVNUKFRpbGluZ0RhdGFUZXN0LCBhc3NpZ25tZW50KQogCiBURVNUKFRpbGlu
Z0RhdGFUZXN0LCBzZXRCb3JkZXJUZXhlbHMpCiB7Ci0gICAgVGlsaW5nRGF0YSBkYXRhKDgsIDE2
LCAzMiwgZmFsc2UpOworICAgIFRlc3RUaWxpbmcgZGF0YSg4LCAxNiwgMzIsIGZhbHNlKTsKICAg
ICBFWFBFQ1RfRVEoMiwgZGF0YS5udW1UaWxlc1goKSk7CiAgICAgRVhQRUNUX0VRKDQsIGRhdGEu
bnVtVGlsZXNZKCkpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>134436</attachid>
            <date>2012-03-28 16:15:35 -0700</date>
            <delta_ts>2012-03-28 17:56:33 -0700</delta_ts>
            <desc>Now with fewer test crashes</desc>
            <filename>bug-82486-20120328161534.patch</filename>
            <type>text/plain</type>
            <size>63143</size>
            <attacher name="Adrienne Walker">enne</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyNDUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDc0NjAzYzA0MDk0ZjZk
MjQ1OTJiZTNiNTMyNDY0NjhjMzVmNmJkMy4uM2ZkOGNkYWQ4NTczMzI5ZTVhODVlOGFlNDJmMGNh
ZGNiNzg0ZDQ0MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTAzLTI4ICBBZHJp
ZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CisKKyAgICAgICAgW2Nocm9taXVtXSBGaXgg
dGlsZWQgbGF5ZXIgYXNzZXJ0IGZvciBodWdlIGxheWVycworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODI0ODYKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUZXN0OiBUaWxlZExheWVyQ2hyb21pdW1UZXN0Lmh1
Z2VMYXllclVwZGF0ZUNyYXNoCisKKyAgICAgICAgVGlsaW5nRGF0YTo6bnVtVGlsZXMoKSBpcyBj
YWxjdWxhdGVkIGFzIHRoZSBwcm9kdWN0IG9mIHR3byBpbnRzIGFuZCBzbworICAgICAgICBjYW4g
cG90ZW50aWFsbHkgb3ZlcmZsb3csIGNhdXNpbmcgbnVtVGlsZXMoKSB0byBiZSBpbmNvcnJlY3Qu
IFRvIGF2b2lkCisgICAgICAgIGNhbGxpbmcgY29kZSBhY2NpZGVudGFsbHkgZmFsbGluZyBpbnRv
IHRoaXMgdHJhcCwgcmVtb3ZlIHRoaXMgZnVuY3Rpb24KKyAgICAgICAgYW5kIGFsbCBjb2RlIHRo
YXQgdXNlcyB0aWxlIGluZGV4IGZyb20gVGlsaW5nRGF0YS4gIFRoaXMgcmVxdWlyZXMKKyAgICAg
ICAgZml4aW5nIHVwIGEgYnVuY2ggb2YgY2FsbGVycyBvZiBUaWxpbmdEYXRhIGFuZCBDQ0xheWVy
VGlsaW5nRGF0YS4KKworICAgICAgICBBZGRpdGlvbmFsbHksIFRpbGluZ0RhdGE6Om51bVRpbGVz
KCkgaGFzIGxvbmcgYmVlbiBhIGNvbmZ1c2luZworICAgICAgICBmdW5jdGlvbiBuYW1lIGluIHNv
bWUgY29udGV4dHMsIHNvIHJlbmFtZSB0byBib29sIGhhc0VtcHR5Qm91bmRzKCkuCisKKyAgICAg
ICAgQWxzbywgcmVtb3ZlIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdRdWFkIGJlY2F1c2UgdGhl
cmUgYXJlIG5vCisgICAgICAgIGNsaWVudHMgb2YgdGhhdCBmdW5jdGlvbi4KKworICAgICAgICAq
IHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnJlc2VydmVUZXh0dXJlcyk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZSk6CisgICAgICAg
IChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZUlkbGUpOgorICAg
ICAgICAoV2ViQ29yZTo6VGlsZWRMYXllckNocm9taXVtOjpuZWVkc0lkbGVQYWludCk6CisgICAg
ICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmlkbGVQYWludFJlY3QpOgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjp0aWxlUmVjdCk6CisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuaDoKKyAg
ICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJUaWxpbmdEYXRhOjpoYXNFbXB0eUJvdW5kcyk6CisgICAg
ICAgIChXZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChX
ZWJDb3JlOjpDQ0xheWVyVGlsaW5nRGF0YTo6aXNFbXB0eSk6CisgICAgICAgICogcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1wbC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpDQ1RpbGVkTGF5ZXJJbXBsOjpiaW5kQ29udGVudHNUZXh0dXJlKToKKyAgICAgICAgKFdl
YkNvcmU6OkNDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKToKKyAgICAgICAgKiBwbGF0Zm9y
bS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpUZXh0dXJlOjpj
cmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6VGV4dHVyZTo6dXBkYXRlU3ViUmVjdCk6CisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VGlsaW5nRGF0YTo6dGlsZUJvdW5kcyk6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdE
YXRhOjp0aWxlQm91bmRzV2l0aEJvcmRlcik6CisgICAgICAgIChXZWJDb3JlOjpUaWxpbmdEYXRh
Ojp0aWxlQm91bmRzTm9ybWFsaXplZCk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1
L1RpbGluZ0RhdGEuaDoKKyAgICAgICAgKFdlYkNvcmU6OlRpbGluZ0RhdGE6Omhhc0VtcHR5Qm91
bmRzKToKKyAgICAgICAgKFRpbGluZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6VGlsaW5nRGF0
YTo6YXNzZXJ0VGlsZSk6CisKIDIwMTItMDMtMjggIEVtaWwgQSBFa2x1bmQgIDxlYWVAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFJlbW92ZSB1bm5lY2Vzc2FyeSByb3VuZGluZyBpbiBSZW5kZXJM
YXllckJhY2tpbmcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggNGVkY2MzMGRhNzQ1YmZl
Y2E0NjA1NjcyZGZjNDBlNzc4MmYwYjRmZC4uODgyMjM4Y2RkNzMyOTNmNWFlNjE1ZTYzYTFiNzA2
MDQwY2Y1M2IzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAor
MjAxMi0wMy0yOCAgQWRyaWVubmUgV2Fsa2VyICA8ZW5uZUBnb29nbGUuY29tPgorCisgICAgICAg
IFtjaHJvbWl1bV0gRml4IHRpbGVkIGxheWVyIGFzc2VydCBmb3IgaHVnZSBsYXllcnMKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgyNDg2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIHRlc3QgZm9yIHVw
ZGF0aW5nIGEgaHVnZSBsYXllciB0aGF0IHdvdWxkIGFzc2VydCBwcmlvciB0byB0aGlzCisgICAg
ICAgIGNvZGUuIEZpeCB1cCBUaWxpbmdEYXRhIHRlc3RzIHRvIHVzZSBhIHRlc3RpbmcgY2xhc3Mg
dGhhdCBwcm92aWRlcyBhCisgICAgICAgIHNhZmUgdmVyc2lvbiBvZiBudW1UaWxlcygpLgorCisg
ICAgICAgICogdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHA6CisgICAgICAgIChXVEY6
OlRFU1QpOgorICAgICAgICAoV1RGKToKKyAgICAgICAgKiB0ZXN0cy9UaWxpbmdEYXRhVGVzdC5j
cHA6CisgICAgICAgIChUZXN0VGlsaW5nKToKKyAgICAgICAgKFdlYkNvcmU6OlRlc3RUaWxpbmc6
OlRlc3RUaWxpbmcpOgorICAgICAgICAoV2ViQ29yZTo6VGVzdFRpbGluZzo6bnVtVGlsZXMpOgor
ICAgICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpURVNUKToKKwogMjAxMi0wMy0y
OCAgU2hlcmlmZiBCb3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAg
VW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjExMjQzMi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21p
dW0uY3BwCmluZGV4IDQ1NjYzMmNjOTlkMzIwZDkxY2VmOTcwMDMyZTg3MTcyMDgxOTEyMWMuLjAx
MGE0MzE4YzgzYWRjODc4ZTRhN2MwNzBjM2UyOThlOGE5MTNjZTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRM
YXllckNocm9taXVtLmNwcApAQCAtMTY2LDcgKzE2Niw4IEBAIGJvb2wgVGlsZWRMYXllckNocm9t
aXVtOjpkcmF3c0NvbnRlbnQoKSBjb25zdAogICAgIGlmICghTGF5ZXJDaHJvbWl1bTo6ZHJhd3ND
b250ZW50KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIGlmIChtX3RpbGluZ09wdGlv
biA9PSBOZXZlclRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMoKSA+IDEpCisgICAgYm9vbCBoYXNN
b3JlVGhhbk9uZVRpbGUgPSBtX3RpbGVyLT5udW1UaWxlc1goKSA+IDEgfHwgbV90aWxlci0+bnVt
VGlsZXNZKCkgPiAxOworICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgaGFz
TW9yZVRoYW5PbmVUaWxlKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICByZXR1cm4gdHJ1
ZTsKQEAgLTU1Niw3ICs1NTcsNyBAQCB2b2lkIFRpbGVkTGF5ZXJDaHJvbWl1bTo6cmVzZXJ2ZVRl
eHR1cmVzKCkKICAgICB1cGRhdGVCb3VuZHMoKTsKIAogICAgIGNvbnN0IEludFJlY3QmIGxheWVy
UmVjdCA9IHZpc2libGVMYXllclJlY3QoKTsKLSAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8
fCAhbV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0LmlzRW1wdHkoKSB8fCBt
X3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQgbGVm
dCwgdG9wLCByaWdodCwgYm90dG9tOwpAQCAtNjA5LDcgKzYxMCw3IEBAIHZvaWQgVGlsZWRMYXll
ckNocm9taXVtOjpwcmVwYXJlVG9VcGRhdGUoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0LCBjb25z
dCBDQ09jY2x1CiAKICAgICByZXNldFVwZGF0ZVN0YXRlKCk7CiAKLSAgICBpZiAobGF5ZXJSZWN0
LmlzRW1wdHkoKSB8fCAhbV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobGF5ZXJSZWN0Lmlz
RW1wdHkoKSB8fCBtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpbnQgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tOwpAQCAtNjI4LDcgKzYyOSw3IEBAIHZv
aWQgVGlsZWRMYXllckNocm9taXVtOjpwcmVwYXJlVG9VcGRhdGVJZGxlKGNvbnN0IEludFJlY3Qm
IGxheWVyUmVjdCwgY29uc3QgQ0NPCiAKICAgICB1cGRhdGVCb3VuZHMoKTsKIAotICAgIGlmICgh
bV90aWxlci0+bnVtVGlsZXMoKSkKKyAgICBpZiAobV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSkK
ICAgICAgICAgcmV0dXJuOwogCiAgICAgSW50UmVjdCBpZGxlUGFpbnRMYXllclJlY3QgPSBpZGxl
UGFpbnRSZWN0KGxheWVyUmVjdCk7CkBAIC03MDEsNyArNzAyLDcgQEAgYm9vbCBUaWxlZExheWVy
Q2hyb21pdW06Om5lZWRzSWRsZVBhaW50KGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCkKICAgICBp
ZiAobV9za2lwc0lkbGVQYWludCkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCi0gICAgaWYgKCFt
X3RpbGVyLT5udW1UaWxlcygpKQorICAgIGlmIChtX3RpbGVyLT5oYXNFbXB0eUJvdW5kcygpKQog
ICAgICAgICByZXR1cm4gZmFsc2U7CiAKICAgICBJbnRSZWN0IGlkbGVQYWludExheWVyUmVjdCA9
IGlkbGVQYWludFJlY3QobGF5ZXJSZWN0KTsKQEAgLTczMSw3ICs3MzIsOCBAQCBJbnRSZWN0IFRp
bGVkTGF5ZXJDaHJvbWl1bTo6aWRsZVBhaW50UmVjdChjb25zdCBJbnRSZWN0JiB2aXNpYmxlTGF5
ZXJSZWN0KQogICAgIC8vIG9mIHRoZW0gaXMgZ29pbmcgdG8gYmVjb21lIHZpc2libGUuIEZvciBz
bWFsbCBsYXllcnMgd2UgcmV0dXJuIHRoZSBlbnRpcmUgbGF5ZXIsIGZvciBsYXJnZXIKICAgICAv
LyBvbmVzIHdlIGF2b2lkIHByZXBhaW50aW5nIHRoZSBsYXllciBhdCBhbGwuCiAgICAgaWYgKHZp
c2libGVMYXllclJlY3QuaXNFbXB0eSgpKSB7Ci0gICAgICAgIGlmICgoZHJhd1RyYW5zZm9ybUlz
QW5pbWF0aW5nKCkgfHwgc2NyZWVuU3BhY2VUcmFuc2Zvcm1Jc0FuaW1hdGluZygpKSAmJiBtX3Rp
bGVyLT5udW1UaWxlcygpIDw9IDkpCisgICAgICAgIGJvb2wgaXNTbWFsbExheWVyID0gbV90aWxl
ci0+bnVtVGlsZXNYKCkgPD0gOSAmJiBtX3RpbGVyLT5udW1UaWxlc1koKSA8PSA5ICYmIG1fdGls
ZXItPm51bVRpbGVzWCgpICogbV90aWxlci0+bnVtVGlsZXNZKCkgPD0gOTsKKyAgICAgICAgaWYg
KChkcmF3VHJhbnNmb3JtSXNBbmltYXRpbmcoKSB8fCBzY3JlZW5TcGFjZVRyYW5zZm9ybUlzQW5p
bWF0aW5nKCkpICYmIGlzU21hbGxMYXllcikKICAgICAgICAgICAgIHJldHVybiBJbnRSZWN0KElu
dFBvaW50KCksIGNvbnRlbnRCb3VuZHMoKSk7CiAgICAgICAgIHJldHVybiBJbnRSZWN0KCk7CiAg
ICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0RhdGEuY3BwCmluZGV4IDE5ZDAyNTFkYzBh
Y2Y5ZTM4MmVjMGYxZmRmZTdkMDNkZTZiZDkwYjguLjQyZjFlOGQxYWI1OThjODM3NWQ1YjVjMTdk
ZDI1ZTYwZTgzYmI2MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUaWxpbmdEYXRhLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5jcHAKQEAg
LTEwNiw4ICsxMDYsNyBAQCB2b2lkIENDTGF5ZXJUaWxpbmdEYXRhOjpsYXllclJlY3RUb1RpbGVJ
bmRpY2VzKGNvbnN0IEludFJlY3QmIGxheWVyUmVjdCwgaW50JiBsZQogCiBJbnRSZWN0IENDTGF5
ZXJUaWxpbmdEYXRhOjp0aWxlUmVjdChjb25zdCBUaWxlKiB0aWxlKSBjb25zdAogewotICAgIGNv
bnN0IGludCBpbmRleCA9IG1fdGlsaW5nRGF0YS50aWxlSW5kZXgodGlsZS0+aSgpLCB0aWxlLT5q
KCkpOwotICAgIEludFJlY3QgdGlsZVJlY3QgPSBtX3RpbGluZ0RhdGEudGlsZUJvdW5kc1dpdGhC
b3JkZXIoaW5kZXgpOworICAgIEludFJlY3QgdGlsZVJlY3QgPSBtX3RpbGluZ0RhdGEudGlsZUJv
dW5kc1dpdGhCb3JkZXIodGlsZS0+aSgpLCB0aWxlLT5qKCkpOwogICAgIHRpbGVSZWN0LnNldFNp
emUobV90aWxlU2l6ZSk7CiAgICAgcmV0dXJuIHRpbGVSZWN0OwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRpbGluZ0Rh
dGEuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5
ZXJUaWxpbmdEYXRhLmgKaW5kZXggOWUxODY5NWU4YzE0MjJiNmM2YzdmZjUzNzM2Y2JhYTQ5OTRm
ZTNiYi4uZDg3ZGNkMjYwYTYyMzQ4ZTliNmQ2ZTk2M2Y5ZjY2Zjk2MjMyNTExNyAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRp
bGluZ0RhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVGlsaW5nRGF0YS5oCkBAIC00NCwxMCArNDQsMTAgQEAgcHVibGljOgogCiAg
ICAgc3RhdGljIFBhc3NPd25QdHI8Q0NMYXllclRpbGluZ0RhdGE+IGNyZWF0ZShjb25zdCBJbnRT
aXplJiB0aWxlU2l6ZSwgQm9yZGVyVGV4ZWxPcHRpb24pOwogCi0gICAgaW50IG51bVRpbGVzKCkg
Y29uc3QgeyByZXR1cm4gbV90aWxpbmdEYXRhLm51bVRpbGVzKCk7IH0KKyAgICBib29sIGhhc0Vt
cHR5Qm91bmRzKCkgY29uc3QgeyByZXR1cm4gbV90aWxpbmdEYXRhLmhhc0VtcHR5Qm91bmRzKCk7
IH0KICAgICBpbnQgbnVtVGlsZXNYKCkgY29uc3QgeyByZXR1cm4gbV90aWxpbmdEYXRhLm51bVRp
bGVzWCgpOyB9CiAgICAgaW50IG51bVRpbGVzWSgpIGNvbnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0
YS5udW1UaWxlc1koKTsgfQotICAgIEludFJlY3QgdGlsZUJvdW5kcyhpbnQgaSwgaW50IGopIGNv
bnN0IHsgcmV0dXJuIG1fdGlsaW5nRGF0YS50aWxlQm91bmRzKG1fdGlsaW5nRGF0YS50aWxlSW5k
ZXgoaSwgaikpOyB9CisgICAgSW50UmVjdCB0aWxlQm91bmRzKGludCBpLCBpbnQgaikgY29uc3Qg
eyByZXR1cm4gbV90aWxpbmdEYXRhLnRpbGVCb3VuZHMoaSwgaik7IH0KICAgICBJbnRQb2ludCB0
ZXh0dXJlT2Zmc2V0KGludCB4SW5kZXgsIGludCB5SW5kZXgpIGNvbnN0IHsgcmV0dXJuIG1fdGls
aW5nRGF0YS50ZXh0dXJlT2Zmc2V0KHhJbmRleCwgeUluZGV4KTsgfQogCiAgICAgLy8gQ2hhbmdl
IHRoZSB0aWxlIHNpemUuIFRoaXMgbWF5IGludmFsaWRhdGUgYWxsIHRoZSBleGlzdGluZyB0aWxl
cy4KQEAgLTU3LDcgKzU3LDcgQEAgcHVibGljOgogICAgIHZvaWQgc2V0Qm9yZGVyVGV4ZWxPcHRp
b24oQm9yZGVyVGV4ZWxPcHRpb24pOwogICAgIGJvb2wgaGFzQm9yZGVyVGV4ZWxzKCkgY29uc3Qg
eyByZXR1cm4gbV90aWxpbmdEYXRhLmJvcmRlclRleGVscygpOyB9CiAKLSAgICBib29sIGlzRW1w
dHkoKSBjb25zdCB7IHJldHVybiAhbV90aWxpbmdEYXRhLm51bVRpbGVzKCkgfHwgIXRpbGVzKCku
c2l6ZSgpOyB9CisgICAgYm9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gaGFzRW1wdHlCb3Vu
ZHMoKSB8fCAhdGlsZXMoKS5zaXplKCk7IH0KIAogICAgIGNvbnN0IENDTGF5ZXJUaWxpbmdEYXRh
JiBvcGVyYXRvcj0oY29uc3QgQ0NMYXllclRpbGluZ0RhdGEmKTsKIApkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NUaWxlZExheWVySW1w
bC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1Rp
bGVkTGF5ZXJJbXBsLmNwcAppbmRleCBkYTgzZTY1NTFjNjQ3Y2M1NzRiOTdkNzE1YzZkMjQzMzg5
NjlmZGVjLi4xMDUxMTY1YjE3ZjMzZWIzNTRmZjE2ZjRkMzA1MTRiZWE1ZjljOTU3IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ1RpbGVk
TGF5ZXJJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJv
bWl1bS9jYy9DQ1RpbGVkTGF5ZXJJbXBsLmNwcApAQCAtODAsNyArODAsOCBAQCB2b2lkIENDVGls
ZWRMYXllckltcGw6OmJpbmRDb250ZW50c1RleHR1cmUoTGF5ZXJSZW5kZXJlckNocm9taXVtKiBs
YXllclJlbmRlcmVyKQogewogICAgIC8vIFRoaXMgZnVuY3Rpb24gaXMgb25seSB2YWxpZCBmb3Ig
c2luZ2xlIHRleHR1cmUgbGF5ZXJzLCBlLmcuIG1hc2tzLgogICAgIEFTU0VSVChtX3RpbGVyKTsK
LSAgICBBU1NFUlQobV90aWxlci0+bnVtVGlsZXMoKSA9PSAxKTsKKyAgICBBU1NFUlQobV90aWxl
ci0+bnVtVGlsZXNYKCkgPT0gMSk7CisgICAgQVNTRVJUKG1fdGlsZXItPm51bVRpbGVzWSgpID09
IDEpOwogCiAgICAgRHJhd2FibGVUaWxlKiB0aWxlID0gdGlsZUF0KDAsIDApOwogICAgIFBsYXRm
b3JtM0RPYmplY3QgdGV4dHVyZUlkID0gdGlsZSA/IHRpbGUtPnRleHR1cmVJZCgpIDogMDsKQEAg
LTE0Myw3ICsxNDQsNyBAQCB2b2lkIENDVGlsZWRMYXllckltcGw6OmFwcGVuZFF1YWRzKENDUXVh
ZEN1bGxlciYgcXVhZExpc3QsIGNvbnN0IENDU2hhcmVkUXVhZFN0YQogCiAgICAgYXBwZW5kR3V0
dGVyUXVhZHMocXVhZExpc3QsIHNoYXJlZFF1YWRTdGF0ZSk7CiAKLSAgICBpZiAoIW1fdGlsZXIg
fHwgIW1fdGlsZXItPm51bVRpbGVzKCkgfHwgbGF5ZXJSZWN0LmlzRW1wdHkoKSkKKyAgICBpZiAo
IW1fdGlsZXIgfHwgbV90aWxlci0+aGFzRW1wdHlCb3VuZHMoKSB8fCBsYXllclJlY3QuaXNFbXB0
eSgpKQogICAgICAgICByZXR1cm47CiAKICAgICBpbnQgbGVmdCwgdG9wLCByaWdodCwgYm90dG9t
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZmlsdGVycy9G
RUN1c3RvbUZpbHRlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcAppbmRleCBkYjhkM2Q5MWMxODg4NTA4MTZmYmUwNjNhZDYx
YTUzZTFkNTllMGQ1Li4yM2I2ZmUxMTg0YzVmMDU4YmQ0ZGNmMmMyOGIzZmJlZmFjNjU2OGM4IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0ZXJzL0ZFQ3Vz
dG9tRmlsdGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9maWx0
ZXJzL0ZFQ3VzdG9tRmlsdGVyLmNwcApAQCAtMTEyLDcgKzExMiw3IEBAIHZvaWQgRkVDdXN0b21G
aWx0ZXI6OnBsYXRmb3JtQXBwbHlTb2Z0d2FyZSgpCiAgICAgICAgIHJlc2l6ZUNvbnRleHQobmV3
Q29udGV4dFNpemUpOwogICAgIAogICAgIC8vIERvIG5vdCBkcmF3IHRoZSBmaWx0ZXIgaWYgdGhl
IGlucHV0IGltYWdlIGNhbm5vdCBmaXQgaW5zaWRlIGEgc2luZ2xlIEdQVSB0ZXh0dXJlLgotICAg
IGlmIChtX2lucHV0VGV4dHVyZS0+dGlsZXMoKS5udW1UaWxlcygpICE9IDEpCisgICAgaWYgKG1f
aW5wdXRUZXh0dXJlLT50aWxlcygpLm51bVRpbGVzWCgpICE9IDEgfHwgbV9pbnB1dFRleHR1cmUt
PnRpbGVzKCkubnVtVGlsZXNZKCkgIT0gMSkKICAgICAgICAgcmV0dXJuOwogICAgIAogICAgIC8v
IFRoZSBzaGFkZXIgaGFkIGNvbXBpbGVyIGVycm9ycy4gV2UgY2Fubm90IGRyYXcgYW55dGhpbmcu
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVy
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGV4dHVyZS5jcHAK
aW5kZXggNWZmN2Q4MTFmZWZlMmE5MjRjYWI0MmNiYWY2OWI5NDk0MWVmNjRkNS4uN2MyYjg2ZTIx
MmRmMTQ4ODkyNGRhZDczOGYwN2MwMDQ3YjlhMDFlYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RleHR1cmUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UZXh0dXJlLmNwcApAQCAtOTAsNyArOTAsMTMgQEAgUGFz
c1JlZlB0cjxUZXh0dXJlPiBUZXh0dXJlOjpjcmVhdGUoR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRl
eHQsIEZvcm1hdCBmb3JtYXQsIGkKICAgICBpbnQgbWF4VGV4dHVyZVNpemUgPSAwOwogICAgIGNv
bnRleHQtPmdldEludGVnZXJ2KEdyYXBoaWNzQ29udGV4dDNEOjpNQVhfVEVYVFVSRV9TSVpFLCAm
bWF4VGV4dHVyZVNpemUpOwogICAgIFRpbGluZ0RhdGEgdGlsaW5nKG1heFRleHR1cmVTaXplLCB3
aWR0aCwgaGVpZ2h0LCB0cnVlKTsKLSAgICBpbnQgbnVtVGlsZXMgPSB0aWxpbmcubnVtVGlsZXMo
KTsKKworICAgIC8vIENoZWNrIGZvciBvdmVyZmxvdy4KKyAgICBpbnQgbnVtVGlsZXMgPSB0aWxp
bmcubnVtVGlsZXNYKCkgKiB0aWxpbmcubnVtVGlsZXNZKCk7CisgICAgaWYgKG51bVRpbGVzIC8g
dGlsaW5nLm51bVRpbGVzWCgpICE9IHRpbGluZy5udW1UaWxlc1koKSkgeworICAgICAgICB0aWxp
bmcuc2V0VG90YWxTaXplKDAsIDApOworICAgICAgICBudW1UaWxlcyA9IDA7CisgICAgfQogCiAg
ICAgT3duUHRyPFZlY3Rvcjx1bnNpZ25lZCBpbnQ+ID4gdGV4dHVyZUlkcyA9IGFkb3B0UHRyKG5l
dyBWZWN0b3I8dW5zaWduZWQgaW50PihudW1UaWxlcykpOwogICAgIHRleHR1cmVJZHMtPmZpbGwo
MCwgbnVtVGlsZXMpOwpAQCAtMTA0LDcgKzExMCw5IEBAIFBhc3NSZWZQdHI8VGV4dHVyZT4gVGV4
dHVyZTo6Y3JlYXRlKEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCBGb3JtYXQgZm9ybWF0LCBp
CiAgICAgICAgIH0KICAgICAgICAgdGV4dHVyZUlkcy0+YXQoaSkgPSB0ZXh0dXJlSWQ7CiAKLSAg
ICAgICAgSW50UmVjdCB0aWxlQm91bmRzV2l0aEJvcmRlciA9IHRpbGluZy50aWxlQm91bmRzV2l0
aEJvcmRlcihpKTsKKyAgICAgICAgaW50IHhJbmRleCA9IGkgJSB0aWxpbmcubnVtVGlsZXNYKCk7
CisgICAgICAgIGludCB5SW5kZXggPSBpIC8gdGlsaW5nLm51bVRpbGVzWCgpOworICAgICAgICBJ
bnRSZWN0IHRpbGVCb3VuZHNXaXRoQm9yZGVyID0gdGlsaW5nLnRpbGVCb3VuZHNXaXRoQm9yZGVy
KHhJbmRleCwgeUluZGV4KTsKIAogICAgICAgICB1bnNpZ25lZCBpbnQgZ2xGb3JtYXQgPSAwOwog
ICAgICAgICB1bnNpZ25lZCBpbnQgZ2xUeXBlID0gMDsKQEAgLTE2OCw5ICsxNzYsMTIgQEAgdm9p
ZCBUZXh0dXJlOjp1cGRhdGVTdWJSZWN0KHZvaWQqIHBpeGVscywgY29uc3QgSW50UmVjdCYgdXBk
YXRlUmVjdCkKICAgICAgICAgbWluKG1fdGlsZXMubWF4VGV4dHVyZVNpemUoKSwgbV90aWxlcy5i
b3JkZXJUZXhlbHMoKSArIHVwZGF0ZVJlY3RTYW5pdGl6ZWQuaGVpZ2h0KCkpOwogICAgIE93bkFy
cmF5UHRyPHVpbnQzMl90PiB0ZW1wQnVmZiA9IGFkb3B0QXJyYXlQdHIobmV3IHVpbnQzMl90W3Rl
bXBCdWZmU2l6ZV0pOwogCi0gICAgZm9yIChpbnQgdGlsZSA9IDA7IHRpbGUgPCBtX3RpbGVzLm51
bVRpbGVzKCk7IHRpbGUrKykgeworICAgIGZvciAoaW50IHRpbGUgPSAwOyB0aWxlIDwgbV90aWxl
cy5udW1UaWxlc1goKSAqIG1fdGlsZXMubnVtVGlsZXNZKCk7IHRpbGUrKykgeworICAgICAgICBp
bnQgeEluZGV4ID0gdGlsZSAlIG1fdGlsZXMubnVtVGlsZXNYKCk7CisgICAgICAgIGludCB5SW5k
ZXggPSB0aWxlIC8gbV90aWxlcy5udW1UaWxlc1goKTsKKwogICAgICAgICAvLyBJbnRlcnNlY3Qg
d2l0aCB0aWxlCi0gICAgICAgIEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIgPSBtX3RpbGVz
LnRpbGVCb3VuZHNXaXRoQm9yZGVyKHRpbGUpOworICAgICAgICBJbnRSZWN0IHRpbGVCb3VuZHNX
aXRoQm9yZGVyID0gbV90aWxlcy50aWxlQm91bmRzV2l0aEJvcmRlcih4SW5kZXgsIHlJbmRleCk7
CiAKICAgICAgICAgSW50UmVjdCB1cGRhdGVSZWN0SW50ZXJzZWN0ZWQgPSB1cGRhdGVSZWN0U2Fu
aXRpemVkOwogICAgICAgICB1cGRhdGVSZWN0SW50ZXJzZWN0ZWQuaW50ZXJzZWN0KHRpbGVCb3Vu
ZHNXaXRoQm9yZGVyKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2dwdS9UaWxpbmdEYXRhLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dwdS9UaWxpbmdEYXRhLmNwcAppbmRleCAyMGRiNDQxY2UyNWY1N2M2YzdmZmVhNjI2NWI3NTM3
ZmJhMDk1MzFlLi42YmFkNjI4NDQwNzgyZTg5ZjMxOTBjNTY2NDgxOGEyOGY0ZjI0YmFiIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEu
Y3BwCkBAIC05OSwyMyArOTksMjEgQEAgaW50IFRpbGluZ0RhdGE6OnRpbGVZSW5kZXhGcm9tU3Jj
Q29vcmQoaW50IHNyY1BvcykgY29uc3QKICAgICByZXR1cm4gbWluKG1heCh5LCAwKSwgbnVtVGls
ZXNZKCkgLSAxKTsKIH0KIAotSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzKGludCB0aWxl
KSBjb25zdAorSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzKGludCBpLCBpbnQgaikgY29u
c3QKIHsKLSAgICBhc3NlcnRUaWxlKHRpbGUpOwotICAgIGludCBpeCA9IHRpbGVYSW5kZXgodGls
ZSk7Ci0gICAgaW50IGl5ID0gdGlsZVlJbmRleCh0aWxlKTsKLSAgICBpbnQgeCA9IHRpbGVQb3Np
dGlvblgoaXgpOwotICAgIGludCB5ID0gdGlsZVBvc2l0aW9uWShpeSk7Ci0gICAgaW50IHdpZHRo
ID0gdGlsZVNpemVYKGl4KTsKLSAgICBpbnQgaGVpZ2h0ID0gdGlsZVNpemVZKGl5KTsKKyAgICBh
c3NlcnRUaWxlKGksIGopOworICAgIGludCB4ID0gdGlsZVBvc2l0aW9uWChpKTsKKyAgICBpbnQg
eSA9IHRpbGVQb3NpdGlvblkoaik7CisgICAgaW50IHdpZHRoID0gdGlsZVNpemVYKGkpOworICAg
IGludCBoZWlnaHQgPSB0aWxlU2l6ZVkoaik7CiAgICAgQVNTRVJUKHggPj0gMCAmJiB5ID49IDAg
JiYgd2lkdGggPj0gMCAmJiBoZWlnaHQgPj0gMCk7CiAgICAgQVNTRVJUKHggPD0gdG90YWxTaXpl
WCgpICYmIHkgPD0gdG90YWxTaXplWSgpKTsKICAgICByZXR1cm4gSW50UmVjdCh4LCB5LCB3aWR0
aCwgaGVpZ2h0KTsKIH0KIAotSW50UmVjdCBUaWxpbmdEYXRhOjp0aWxlQm91bmRzV2l0aEJvcmRl
cihpbnQgdGlsZSkgY29uc3QKK0ludFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3Jk
ZXIoaW50IGksIGludCBqKSBjb25zdAogewotICAgIEludFJlY3QgYm91bmRzID0gdGlsZUJvdW5k
cyh0aWxlKTsKKyAgICBJbnRSZWN0IGJvdW5kcyA9IHRpbGVCb3VuZHMoaSwgaik7CiAKICAgICBp
ZiAobV9ib3JkZXJUZXhlbHMpIHsKICAgICAgICAgaW50IHgxID0gYm91bmRzLngoKTsKQEAgLTEy
MywxMyArMTIxLDEzIEBAIEludFJlY3QgVGlsaW5nRGF0YTo6dGlsZUJvdW5kc1dpdGhCb3JkZXIo
aW50IHRpbGUpIGNvbnN0CiAgICAgICAgIGludCB5MSA9IGJvdW5kcy55KCk7CiAgICAgICAgIGlu
dCB5MiA9IGJvdW5kcy5tYXhZKCk7CiAKLSAgICAgICAgaWYgKHRpbGVYSW5kZXgodGlsZSkgPiAw
KQorICAgICAgICBpZiAoaSA+IDApCiAgICAgICAgICAgICB4MS0tOwotICAgICAgICBpZiAodGls
ZVhJbmRleCh0aWxlKSA8IChudW1UaWxlc1goKSAtIDEpKQorICAgICAgICBpZiAoaSA8IChudW1U
aWxlc1goKSAtIDEpKQogICAgICAgICAgICAgeDIrKzsKLSAgICAgICAgaWYgKHRpbGVZSW5kZXgo
dGlsZSkgPiAwKQorICAgICAgICBpZiAoaiA+IDApCiAgICAgICAgICAgICB5MS0tOwotICAgICAg
ICBpZiAodGlsZVlJbmRleCh0aWxlKSA8IChudW1UaWxlc1koKSAtIDEpKQorICAgICAgICBpZiAo
aiA8IChudW1UaWxlc1koKSAtIDEpKQogICAgICAgICAgICAgeTIrKzsKIAogICAgICAgICBib3Vu
ZHMgPSBJbnRSZWN0KHgxLCB5MSwgeDIgLSB4MSwgeTIgLSB5MSk7CkBAIC0xMzgsMTAgKzEzNiwx
MCBAQCBJbnRSZWN0IFRpbGluZ0RhdGE6OnRpbGVCb3VuZHNXaXRoQm9yZGVyKGludCB0aWxlKSBj
b25zdAogICAgIHJldHVybiBib3VuZHM7CiB9CiAKLUZsb2F0UmVjdCBUaWxpbmdEYXRhOjp0aWxl
Qm91bmRzTm9ybWFsaXplZChpbnQgdGlsZSkgY29uc3QKK0Zsb2F0UmVjdCBUaWxpbmdEYXRhOjp0
aWxlQm91bmRzTm9ybWFsaXplZChpbnQgaSwgaW50IGopIGNvbnN0CiB7Ci0gICAgYXNzZXJ0VGls
ZSh0aWxlKTsKLSAgICBGbG9hdFJlY3QgYm91bmRzKHRpbGVCb3VuZHModGlsZSkpOworICAgIGFz
c2VydFRpbGUoaSwgaik7CisgICAgRmxvYXRSZWN0IGJvdW5kcyh0aWxlQm91bmRzKGksIGopKTsK
ICAgICBib3VuZHMuc2NhbGUoMS4wZiAvIG1fdG90YWxTaXplWCwgMS4wZiAvIG1fdG90YWxTaXpl
WSk7CiAgICAgcmV0dXJuIGJvdW5kczsKIH0KQEAgLTIxNiwzNiArMjE0LDYgQEAgSW50UmVjdCBU
aWxpbmdEYXRhOjpvdmVybGFwcGVkVGlsZUluZGljZXMoY29uc3QgV2ViQ29yZTo6RmxvYXRSZWN0
ICZzcmNSZWN0KSBjb24KICAgICByZXR1cm4gb3ZlcmxhcHBlZFRpbGVJbmRpY2VzKGVuY2xvc2lu
Z0ludFJlY3Qoc3JjUmVjdCkpOwogfQogCi12b2lkIFRpbGluZ0RhdGE6OmludGVyc2VjdERyYXdR
dWFkKGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgY29uc3QgRmxvYXRSZWN0JiBkc3RSZWN0LCBp
bnQgdGlsZSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgRmxvYXRSZWN0KiBu
ZXdTcmMsIEZsb2F0UmVjdCogbmV3RHN0KSBjb25zdAotewotICAgIC8vIEludGVyc2VjdCB3aXRo
IHRpbGUKLSAgICBGbG9hdFJlY3QgdGlsZUJvdW5kcyA9IHRoaXMtPnRpbGVCb3VuZHModGlsZSk7
Ci0gICAgRmxvYXRSZWN0IHNyY1JlY3RJbnRlcnNlY3RlZCA9IHNyY1JlY3Q7Ci0gICAgc3JjUmVj
dEludGVyc2VjdGVkLmludGVyc2VjdCh0aWxlQm91bmRzKTsKLQotICAgIGlmIChzcmNSZWN0SW50
ZXJzZWN0ZWQuaXNFbXB0eSgpKSB7Ci0gICAgICAgICpuZXdTcmMgPSAqbmV3RHN0ID0gRmxvYXRS
ZWN0KDAsIDAsIDAsIDApOwotICAgICAgICByZXR1cm47Ci0gICAgfQotCi0gICAgZmxvYXQgc3Jj
UmVjdEludGVyc2VjdGVkTm9ybVggPSAoc3JjUmVjdEludGVyc2VjdGVkLngoKSAtIHNyY1JlY3Qu
eCgpKSAvIHNyY1JlY3Qud2lkdGgoKTsKLSAgICBmbG9hdCBzcmNSZWN0SW50ZXJzZWN0ZWROb3Jt
WSA9IChzcmNSZWN0SW50ZXJzZWN0ZWQueSgpIC0gc3JjUmVjdC55KCkpIC8gc3JjUmVjdC5oZWln
aHQoKTsKLSAgICBmbG9hdCBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtVyA9IHNyY1JlY3RJbnRlcnNl
Y3RlZC53aWR0aCgpIC8gc3JjUmVjdC53aWR0aCgpOwotICAgIGZsb2F0IHNyY1JlY3RJbnRlcnNl
Y3RlZE5vcm1IID0gc3JjUmVjdEludGVyc2VjdGVkLmhlaWdodCgpIC8gc3JjUmVjdC5oZWlnaHQo
KTsKLQotICAgICpuZXdTcmMgPSBzcmNSZWN0SW50ZXJzZWN0ZWQ7Ci0gICAgbmV3U3JjLT5tb3Zl
KAotICAgICAgICAtdGlsZUJvdW5kcy54KCkgKyAoKHRpbGVYSW5kZXgodGlsZSkgPiAwKSA/IG1f
Ym9yZGVyVGV4ZWxzIDogMCksCi0gICAgICAgIC10aWxlQm91bmRzLnkoKSArICgodGlsZVlJbmRl
eCh0aWxlKSA+IDApID8gbV9ib3JkZXJUZXhlbHMgOiAwKSk7Ci0KLSAgICAqbmV3RHN0ID0gRmxv
YXRSZWN0KAotICAgICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtWCAqIGRzdFJlY3Qud2lkdGgo
KSArIGRzdFJlY3QueCgpLAotICAgICAgICBzcmNSZWN0SW50ZXJzZWN0ZWROb3JtWSAqIGRzdFJl
Y3QuaGVpZ2h0KCkgKyBkc3RSZWN0LnkoKSwKLSAgICAgICAgc3JjUmVjdEludGVyc2VjdGVkTm9y
bVcgKiBkc3RSZWN0LndpZHRoKCksCi0gICAgICAgIHNyY1JlY3RJbnRlcnNlY3RlZE5vcm1IICog
ZHN0UmVjdC5oZWlnaHQoKSk7Ci19Ci0KIEludFBvaW50IFRpbGluZ0RhdGE6OnRleHR1cmVPZmZz
ZXQoaW50IHhJbmRleCwgaW50IHlJbmRleCkgY29uc3QKIHsKICAgICBpbnQgbGVmdCA9ICgheElu
ZGV4IHx8IG1fbnVtVGlsZXNYID09IDEpID8gMCA6IG1fYm9yZGVyVGV4ZWxzOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dwdS9UaWxpbmdEYXRhLmgKaW5kZXggYmM4
NjFlZjY4M2EzMTcyZDQ4ODNlNDBhNDVhZmYzODgwNWFmZmI1MS4uMTQ2ZGZlMTliZmU2NjdkNmEx
YWExNmIwNTEyNzBiNzZlNjgzOTYzOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3B1L1RpbGluZ0RhdGEuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9ncHUvVGlsaW5nRGF0YS5oCkBAIC01MCwxOCArNTAsMTUgQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0SGFzQm9yZGVyVGV4ZWxzKGJvb2wpOwogICAgIGludCBib3JkZXJUZXhlbHMo
KSBjb25zdCB7IHJldHVybiBtX2JvcmRlclRleGVsczsgfQogCi0gICAgaW50IG51bVRpbGVzKCkg
Y29uc3QgeyByZXR1cm4gbnVtVGlsZXNYKCkgKiBudW1UaWxlc1koKTsgfQorICAgIGJvb2wgaGFz
RW1wdHlCb3VuZHMoKSBjb25zdCB7IHJldHVybiAhbnVtVGlsZXNYKCkgfHwgIW51bVRpbGVzWSgp
OyB9CiAgICAgaW50IG51bVRpbGVzWCgpIGNvbnN0IHsgcmV0dXJuIG1fbnVtVGlsZXNYOyB9CiAg
ICAgaW50IG51bVRpbGVzWSgpIGNvbnN0IHsgcmV0dXJuIG1fbnVtVGlsZXNZOyB9Ci0gICAgaW50
IHRpbGVJbmRleChpbnQgeCwgaW50IHkpIGNvbnN0IHsgcmV0dXJuIHggKyB5ICogbnVtVGlsZXNY
KCk7IH0KLSAgICBpbnQgdGlsZVhJbmRleChpbnQgdGlsZSkgY29uc3QgeyBhc3NlcnRUaWxlKHRp
bGUpOyByZXR1cm4gdGlsZSAlIG51bVRpbGVzWCgpOyB9Ci0gICAgaW50IHRpbGVZSW5kZXgoaW50
IHRpbGUpIGNvbnN0IHsgYXNzZXJ0VGlsZSh0aWxlKTsgcmV0dXJuIHRpbGUgLyBudW1UaWxlc1go
KTsgfQogICAgIGludCB0aWxlWEluZGV4RnJvbVNyY0Nvb3JkKGludCkgY29uc3Q7CiAgICAgaW50
IHRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoaW50KSBjb25zdDsKIAotICAgIEludFJlY3QgdGlsZUJv
dW5kcyhpbnQgdGlsZSkgY29uc3Q7Ci0gICAgSW50UmVjdCB0aWxlQm91bmRzV2l0aEJvcmRlcihp
bnQgdGlsZSkgY29uc3Q7Ci0gICAgRmxvYXRSZWN0IHRpbGVCb3VuZHNOb3JtYWxpemVkKGludCB0
aWxlKSBjb25zdDsKKyAgICBJbnRSZWN0IHRpbGVCb3VuZHMoaW50LCBpbnQpIGNvbnN0OworICAg
IEludFJlY3QgdGlsZUJvdW5kc1dpdGhCb3JkZXIoaW50LCBpbnQpIGNvbnN0OworICAgIEZsb2F0
UmVjdCB0aWxlQm91bmRzTm9ybWFsaXplZChpbnQsIGludCkgY29uc3Q7CiAgICAgaW50IHRpbGVQ
b3NpdGlvblgoaW50IHhJbmRleCkgY29uc3Q7CiAgICAgaW50IHRpbGVQb3NpdGlvblkoaW50IHlJ
bmRleCkgY29uc3Q7CiAgICAgaW50IHRpbGVTaXplWChpbnQgeEluZGV4KSBjb25zdDsKQEAgLTY5
LDE2ICs2NiwxMiBAQCBwdWJsaWM6CiAgICAgSW50UmVjdCBvdmVybGFwcGVkVGlsZUluZGljZXMo
Y29uc3QgSW50UmVjdCYgc3JjUmVjdCkgY29uc3Q7CiAgICAgSW50UmVjdCBvdmVybGFwcGVkVGls
ZUluZGljZXMoY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0KSBjb25zdDsKIAotICAgIC8vIEdpdmVu
IGEgc2V0IG9mIHNvdXJjZSBhbmQgZGVzdGluYXRpb24gY29vcmRpbmF0ZXMgZm9yIGEgZHJhd2lu
ZyBxdWFkCi0gICAgLy8gaW4gdGV4ZWwgdW5pdHMsIHJldHVybnMgYWRqdXN0ZWQgZGF0YSB0byBy
ZW5kZXIganVzdCB0aGUgb25lIHRpbGUuCi0gICAgdm9pZCBpbnRlcnNlY3REcmF3UXVhZChjb25z
dCBGbG9hdFJlY3QmIHNyY1JlY3QsIGNvbnN0IEZsb2F0UmVjdCYgZHN0UmVjdCwgaW50IHRpbGUs
IEZsb2F0UmVjdCogbmV3U3JjLCBGbG9hdFJlY3QqIG5ld0RzdCkgY29uc3Q7Ci0KICAgICAvLyBE
aWZmZXJlbmNlIGJldHdlZW4gdGlsZUJvdW5kJ3MgYW5kIHRpbGVCb3VuZFdpdGhCb3JkZXIncyBs
b2NhdGlvbigpLgogICAgIEludFBvaW50IHRleHR1cmVPZmZzZXQoaW50IHhJbmRleCwgaW50IHlJ
bmRleCkgY29uc3Q7CiAKIHByaXZhdGU6CiAgICAgVGlsaW5nRGF0YSgpIDogbV9tYXhUZXh0dXJl
U2l6ZSgwKSwgbV90b3RhbFNpemVYKDApLCBtX3RvdGFsU2l6ZVkoMCkge30KLSAgICB2b2lkIGFz
c2VydFRpbGUoaW50IHRpbGUpIGNvbnN0IHsgQVNTRVJUX1VOVVNFRCh0aWxlLCB0aWxlID49IDAg
JiYgdGlsZSA8IG51bVRpbGVzKCkpOyB9CisgICAgdm9pZCBhc3NlcnRUaWxlKGludCBpLCBpbnQg
aikgY29uc3QgeyBBU1NFUlRfVU5VU0VEKGksIGkgPj0gMCAmJiBpIDwgbnVtVGlsZXNYKCkpOyBB
U1NFUlRfVU5VU0VEKGosIGogPj0gMCAmJiBqIDwgbnVtVGlsZXNZKCkpOyB9CiAgICAgdm9pZCBy
ZWNvbXB1dGVOdW1UaWxlcygpOwogCiAgICAgaW50IG1fbWF4VGV4dHVyZVNpemU7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3Qu
Y3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9UaWxlZExheWVyQ2hyb21pdW1UZXN0
LmNwcAppbmRleCAxMjljOTE1OTRkNGJkYzgzMDAwZDNlNzZmOTQ1ZTE5OWE1ODlhYjM0Li40NjEw
NmU0MTg1ZjM2OTY0YmIzYjk5OGU3YWI1MDY4M2RhZjE5YjY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCisrKyBiL1Nv
dXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAKQEAg
LTEwODIsNiArMTA4MiwxOSBAQCBURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIHJlc2l6ZVRv
U21hbGxlcikKICAgICBsYXllci0+aW52YWxpZGF0ZVJlY3QoSW50UmVjdCgwLCAwLCAyMDAsIDIw
MCkpOwogfQogCitURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIGh1Z2VMYXllclVwZGF0ZUNy
YXNoKQoreworICAgIE93blB0cjxUZXh0dXJlTWFuYWdlcj4gdGV4dHVyZU1hbmFnZXIgPSBUZXh0
dXJlTWFuYWdlcjo6Y3JlYXRlKDYwKjEwMjQqMTAyNCwgNjAqMTAyNCoxMDI0LCAxMDI0KTsKKyAg
ICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gbGF5ZXIgPSBhZG9wdFJlZihuZXcgRmFr
ZVRpbGVkTGF5ZXJDaHJvbWl1bSh0ZXh0dXJlTWFuYWdlci5nZXQoKSkpOworCisgICAgaW50IHNp
emUgPSAxIDw8IDMwOworICAgIGxheWVyLT5zZXRCb3VuZHMoSW50U2l6ZShzaXplLCBzaXplKSk7
CisgICAgbGF5ZXItPmludmFsaWRhdGVSZWN0KEludFJlY3QoMCwgMCwgc2l6ZSwgc2l6ZSkpOwor
CisgICAgLy8gRW5zdXJlIG5vIGNyYXNoIGZvciBib3VuZHMgd2hlcmUgc2l6ZSAqIHNpemUgd291
bGQgb3ZlcmZsb3cgYW4gaW50LgorICAgIGxheWVyLT5wcmVwYXJlVG9VcGRhdGUoSW50UmVjdCgw
LCAwLCA3MDAsIDcwMCksIDApOworfQorCiBURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIHBh
cnRpYWxVcGRhdGVzKQogewogICAgIENDU2V0dGluZ3Mgc2V0dGluZ3M7CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGluZ0RhdGFUZXN0LmNwcCBiL1NvdXJjZS9X
ZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsaW5nRGF0YVRlc3QuY3BwCmluZGV4IGMyOTc0M2Y4NmFk
NDViOTE2MWQ2MDUyMThmYWVhZWVjYzMxYzc4NDIuLjQ3YzAzNjFlYWVlYWE1MmQ3OTY5NGNiODRj
ZTliZWM3Y2QwYzJiZDQgMTAwNzU1Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
VGlsaW5nRGF0YVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGls
aW5nRGF0YVRlc3QuY3BwCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAK
ICNpbmNsdWRlICJUaWxpbmdEYXRhLmgiCisjaW5jbHVkZSA8d3RmL0Fzc2VydGlvbnMuaD4KIAog
I2luY2x1ZGUgPGd0ZXN0L2d0ZXN0Lmg+CiAKQEAgLTM4LDM4NSArMzksNDA2IEBAIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3BhY2UgewogCitjbGFzcyBUZXN0VGlsaW5nIDogcHVi
bGljIFRpbGluZ0RhdGEgeworcHVibGljOgorICAgIFRlc3RUaWxpbmcoaW50IG1heFRleHR1cmVT
aXplLCBpbnQgdG90YWxTaXplWCwgaW50IHRvdGFsU2l6ZVksIGJvb2wgaGFzQm9yZGVyVGV4ZWxz
KQorICAgICAgICA6IFRpbGluZ0RhdGEobWF4VGV4dHVyZVNpemUsIHRvdGFsU2l6ZVgsIHRvdGFs
U2l6ZVksIGhhc0JvcmRlclRleGVscykKKyAgICB7CisgICAgfQorCisgICAgLy8gVGhpcyBmdW5j
dGlvbiBvbmx5IGF2YWlsYWJsZSBmb3IgdGVzdGluZyBiZWNhdXNlIG9mIHBvdGVudGlhbCBvdmVy
Zmxvdy4KKyAgICBpbnQgbnVtVGlsZXMoKSBjb25zdAorICAgIHsKKyAgICAgICAgaW50IG51bVRp
bGVzID0gbnVtVGlsZXNYKCkgKiBudW1UaWxlc1koKTsKKworICAgICAgICAvLyBBc3NlcnQgbm8g
b3ZlcmZsb3cuCisgICAgICAgIEVYUEVDVF9HRShudW1UaWxlcywgMCk7CisgICAgICAgIGlmIChu
dW1UaWxlcyA+IDApCisgICAgICAgICAgICBFWFBFQ1RfRVEobnVtVGlsZXMgLyBudW1UaWxlc1go
KSwgbnVtVGlsZXNZKCkpOworCisgICAgICAgIHJldHVybiBudW1UaWxlczsKKyAgICB9Cit9Owor
CiBURVNUKFRpbGluZ0RhdGFUZXN0LCBudW1UaWxlc19Ob1RpbGluZykKIHsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgxNiwgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQ
RUNUX0VRKDEsIFRpbGluZ0RhdGEoMTYsIDE1LCAxNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMTYsIDE2LCAxNiwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMTYsICAxLCAxNiwgZmFsc2UpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDE1LCAxNSwgMTUsIHRydWUpLm51bVRpbGVz
KCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDE2LCAxNiwgMTYsIGZhbHNlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgMTUsIDE1LCB0cnVlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgMTYsIDE2LCB0cnVl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygxNiwgIDEsIDE2LCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMTUsIDE1LCAx
NSwgdHJ1ZSkubnVtVGlsZXMoKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIG51bVRpbGVz
X1RpbGluZ05vQm9yZGVycykKIHsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMCwg
IDAsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAg
NCwgIDAsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgw
LCAgMCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSg0LCAgNCwgIDAsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5n
RGF0YSg0LCAgMCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgtOCwgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgtMSwgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgwLCAgMSwgIDEsIGZhbHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVD
VF9FUSgxLCBUaWxpbmdEYXRhKDEsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgyLCBUaWxpbmdEYXRhKDEsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDEsICAyLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkpOwot
ICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAxLCAgMSwgZmFsc2UpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAxLCAgMiwgZmFsc2UpLm51bVRpbGVz
KCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMSwgZmFsc2UpLm51bVRp
bGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMiwgZmFsc2UpLm51
bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAzLCAgMywgZmFsc2Up
Lm51bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDEsICA0LCBm
YWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDIsICA0
LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDMs
ICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwg
IDQsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
NCwgIDUsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0Rh
dGEoNCwgIDYsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGlu
Z0RhdGEoNCwgIDcsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRp
bGluZ0RhdGEoNCwgIDgsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMs
IFRpbGluZ0RhdGEoNCwgIDksICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDMsIFRpbGluZ0RhdGEoNCwgMTAsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDMsIFRpbGluZ0RhdGEoNCwgMTEsICA0LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMiwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgMywgIDUsIGZhbHNlKS5udW1UaWxlcygp
KTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNCwgIDUsIGZhbHNlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIGZhbHNlKS5udW1U
aWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNiwgIDUsIGZhbHNlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNywgIDUsIGZhbHNl
KS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgOCwgIDUsIGZh
bHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgOSwgIDUs
IGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAxMCwg
IDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAx
MSwgIDUsIGZhbHNlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRh
KDE2LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSgxNywgMTYsIDE2LCBmYWxzZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRp
bGluZ0RhdGEoMTUsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg0
LCBUaWxpbmdEYXRhKDgsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USg2LCBUaWxpbmdEYXRhKDgsIDE3LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDAsICAwLCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICAwLCAgNCwgZmFsc2UpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQsICA0LCAgMCwgZmFsc2UpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQsICAwLCAgNCwgZmFsc2UpLm51bVRpbGVz
KCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC04LCAxLCAgMSwgZmFsc2UpLm51bVRp
bGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC0xLCAxLCAgMSwgZmFsc2UpLm51
bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICAxLCAgMSwgZmFsc2Up
Lm51bVRpbGVzKCkpOworCisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMSwgIDEsICAxLCBm
YWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMSwgIDEsICAy
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMSwgIDIs
ICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwg
IDEsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MiwgIDEsICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMiwgIDIsICAxLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RU
aWxpbmcoMiwgIDIsICAyLCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRl
c3RUaWxpbmcoMywgIDMsICAzLCBmYWxzZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZyg0LCAgMSwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZyg0LCAgMiwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBFWFBF
Q1RfRVEoMSwgVGVzdFRpbGluZyg0LCAgMywgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg0LCAgNCwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNSwgIDQsIGZhbHNlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNiwgIDQsIGZhbHNlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNywgIDQsIGZhbHNlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgOCwgIDQsIGZhbHNlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAgOSwgIDQsIGZhbHNlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAxMCwgIDQsIGZhbHNl
KS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAxMSwgIDQsIGZh
bHNlKS5udW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAxLCAg
NSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAy
LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUs
ICAzLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5n
KDUsICA0LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGls
aW5nKDUsICA1LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0
VGlsaW5nKDUsICA2LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBU
ZXN0VGlsaW5nKDUsICA3LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgy
LCBUZXN0VGlsaW5nKDUsICA4LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9F
USgyLCBUZXN0VGlsaW5nKDUsICA5LCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVYUEVD
VF9FUSgyLCBUZXN0VGlsaW5nKDUsIDEwLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDExLCAgNSwgZmFsc2UpLm51bVRpbGVzKCkpOworCisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMTYsIDE2LCAxNiwgZmFsc2UpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDE3LCAxNiwgMTYsIGZhbHNlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRpbGluZygxNSwgMTYsIDE2LCBmYWxzZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoOCwgMTYsIDE2LCBmYWxzZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDYsIFRlc3RUaWxpbmcoOCwgMTcsIDE2LCBmYWxz
ZSkubnVtVGlsZXMoKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIG51bVRpbGVzX1RpbGlu
Z1dpdGhCb3JkZXJzKQogewotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDAsICAwLCAgMCwg
dHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMCwgIDQsICAw
LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgwLCAgMCwg
IDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDQsICA0
LCAgMCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoNCwg
IDAsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgt
OCwgMSwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRh
KC0xLCAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0Rh
dGEoMCwgIDEsICAxLCB0cnVlKS5udW1UaWxlcygpKTsKLQotICAgIEVYUEVDVF9FUSgxLCBUaWxp
bmdEYXRhKDEsICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRp
bGluZ0RhdGEoMSwgIDEsICAyLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgxLCAgMiwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDIsICAxLCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VR
KDEsIFRpbGluZ0RhdGEoMiwgIDEsICAyLCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgyLCAgMiwgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVD
VF9FUSgxLCBUaWxpbmdEYXRhKDIsICAyLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0KLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAgMSwgIDMsIHRydWUpLm51bVRpbGVzKCkpOwotICAg
IEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsICAyLCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0g
ICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgIDMsICAzLCB0cnVlKS5udW1UaWxlcygpKTsK
LSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAgNCwgIDMsIHRydWUpLm51bVRpbGVzKCkp
OwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICA1LCAgMywgdHJ1ZSkubnVtVGlsZXMo
KSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgIDYsICAzLCB0cnVlKS5udW1UaWxl
cygpKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSgzLCAgNywgIDMsIHRydWUpLm51bVRp
bGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDEsICA0LCB0cnVlKS5u
dW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSg0LCAgMiwgIDQsIHRydWUp
Lm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDQsICAzLCAgNCwgdHJ1
ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNCwgIDQsICA0LCB0
cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg0LCAgNSwgIDQs
IHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDQsICA2LCAg
NCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNCwgIDcs
ICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg0LCAg
OCwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDQs
ICA5LCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEo
NCwgMTAsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0
YSg0LCAxMSwgIDQsIHRydWUpLm51bVRpbGVzKCkpOwotCi0gICAgRVhQRUNUX0VRKDEsIFRpbGlu
Z0RhdGEoNSwgIDEsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSg1LCAgMiwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDUsICAzLCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoNSwgIDQsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDUsICA2LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAgRVhQRUNU
X0VRKDIsIFRpbGluZ0RhdGEoNSwgIDcsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAgICBFWFBF
Q1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgOCwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsICA5LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7Ci0gICAg
RVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwgMTAsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKLSAg
ICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDAsICAwLCAgMCwgdHJ1ZSkubnVtVGlsZXMoKSk7
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDQsICAwLCB0cnVlKS5udW1UaWxlcygp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygwLCAgMCwgIDQsIHRydWUpLm51bVRpbGVz
KCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDQsICA0LCAgMCwgdHJ1ZSkubnVtVGls
ZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoNCwgIDAsICA0LCB0cnVlKS5udW1U
aWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygtOCwgMSwgIDEsIHRydWUpLm51
bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKC0xLCAxLCAgMSwgdHJ1ZSku
bnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMCwgIDEsICAxLCB0cnVl
KS5udW1UaWxlcygpKTsKKworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDEsICAxLCAgMSwg
dHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgIDEsICAy
LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygxLCAgMiwg
IDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDIsICAx
LCAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMiwg
IDEsICAyLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygy
LCAgMiwgIDEsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5n
KDIsICAyLCAgMiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCAgMSwgIDMsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0
VGlsaW5nKDMsICAyLCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRl
c3RUaWxpbmcoMywgIDMsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwg
VGVzdFRpbGluZygzLCAgNCwgIDMsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsICA1LCAgMywgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VR
KDQsIFRlc3RUaWxpbmcoMywgIDYsICAzLCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1Rf
RVEoNSwgVGVzdFRpbGluZygzLCAgNywgIDMsIHRydWUpLm51bVRpbGVzKCkpOworCisgICAgRVhQ
RUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDEsICA0LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBF
WFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg0LCAgMiwgIDQsIHRydWUpLm51bVRpbGVzKCkpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDQsICAzLCAgNCwgdHJ1ZSkubnVtVGlsZXMoKSk7Cisg
ICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNCwgIDQsICA0LCB0cnVlKS5udW1UaWxlcygpKTsK
KyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg0LCAgNSwgIDQsIHRydWUpLm51bVRpbGVzKCkp
OworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDQsICA2LCAgNCwgdHJ1ZSkubnVtVGlsZXMo
KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNCwgIDcsICA0LCB0cnVlKS5udW1UaWxl
cygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg0LCAgOCwgIDQsIHRydWUpLm51bVRp
bGVzKCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDQsICA5LCAgNCwgdHJ1ZSkubnVt
VGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNCwgMTAsICA0LCB0cnVlKS5u
dW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg0LCAxMSwgIDQsIHRydWUp
Lm51bVRpbGVzKCkpOworCisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDEsICA1LCB0
cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAgMiwgIDUs
IHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICAzLCAg
NSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoNSwgIDQs
ICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZyg1LCAg
NSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUs
ICA2LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmco
NSwgIDcsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGlu
Zyg1LCAgOCwgIDUsIHRydWUpLm51bVRpbGVzKCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGls
aW5nKDUsICA5LCAgNSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RU
aWxpbmcoNSwgMTAsICA1LCB0cnVlKS5udW1UaWxlcygpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZyg1LCAxMSwgIDUsIHRydWUpLm51bVRpbGVzKCkpOwogfQogCiBURVNUKFRpbGluZ0Rh
dGFUZXN0LCB0aWxlWEluZGV4RnJvbVNyY0Nvb3JkKQogewotICAgIEVYUEVDVF9FUSgwLCBUaWxp
bmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAg
IEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFs
c2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdE
YXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwotICAgIEVY
UEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoNCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2Up
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNSkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRh
KDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOwotICAgIEVYUEVD
VF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoNykpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoOCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMs
IDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOwotICAgIEVYUEVDVF9F
USgzLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQo
MTApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDExKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9F
USgwLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgx
KSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwg
MTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwotICAgIEVYUEVDVF9FUSgzLCBU
aWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7Ci0g
ICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDUpKTsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRy
dWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOwotICAgIEVYUEVDVF9FUSg2LCBUaWxpbmdE
YXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7Ci0gICAgRVhQ
RUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nv
b3JkKDgpKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOwotICAgIEVYUEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMs
IDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOwotICAgIEVYUEVDVF9F
USg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgx
MSkpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgMSwgMSwgZmFsc2UpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDIsIDIs
IDIsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0KLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNCwgMywgZmFsc2UpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMSkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDQs
IDMsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwg
VGlsaW5nRGF0YSgzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgzKSk7Ci0K
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgxLCAxLCAxLCB0cnVlKS50aWxlWEluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAyLCAyLCB0cnVl
KS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgyLCAyLCAyLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCB0
cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxp
bmdEYXRhKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwotICAgIEVY
UEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDQsIDMsIHRydWUpLnRpbGVY
SW5kZXhGcm9tU3JjQ29vcmQoMikpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDQs
IDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwg
ZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0
VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAg
IEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9t
U3JjQ29vcmQoNCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFs
c2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNSkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGls
aW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOworICAgIEVY
UEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoNykpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2Up
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5n
KDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOworICAgIEVYUEVD
VF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgZmFsc2UpLnRpbGVYSW5kZXhGcm9tU3JjQ29v
cmQoMTApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50
aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDExKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVD
VF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCgxKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxl
WEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAx
MCwgMTAsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg0KSk7
CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDUpKTsKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZygzLCAxMCwgMTAs
IHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoNikpOworICAgIEVYUEVDVF9FUSg2LCBUZXN0
VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCg3KSk7CisgICAg
RVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWEluZGV4RnJvbVNy
Y0Nvb3JkKDgpKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUp
LnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoOSkpOworICAgIEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5n
KDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxMCkpOworICAgIEVYUEVD
VF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVhJbmRleEZyb21TcmNDb29y
ZCgxMSkpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgMSwgMSwgZmFsc2UpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDIs
IDIsIDIsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEo
MCwgVGVzdFRpbGluZygyLCAyLCAyLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgxKSk7
CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVYSW5kZXhG
cm9tU3JjQ29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZh
bHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRp
bGluZygzLCAzLCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgyKSk7CisKKyAgICBF
WFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmND
b29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgNCwgMywgZmFsc2UpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMs
IDQsIDMsIGZhbHNlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZygzLCA0LCAzLCBmYWxzZSkudGlsZVhJbmRleEZyb21TcmNDb29yZCgzKSk7
CisKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygxLCAxLCAxLCB0cnVlKS50aWxlWEluZGV4
RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygyLCAyLCAyLCB0
cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRp
bGluZygyLCAyLCAyLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3Jk
KDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCB0cnVlKS50aWxlWElu
ZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAz
LCB0cnVlKS50aWxlWEluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKworICAgIEVYUEVDVF9FUSgwLCBU
ZXN0VGlsaW5nKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3Jj
Q29vcmQoMSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDQsIDMsIHRydWUpLnRp
bGVYSW5kZXhGcm9tU3JjQ29vcmQoMikpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
IDQsIDMsIHRydWUpLnRpbGVYSW5kZXhGcm9tU3JjQ29vcmQoMykpOwogfQogVEVTVChUaWxpbmdE
YXRhVGVzdCwgdGlsZVlJbmRleEZyb21TcmNDb29yZCkKIHsKLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZh
bHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5n
RGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKLSAgICBF
WFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDQpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0
YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKLSAgICBFWFBF
Q1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDcpKTsKLSAgICBFWFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKLSAgICBFWFBFQ1Rf
RVEoMywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3Jk
KDEwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCBmYWxzZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgxMSkpOwotCi0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEo
MywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMCwgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
MSkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEoMywgMTAs
IDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkpOwot
ICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCg1KSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0
cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKLSAgICBFWFBFQ1RfRVEoNiwgVGlsaW5n
RGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOwotICAgIEVY
UEVDVF9FUSg3LCBUaWxpbmdEYXRhKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmND
b29yZCg4KSk7Ci0gICAgRVhQRUNUX0VRKDcsIFRpbGluZ0RhdGEoMywgMTAsIDEwLCB0cnVlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKLSAgICBFWFBFQ1RfRVEoNywgVGlsaW5nRGF0YSgz
LCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKLSAgICBFWFBFQ1Rf
RVEoNywgVGlsaW5nRGF0YSgzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQo
MTEpKTsKLQotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDEsIDEsIDEsIGZhbHNlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgyLCAy
LCAyLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAs
IFRpbGluZ0RhdGEoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkpOwot
ICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAzLCBmYWxz
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0Rh
dGEoMywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOwotCi0gICAgRVhQ
RUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDQsIGZhbHNlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAz
LCA0LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMykpOwot
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMSwgMSwgMSwgdHJ1ZSkudGlsZVlJbmRleEZy
b21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMiwgMiwgMiwgdHJ1
ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0Rh
dGEoMiwgMiwgMiwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgw
KSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMywgMywg
dHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoMCwgVGls
aW5nRGF0YSgzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKLSAgICBF
WFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDEpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAzLCA0LCB0cnVlKS50aWxl
WUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAz
LCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsK
KyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAs
IGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVz
dFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAg
ICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJv
bVNyY0Nvb3JkKDQpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZh
bHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDUpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRp
bGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKKyAgICBF
WFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDcpKTsKKyAgICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDgpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKKyAgICBFWFBF
Q1RfRVEoMywgVGVzdFRpbGluZygzLCAxMCwgMTAsIGZhbHNlKS50aWxlWUluZGV4RnJvbVNyY0Nv
b3JkKDEwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCBmYWxzZSku
dGlsZVlJbmRleEZyb21TcmNDb29yZCgxMSkpOworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoMywgMTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBF
Q1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoMSkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGls
ZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywg
MTAsIDEwLCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKKyAgICBFWFBFQ1RfRVEo
MywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNCkp
OworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCg1KSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoMywgMTAsIDEw
LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDYpKTsKKyAgICBFWFBFQ1RfRVEoNiwgVGVz
dFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoNykpOworICAg
IEVYUEVDVF9FUSg3LCBUZXN0VGlsaW5nKDMsIDEwLCAxMCwgdHJ1ZSkudGlsZVlJbmRleEZyb21T
cmNDb29yZCg4KSk7CisgICAgRVhQRUNUX0VRKDcsIFRlc3RUaWxpbmcoMywgMTAsIDEwLCB0cnVl
KS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDkpKTsKKyAgICBFWFBFQ1RfRVEoNywgVGVzdFRpbGlu
ZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMTApKTsKKyAgICBFWFBF
Q1RfRVEoNywgVGVzdFRpbGluZygzLCAxMCwgMTAsIHRydWUpLnRpbGVZSW5kZXhGcm9tU3JjQ29v
cmQoMTEpKTsKKworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDEsIDEsIDEsIGZhbHNlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygy
LCAyLCAyLCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VR
KDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMSkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDMsIGZhbHNlKS50aWxlWUluZGV4
RnJvbVNyY0Nvb3JkKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCAzLCBm
YWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RU
aWxpbmcoMywgMywgMywgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMikpOworCisgICAg
RVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3Jj
Q29vcmQoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDQsIGZhbHNlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygz
LCAzLCA0LCBmYWxzZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisgICAgRVhQRUNUX0VR
KDEsIFRlc3RUaWxpbmcoMywgMywgNCwgZmFsc2UpLnRpbGVZSW5kZXhGcm9tU3JjQ29vcmQoMykp
OworCisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMSwgMSwgMSwgdHJ1ZSkudGlsZVlJbmRl
eEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMiwgMiwgMiwg
dHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RU
aWxpbmcoMiwgMiwgMiwgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQ
RUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29y
ZCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMywgdHJ1ZSkudGlsZVlJ
bmRleEZyb21TcmNDb29yZCgxKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywg
MywgdHJ1ZSkudGlsZVlJbmRleEZyb21TcmNDb29yZCgyKSk7CisKKyAgICBFWFBFQ1RfRVEoMCwg
VGVzdFRpbGluZygzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDApKTsKKyAg
ICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNy
Y0Nvb3JkKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCAzLCA0LCB0cnVlKS50
aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDIpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygz
LCAzLCA0LCB0cnVlKS50aWxlWUluZGV4RnJvbVNyY0Nvb3JkKDMpKTsKIH0KIAogVEVTVChUaWxp
bmdEYXRhVGVzdCwgdGlsZVNpemVYKQogewotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUs
ICA1LCAgNSwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0Rh
dGEoNSwgIDUsICA1LCB0cnVlKS50aWxlU2l6ZVgoMCkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRp
bGluZ0RhdGEoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEo
MSwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVD
VF9FUSg0LCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBF
WFBFQ1RfRVEoMiwgVGlsaW5nRGF0YSg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0K
LSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVgo
MCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgZmFsc2UpLnRpbGVT
aXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgIDgsICA4LCB0cnVlKS50
aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSg0LCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgdHJ1
ZSkudGlsZVNpemVYKDEpKTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsIDEwLCAx
MCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDUsIFRpbGluZ0RhdGEoNSwg
MTAsIDEwLCBmYWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0
YSg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVgoMSkpOwotICAgIEVYUEVDVF9FUSgzLCBU
aWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKLQotICAgIEVYUEVDVF9F
USg0LCBUaWxpbmdEYXRhKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVYKDIpKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAg
RVhQRUNUX0VRKDUsIFRlc3RUaWxpbmcoNSwgIDUsICA1LCBmYWxzZSkudGlsZVNpemVYKDApKTsK
KyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNSwgIDUsIHRydWUpLnRpbGVTaXplWCgw
KSk7CisKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIGZhbHNlKS50aWxl
U2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgZmFsc2Up
LnRpbGVTaXplWCgxKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDYsICA2LCB0
cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgyLCBUZXN0VGlsaW5nKDUsICA2LCAg
NiwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUs
ICA4LCAgOCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVz
dFRpbGluZyg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDQs
IFRlc3RUaWxpbmcoNSwgIDgsICA4LCB0cnVlKS50aWxlU2l6ZVgoMSkpOworCisgICAgRVhQRUNU
X0VRKDUsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBF
WFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOwor
ICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVYKDAp
KTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXpl
WCgxKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoNSwgMTAsIDEwLCB0cnVlKS50aWxl
U2l6ZVgoMikpOworCisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgMTEsIDExLCB0cnVl
KS50aWxlU2l6ZVgoMikpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsIDEyLCAxMiwg
dHJ1ZSkudGlsZVNpemVYKDIpKTsKIH0KIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWSkK
IHsKLSAgICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAgNSwgIDUsIGZhbHNlKS50aWxlU2l6
ZVkoMCkpOwotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA1LCAgNSwgdHJ1ZSkudGls
ZVNpemVZKDApKTsKLQotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsICA2LCAgNiwgZmFs
c2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoNSwgIDYsICA2
LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAg
NiwgIDYsIHRydWUpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDIsIFRpbGluZ0RhdGEo
NSwgIDYsICA2LCB0cnVlKS50aWxlU2l6ZVkoMSkpOwotCi0gICAgRVhQRUNUX0VRKDUsIFRpbGlu
Z0RhdGEoNSwgIDgsICA4LCBmYWxzZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOwotICAgIEVYUEVDVF9F
USg0LCBUaWxpbmdEYXRhKDUsICA4LCAgOCwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBF
Q1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAgOCwgIDgsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0KLSAg
ICBFWFBFQ1RfRVEoNSwgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIGZhbHNlKS50aWxlU2l6ZVkoMCkp
OwotICAgIEVYUEVDVF9FUSg1LCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgZmFsc2UpLnRpbGVTaXpl
WSgxKSk7Ci0gICAgRVhQRUNUX0VRKDQsIFRpbGluZ0RhdGEoNSwgMTAsIDEwLCB0cnVlKS50aWxl
U2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDUsIDEwLCAxMCwgdHJ1ZSku
dGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSg1LCAxMCwgMTAsIHRy
dWUpLnRpbGVTaXplWSgyKSk7Ci0KLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSg1LCAxMSwg
MTEsIHRydWUpLnRpbGVTaXplWSgyKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoNSwg
MTIsIDEyLCB0cnVlKS50aWxlU2l6ZVkoMikpOworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5n
KDUsICA1LCAgNSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RU
aWxpbmcoNSwgIDUsICA1LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworCisgICAgRVhQRUNUX0VRKDUs
IFRlc3RUaWxpbmcoNSwgIDYsICA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMSwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVY
UEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsICA2LCAgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKKyAg
ICBFWFBFQ1RfRVEoMiwgVGVzdFRpbGluZyg1LCAgNiwgIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7
CisKKyAgICBFWFBFQ1RfRVEoNSwgVGVzdFRpbGluZyg1LCAgOCwgIDgsIGZhbHNlKS50aWxlU2l6
ZVkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDUsICA4LCAgOCwgZmFsc2UpLnRp
bGVTaXplWSgxKSk7CisgICAgRVhQRUNUX0VRKDQsIFRlc3RUaWxpbmcoNSwgIDgsICA4LCB0cnVl
KS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDUsICA4LCAgOCwg
dHJ1ZSkudGlsZVNpemVZKDEpKTsKKworICAgIEVYUEVDVF9FUSg1LCBUZXN0VGlsaW5nKDUsIDEw
LCAxMCwgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDUsIFRlc3RUaWxpbmco
NSwgMTAsIDEwLCBmYWxzZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoNCwgVGVzdFRp
bGluZyg1LCAxMCwgMTAsIHRydWUpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRl
c3RUaWxpbmcoNSwgMTAsIDEwLCB0cnVlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDUsIDEwLCAxMCwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKKworICAgIEVYUEVD
VF9FUSg0LCBUZXN0VGlsaW5nKDUsIDExLCAxMSwgdHJ1ZSkudGlsZVNpemVZKDIpKTsKKyAgICBF
WFBFQ1RfRVEoMywgVGVzdFRpbGluZyg1LCAxMiwgMTIsIHRydWUpLnRpbGVTaXplWSgyKSk7CiB9
CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWF9hbmRfdGlsZVBvc2l0aW9uWCkKIHsK
ICAgICAvLyBTaW5nbGUgdGlsZSBjYXNlczoKLSAgICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgz
LCAxLCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdE
YXRhKDMsIDEsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgx
LCBUaWxpbmdEYXRhKDMsIDEsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNU
X0VRKDAsIFRpbGluZ0RhdGEoMywgMSwgMTAwLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMywgICAxLCBmYWxzZSkudGlsZVNpemVYKDAp
KTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAgIDEsIGZhbHNlKS50aWxlUG9z
aXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAzLCAxMDAsIGZhbHNl
KS50aWxlU2l6ZVgoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMsIDMsIDEwMCwg
ZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMs
IDEsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCAxLCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBU
aWxpbmdEYXRhKDMsIDEsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEo
MCwgVGlsaW5nRGF0YSgzLCAxLCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwotICAgIEVY
UEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDMsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgo
MCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDMsIDEwMCwgdHJ1ZSkudGlsZVNp
emVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAzLCAxMDAsIHRydWUpLnRp
bGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDEsICAgMSwg
ZmFsc2UpLnRpbGVTaXplWCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMSwg
ICAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxp
bmcoMywgMSwgMTAwLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVz
dFRpbGluZygzLCAxLCAxMDAsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMywgVGVzdFRpbGluZygzLCAzLCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkp
OworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDMsIDEwMCwgZmFsc2UpLnRpbGVTaXpl
WCgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMywgMTAwLCBmYWxzZSkudGls
ZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywgMSwgICAxLCB0
cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEsICAg
MSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmco
MywgMSwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDEsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDMs
IFRlc3RUaWxpbmcoMywgMywgICAxLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9F
USgwLCBUZXN0VGlsaW5nKDMsIDMsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAg
RVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMywgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMCkpOwor
ICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDMsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9u
WCgwKSk7CiAKICAgICAvLyBNdWx0aXBsZSB0aWxlczoKICAgICAvLyBubyBib3JkZXIKICAgICAv
LyBwb3NpdGlvbnMgMCwgMwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwg
ZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDYsICAg
MSwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywg
NiwgICAxLCBmYWxzZSkudGlsZVNpemVYKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0
YSgzLCA2LCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDApKTsKLSAgICBFWFBFQ1RfRVEoMywg
VGlsaW5nRGF0YSgzLCA2LCAgIDEsIGZhbHNlKS50aWxlUG9zaXRpb25YKDEpKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIGZhbHNlKS50aWxlU2l6ZVgoMCkpOwotICAg
IEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgxKSk7
Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCBmYWxzZSkudGlsZVBvc2l0
aW9uWCgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCBmYWxzZSku
dGlsZVBvc2l0aW9uWCgxKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgICAx
LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwg
ICAxLCBmYWxzZSkudGlsZVNpemVYKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygz
LCA2LCAgIDEsIGZhbHNlKS50aWxlU2l6ZVgoMSkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMCkpOworICAgIEVYUEVDVF9FUSgz
LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblgoMSkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgZmFsc2UpLnRpbGVTaXplWCgwKSk7Cisg
ICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCBmYWxzZSkudGlsZVNpemVYKDEp
KTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCA2LCAxMDAsIGZhbHNlKS50aWxlUG9z
aXRpb25YKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAxMDAsIGZhbHNl
KS50aWxlUG9zaXRpb25YKDEpKTsKIAogICAgIC8vIE11bHRpcGxlIHRpbGVzOgogICAgIC8vIHdp
dGggYm9yZGVyCiAgICAgLy8gcG9zaXRpb25zIDAsIDIsIDMsIDQKLSAgICBFWFBFQ1RfRVEoNCwg
VGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMikpOwotICAg
IEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDMpKTsK
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlv
blgoMCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsICAgMSwgdHJ1ZSkudGls
ZVBvc2l0aW9uWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgICAxLCB0
cnVlKS50aWxlUG9zaXRpb25YKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCA2
LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlvblgoMykpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdE
YXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDApKTsKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVTaXplWCgxKSk7Ci0gICAgRVhQRUNUX0VRKDEs
IFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMikpOwotICAgIEVYUEVDVF9F
USgyLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVNpemVYKDMpKTsKLSAgICBFWFBF
Q1RfRVEoMCwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMCkpOwot
ICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9u
WCgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgNiwgMTAwLCB0cnVlKS50aWxl
UG9zaXRpb25YKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCA2LCAxMDAsIHRy
dWUpLnRpbGVQb3NpdGlvblgoMykpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYs
ICAgMSwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywg
NiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5n
KDMsIDYsICAgMSwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRl
c3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlU2l6ZVgoMykpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQ
RUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgICAxLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsK
KyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAgIDEsIHRydWUpLnRpbGVQb3NpdGlv
blgoMikpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYsICAgMSwgdHJ1ZSkudGls
ZVBvc2l0aW9uWCgzKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0
cnVlKS50aWxlU2l6ZVgoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMsIDYsIDEw
MCwgdHJ1ZSkudGlsZVNpemVYKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRpbGluZygzLCA2
LCAxMDAsIHRydWUpLnRpbGVTaXplWCgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmco
MywgNiwgMTAwLCB0cnVlKS50aWxlU2l6ZVgoMykpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGls
aW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9uWCgwKSk7CisgICAgRVhQRUNUX0VRKDIs
IFRlc3RUaWxpbmcoMywgNiwgMTAwLCB0cnVlKS50aWxlUG9zaXRpb25YKDEpKTsKKyAgICBFWFBF
Q1RfRVEoMywgVGVzdFRpbGluZygzLCA2LCAxMDAsIHRydWUpLnRpbGVQb3NpdGlvblgoMikpOwor
ICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDYsIDEwMCwgdHJ1ZSkudGlsZVBvc2l0aW9u
WCgzKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHRpbGVTaXplWV9hbmRfdGlsZVBvc2l0
aW9uWSkKIHsKICAgICAvLyBTaW5nbGUgdGlsZSBjYXNlczoKLSAgICBFWFBFQ1RfRVEoMSwgVGls
aW5nRGF0YSgzLCAgIDEsIDEsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgw
LCBUaWxpbmdEYXRhKDMsICAgMSwgMSwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVY
UEVDVF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwMCwgMSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0g
ICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCAxLCBmYWxzZSkudGlsZVBvc2l0aW9u
WSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgICAxLCAzLCBmYWxzZSkudGls
ZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDMsIGZhbHNl
KS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMDAs
IDMsIGZhbHNlKS50aWxlU2l6ZVkoMCkpOwotICAgIEVYUEVDVF9FUSgwLCBUaWxpbmdEYXRhKDMs
IDEwMCwgMywgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgxLCBUaWxp
bmdEYXRhKDMsICAgMSwgMSwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgzLCAgIDEsIDEsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVD
VF9FUSgxLCBUaWxpbmdEYXRhKDMsIDEwMCwgMSwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBF
WFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDEsIHRydWUpLnRpbGVQb3NpdGlvblkoMCkp
OwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsICAgMSwgMywgdHJ1ZSkudGlsZVNpemVZ
KDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDMsIHRydWUpLnRpbGVQ
b3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwMCwgMywgdHJ1
ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDMs
IHRydWUpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5nKDMs
ICAgMSwgMSwgZmFsc2UpLnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxp
bmcoMywgICAxLCAxLCBmYWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEs
IFRlc3RUaWxpbmcoMywgMTAwLCAxLCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1Rf
RVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDEsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKKyAg
ICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDMsIGZhbHNlKS50aWxlU2l6ZVkoMCkp
OworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwgMywgZmFsc2UpLnRpbGVQb3Np
dGlvblkoMCkpOworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwMCwgMywgZmFsc2Up
LnRpbGVTaXplWSgwKSk7CisgICAgRVhQRUNUX0VRKDAsIFRlc3RUaWxpbmcoMywgMTAwLCAzLCBm
YWxzZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRlc3RUaWxpbmcoMywg
ICAxLCAxLCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5n
KDMsICAgMSwgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQRUNUX0VRKDEsIFRl
c3RUaWxpbmcoMywgMTAwLCAxLCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDEwMCwgMSwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQ
RUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgICAxLCAzLCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAg
IEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwgMywgdHJ1ZSkudGlsZVBvc2l0aW9uWSgw
KSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAwLCAzLCB0cnVlKS50aWxlU2l6
ZVkoMCkpOworICAgIEVYUEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsIDEwMCwgMywgdHJ1ZSkudGls
ZVBvc2l0aW9uWSgwKSk7CiAKICAgICAvLyBNdWx0aXBsZSB0aWxlczoKICAgICAvLyBubyBib3Jk
ZXIKICAgICAvLyBwb3NpdGlvbnMgMCwgMwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMs
ICAgMSwgNiwgZmFsc2UpLm51bVRpbGVzKCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRh
KDMsICAgMSwgNiwgZmFsc2UpLnRpbGVTaXplWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGlu
Z0RhdGEoMywgICAxLCA2LCBmYWxzZSkudGlsZVNpemVZKDEpKTsKLSAgICBFWFBFQ1RfRVEoMCwg
VGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDApKTsKLSAgICBFWFBF
Q1RfRVEoMywgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDEpKTsK
LSAgICBFWFBFQ1RfRVEoMywgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIGZhbHNlKS50aWxlU2l6ZVko
MCkpOwotICAgIEVYUEVDVF9FUSgzLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVT
aXplWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDAsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCBmYWxzZSku
dGlsZVBvc2l0aW9uWSgwKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAwLCA2
LCBmYWxzZSkudGlsZVBvc2l0aW9uWSgxKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmco
MywgICAxLCA2LCBmYWxzZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxp
bmcoMywgICAxLCA2LCBmYWxzZSkudGlsZVNpemVZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVz
dFRpbGluZygzLCAgIDEsIDYsIGZhbHNlKS50aWxlU2l6ZVkoMSkpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMCkpOworICAgIEVY
UEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgZmFsc2UpLnRpbGVQb3NpdGlvblkoMSkp
OworICAgIEVYUEVDVF9FUSgzLCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgZmFsc2UpLnRpbGVTaXpl
WSgwKSk7CisgICAgRVhQRUNUX0VRKDMsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCBmYWxzZSkudGls
ZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMCwgVGVzdFRpbGluZygzLCAxMDAsIDYsIGZhbHNl
KS50aWxlUG9zaXRpb25ZKDApKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMDAs
IDYsIGZhbHNlKS50aWxlUG9zaXRpb25ZKDEpKTsKIAogICAgIC8vIE11bHRpcGxlIHRpbGVzOgog
ICAgIC8vIHdpdGggYm9yZGVyCiAgICAgLy8gcG9zaXRpb25zIDAsIDIsIDMsIDQKLSAgICBFWFBF
Q1RfRVEoNCwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLm51bVRpbGVzKCkpOwotICAgIEVY
UEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAg
ICBFWFBFQ1RfRVEoMSwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7
Ci0gICAgRVhQRUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVko
MikpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNp
emVZKDMpKTsKLSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAgIDEsIDYsIHRydWUpLnRp
bGVQb3NpdGlvblkoMCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsICAgMSwgNiwg
dHJ1ZSkudGlsZVBvc2l0aW9uWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywg
ICAxLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5n
RGF0YSgzLCAgIDEsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMykpOwotICAgIEVYUEVDVF9FUSgy
LCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDApKTsKLSAgICBFWFBFQ1Rf
RVEoMSwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXplWSgxKSk7Ci0gICAgRVhQ
RUNUX0VRKDEsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMikpOwotICAg
IEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDMpKTsK
LSAgICBFWFBFQ1RfRVEoMCwgVGlsaW5nRGF0YSgzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlv
blkoMCkpOwotICAgIEVYUEVDVF9FUSgyLCBUaWxpbmdEYXRhKDMsIDEwMCwgNiwgdHJ1ZSkudGls
ZVBvc2l0aW9uWSgxKSk7Ci0gICAgRVhQRUNUX0VRKDMsIFRpbGluZ0RhdGEoMywgMTAwLCA2LCB0
cnVlKS50aWxlUG9zaXRpb25ZKDIpKTsKLSAgICBFWFBFQ1RfRVEoNCwgVGlsaW5nRGF0YSgzLCAx
MDAsIDYsIHRydWUpLnRpbGVQb3NpdGlvblkoMykpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGls
aW5nKDMsICAgMSwgNiwgdHJ1ZSkubnVtVGlsZXMoKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RU
aWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBU
ZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEo
MSwgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRpbGVTaXplWSgyKSk7CisgICAgRVhQRUNU
X0VRKDIsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOworICAgIEVY
UEVDVF9FUSgwLCBUZXN0VGlsaW5nKDMsICAgMSwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7
CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgICAxLCA2LCB0cnVlKS50aWxlUG9zaXRp
b25ZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAgIDEsIDYsIHRydWUpLnRp
bGVQb3NpdGlvblkoMikpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsICAgMSwgNiwg
dHJ1ZSkudGlsZVBvc2l0aW9uWSgzKSk7CisgICAgRVhQRUNUX0VRKDIsIFRlc3RUaWxpbmcoMywg
MTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMCkpOworICAgIEVYUEVDVF9FUSgxLCBUZXN0VGlsaW5n
KDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVNpemVZKDEpKTsKKyAgICBFWFBFQ1RfRVEoMSwgVGVzdFRp
bGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVTaXplWSgyKSk7CisgICAgRVhQRUNUX0VRKDIsIFRl
c3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlU2l6ZVkoMykpOworICAgIEVYUEVDVF9FUSgw
LCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGlsZVBvc2l0aW9uWSgwKSk7CisgICAgRVhQ
RUNUX0VRKDIsIFRlc3RUaWxpbmcoMywgMTAwLCA2LCB0cnVlKS50aWxlUG9zaXRpb25ZKDEpKTsK
KyAgICBFWFBFQ1RfRVEoMywgVGVzdFRpbGluZygzLCAxMDAsIDYsIHRydWUpLnRpbGVQb3NpdGlv
blkoMikpOworICAgIEVYUEVDVF9FUSg0LCBUZXN0VGlsaW5nKDMsIDEwMCwgNiwgdHJ1ZSkudGls
ZVBvc2l0aW9uWSgzKSk7CiB9CiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldFRvdGFsU2l6ZSkK
IHsKLSAgICBUaWxpbmdEYXRhIGRhdGEoNSwgNSwgNSwgZmFsc2UpOworICAgIFRlc3RUaWxpbmcg
ZGF0YSg1LCA1LCA1LCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDUsIGRhdGEudG90YWxTaXplWCgp
KTsKICAgICBFWFBFQ1RfRVEoNSwgZGF0YS50b3RhbFNpemVZKCkpOwogICAgIEVYUEVDVF9FUSgx
LCBkYXRhLm51bVRpbGVzWCgpKTsKQEAgLTQ0Niw3ICs0NjgsNyBAQCBURVNUKFRpbGluZ0RhdGFU
ZXN0LCBzZXRUb3RhbFNpemUpCiAKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVT
aXplTm9Cb3JkZXJzKQogewotICAgIFRpbGluZ0RhdGEgZGF0YSg4LCAxNiwgMzIsIGZhbHNlKTsK
KyAgICBUZXN0VGlsaW5nIGRhdGEoOCwgMTYsIDMyLCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDIs
IGRhdGEubnVtVGlsZXNYKCkpOwogICAgIEVYUEVDVF9FUSg0LCBkYXRhLm51bVRpbGVzWSgpKTsK
IApAQCAtNDY4LDcgKzQ5MCw3IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVT
aXplTm9Cb3JkZXJzKQogCiBURVNUKFRpbGluZ0RhdGFUZXN0LCBzZXRNYXhUZXh0dXJlU2l6ZUJv
cmRlcnMpCiB7Ci0gICAgVGlsaW5nRGF0YSBkYXRhKDgsIDE2LCAzMiwgdHJ1ZSk7CisgICAgVGVz
dFRpbGluZyBkYXRhKDgsIDE2LCAzMiwgdHJ1ZSk7CiAgICAgRVhQRUNUX0VRKDMsIGRhdGEubnVt
VGlsZXNYKCkpOwogICAgIEVYUEVDVF9FUSg1LCBkYXRhLm51bVRpbGVzWSgpKTsKIApAQCAtNDkx
LDggKzUxMyw4IEBAIFRFU1QoVGlsaW5nRGF0YVRlc3QsIHNldE1heFRleHR1cmVTaXplQm9yZGVy
cykKIFRFU1QoVGlsaW5nRGF0YVRlc3QsIGFzc2lnbm1lbnQpCiB7CiAgICAgewotICAgICAgICBU
aWxpbmdEYXRhIHNvdXJjZSg4LCAxNiwgMzIsIHRydWUpOwotICAgICAgICBUaWxpbmdEYXRhIGRl
c3QgPSBzb3VyY2U7CisgICAgICAgIFRlc3RUaWxpbmcgc291cmNlKDgsIDE2LCAzMiwgdHJ1ZSk7
CisgICAgICAgIFRlc3RUaWxpbmcgZGVzdCA9IHNvdXJjZTsKICAgICAgICAgRVhQRUNUX0VRKHNv
dXJjZS5ib3JkZXJUZXhlbHMoKSwgZGVzdC5ib3JkZXJUZXhlbHMoKSk7CiAgICAgICAgIEVYUEVD
VF9FUShzb3VyY2UubWF4VGV4dHVyZVNpemUoKSwgZGVzdC5tYXhUZXh0dXJlU2l6ZSgpKTsKICAg
ICAgICAgRVhQRUNUX0VRKHNvdXJjZS5udW1UaWxlc1goKSwgZGVzdC5udW1UaWxlc1goKSk7CkBA
IC01MDEsOCArNTIzLDggQEAgVEVTVChUaWxpbmdEYXRhVGVzdCwgYXNzaWdubWVudCkKICAgICAg
ICAgRVhQRUNUX0VRKHNvdXJjZS50b3RhbFNpemVZKCksIGRlc3QudG90YWxTaXplWSgpKTsKICAg
ICB9CiAgICAgewotICAgICAgICBUaWxpbmdEYXRhIHNvdXJjZSgzLCA2LCAxMDAsIGZhbHNlKTsK
LSAgICAgICAgVGlsaW5nRGF0YSBkZXN0KHNvdXJjZSk7CisgICAgICAgIFRlc3RUaWxpbmcgc291
cmNlKDMsIDYsIDEwMCwgZmFsc2UpOworICAgICAgICBUZXN0VGlsaW5nIGRlc3Qoc291cmNlKTsK
ICAgICAgICAgRVhQRUNUX0VRKHNvdXJjZS5ib3JkZXJUZXhlbHMoKSwgZGVzdC5ib3JkZXJUZXhl
bHMoKSk7CiAgICAgICAgIEVYUEVDVF9FUShzb3VyY2UubWF4VGV4dHVyZVNpemUoKSwgZGVzdC5t
YXhUZXh0dXJlU2l6ZSgpKTsKICAgICAgICAgRVhQRUNUX0VRKHNvdXJjZS5udW1UaWxlc1goKSwg
ZGVzdC5udW1UaWxlc1goKSk7CkBAIC01MTQsNyArNTM2LDcgQEAgVEVTVChUaWxpbmdEYXRhVGVz
dCwgYXNzaWdubWVudCkKIAogVEVTVChUaWxpbmdEYXRhVGVzdCwgc2V0Qm9yZGVyVGV4ZWxzKQog
ewotICAgIFRpbGluZ0RhdGEgZGF0YSg4LCAxNiwgMzIsIGZhbHNlKTsKKyAgICBUZXN0VGlsaW5n
IGRhdGEoOCwgMTYsIDMyLCBmYWxzZSk7CiAgICAgRVhQRUNUX0VRKDIsIGRhdGEubnVtVGlsZXNY
KCkpOwogICAgIEVYUEVDVF9FUSg0LCBkYXRhLm51bVRpbGVzWSgpKTsKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>